#ifndef __HTMLSEARCH_H__
#define __HTMLSEARCH_H__
#include
class K3Process;
class ProgressDialog;
class HTMLSearch : public QObject
{
Q_OBJECT
public:
HTMLSearch();
bool generateIndex(const QString & lang, QWidget *parent=0);
QString search(const QString & lang, const QString & words, const QString & method="and", int matches=10,
const QString & format="builtin-long", const QString & sort="score");
protected Q_SLOTS:
void htdigStdout(K3Process *proc, char *buffer, int buflen);
void htdigExited(K3Process *proc);
void htmergeExited(K3Process *proc);
void htsearchStdout(K3Process *proc, char *buffer, int buflen);
void htsearchExited(K3Process *proc);
protected:
QString dataPath(const QString& lang);
bool saveFilesList(const QString& lang);
void scanDir(const QString& dir);
bool createConfig(const QString& lang);
private:
QStringList _files;
K3Process *_proc;
int _filesToDig, _filesDigged, _filesScanned;
volatile bool _htdigRunning, _htmergeRunning, _htsearchRunning;
QString _searchResult;
ProgressDialog *progress;
};
#endif