blob: 990d556ca89af4b80479c97727da1d41c25d2fe0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
/***************************************************************************
dbscan.h -
-------------------
begin : Fri Sep 8 2000
copyright : (C) 2000 by Andrea Rizzi
email : rizzi@kde.org
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
/*
Translation search engine
Copyright 2000
Andrea Rizzi rizzi@kde.org
*/
#ifndef _DBSCAN_H_
#define _DBSCAN_H_
#include <catalog.h>
#include <kurl.h>
#include "database.h"
#include "sourcedialog.h"
class KConfigBase;
class MessagesSource
{
//FIXME Use KURL and add network support
public:
MessagesSource();
void writeConfig(KConfigBase *config);
void readConfig(KConfigBase *config);
void setDialogValues(SourceDialog *sd);
void getDialogValues(SourceDialog *sd);
/**
* It returns a list of urls to scan, the list contains single file if type is "SingleFile"
* or a list of files if type is "SingleDir" or "RecDir"
*/
QValueList<KURL> urls();
private:
QValueList<KURL> filesInDir(KURL url,bool recursive);
KURL location;
// The source type "SingleFile" =0, "SingleDirectory"=1, "RecursiveDirectory"=2
uint type;
/**
* A filter to apply on source files
*/
SearchFilter filter;
QString projectName;
QString projectKeywords;
QString status;
};
class PoScanner : public QObject
{
Q_OBJECT;
public:
PoScanner(DataBaseInterface *dbi,QObject *parent=0,const char *name=0);
/*
Scan a single PO file.
*/
bool scanFile(QString fileName);
/*
Scan a single URL file.
*/
bool scanURL(KURL u);
/*
Scan a list of space separated files with possible MetaCharacters
*/
bool scanPattern(QString pathName,QString pattern="*.po",bool rec=false);
signals:
void fileStarted();
void fileProgress(int);
void fileFinished();
void fileLoading(int);
void patternStarted();
void patternProgress(int);
void patternFinished();
void added(int);
void filename(QString);
private:
// If true when a translation is found in a CATALOG the old translation for this CATALOG
// will be removed
bool removeOldCatalogTranslation;
int count;
DataBaseInterface *di;
// InfoItem cinfo;
};
#endif
|