Advertisement
Guest User

Untitled

a guest
Jun 20th, 2014
255
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.99 KB | None | 0 0
  1. #ifndef SETTINGS_H
  2. #define SETTINGS_H
  3.  
  4. #include <QObject>
  5. #include <QColor>
  6. #include <QUrl>
  7.  
  8. class Settings : public QObject
  9. {
  10. Q_OBJECT
  11. Q_PROPERTY(QString language READ language WRITE setLanguage NOTIFY languageChanged)
  12. Q_PROPERTY(Settings::JapaneseInputMethodType japaneseInputMethodType READ japaneseInputMethodType WRITE setJapaneseInputMethodType NOTIFY japaneseInputMethodTypeChanged)
  13. Q_PROPERTY(int flickDistance READ flickDistance WRITE setFlickDistance NOTIFY flickDistanceChanged)
  14. Q_PROPERTY(Settings::TsuModifyOrder tsuModifyOrder READ tsuModifyOrder WRITE setTsuModifyOrder NOTIFY tsuModifyOrderChanged)
  15. Q_PROPERTY(bool smallKaKe READ smallKaKe WRITE setSmallKaKe NOTIFY smallKaKeChanged)
  16. Q_PROPERTY(bool pushWubi READ pushWubi WRITE setPushWubi NOTIFY pushWubiChanged)
  17. Q_PROPERTY(bool pushAsso READ pushAsso WRITE setShowGuide NOTIFY pushAssoChanged)
  18. Q_PROPERTY(int showGuideAfter READ showGuideAfter WRITE setShowGuideAfter NOTIFY showGuideAfterChanged)
  19. Q_PROPERTY(QColor foregroundColor READ foregroundColor WRITE setForegroundColor NOTIFY foregroundColorChanged)
  20. Q_PROPERTY(QColor backgroundColor READ backgroundColor WRITE setBackgroundColor NOTIFY backgroundColorChanged)
  21. Q_PROPERTY(QString databaseUrl READ databaseUrl WRITE setDatabaseUrl NOTIFY databaseUrlChanged)
  22. Q_PROPERTY(QString twinkleSource READ twinkleSource WRITE setTwinkleSource NOTIFY twinkleSourceChanged)
  23. Q_PROPERTY(int twinkleVolume READ twinkleVolume WRITE setTwinkleVolume NOTIFY twinkleVolumeChanged)
  24. Q_PROPERTY(bool twinkleBurst READ twinkleBurst WRITE setTwinkleBurst NOTIFY twinkleBurstChanged)
  25. Q_PROPERTY(QString errorString READ errorString NOTIFY errorStringChanged)
  26. Q_ENUMS(JapaneseInputMethodType)
  27. Q_ENUMS(TsuModifyOrder)
  28. public:
  29. enum JapaneseInputMethodType {
  30. //JapaneseFlick,
  31. JapaneseRomaji
  32. //ADD MORE ?
  33. };
  34.  
  35. enum TsuModifyOrder {
  36. XtsuFirst,
  37. DsuFirst
  38. };
  39.  
  40. explicit Settings(QObject *parent = 0);
  41. ~Settings();
  42.  
  43. QString language() const;
  44. JapaneseInputMethodType japaneseInputMethodType() const;
  45. int flickDistance() const;
  46. TsuModifyOrder tsuModifyOrder() const;
  47. bool smallKaKe() const;
  48. bool pushWubi() const;
  49. bool pushAsso() const;
  50. int showGuideAfter() const;
  51. QColor foregroundColor() const;
  52. QColor backgroundColor() const;
  53. QString databaseUrl() const;
  54. QString twinkleSource() const;
  55. int twinkleVolume() const;
  56. bool twinkleBurst() const;
  57. QString errorString() const;
  58.  
  59. public slots:
  60. void setLanguage(const QString &language);
  61. void setJapaneseInputMethodType(Settings::JapaneseInputMethodType japaneseInputMethodType);
  62. void setFlickDistance(int flickDistance);
  63. void setTsuModifyOrder(Settings::TsuModifyOrder tsuModifyOrder);
  64. void setSmallKaKe(bool smallKaKe);
  65. void setPushWubi(bool pushWubi);
  66. void setShowGuide(bool pushAsso);
  67. void setShowGuideAfter(int showGuideAfter);
  68. void setForegroundColor(const QColor &foregroundColor);
  69. void setBackgroundColor(const QColor &backgroundColor);
  70. void setDatabaseUrl(const QString &databaseUrl);
  71. void setTwinkleSource(const QString &twinkleSource);
  72. void setTwinkleVolume(int twinkleVolume);
  73. void setTwinkleBurst(bool twinkleBurst);
  74. void setErrorString(const QString &errorString);
  75.  
  76. signals:
  77. void languageChanged();
  78. void japaneseInputMethodTypeChanged();
  79. void flickDistanceChanged();
  80. void tsuModifyOrderChanged();
  81. void smallKaKeChanged();
  82. void pushWubiChanged();
  83. void pushAssoChanged();
  84. void showGuideAfterChanged();
  85. void foregroundColorChanged();
  86. void backgroundColorChanged();
  87. void databaseUrlChanged();
  88. void twinkleSourceChanged();
  89. void twinkleVolumeChanged();
  90. void twinkleBurstChanged();
  91. void errorStringChanged(const QString &errorString);
  92.  
  93. private:
  94. class Private;
  95. Private *d;
  96. Q_DISABLE_COPY(Settings)
  97. };
  98.  
  99. #endif // SETTINGS_H
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement