~ubuntu-branches/debian/experimental/quassel/experimental

« back to all changes in this revision

Viewing changes to src/common/settings.h

  • Committer: Bazaar Package Importer
  • Author(s): Thomas Mueller
  • Date: 2009-10-05 23:13:06 UTC
  • mfrom: (1.1.5 upstream)
  • Revision ID: james.westby@ubuntu.com-20091005231306-ngiajv5r0gbxjfoq
Tags: 0.5.0~rc2-1
* New upstream release (rc2)
* Make puiparts happy (closes: #538182)
* manageusers.py added (closes: #549296)

Show diffs side-by-side

added added

removed removed

Lines of Context:
78
78
           + ((format() == QSettings::NativeFormat) ? QLatin1String(".conf") : QLatin1String(".ini"));
79
79
  }
80
80
 
81
 
  static QHash<QString, QHash<QString, QVariant> > settingsCache;
82
 
  static QHash<QString, QHash<QString, SettingsChangeNotifier *> > settingsChangeNotifier;
83
 
 
84
 
  inline void setCacheValue(const QString &group, const QString &key, const QVariant &data) {
85
 
    settingsCache[group][key] = data;
86
 
  }
87
 
  inline const QVariant &cacheValue(const QString &group, const QString &key) {
88
 
    return settingsCache[group][key];
89
 
  }
90
 
  inline bool isCached(const QString &group, const QString &key) {
91
 
    return settingsCache.contains(group) && settingsCache[group].contains(key);
92
 
  }
93
 
 
94
 
  inline SettingsChangeNotifier *notifier(const QString &group, const QString &key) {
95
 
    if(!hasNotifier(group, key))
96
 
      settingsChangeNotifier[group][key] = new SettingsChangeNotifier();
97
 
    return settingsChangeNotifier[group][key];
98
 
  }
99
 
 
100
 
  inline bool hasNotifier(const QString &group, const QString &key) {
101
 
    return settingsChangeNotifier.contains(group) && settingsChangeNotifier[group].contains(key);
 
81
  static QHash<QString, QVariant> settingsCache;
 
82
  static QHash<QString, SettingsChangeNotifier *> settingsChangeNotifier;
 
83
 
 
84
  inline QString normalizedKey(const QString &group, const QString &key) {
 
85
    if(group.isEmpty())
 
86
      return key;
 
87
    return group + '/' + key;
 
88
  }
 
89
 
 
90
  inline void setCacheValue(const QString &normKey, const QVariant &data) {
 
91
    settingsCache[normKey] = data;
 
92
  }
 
93
  inline const QVariant &cacheValue(const QString &normKey) {
 
94
    return settingsCache[normKey];
 
95
  }
 
96
  inline bool isCached(const QString &normKey) {
 
97
    return settingsCache.contains(normKey);
 
98
  }
 
99
 
 
100
  inline SettingsChangeNotifier *notifier(const QString &normKey) {
 
101
    if(!hasNotifier(normKey))
 
102
      settingsChangeNotifier[normKey] = new SettingsChangeNotifier();
 
103
    return settingsChangeNotifier[normKey];
 
104
  }
 
105
 
 
106
  inline bool hasNotifier(const QString &normKey) {
 
107
    return settingsChangeNotifier.contains(normKey);
102
108
  }
103
109
};
104
110