00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00028 #ifndef COMMONDICTINTERFACE_H
00029 #define COMMONDICTINTERFACE_H
00030
00031 #include <QString>
00032 #include <QDialog>
00033 #include <QObject>
00034 #include <QList>
00035 #include "translation.h"
00036
00037 class DictDialog;
00038 class Settings;
00039
00040
00042 class CommonDictInterface : public QObject {
00043 Q_OBJECT
00044 public:
00045 CommonDictInterface(QObject *parent = 0):QObject(parent) {}
00046
00048 virtual QString langFrom() const = 0;
00049
00051 virtual QString langTo() const = 0;
00052
00054 virtual QString name() const = 0;
00055
00057 virtual QString type() const = 0;
00058
00060 virtual QString infoNote() const = 0;
00061
00064 virtual DictDialog* dictDialog() = 0;
00065
00066
00068 virtual CommonDictInterface* getNew(const Settings*) const = 0;
00069
00071 virtual bool isAvailable() const = 0;
00072
00074 virtual QString search(QString key) = 0;
00075
00077 virtual uint hash() const = 0;
00078
00080 virtual void setHash(uint) = 0;
00081
00083 virtual Settings* settings() = 0;
00084
00086 virtual QIcon* icon() = 0;
00087
00088 public Q_SLOTS:
00097 virtual QList<Translation*> searchWordList(QString word, int limit=0) = 0;
00098
00100 virtual void stop() = 0;
00101
00102 Q_SIGNALS:
00103
00105 void loaded(CommonDictInterface*);
00106
00108 void settingsChanged();
00109 };
00110
00111 Q_DECLARE_INTERFACE(CommonDictInterface, "CommonDictInterface/0.1");
00112
00113 #endif