Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #ifndef SETTINGS_H
- #define SETTINGS_H
- #include <QObject>
- #include <QColor>
- #include <QUrl>
- class Settings : public QObject
- {
- Q_OBJECT
- Q_PROPERTY(QString language READ language WRITE setLanguage NOTIFY languageChanged)
- Q_PROPERTY(Settings::JapaneseInputMethodType japaneseInputMethodType READ japaneseInputMethodType WRITE setJapaneseInputMethodType NOTIFY japaneseInputMethodTypeChanged)
- Q_PROPERTY(int flickDistance READ flickDistance WRITE setFlickDistance NOTIFY flickDistanceChanged)
- Q_PROPERTY(Settings::TsuModifyOrder tsuModifyOrder READ tsuModifyOrder WRITE setTsuModifyOrder NOTIFY tsuModifyOrderChanged)
- Q_PROPERTY(bool smallKaKe READ smallKaKe WRITE setSmallKaKe NOTIFY smallKaKeChanged)
- Q_PROPERTY(bool pushWubi READ pushWubi WRITE setPushWubi NOTIFY pushWubiChanged)
- Q_PROPERTY(bool pushAsso READ pushAsso WRITE setShowGuide NOTIFY pushAssoChanged)
- Q_PROPERTY(int showGuideAfter READ showGuideAfter WRITE setShowGuideAfter NOTIFY showGuideAfterChanged)
- Q_PROPERTY(QColor foregroundColor READ foregroundColor WRITE setForegroundColor NOTIFY foregroundColorChanged)
- Q_PROPERTY(QColor backgroundColor READ backgroundColor WRITE setBackgroundColor NOTIFY backgroundColorChanged)
- Q_PROPERTY(QString databaseUrl READ databaseUrl WRITE setDatabaseUrl NOTIFY databaseUrlChanged)
- Q_PROPERTY(QString twinkleSource READ twinkleSource WRITE setTwinkleSource NOTIFY twinkleSourceChanged)
- Q_PROPERTY(int twinkleVolume READ twinkleVolume WRITE setTwinkleVolume NOTIFY twinkleVolumeChanged)
- Q_PROPERTY(bool twinkleBurst READ twinkleBurst WRITE setTwinkleBurst NOTIFY twinkleBurstChanged)
- Q_PROPERTY(QString errorString READ errorString NOTIFY errorStringChanged)
- Q_ENUMS(JapaneseInputMethodType)
- Q_ENUMS(TsuModifyOrder)
- public:
- enum JapaneseInputMethodType {
- //JapaneseFlick,
- JapaneseRomaji
- //ADD MORE ?
- };
- enum TsuModifyOrder {
- XtsuFirst,
- DsuFirst
- };
- explicit Settings(QObject *parent = 0);
- ~Settings();
- QString language() const;
- JapaneseInputMethodType japaneseInputMethodType() const;
- int flickDistance() const;
- TsuModifyOrder tsuModifyOrder() const;
- bool smallKaKe() const;
- bool pushWubi() const;
- bool pushAsso() const;
- int showGuideAfter() const;
- QColor foregroundColor() const;
- QColor backgroundColor() const;
- QString databaseUrl() const;
- QString twinkleSource() const;
- int twinkleVolume() const;
- bool twinkleBurst() const;
- QString errorString() const;
- public slots:
- void setLanguage(const QString &language);
- void setJapaneseInputMethodType(Settings::JapaneseInputMethodType japaneseInputMethodType);
- void setFlickDistance(int flickDistance);
- void setTsuModifyOrder(Settings::TsuModifyOrder tsuModifyOrder);
- void setSmallKaKe(bool smallKaKe);
- void setPushWubi(bool pushWubi);
- void setShowGuide(bool pushAsso);
- void setShowGuideAfter(int showGuideAfter);
- void setForegroundColor(const QColor &foregroundColor);
- void setBackgroundColor(const QColor &backgroundColor);
- void setDatabaseUrl(const QString &databaseUrl);
- void setTwinkleSource(const QString &twinkleSource);
- void setTwinkleVolume(int twinkleVolume);
- void setTwinkleBurst(bool twinkleBurst);
- void setErrorString(const QString &errorString);
- signals:
- void languageChanged();
- void japaneseInputMethodTypeChanged();
- void flickDistanceChanged();
- void tsuModifyOrderChanged();
- void smallKaKeChanged();
- void pushWubiChanged();
- void pushAssoChanged();
- void showGuideAfterChanged();
- void foregroundColorChanged();
- void backgroundColorChanged();
- void databaseUrlChanged();
- void twinkleSourceChanged();
- void twinkleVolumeChanged();
- void twinkleBurstChanged();
- void errorStringChanged(const QString &errorString);
- private:
- class Private;
- Private *d;
- Q_DISABLE_COPY(Settings)
- };
- #endif // SETTINGS_H
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement