You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tdenetwork/kdict/toplevel.h

150 lines
3.5 KiB

/* -------------------------------------------------------------
toplevel.h (part of The KDE Dictionary Client)
Copyright (C) 2000-2001 Christian Gebauer <gebauer@kde.org>
(C) by Matthias Hölzer 1998
This file is distributed under the Artistic License.
See LICENSE for details.
-------------------------------------------------------------
TopLevel The toplevel widget of Kdict.
------------------------------------------------------------- */
#ifndef _TOPLEVEL_H_
#define _TOPLEVEL_H_
#include <qtimer.h>
#include <kmainwindow.h>
#include "dcopinterface.h"
class QSplitter;
class KToggleAction;
class KToolBarPopupAction;
class DictLabelAction;
class DictComboAction;
class DictButtonAction;
class MatchView;
class QueryView;
class OptionsDialog;
class DbSetsDialog;
class TopLevel : public KMainWindow, virtual public KDictIface
{
Q_OBJECT
friend class QueryView;
public:
TopLevel(QWidget* parent = 0, const char* name = 0);
~TopLevel();
void normalStartup(); // called when started without commandline parameters
// DCOP-Interface...
void quit();
void makeActiveWindow();
void definePhrase(QString phrase);
void matchPhrase(QString phrase);
void defineClipboardContent();
void matchClipboardContent();
QStringList getDatabases();
QString currentDatabase();
QStringList getStrategies();
QString currentStrategy();
bool setDatabase(QString db);
bool setStrategy(QString strategy);
bool historyGoBack();
bool historyGoForward();
public slots:
void define(const QString &query);
void defineClipboard();
void match(const QString &query);
void matchClipboard();
protected:
bool queryClose();
private:
void setupActions();
void setupStatusBar();
void recreateGUI();
void raiseWindow();
void addCurrentInputToHistory(); // add text in the query-combobox to the history
private slots:
void clearInput(); // erase text in query-combobox
void doDefine(); // define text in the combobox
void doMatch(); // match text in the combobox
void stopClients();
void buildHistMenu();
void queryHistMenu(); // process a query via the history menu
void clearQueryHistory();
void stratDbChanged();
void dbInfoMenuClicked();
void databaseSelected(int num);
void enableCopy(bool selected);
void enablePrintSave();
void clientStarted(const QString &message);
void clientStopped(const QString &message);
void resetStatusbar();
void renderingStarted();
void renderingStopped();
void newCaption(const QString&);
void toggleMatchListShow();
void saveMatchViewSize();
void adjustMatchViewSize();
void slotConfToolbar();
void slotNewToolbarConfig();
void showSetsDialog();
void hideSetsDialog();
void setsChanged();
void showOptionsDialog();
void hideOptionsDialog();
void optionsChanged();
private:
KAction *actSave, *actPrint, *actStartQuery, *actStopQuery, *actCopy;
KToggleAction *actShowMatchList;
DictLabelAction *actQueryLabel, *actDbLabel;
DictComboAction *actQueryCombo, *actDbCombo;
DictButtonAction *actDefineBtn, *actMatchBtn;
QPtrList<KAction> historyActionList, dbActionList;
KToolBarPopupAction *actBack, *actForward;
QSplitter *splitter; // widgets....
QueryView *queryView;
MatchView *matchView;
OptionsDialog *optDlg;
DbSetsDialog *setsDlg;
QTimer resetStatusbarTimer;
int stopRef; // remember how many "clients" are running
};
#endif