summaryrefslogtreecommitdiffstats
path: root/kiten/kiten.h
diff options
context:
space:
mode:
Diffstat (limited to 'kiten/kiten.h')
-rw-r--r--kiten/kiten.h146
1 files changed, 146 insertions, 0 deletions
diff --git a/kiten/kiten.h b/kiten/kiten.h
new file mode 100644
index 00000000..b991b0a5
--- /dev/null
+++ b/kiten/kiten.h
@@ -0,0 +1,146 @@
+/**
+ This file is part of Kiten, a KDE Japanese Reference Tool...
+ Copyright (C) 2001 Jason Katz-Brown <jason@katzbrown.com>
+ (C) 2005 Paul Temple <paul.temple@gmx.net>
+
+ 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ USA
+**/
+
+#ifndef KITEN_H
+#define KITEN_H
+
+
+#include "asyndeta.h"
+#include "dict.h"
+#include "rad.h"
+#include "deinf.h"
+
+class Config;
+class ConfigureDialog;
+class EditAction;
+class KGlobalAccel;
+class KStatusBar;
+class KToggleAction;
+class KListAction;
+class Learn;
+class ResultView;
+
+class KDE_EXPORT TopLevel : public KMainWindow
+{
+ Q_OBJECT
+
+public:
+ TopLevel(QWidget *parent = 0, const char *name = 0);
+ ~TopLevel();
+
+signals:
+ void saveLists();
+ void add(Dict::Entry);
+ void quizConfChanged();
+
+protected:
+ virtual bool queryClose();
+
+private slots:
+ void search(bool inResults = false);
+ void ressearch(const QString&);
+ void searchBeginning();
+ void searchAnywhere();
+ void resultSearch();
+ void searchAccel();
+ void autoSearch();
+ void kanjiSearchAccel();
+ void strokeSearch();
+ void gradeSearch();
+ void back();
+ void forward();
+ void goInHistory(int);
+ void historySpotChanged();
+ void slotConfigure();
+ void slotLearnConfigure();
+ void slotConfigureHide();
+ void slotConfigureDestroy();
+ void slotConfigurationChanged(); // calls the below too
+ void updateConfiguration();
+ void kanjiDictChange();
+ void toggleCom();
+ void addToList();
+ RadWidget *radicalSearch();
+ void radSearch(const QStringList &, unsigned int, unsigned int);
+
+ void print();
+
+ void createLearn();
+ void learnDestroyed(Learn *);
+ void createEEdit();
+ void configureToolBars();
+ void configureGlobalKeys();
+ void newToolBarConfig();
+
+ void finishInit();
+
+private:
+ KStatusBar *StatusBar;
+
+ Asyndeta _Asyndeta;
+ Rad _Rad;
+ Deinf::Index _DeinfIndex;
+ ResultView *_ResultView;
+ KToggleAction *kanjiCB;
+ KToggleAction *autoSearchToggle;
+ KToggleAction *deinfCB;
+ KListAction *historyAction;
+ KAction *irAction;
+ KAction *addAction;
+ KToggleAction *comCB;
+ KAction *backAction;
+ KAction *forwardAction;
+
+ KGlobalAccel *Accel;
+
+ void doSearch(const QString &text, QRegExp regexp);
+ void doSearchInResults(const QString &text, QRegExp regexp);
+ void handleSearchResult(Dict::SearchResult);
+ QString filteredClipboardText();
+ QString clipBoardText();
+
+ ConfigureDialog *optionDialog;
+ Config* config;
+ void setResults(unsigned int, unsigned int);
+
+ QPtrList<Learn> learnList;
+
+ QRegExp searchItems();
+ QRegExp readingSearchItems(bool);
+ QRegExp kanjiSearchItems(bool = false);
+
+ EditAction *Edit;
+
+ bool readingSearch; // if this is true and no results, try with kanjiSearchItems
+ bool beginningReadingSearch;
+
+ Dict::Entry toAddKanji;
+
+ QValueList<Dict::SearchResult> resultHistory;
+ QValueListIterator<Dict::SearchResult> currentResult;
+ int currentResultIndex;
+ void addHistory(Dict::SearchResult);
+ void enableHistoryButtons();
+
+ QString personalDict;
+};
+
+#endif