Parent: [e883b2] (diff)

Child: [ad93c2] (diff)

Download this file

rclmain_w.h    144 lines (129 with data), 4.2 kB

  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
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
/*
* 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.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the
* Free Software Foundation, Inc.,
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef RCLMAIN_W_H
#define RCLMAIN_W_H
#include <qvariant.h>
#include <qmainwindow.h>
#include "sortseq.h"
#include "preview_w.h"
#include "recoll.h"
#include "advsearch_w.h"
#include "sort_w.h"
#include "uiprefs_w.h"
#include "rcldb.h"
#include "searchdata.h"
#include "spell_w.h"
#include "refcntr.h"
#include "pathut.h"
#if QT_VERSION < 0x040000
#include "rclmain.h"
#else
#include "ui_rclmain.h"
#endif
//MOC_SKIP_BEGIN
#if QT_VERSION < 0x040000
class DummyRclMainBase : public RclMainBase
{
public: DummyRclMainBase(QWidget* parent = 0) : RclMainBase(parent) {}
};
#define RCLMAINPARENT QWidget
#else
class DummyRclMainBase : public Q3MainWindow, public Ui::RclMainBase
{
public: DummyRclMainBase(QWidget *parent) :Q3MainWindow(parent){setupUi(this);}
#define RCLMAINPARENT Q3MainWindow
};
#endif
//MOC_SKIP_END
class Preview;
namespace confgui {
class ConfIndexW;
}
using confgui::ConfIndexW;
class RclMain : public DummyRclMainBase
{
Q_OBJECT
public:
RclMain(RCLMAINPARENT * parent = 0)
: DummyRclMainBase(parent)
{
init();
}
~RclMain() {}
public slots:
virtual bool close();
virtual void fileExit();
virtual void periodic100();
virtual void startIndexing();
virtual void startSearch(RefCntr<Rcl::SearchData> sdata);
virtual void setDocSequence();
virtual void previewClosed(Preview *w);
virtual void showAdvSearchDialog();
virtual void showSortDialog();
virtual void showSpellDialog();
virtual void showAboutDialog();
virtual void startManual();
virtual void showDocHistory();
virtual void showExtIdxDialog();
virtual void sortDataChanged(DocSeqSortSpec spec);
virtual void showUIPrefs();
virtual void showIndexConfig();
virtual void setUIPrefs();
virtual void enableNextPage(bool);
virtual void enablePrevPage(bool);
virtual void docExpand(int);
virtual void ssearchAddTerm(QString);
virtual void startPreview(int docnum, int);
virtual void startPreview(Rcl::Doc doc);
virtual void startNativeViewer(int docnum);
virtual void startNativeViewer(Rcl::Doc doc);
virtual void previewNextInTab(Preview *, int sid, int docnum);
virtual void previewPrevInTab(Preview *, int sid, int docnum);
virtual void previewExposed(Preview *, int sid, int docnum);
virtual void resetSearch();
virtual void eraseDocHistory();
// Callback for setting the stemming language through the prefs menu
virtual void setStemLang(int id);
// Prefs menu about to show, set the checked lang entry
virtual void adjustPrefsMenu();
signals:
void stemLangChanged(const QString& lang);
protected:
virtual void closeEvent( QCloseEvent * );
private:
Preview *curPreview;
AdvSearch *asearchform;
SortForm *sortform;
UIPrefsDialog *uiprefs;
ConfIndexW *indexConfig;
SpellW *spellform;
RefCntr<Rcl::SearchData> m_searchData;
DocSeqSortSpec m_sortspecs;
RefCntr<DocSequence> m_docSource;
vector<TempFile> m_tempfiles;
// Serial number of current search for this process.
// Used to match to preview windows
int m_searchId;
map<QString, int> m_stemLangToId;
int m_idNoStem;
int m_idAllStem;
virtual void init();
virtual void previewPrevOrNextInTab(Preview *, int sid, int docnum,
bool next);
virtual void setStemLang(const QString& lang);
};
#endif // RCLMAIN_W_H