qTox  Version: nightly | Commit: bc751c8e1cac455f9690654fcfe0f560d2d7dfdd
settings.h
Go to the documentation of this file.
1 /*
2  Copyright © 2013 by Maxim Biro <nurupo.contributions@gmail.com>
3  Copyright © 2014-2019 by The qTox Project Contributors
4 
5  This file is part of qTox, a Qt-based graphical interface for Tox.
6 
7  qTox is libre software: you can redistribute it and/or modify
8  it under the terms of the GNU General Public License as published by
9  the Free Software Foundation, either version 3 of the License, or
10  (at your option) any later version.
11 
12  qTox is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with qTox. If not, see <http://www.gnu.org/licenses/>.
19 */
20 
21 #pragma once
22 
23 #include "audio/iaudiosettings.h"
24 #include "src/core/icoresettings.h"
25 #include "src/core/toxencrypt.h"
26 #include "src/core/toxfile.h"
27 #include "src/persistence/paths.h"
32 
33 #include "util/compatiblerecursivemutex.h"
34 
35 #include <QDateTime>
36 #include <QFlags>
37 #include <QFont>
38 #include <QHash>
39 #include <QMutex>
40 #include <QNetworkProxy>
41 #include <QObject>
42 #include <QPixmap>
43 
44 class Profile;
45 class QCommandLineParser;
46 
47 namespace Db {
48 enum class syncType;
49 }
50 
51 class Settings : public QObject,
52  public ICoreSettings,
53  public IFriendSettings,
54  public IGroupSettings,
55  public IAudioSettings,
56  public IVideoSettings,
58 {
59  Q_OBJECT
60 
61  Q_ENUMS(StyleType)
62 
63  // general
64  Q_PROPERTY(bool compactLayout READ getCompactLayout WRITE setCompactLayout NOTIFY compactLayoutChanged FINAL)
65  Q_PROPERTY(bool autorun READ getAutorun WRITE setAutorun NOTIFY autorunChanged FINAL)
66 
67  // GUI
68  Q_PROPERTY(bool separateWindow READ getSeparateWindow WRITE setSeparateWindow NOTIFY
70  Q_PROPERTY(QString smileyPack READ getSmileyPack WRITE setSmileyPack NOTIFY smileyPackChanged FINAL)
71  Q_PROPERTY(int emojiFontPointSize READ getEmojiFontPointSize WRITE setEmojiFontPointSize NOTIFY
73  Q_PROPERTY(bool minimizeOnClose READ getMinimizeOnClose WRITE setMinimizeOnClose NOTIFY
75  Q_PROPERTY(QByteArray windowGeometry READ getWindowGeometry WRITE setWindowGeometry NOTIFY
77  Q_PROPERTY(QByteArray windowState READ getWindowState WRITE setWindowState NOTIFY windowStateChanged FINAL)
78  Q_PROPERTY(QByteArray splitterState READ getSplitterState WRITE setSplitterState NOTIFY
80  Q_PROPERTY(QByteArray dialogGeometry READ getDialogGeometry WRITE setDialogGeometry NOTIFY
82  Q_PROPERTY(QByteArray dialogSplitterState READ getDialogSplitterState WRITE
84  Q_PROPERTY(QByteArray dialogSettingsGeometry READ getDialogSettingsGeometry WRITE
86  Q_PROPERTY(QString style READ getStyle WRITE setStyle NOTIFY styleChanged FINAL)
87  Q_PROPERTY(bool showSystemTray READ getShowSystemTray WRITE setShowSystemTray NOTIFY
89  Q_PROPERTY(bool showIdenticons READ getShowIdenticons WRITE setShowIdenticons NOTIFY
91 
92  // ChatView
93  Q_PROPERTY(bool groupchatPosition READ getGroupchatPosition WRITE setGroupchatPosition NOTIFY
95  Q_PROPERTY(QFont chatMessageFont READ getChatMessageFont WRITE setChatMessageFont NOTIFY
99  Q_PROPERTY(QString timestampFormat READ getTimestampFormat WRITE setTimestampFormat NOTIFY
101  Q_PROPERTY(QString dateFormat READ getDateFormat WRITE setDateFormat NOTIFY dateFormatChanged FINAL)
106 
107  // Privacy
108  Q_PROPERTY(bool typingNotification READ getTypingNotification WRITE setTypingNotification NOTIFY
110  Q_PROPERTY(QStringList blackList READ getBlackList WRITE setBlackList NOTIFY blackListChanged FINAL)
111 
112  // Audio
113  Q_PROPERTY(QString inDev READ getInDev WRITE setInDev NOTIFY inDevChanged FINAL)
114  Q_PROPERTY(bool audioInDevEnabled READ getAudioInDevEnabled WRITE setAudioInDevEnabled NOTIFY
115  audioInDevEnabledChanged FINAL)
117  NOTIFY audioInGainDecibelChanged FINAL)
118  Q_PROPERTY(qreal audioThreshold READ getAudioThreshold WRITE setAudioThreshold NOTIFY
119  audioThresholdChanged FINAL)
120  Q_PROPERTY(QString outDev READ getOutDev WRITE setOutDev NOTIFY outDevChanged FINAL)
121  Q_PROPERTY(bool audioOutDevEnabled READ getAudioOutDevEnabled WRITE setAudioOutDevEnabled NOTIFY
122  audioOutDevEnabledChanged FINAL)
123  Q_PROPERTY(int outVolume READ getOutVolume WRITE setOutVolume NOTIFY outVolumeChanged FINAL)
124  Q_PROPERTY(int audioBitrate READ getAudioBitrate WRITE setAudioBitrate NOTIFY audioBitrateChanged FINAL)
125 
126  // Video
127  Q_PROPERTY(QString videoDev READ getVideoDev WRITE setVideoDev NOTIFY videoDevChanged FINAL)
128  Q_PROPERTY(QRect camVideoRes READ getCamVideoRes WRITE setCamVideoRes NOTIFY camVideoResChanged FINAL)
129  Q_PROPERTY(QRect screenRegion READ getScreenRegion WRITE setScreenRegion NOTIFY screenRegionChanged FINAL)
130  Q_PROPERTY(bool screenGrabbed READ getScreenGrabbed WRITE setScreenGrabbed NOTIFY screenGrabbedChanged FINAL)
131  Q_PROPERTY(float camVideoFPS READ getCamVideoFPS WRITE setCamVideoFPS NOTIFY camVideoFPSChanged FINAL)
132 
133 public:
134  enum class StyleType
135  {
136  NONE = 0,
137  WITH_CHARS = 1,
138  WITHOUT_CHARS = 2
139  };
140 
142  {
143  Name,
144  Activity,
145  };
146 
147 public:
148  static Settings& getInstance();
149  static void destroyInstance();
150 
151  Paths& getPaths();
152  void createSettingsDir();
153  void createPersonal(const QString& basename) const;
154 
155  void savePersonal();
156 
157  void loadGlobal();
158  void loadPersonal(QString profileName, const ToxEncrypt* passKey);
159 
160  void resetToDefault();
161 
162  struct Request
163  {
164  QString address;
165  QString message;
166  bool read;
167  };
168 
169 public slots:
170  void saveGlobal();
171  void sync();
172  void setAutoLogin(bool state);
173  void updateProfileData(Profile* profile, const QCommandLineParser* parser);
174 
175 signals:
176  // General
177  void autorunChanged(bool enabled);
178  void autoSaveEnabledChanged(bool enabled);
179  void autostartInTrayChanged(bool enabled);
180  void closeToTrayChanged(bool enabled);
181  void lightTrayIconChanged(bool enabled);
182  void minimizeToTrayChanged(bool enabled);
183  void notifyChanged(bool enabled);
184  void desktopNotifyChanged(bool enabled);
185  void showWindowChanged(bool enabled);
186  void makeToxPortableChanged(bool enabled);
187  void busySoundChanged(bool enabled);
188  void notifySoundChanged(bool enabled);
189  void notifyHideChanged(bool enabled);
190  void groupAlwaysNotifyChanged(bool enabled);
191  void translationChanged(const QString& translation);
192  void currentProfileIdChanged(quint32 id);
193  void enableLoggingChanged(bool enabled);
194  void autoAwayTimeChanged(int minutes);
195  void globalAutoAcceptDirChanged(const QString& path);
196  void autoAcceptMaxSizeChanged(size_t size);
197  void checkUpdatesChanged(bool enabled);
198  void widgetDataChanged(const QString& key);
199 
200  // GUI
201  void autoLoginChanged(bool enabled);
202  void nameColorsChanged(bool enabled);
203  void separateWindowChanged(bool enabled);
204  void showSystemTrayChanged(bool enabled);
205  bool minimizeOnCloseChanged(bool enabled);
206  void windowGeometryChanged(const QByteArray& rect);
207  void windowStateChanged(const QByteArray& state);
208  void splitterStateChanged(const QByteArray& state);
209  void dialogGeometryChanged(const QByteArray& rect);
210  void dialogSplitterStateChanged(const QByteArray& state);
211  void dialogSettingsGeometryChanged(const QByteArray& rect);
212  void styleChanged(const QString& style);
213  void themeColorChanged(int color);
214  void compactLayoutChanged(bool enabled);
216  void showIdenticonsChanged(bool enabled);
217 
218  // ChatView
219  void useEmoticonsChanged(bool enabled);
220  void smileyPackChanged(const QString& name);
221  void emojiFontPointSizeChanged(int size);
222  void dontGroupWindowsChanged(bool enabled);
223  void groupchatPositionChanged(bool enabled);
224  void chatMessageFontChanged(const QFont& font);
226  void timestampFormatChanged(const QString& format);
227  void dateFormatChanged(const QString& format);
228  void statusChangeNotificationEnabledChanged(bool enabled);
229  void spellCheckingEnabledChanged(bool enabled);
230 
231  // Privacy
232  void typingNotificationChanged(bool enabled);
233  void dbSyncTypeChanged(Db::syncType type);
234 
235 public:
236  bool applyCommandLineOptions(const QCommandLineParser& parser);
237  static bool verifyProxySettings(const QCommandLineParser& parser);
238 
239  bool getMakeToxPortable() const;
240  void setMakeToxPortable(bool newValue);
241 
242  bool getAutorun() const;
243  void setAutorun(bool newValue);
244 
245  bool getAutostartInTray() const;
246  void setAutostartInTray(bool newValue);
247 
248  bool getCloseToTray() const;
249  void setCloseToTray(bool newValue);
250 
251  bool getMinimizeToTray() const;
252  void setMinimizeToTray(bool newValue);
253 
254  bool getLightTrayIcon() const;
255  void setLightTrayIcon(bool newValue);
256 
257  QString getStyle() const;
258  void setStyle(const QString& newValue);
259 
260  bool getShowSystemTray() const;
261  void setShowSystemTray(bool newValue);
262 
263  bool getUseEmoticons() const;
264  void setUseEmoticons(bool newValue);
265 
266  QString getCurrentProfile() const;
267  uint32_t getCurrentProfileId() const;
268  void setCurrentProfile(const QString& profile);
269 
270  QString getTranslation() const;
271  void setTranslation(const QString& newValue);
272 
273  void setAutoSaveEnabled(bool newValue);
274  bool getAutoSaveEnabled() const;
275 
276  // ICoreSettings
277  bool getEnableIPv6() const override;
278  void setEnableIPv6(bool enabled) override;
279 
280  bool getForceTCP() const override;
281  void setForceTCP(bool enabled) override;
282 
283  bool getEnableLanDiscovery() const override;
284  void setEnableLanDiscovery(bool enabled) override;
285 
286  QString getProxyAddr() const override;
287  void setProxyAddr(const QString& address) override;
288 
289  ICoreSettings::ProxyType getProxyType() const override;
290  void setProxyType(ICoreSettings::ProxyType type) override;
291 
292  quint16 getProxyPort() const override;
293  void setProxyPort(quint16 port) override;
294 
295  QNetworkProxy getProxy() const override;
296 
297  SIGNAL_IMPL(Settings, enableIPv6Changed, bool enabled)
298  SIGNAL_IMPL(Settings, forceTCPChanged, bool enabled)
299  SIGNAL_IMPL(Settings, enableLanDiscoveryChanged, bool enabled)
300  SIGNAL_IMPL(Settings, proxyTypeChanged, ICoreSettings::ProxyType type)
301  SIGNAL_IMPL(Settings, proxyAddressChanged, const QString& address)
302  SIGNAL_IMPL(Settings, proxyPortChanged, quint16 port)
303 
304  bool getEnableLogging() const;
305  void setEnableLogging(bool newValue);
306 
307  Db::syncType getDbSyncType() const;
308  void setDbSyncType(Db::syncType newValue);
309 
310  int getAutoAwayTime() const;
311  void setAutoAwayTime(int newValue);
312 
313  bool getCheckUpdates() const;
314  void setCheckUpdates(bool newValue);
315 
316  bool getNotify() const override;
317  void setNotify(bool newValue) override;
318 
319  bool getShowWindow() const override;
320  void setShowWindow(bool newValue) override;
321 
322  bool getDesktopNotify() const override;
323  void setDesktopNotify(bool enabled) override;
324 
325  bool getNotifySound() const override;
326  void setNotifySound(bool newValue) override;
327 
328  bool getNotifyHide() const override;
329  void setNotifyHide(bool newValue) override;
330 
331  bool getBusySound() const override;
332  void setBusySound(bool newValue) override;
333 
334  bool getGroupAlwaysNotify() const override;
335  void setGroupAlwaysNotify(bool newValue) override;
336 
337  QString getInDev() const override;
338  void setInDev(const QString& deviceSpecifier) override;
339 
340  bool getAudioInDevEnabled() const override;
341  void setAudioInDevEnabled(bool enabled) override;
342 
343  QString getOutDev() const override;
344  void setOutDev(const QString& deviceSpecifier) override;
345 
346  bool getAudioOutDevEnabled() const override;
347  void setAudioOutDevEnabled(bool enabled) override;
348 
349  qreal getAudioInGainDecibel() const override;
350  void setAudioInGainDecibel(qreal dB) override;
351 
352  qreal getAudioThreshold() const override;
353  void setAudioThreshold(qreal percent) override;
354 
355  int getOutVolume() const override;
356  int getOutVolumeMin() const override
357  {
358  return 0;
359  }
360  int getOutVolumeMax() const override
361  {
362  return 100;
363  }
364  void setOutVolume(int volume) override;
365 
366  int getAudioBitrate() const override;
367  void setAudioBitrate(int bitrate) override;
368 
369  bool getEnableTestSound() const override;
370  void setEnableTestSound(bool newValue) override;
371 
372  SIGNAL_IMPL(Settings, inDevChanged, const QString& device)
373  SIGNAL_IMPL(Settings, audioInDevEnabledChanged, bool enabled)
374 
375  SIGNAL_IMPL(Settings, outDevChanged, const QString& device)
376  SIGNAL_IMPL(Settings, audioOutDevEnabledChanged, bool enabled)
377 
378  SIGNAL_IMPL(Settings, audioInGainDecibelChanged, qreal dB)
379  SIGNAL_IMPL(Settings, audioThresholdChanged, qreal percent)
380  SIGNAL_IMPL(Settings, outVolumeChanged, int volume)
381  SIGNAL_IMPL(Settings, audioBitrateChanged, int bitrate)
382  SIGNAL_IMPL(Settings, enableTestSoundChanged, bool newValue)
383 
384  QString getVideoDev() const override;
385  void setVideoDev(const QString& deviceSpecifier) override;
386 
387  QRect getScreenRegion() const override;
388  void setScreenRegion(const QRect& value) override;
389 
390  bool getScreenGrabbed() const override;
391  void setScreenGrabbed(bool value) override;
392 
393  QRect getCamVideoRes() const override;
394  void setCamVideoRes(QRect newValue) override;
395 
396  float getCamVideoFPS() const override;
397  void setCamVideoFPS(float newValue) override;
398 
399  SIGNAL_IMPL(Settings, videoDevChanged, const QString& device)
400  SIGNAL_IMPL(Settings, screenRegionChanged, const QRect& region)
401  SIGNAL_IMPL(Settings, screenGrabbedChanged, bool enabled)
402  SIGNAL_IMPL(Settings, camVideoResChanged, const QRect& region)
403  SIGNAL_IMPL(Settings, camVideoFPSChanged, unsigned short fps)
404 
405  bool isAnimationEnabled() const;
406  void setAnimationEnabled(bool newValue);
407 
408  QString getSmileyPack() const;
409  void setSmileyPack(const QString& value);
410 
411  int getThemeColor() const;
412  void setThemeColor(int value);
413 
415  void setStylePreference(StyleType newValue);
416 
417  bool isCurstomEmojiFont() const;
418  void setCurstomEmojiFont(bool value);
419 
420  int getEmojiFontPointSize() const;
421  void setEmojiFontPointSize(int value);
422 
423  QString getContactNote(const ToxPk& id) const override;
424  void setContactNote(const ToxPk& id, const QString& note) override;
425 
426  QString getAutoAcceptDir(const ToxPk& id) const override;
427  void setAutoAcceptDir(const ToxPk& id, const QString& dir) override;
428 
429  AutoAcceptCallFlags getAutoAcceptCall(const ToxPk& id) const override;
430  void setAutoAcceptCall(const ToxPk& id, AutoAcceptCallFlags accept) override;
431 
432  QString getGlobalAutoAcceptDir() const;
433  void setGlobalAutoAcceptDir(const QString& dir);
434 
435  size_t getMaxAutoAcceptSize() const;
436  void setMaxAutoAcceptSize(size_t size);
437 
438  bool getAutoGroupInvite(const ToxPk& id) const override;
439  void setAutoGroupInvite(const ToxPk& id, bool accept) override;
440 
441  // ChatView
442  const QFont& getChatMessageFont() const;
443  void setChatMessageFont(const QFont& font);
444 
445  const QString& getTimestampFormat() const;
446  void setTimestampFormat(const QString& format);
447 
448  const QString& getDateFormat() const;
449  void setDateFormat(const QString& format);
450 
451  bool getMinimizeOnClose() const;
452  void setMinimizeOnClose(bool newValue);
453 
455  void setStatusChangeNotificationEnabled(bool newValue);
456 
457  bool getSpellCheckingEnabled() const;
458  void setSpellCheckingEnabled(bool newValue);
459 
460  // Privacy
461  bool getTypingNotification() const;
462  void setTypingNotification(bool enabled);
463 
464  QStringList getBlackList() const override;
465  void setBlackList(const QStringList& blist) override;
466  SIGNAL_IMPL(Settings, blackListChanged, QStringList const& blist)
467 
468  bool getShowGroupJoinLeaveMessages() const override;
469  void setShowGroupJoinLeaveMessages(bool newValue) override;
470  SIGNAL_IMPL(Settings, showGroupJoinLeaveMessagesChanged, bool show)
471 
472  // State
473  QByteArray getWindowGeometry() const;
474  void setWindowGeometry(const QByteArray& value);
475 
476  QByteArray getWindowState() const;
477  void setWindowState(const QByteArray& value);
478 
479  QByteArray getSplitterState() const;
480  void setSplitterState(const QByteArray& value);
481 
482  QByteArray getDialogGeometry() const;
483  void setDialogGeometry(const QByteArray& value);
484 
485  QByteArray getDialogSplitterState() const;
486  void setDialogSplitterState(const QByteArray& value);
487 
488  QByteArray getDialogSettingsGeometry() const;
489  void setDialogSettingsGeometry(const QByteArray& value);
490 
491  QString getFriendAddress(const QString& publicKey) const;
492  void updateFriendAddress(const QString& newAddr);
493 
494  QString getFriendAlias(const ToxPk& id) const override;
495  void setFriendAlias(const ToxPk& id, const QString& alias) override;
496 
497  int getFriendCircleID(const ToxPk& id) const override;
498  void setFriendCircleID(const ToxPk& id, int circleID) override;
499 
500  QDateTime getFriendActivity(const ToxPk& id) const override;
501  void setFriendActivity(const ToxPk& id, const QDateTime& date) override;
502 
503  void saveFriendSettings(const ToxPk& id) override;
504  void removeFriendSettings(const ToxPk& id) override;
505 
506  SIGNAL_IMPL(Settings, autoAcceptCallChanged, const ToxPk& id,
507  IFriendSettings::AutoAcceptCallFlags accept)
508  SIGNAL_IMPL(Settings, autoGroupInviteChanged, const ToxPk& id, bool accept)
509  SIGNAL_IMPL(Settings, autoAcceptDirChanged, const ToxPk& id, const QString& dir)
510  SIGNAL_IMPL(Settings, contactNoteChanged, const ToxPk& id, const QString& note)
511 
512  bool getCompactLayout() const;
513  void setCompactLayout(bool compact);
514 
517 
518  bool getSeparateWindow() const;
519  void setSeparateWindow(bool value);
520 
521  bool getDontGroupWindows() const;
522  void setDontGroupWindows(bool value);
523 
524  bool getGroupchatPosition() const;
525  void setGroupchatPosition(bool value);
526 
527  bool getShowIdenticons() const;
528  void setShowIdenticons(bool value);
529 
530  bool getAutoLogin() const;
531  void setEnableGroupChatsColor(bool state);
532  bool getEnableGroupChatsColor() const;
533 
534  int getCircleCount() const;
535  int addCircle(const QString& name = QString());
536  int removeCircle(int id);
537  QString getCircleName(int id) const;
538  void setCircleName(int id, const QString& name);
539  bool getCircleExpanded(int id) const;
540  void setCircleExpanded(int id, bool expanded);
541 
542  bool addFriendRequest(const QString& friendAddress, const QString& message);
543  unsigned int getUnreadFriendRequests() const;
544  Request getFriendRequest(int index) const;
545  int getFriendRequestSize() const;
547  void removeFriendRequest(int index);
548  void readFriendRequest(int index);
549 
550  QByteArray getWidgetData(const QString& uniqueName) const;
551  void setWidgetData(const QString& uniqueName, const QByteArray& data);
552 
553  // Wrappers around getWidgetData() and setWidgetData()
554  // Assume widget has a unique objectName set
555  template <class T>
556  void restoreGeometryState(T* widget) const
557  {
558  widget->restoreGeometry(getWidgetData(widget->objectName() + "Geometry"));
559  widget->restoreState(getWidgetData(widget->objectName() + "State"));
560  }
561  template <class T>
562  void saveGeometryState(const T* widget)
563  {
564  setWidgetData(widget->objectName() + "Geometry", widget->saveGeometry());
565  setWidgetData(widget->objectName() + "State", widget->saveState());
566  }
567 
568  static uint32_t makeProfileId(const QString& profile);
569 
570 private:
571  struct friendProp;
572 
573  Settings();
574  ~Settings();
575  Settings(Settings& settings) = delete;
576  Settings& operator=(const Settings&) = delete;
577  void savePersonal(QString profileName, const ToxEncrypt* passkey);
578  friendProp& getOrInsertFriendPropRef(const ToxPk& id);
580 
581  template <typename T>
582  bool setVal(T& savedVal, T newVal);
583 
584 public slots:
585  void savePersonal(Profile* profile);
586 
587 private:
588  bool loaded;
589 
593 
594  bool autoLogin;
595  bool compactLayout;
597  bool groupchatPosition;
598  bool separateWindow;
600  bool showIdenticons;
602  QString translation;
609  bool notify;
614  bool busySound;
617 
618  bool forceTCP;
620 
622  QString proxyAddr;
623  quint16 proxyPort;
624 
625  QString currentProfile;
627 
629 
631 
637 
639 
640  // GUI
641  QString smileyPack;
642  int emojiFontPointSize;
643  bool minimizeOnClose;
644  QByteArray windowGeometry;
645  QByteArray windowState;
646  QByteArray splitterState;
647  QByteArray dialogGeometry;
648  QByteArray dialogSplitterState;
649  QByteArray dialogSettingsGeometry;
650  QString style;
651  bool showSystemTray;
652 
653  // ChatView
654  QFont chatMessageFont;
658  QString timestampFormat;
659  QString dateFormat;
663 
664  // Privacy
665  bool typingNotification;
666  Db::syncType dbSyncType;
667  QStringList blackList;
668 
669  // Audio
670  QString inDev;
671  bool audioInDevEnabled;
672  qreal audioInGainDecibel;
673  qreal audioThreshold;
674  QString outDev;
675  bool audioOutDevEnabled;
676  int outVolume;
677  int audioBitrate;
679 
680  // Video
681  QString videoDev;
682  QRect camVideoRes;
683  QRect screenRegion;
684  bool screenGrabbed;
685  float camVideoFPS;
686 
687  struct friendProp
688  {
689  friendProp() = delete;
690  friendProp(QString addr)
691  : addr(addr)
692  {}
693  QString alias = "";
694  QString addr = "";
695  QString autoAcceptDir = "";
696  QString note = "";
697  int circleID = -1;
698  QDateTime activity = QDateTime();
699  AutoAcceptCallFlags autoAcceptCall;
700  bool autoGroupInvite = false;
701  };
702 
703  struct circleProp
704  {
705  QString name;
706  bool expanded;
707  };
708 
710 
711  QVector<circleProp> circleLst;
712 
714 
715  static CompatibleRecursiveMutex bigLock;
717  static const QString globalSettingsFile;
718  static QThread* settingsThread;
720 };
Settings::showSystemTray
bool showSystemTray
Definition: settings.h:88
Settings::lightTrayIcon
bool lightTrayIcon
Definition: settings.h:606
Settings::forceTCP
bool forceTCP
Definition: settings.h:618
Settings::setTimestampFormat
void setTimestampFormat(const QString &format)
Definition: settings.cpp:1487
Settings::setProxyType
void setProxyType(ICoreSettings::ProxyType type) override
Definition: settings.cpp:1177
Settings::getContactNote
QString getContactNote(const ToxPk &id) const override
Definition: settings.cpp:1365
Settings::emojiFontPointSizeChanged
void emojiFontPointSizeChanged(int size)
Settings::setGlobalAutoAcceptDir
void setGlobalAutoAcceptDir(const QString &dir)
Definition: settings.cpp:1400
Settings::removeFriendSettings
void removeFriendSettings(const ToxPk &id) override
Definition: settings.cpp:1934
Settings::sortingModeChanged
void sortingModeChanged(FriendListSortingMode mode)
Settings
Definition: settings.h:51
Settings::circleLst
QVector< circleProp > circleLst
Definition: settings.h:711
Settings::paths
Paths paths
Definition: settings.h:719
Settings::setEnableTestSound
void setEnableTestSound(bool newValue) override
Definition: settings.cpp:845
Settings::setAutoAcceptDir
void setAutoAcceptDir(const ToxPk &id, const QString &dir) override
Definition: settings.cpp:1287
Settings::saveFriendSettings
void saveFriendSettings(const ToxPk &id) override
Definition: settings.cpp:1928
Settings::setFriendSortingMode
void setFriendSortingMode(FriendListSortingMode mode)
Definition: settings.cpp:1959
Settings::minimizeOnCloseChanged
bool minimizeOnCloseChanged(bool enabled)
Settings::autoAccept
QHash< QString, QString > autoAccept
Definition: settings.h:633
Settings::loadPersonal
void loadPersonal(QString profileName, const ToxEncrypt *passKey)
Definition: settings.cpp:461
Settings::restoreGeometryState
void restoreGeometryState(T *widget) const
Definition: settings.h:556
Settings::setBusySound
void setBusySound(bool newValue) override
Definition: settings.cpp:1086
Settings::getCheckUpdates
bool getCheckUpdates() const
Definition: settings.cpp:1546
Settings::friendProp::autoGroupInvite
bool autoGroupInvite
Definition: settings.h:700
Settings::setSeparateWindow
void setSeparateWindow(bool value)
Definition: settings.cpp:1972
Settings::setAnimationEnabled
void setAnimationEnabled(bool newValue)
Settings::friendProp::circleID
int circleID
Definition: settings.h:697
Settings::addCircle
int addCircle(const QString &name=QString())
Definition: settings.cpp:2037
Settings::makeToxPortableChanged
void makeToxPortableChanged(bool enabled)
Settings::globalSettingsFile
static const QString globalSettingsFile
Definition: settings.h:717
Settings::notifyChanged
void notifyChanged(bool enabled)
Settings::setAudioInGainDecibel
void setAudioInGainDecibel(qreal dB) override
Definition: settings.cpp:1721
Settings::dateFormatChanged
void dateFormatChanged(const QString &format)
Settings::separateWindowChanged
void separateWindowChanged(bool enabled)
Settings::getAutoLogin
bool getAutoLogin() const
Definition: settings.cpp:2153
Settings::setStylePreference
void setStylePreference(StyleType newValue)
Definition: settings.cpp:1513
Settings::desktopNotifyChanged
void desktopNotifyChanged(bool enabled)
Settings::statusChangeNotificationEnabled
bool statusChangeNotificationEnabled
Definition: settings.h:103
Settings::autoSaveEnabledChanged
void autoSaveEnabledChanged(bool enabled)
toxfile.h
Settings::setContactNote
void setContactNote(const ToxPk &id, const QString &note) override
Definition: settings.cpp:1376
Settings::setScreenRegion
void setScreenRegion(const QRect &value) override
Definition: settings.cpp:1812
Settings::getAutostartInTray
bool getAutostartInTray() const
Definition: settings.cpp:911
Settings::getCamVideoFPS
float getCamVideoFPS() const override
Definition: settings.cpp:1845
Settings::compactLayout
bool compactLayout
Definition: settings.h:64
Settings::getCircleCount
int getCircleCount() const
Definition: settings.cpp:2018
Settings::getStyle
QString getStyle() const
Definition: settings.cpp:917
Settings::getFriendAlias
QString getFriendAlias(const ToxPk &id) const override
Definition: settings.cpp:1877
ICoreSettings::ProxyType
ProxyType
Definition: icoresettings.h:30
Settings::getEnableLanDiscovery
bool getEnableLanDiscovery() const override
Definition: settings.cpp:1132
Settings::getWindowGeometry
QByteArray getWindowGeometry() const
Definition: settings.cpp:1520
Settings::setProxyPort
void setProxyPort(quint16 port) override
Definition: settings.cpp:1203
Settings::firstColumnHandlePos
int firstColumnHandlePos
Definition: settings.h:656
Settings::windowStateChanged
void windowStateChanged(const QByteArray &state)
Settings::dhtServerId
int dhtServerId
Definition: settings.h:591
Settings::audioInGainDecibel
qreal audioInGainDecibel
Definition: settings.h:117
Settings::groupAlwaysNotify
bool groupAlwaysNotify
Definition: settings.h:615
Settings::dontShowDhtDialog
bool dontShowDhtDialog
Definition: settings.h:592
Settings::proxyType
ICoreSettings::ProxyType proxyType
Definition: settings.h:621
Settings::widgetSettings
QHash< QString, QByteArray > widgetSettings
Assume all widgets have unique names.
Definition: settings.h:632
Settings::camVideoRes
QRect camVideoRes
Definition: settings.h:128
Settings::showWindowChanged
void showWindowChanged(bool enabled)
Settings::friendProp::autoAcceptDir
QString autoAcceptDir
Definition: settings.h:695
Settings::audioBitrate
int audioBitrate
Definition: settings.h:124
Settings::closeToTrayChanged
void closeToTrayChanged(bool enabled)
Settings::getMinimizeToTray
bool getMinimizeToTray() const
Definition: settings.cpp:989
icoresettings.h
Settings::nameColorsChanged
void nameColorsChanged(bool enabled)
Profile
Handles all qTox internal paths.
Definition: profile.h:42
Settings::autoLogin
bool autoLogin
Definition: settings.h:594
Settings::enableIPv6
bool enableIPv6
Definition: settings.h:601
Settings::setAudioBitrate
void setAudioBitrate(int bitrate) override
Definition: settings.cpp:1799
Settings::createSettingsDir
void createSettingsDir()
Creates a path to the settings dir, if it doesn't already exist.
Definition: settings.cpp:2205
Settings::verifyProxySettings
static bool verifyProxySettings(const QCommandLineParser &parser)
Definition: settings.cpp:284
IGroupSettings
Definition: igroupsettings.h:26
Settings::setShowIdenticons
void setShowIdenticons(bool value)
Definition: settings.cpp:2011
Settings::setCircleExpanded
void setCircleExpanded(int id, bool expanded)
Definition: settings.cpp:2060
Settings::getCurrentProfileId
uint32_t getCurrentProfileId() const
Definition: settings.cpp:1216
Settings::getOutVolumeMin
int getOutVolumeMin() const override
Definition: settings.h:356
Settings::getAutoAwayTime
int getAutoAwayTime() const
Definition: settings.cpp:1254
Settings::setBlackList
void setBlackList(const QStringList &blist) override
Definition: settings.cpp:1682
Settings::getChatMessageFont
const QFont & getChatMessageFont() const
Definition: settings.cpp:1420
Paths
Definition: paths.h:28
Settings::windowState
QByteArray windowState
Definition: settings.h:77
Settings::audioInDevEnabled
bool audioInDevEnabled
Definition: settings.h:115
Settings::typingNotification
bool typingNotification
Definition: settings.h:109
Settings::smileyPack
QString smileyPack
Definition: settings.h:70
Settings::getShowWindow
bool getShowWindow() const override
Definition: settings.cpp:1572
Settings::setDbSyncType
void setDbSyncType(Db::syncType newValue)
Settings::removeFriendRequest
void removeFriendRequest(int index)
Definition: settings.cpp:2118
Settings::setChatMessageFont
void setChatMessageFont(const QFont &font)
Definition: settings.cpp:1426
Settings::setMinimizeToTray
void setMinimizeToTray(bool newValue)
Definition: settings.cpp:995
Settings::setCurrentProfile
void setCurrentProfile(const QString &profile)
Definition: settings.cpp:1222
Settings::dialogGeometry
QByteArray dialogGeometry
Definition: settings.h:81
Settings::getFriendAddress
QString getFriendAddress(const QString &publicKey) const
Definition: settings.cpp:1858
Settings::getSmileyPack
QString getSmileyPack() const
Definition: settings.cpp:1455
Settings::autoLoginChanged
void autoLoginChanged(bool enabled)
Settings::getOutDev
QString getOutDev() const override
Definition: settings.cpp:1754
Settings::circleProp::name
QString name
Definition: settings.h:705
Settings::getEmojiFontPointSize
int getEmojiFontPointSize() const
Definition: settings.cpp:1468
Settings::Settings
Settings()
Definition: settings.cpp:65
Settings::getForceTCP
bool getForceTCP() const override
Definition: settings.cpp:1119
Settings::getDialogSplitterState
QByteArray getDialogSplitterState() const
Definition: settings.cpp:1624
Settings::separateWindow
bool separateWindow
Definition: settings.h:69
Settings::getInDev
QString getInDev() const override
Definition: settings.cpp:1689
Settings::Request::message
QString message
Definition: settings.h:165
Settings::setAutoLogin
void setAutoLogin(bool state)
Definition: settings.cpp:2159
Settings::globalAutoAcceptDirChanged
void globalAutoAcceptDirChanged(const QString &path)
Settings::getStatusChangeNotificationEnabled
bool getStatusChangeNotificationEnabled() const
Definition: settings.cpp:1015
Settings::setTypingNotification
void setTypingNotification(bool enabled)
Definition: settings.cpp:1669
Settings::~Settings
~Settings()
Definition: settings.cpp:77
Settings::getDontGroupWindows
bool getDontGroupWindows() const
Definition: settings.cpp:1979
Settings::makeProfileId
static uint32_t makeProfileId(const QString &profile)
Definition: settings.cpp:827
ifriendsettings.h
Settings::setAutostartInTray
void setAutostartInTray(bool newValue)
Definition: settings.cpp:969
Settings::setFriendAlias
void setFriendAlias(const ToxPk &id, const QString &alias) override
Definition: settings.cpp:1887
Settings::setMaxAutoAcceptSize
void setMaxAutoAcceptSize(size_t size)
Definition: settings.cpp:1413
Settings::Request::read
bool read
Definition: settings.h:166
Settings::busySoundChanged
void busySoundChanged(bool enabled)
Settings::isAnimationEnabled
bool isAnimationEnabled() const
Settings::getEnableTestSound
bool getEnableTestSound() const override
Definition: settings.cpp:839
Settings::setForceTCP
void setForceTCP(bool enabled) override
Definition: settings.cpp:1125
Settings::getNotify
bool getNotify() const override
Definition: settings.cpp:1559
QList
Definition: friendlist.h:25
Settings::showIdenticons
bool showIdenticons
Definition: settings.h:90
Settings::dialogSettingsGeometryChanged
void dialogSettingsGeometryChanged(const QByteArray &rect)
Settings::getSpellCheckingEnabled
bool getSpellCheckingEnabled() const
Definition: settings.cpp:1041
Settings::enableTestSound
bool enableTestSound
Definition: settings.h:678
Settings::getUseEmoticons
bool getUseEmoticons() const
Definition: settings.cpp:950
Settings::setShowGroupJoinLeaveMessages
void setShowGroupJoinLeaveMessages(bool newValue) override
Definition: settings.cpp:1034
Settings::autorunChanged
void autorunChanged(bool enabled)
Settings::enableLoggingChanged
void enableLoggingChanged(bool enabled)
Settings::audioOutDevEnabled
bool audioOutDevEnabled
Definition: settings.h:122
Settings::getAudioInDevEnabled
bool getAudioInDevEnabled() const override
Definition: settings.cpp:1702
Settings::autoAwayTimeChanged
void autoAwayTimeChanged(int minutes)
Settings::useEmoticonsChanged
void useEmoticonsChanged(bool enabled)
Settings::notifyHideChanged
void notifyHideChanged(bool enabled)
Settings::getShowSystemTray
bool getShowSystemTray() const
Definition: settings.cpp:930
Settings::getDateFormat
const QString & getDateFormat() const
Definition: settings.cpp:1494
Settings::removeCircle
int removeCircle(int id)
Definition: settings.cpp:2130
Settings::resetToDefault
void resetToDefault()
Definition: settings.cpp:565
Settings::getAutorun
bool getAutorun() const
Definition: settings.cpp:886
Settings::getProxy
QNetworkProxy getProxy() const override
Definition: settings.cpp:1145
Settings::dialogSettingsGeometry
QByteArray dialogSettingsGeometry
Definition: settings.h:85
Settings::currentProfileIdChanged
void currentProfileIdChanged(quint32 id)
Settings::setAutoGroupInvite
void setAutoGroupInvite(const ToxPk &id, bool accept) override
Definition: settings.cpp:1346
Settings::timestampFormat
QString timestampFormat
Definition: settings.h:100
Settings::createPersonal
void createPersonal(const QString &basename) const
Write a default personal .ini settings file for a profile.
Definition: settings.cpp:2184
Settings::getDialogSettingsGeometry
QByteArray getDialogSettingsGeometry() const
Definition: settings.cpp:1637
Settings::setDontGroupWindows
void setDontGroupWindows(bool value)
Definition: settings.cpp:1985
Settings::secondColumnHandlePosFromRight
int secondColumnHandlePosFromRight
Definition: settings.h:657
Settings::setEnableIPv6
void setEnableIPv6(bool enabled) override
Definition: settings.cpp:858
Settings::globalAutoAcceptDir
QString globalAutoAcceptDir
Definition: settings.h:635
Settings::friendProp
Definition: settings.h:687
Settings::translation
QString translation
Definition: settings.h:602
Settings::getAutoAcceptDir
QString getAutoAcceptDir(const ToxPk &id) const override
Definition: settings.cpp:1276
Settings::loadGlobal
void loadGlobal()
Definition: settings.cpp:102
Settings::getUnreadFriendRequests
unsigned int getUnreadFriendRequests() const
Definition: settings.cpp:2087
Settings::groupchatPosition
bool groupchatPosition
Definition: settings.h:94
Settings::circleProp::expanded
bool expanded
Definition: settings.h:706
Settings::setNotifyHide
void setNotifyHide(bool newValue) override
Definition: settings.cpp:1073
Settings::translationChanged
void translationChanged(const QString &translation)
Settings::StyleType
StyleType
Definition: settings.h:134
Settings::smileyPackChanged
void smileyPackChanged(const QString &name)
Settings::setFriendCircleID
void setFriendCircleID(const ToxPk &id, int circleID) override
Definition: settings.cpp:1904
Settings::autostartInTray
bool autostartInTray
Definition: settings.h:603
Settings::setDialogSettingsGeometry
void setDialogSettingsGeometry(const QByteArray &value)
Definition: settings.cpp:1643
Settings::setAudioThreshold
void setAudioThreshold(qreal percent) override
Definition: settings.cpp:1734
Settings::FriendListSortingMode
FriendListSortingMode
Definition: settings.h:141
Settings::styleChanged
void styleChanged(const QString &style)
Settings::desktopNotify
bool desktopNotify
Definition: settings.h:610
Settings::stylePreference
StyleType stylePreference
Definition: settings.h:98
Settings::getFriendCircleID
int getFriendCircleID(const ToxPk &id) const override
Definition: settings.cpp:1894
Settings::autoSaveEnabled
bool autoSaveEnabled
Definition: settings.h:634
Settings::autorun
bool autorun
Definition: settings.h:65
Settings::enableLogging
bool enableLogging
Definition: settings.h:628
Settings::autoAwayTime
int autoAwayTime
Definition: settings.h:630
Settings::getOrInsertFriendPropRef
friendProp & getOrInsertFriendPropRef(const ToxPk &id)
Definition: settings.cpp:2229
Settings::getSplitterState
QByteArray getSplitterState() const
Definition: settings.cpp:1598
Settings::setEnableLogging
void setEnableLogging(bool newValue)
Definition: settings.cpp:1247
Settings::setProxyAddr
void setProxyAddr(const QString &address) override
Definition: settings.cpp:1190
Settings::setWindowGeometry
void setWindowGeometry(const QByteArray &value)
Definition: settings.cpp:1526
Settings::screenGrabbed
bool screenGrabbed
Definition: settings.h:130
Settings::getEnableGroupChatsColor
bool getEnableGroupChatsColor() const
Definition: settings.cpp:2173
Settings::setDialogGeometry
void setDialogGeometry(const QByteArray &value)
Definition: settings.cpp:1617
Settings::dbSyncTypeChanged
void dbSyncTypeChanged(Db::syncType type)
Settings::checkUpdates
bool checkUpdates
Definition: settings.h:608
Settings::splitterStateChanged
void splitterStateChanged(const QByteArray &state)
Settings::chatMessageFontChanged
void chatMessageFontChanged(const QFont &font)
Settings::showGroupJoinLeaveMessages
bool showGroupJoinLeaveMessages
Definition: settings.h:661
Settings::getAutoAcceptCall
AutoAcceptCallFlags getAutoAcceptCall(const ToxPk &id) const override
Definition: settings.cpp:1305
Settings::setGroupchatPosition
void setGroupchatPosition(bool value)
Definition: settings.cpp:1998
Settings::getGlobalAutoAcceptDir
QString getGlobalAutoAcceptDir() const
Definition: settings.cpp:1394
Settings::lightTrayIconChanged
void lightTrayIconChanged(bool enabled)
Settings::getDbSyncType
Db::syncType getDbSyncType() const
HistMessageContentType::message
@ message
Settings::setEnableGroupChatsColor
void setEnableGroupChatsColor(bool state)
Definition: settings.cpp:2166
Settings::getScreenRegion
QRect getScreenRegion() const override
Definition: settings.cpp:1806
Settings::getDialogGeometry
QByteArray getDialogGeometry() const
Definition: settings.cpp:1611
Settings::getGroupchatPosition
bool getGroupchatPosition() const
Definition: settings.cpp:1992
Settings::getBusySound
bool getBusySound() const override
Definition: settings.cpp:1080
Settings::getSeparateWindow
bool getSeparateWindow() const
Definition: settings.cpp:1966
Settings::setAutorun
void setAutorun(bool newValue)
Definition: settings.cpp:897
paths.h
ToxPk
This class represents a Tox Public Key, which is a part of Tox ID.
Definition: toxpk.h:26
Settings::setSplitterState
void setSplitterState(const QByteArray &value)
Definition: settings.cpp:1604
Settings::setShowSystemTray
void setShowSystemTray(bool newValue)
Definition: settings.cpp:936
Settings::getShowGroupJoinLeaveMessages
bool getShowGroupJoinLeaveMessages() const override
Definition: settings.cpp:1028
Settings::useEmoticons
bool useEmoticons
Definition: settings.h:607
Settings::getProxyPort
quint16 getProxyPort() const override
Definition: settings.cpp:1197
Settings::proxyAddr
QString proxyAddr
Definition: settings.h:622
Settings::nameColors
bool nameColors
Definition: settings.h:616
Settings::getStylePreference
StyleType getStylePreference() const
Definition: settings.cpp:1507
Settings::windowGeometryChanged
void windowGeometryChanged(const QByteArray &rect)
inotificationsettings.h
Settings::friendProp::alias
QString alias
Definition: settings.h:693
Settings::spellCheckingEnabled
bool spellCheckingEnabled
Definition: settings.h:105
Settings::setEnableLanDiscovery
void setEnableLanDiscovery(bool enabled) override
Definition: settings.cpp:1138
Settings::circleProp
Definition: settings.h:703
Settings::saveGeometryState
void saveGeometryState(const T *widget)
Definition: settings.h:562
Settings::isCurstomEmojiFont
bool isCurstomEmojiFont() const
Settings::getCircleExpanded
bool getCircleExpanded(int id) const
Definition: settings.cpp:2054
Settings::windowGeometry
QByteArray windowGeometry
Definition: settings.h:76
Settings::dontGroupWindowsChanged
void dontGroupWindowsChanged(bool enabled)
Settings::minimizeToTrayChanged
void minimizeToTrayChanged(bool enabled)
Settings::getCamVideoRes
QRect getCamVideoRes() const override
Definition: settings.cpp:1832
Settings::getPaths
Paths & getPaths()
Definition: settings.cpp:834
Settings::videoDev
QString videoDev
Definition: settings.h:127
Settings::friendProp::friendProp
friendProp()=delete
ToxEncrypt
Encapsulates the toxencrypsave API. Since key derivation is work intensive and to avoid storing plain...
Definition: toxencrypt.h:29
Settings::setEmojiFontPointSize
void setEmojiFontPointSize(int value)
Definition: settings.cpp:1474
Settings::Request
Definition: settings.h:162
Settings::notifySound
bool notifySound
Definition: settings.h:612
Settings::getMakeToxPortable
bool getMakeToxPortable() const
Definition: settings.cpp:865
Settings::SIGNAL_IMPL
SIGNAL_IMPL(Settings, autoAcceptCallChanged, const ToxPk &id, IFriendSettings::AutoAcceptCallFlags accept) bool getCompactLayout() const
Settings::setLightTrayIcon
void setLightTrayIcon(bool newValue)
Definition: settings.cpp:1008
Settings::minimizeOnClose
bool minimizeOnClose
Definition: settings.h:74
Settings::friendRequests
QList< Request > friendRequests
Definition: settings.h:638
Settings::setAudioOutDevEnabled
void setAudioOutDevEnabled(bool enabled) override
Definition: settings.cpp:1773
Settings::settingsThread
static QThread * settingsThread
Definition: settings.h:718
QHash< QString, QByteArray >
Settings::readFriendRequest
void readFriendRequest(int index)
Definition: settings.cpp:2124
Settings::getFriendActivity
QDateTime getFriendActivity(const ToxPk &id) const override
Definition: settings.cpp:1911
Settings::notify
bool notify
Definition: settings.h:609
Settings::setScreenGrabbed
void setScreenGrabbed(bool value) override
Definition: settings.cpp:1825
Settings::setAutoSaveEnabled
void setAutoSaveEnabled(bool newValue)
Definition: settings.cpp:956
Settings::setFriendActivity
void setFriendActivity(const ToxPk &id, const QDateTime &date) override
Definition: settings.cpp:1921
Settings::friendProp::activity
QDateTime activity
Definition: settings.h:698
Settings::audioThreshold
qreal audioThreshold
Definition: settings.h:119
Settings::getAutoGroupInvite
bool getAutoGroupInvite(const ToxPk &id) const override
Definition: settings.cpp:1334
Settings::fixInvalidProxyType
ICoreSettings::ProxyType fixInvalidProxyType(ICoreSettings::ProxyType proxyType)
Definition: settings.cpp:2241
Settings::dateFormat
QString dateFormat
Definition: settings.h:101
Settings::saveGlobal
void saveGlobal()
Asynchronous, saves the global settings.
Definition: settings.cpp:582
Settings::checkUpdatesChanged
void checkUpdatesChanged(bool enabled)
Settings::getWindowState
QByteArray getWindowState() const
Definition: settings.cpp:1533
Settings::notifySoundChanged
void notifySoundChanged(bool enabled)
IFriendSettings
Definition: ifriendsettings.h:29
Settings::spellCheckingEnabledChanged
void spellCheckingEnabledChanged(bool enabled)
Settings::setCompactLayout
void setCompactLayout(bool compact)
Definition: settings.cpp:1946
Settings::setCheckUpdates
void setCheckUpdates(bool newValue)
Definition: settings.cpp:1552
Settings::getInstance
static Settings & getInstance()
Returns the singleton instance.
Definition: settings.cpp:88
Settings::friendLst
QHash< QByteArray, friendProp > friendLst
Definition: settings.h:709
Settings::notifyHide
bool notifyHide
Definition: settings.h:613
Settings::themeColorChanged
void themeColorChanged(int color)
Settings::sync
void sync()
Waits for all asynchronous operations to complete.
Definition: settings.cpp:2218
Settings::setInDev
void setInDev(const QString &deviceSpecifier) override
Definition: settings.cpp:1695
Settings::setThemeColor
void setThemeColor(int value)
Definition: settings.cpp:2146
Settings::getProxyAddr
QString getProxyAddr() const override
Definition: settings.cpp:1184
Settings::currentProfile
QString currentProfile
Definition: settings.h:625
IVideoSettings
Definition: ivideosettings.h:27
Settings::setStyle
void setStyle(const QString &newValue)
Definition: settings.cpp:923
Settings::outDev
QString outDev
Definition: settings.h:120
Settings::getNotifySound
bool getNotifySound() const override
Definition: settings.cpp:1054
Settings::updateProfileData
void updateProfileData(Profile *profile, const QCommandLineParser *parser)
Definition: settings.cpp:262
Settings::proxyPort
quint16 proxyPort
Definition: settings.h:623
Settings::stylePreferenceChanged
void stylePreferenceChanged(StyleType type)
Settings::setWidgetData
void setWidgetData(const QString &uniqueName, const QByteArray &data)
Definition: settings.cpp:1433
Settings::setCamVideoRes
void setCamVideoRes(QRect newValue) override
Definition: settings.cpp:1838
Settings::groupchatPositionChanged
void groupchatPositionChanged(bool enabled)
Settings::getNotifyHide
bool getNotifyHide() const override
Definition: settings.cpp:1067
Settings::getScreenGrabbed
bool getScreenGrabbed() const override
Definition: settings.cpp:1819
Settings::getTimestampFormat
const QString & getTimestampFormat() const
Definition: settings.cpp:1481
Settings::getThemeColor
int getThemeColor() const
Definition: settings.cpp:2140
Settings::friendProp::addr
QString addr
Definition: settings.h:694
Settings::showSystemTrayChanged
void showSystemTrayChanged(bool enabled)
Settings::getCloseToTray
bool getCloseToTray() const
Definition: settings.cpp:976
Settings::dialogSplitterState
QByteArray dialogSplitterState
Definition: settings.h:83
Settings::widgetDataChanged
void widgetDataChanged(const QString &key)
Settings::setVal
bool setVal(T &savedVal, T newVal)
Definition: settings.cpp:2256
Settings::getGroupAlwaysNotify
bool getGroupAlwaysNotify() const override
Definition: settings.cpp:1093
Settings::getEnableLogging
bool getEnableLogging() const
Definition: settings.cpp:1241
Settings::themeColor
int themeColor
Definition: settings.h:713
Settings::clearUnreadFriendRequests
void clearUnreadFriendRequests()
Definition: settings.cpp:2110
Settings::enableLanDiscovery
bool enableLanDiscovery
Definition: settings.h:619
Settings::setCurstomEmojiFont
void setCurstomEmojiFont(bool value)
Settings::getFriendRequestSize
int getFriendRequestSize() const
Definition: settings.cpp:2104
Settings::getCircleName
QString getCircleName(int id) const
Definition: settings.cpp:2024
Settings::getOutVolume
int getOutVolume() const override
Definition: settings.cpp:1780
Settings::typingNotificationChanged
void typingNotificationChanged(bool enabled)
Settings::operator=
Settings & operator=(const Settings &)=delete
Settings::getEnableIPv6
bool getEnableIPv6() const override
Definition: settings.cpp:852
Settings::FriendListSortingMode::Activity
@ Activity
Settings::dontGroupWindows
bool dontGroupWindows
Definition: settings.h:599
Settings::setCloseToTray
void setCloseToTray(bool newValue)
Definition: settings.cpp:982
Settings::getDesktopNotify
bool getDesktopNotify() const override
Definition: settings.cpp:1585
Settings::sortingMode
FriendListSortingMode sortingMode
Definition: settings.h:596
Settings::dialogGeometryChanged
void dialogGeometryChanged(const QByteArray &rect)
Settings::setCircleName
void setCircleName(int id, const QString &name)
Definition: settings.cpp:2030
Settings::autostartInTrayChanged
void autostartInTrayChanged(bool enabled)
Settings::getCurrentProfile
QString getCurrentProfile() const
Definition: settings.cpp:1210
Settings::setVideoDev
void setVideoDev(const QString &deviceSpecifier) override
Definition: settings.cpp:1747
Settings::screenRegion
QRect screenRegion
Definition: settings.h:129
Settings::getTypingNotification
bool getTypingNotification() const
Definition: settings.cpp:1663
toxencrypt.h
Settings::savePersonal
void savePersonal()
Asynchronous, saves the current profile.
Definition: settings.cpp:717
Settings::getTranslation
QString getTranslation() const
Definition: settings.cpp:1106
Settings::setDateFormat
void setDateFormat(const QString &format)
Definition: settings.cpp:1500
Settings::setDesktopNotify
void setDesktopNotify(bool enabled) override
Definition: settings.cpp:1591
Settings::setNotifySound
void setNotifySound(bool newValue) override
Definition: settings.cpp:1060
Settings::getAudioInGainDecibel
qreal getAudioInGainDecibel() const override
Definition: settings.cpp:1715
Settings::currentProfileId
uint32_t currentProfileId
Definition: settings.h:626
Settings::getBlackList
QStringList getBlackList() const override
Definition: settings.cpp:1676
Settings::getFriendSortingMode
FriendListSortingMode getFriendSortingMode() const
Definition: settings.cpp:1953
Settings::getShowIdenticons
bool getShowIdenticons() const
Definition: settings.cpp:2005
Settings::FriendListSortingMode::Name
@ Name
Settings::bigLock
static CompatibleRecursiveMutex bigLock
Definition: settings.h:715
Settings::friendProp::friendProp
friendProp(QString addr)
Definition: settings.h:690
Settings::setShowWindow
void setShowWindow(bool newValue) override
Definition: settings.cpp:1578
ICoreSettings
Definition: icoresettings.h:28
Settings::setUseEmoticons
void setUseEmoticons(bool newValue)
Definition: settings.cpp:943
Settings::setOutDev
void setOutDev(const QString &deviceSpecifier) override
Definition: settings.cpp:1760
Settings::groupAlwaysNotifyChanged
void groupAlwaysNotifyChanged(bool enabled)
Settings::dialogSplitterStateChanged
void dialogSplitterStateChanged(const QByteArray &state)
ivideosettings.h
Settings::chatMessageFont
QFont chatMessageFont
Definition: settings.h:96
Settings::compactLayoutChanged
void compactLayoutChanged(bool enabled)
Settings::setAudioInDevEnabled
void setAudioInDevEnabled(bool enabled) override
Definition: settings.cpp:1708
Settings::setStatusChangeNotificationEnabled
void setStatusChangeNotificationEnabled(bool newValue)
Definition: settings.cpp:1021
Settings::getWidgetData
QByteArray getWidgetData(const QString &uniqueName) const
Definition: settings.cpp:1449
Settings::friendProp::autoAcceptCall
AutoAcceptCallFlags autoAcceptCall
Definition: settings.h:699
Settings::setSmileyPack
void setSmileyPack(const QString &value)
Definition: settings.cpp:1461
Settings::camVideoFPS
float camVideoFPS
Definition: settings.h:131
Settings::applyCommandLineOptions
bool applyCommandLineOptions(const QCommandLineParser &parser)
Definition: settings.cpp:373
Settings::dbSyncType
Db::syncType dbSyncType
Definition: settings.h:666
Settings::autoAcceptMaxSize
size_t autoAcceptMaxSize
Definition: settings.h:636
Settings::friendProp::note
QString note
Definition: settings.h:696
Settings::loaded
bool loaded
Definition: settings.h:588
Settings::setAutoAcceptCall
void setAutoAcceptCall(const ToxPk &id, AutoAcceptCallFlags accept) override
Definition: settings.cpp:1316
Settings::setWindowState
void setWindowState(const QByteArray &value)
Definition: settings.cpp:1539
Settings::autoAcceptMaxSizeChanged
void autoAcceptMaxSizeChanged(size_t size)
Settings::getMinimizeOnClose
bool getMinimizeOnClose() const
Definition: settings.cpp:1650
Settings::setDialogSplitterState
void setDialogSplitterState(const QByteArray &value)
Definition: settings.cpp:1630
Settings::destroyInstance
static void destroyInstance()
Definition: settings.cpp:96
Settings::Request::address
QString address
Definition: settings.h:164
Settings::setMinimizeOnClose
void setMinimizeOnClose(bool newValue)
Definition: settings.cpp:1656
Settings::outVolume
int outVolume
Definition: settings.h:123
Settings::settings
static Settings * settings
Definition: settings.h:716
Settings::setCamVideoFPS
void setCamVideoFPS(float newValue) override
Definition: settings.cpp:1851
Settings::getFriendRequest
Request getFriendRequest(int index) const
Definition: settings.cpp:2098
Settings::setNotify
void setNotify(bool newValue) override
Definition: settings.cpp:1565
Settings::emojiFontPointSize
int emojiFontPointSize
Definition: settings.h:72
Settings::getAutoSaveEnabled
bool getAutoSaveEnabled() const
Definition: settings.cpp:963
Settings::busySound
bool busySound
Definition: settings.h:614
Settings::getProxyType
ICoreSettings::ProxyType getProxyType() const override
Definition: settings.cpp:1171
Settings::getVideoDev
QString getVideoDev() const override
Definition: settings.cpp:1741
Settings::addFriendRequest
bool addFriendRequest(const QString &friendAddress, const QString &message)
Definition: settings.cpp:2066
Settings::setOutVolume
void setOutVolume(int volume) override
Definition: settings.cpp:1786
Settings::statusChangeNotificationEnabledChanged
void statusChangeNotificationEnabledChanged(bool enabled)
Settings::setMakeToxPortable
void setMakeToxPortable(bool newValue)
Definition: settings.cpp:871
Settings::setTranslation
void setTranslation(const QString &newValue)
Definition: settings.cpp:1112
Settings::getOutVolumeMax
int getOutVolumeMax() const override
Definition: settings.h:360
Settings::style
QString style
Definition: settings.h:86
Settings::minimizeToTray
bool minimizeToTray
Definition: settings.h:605
Settings::useCustomDhtList
bool useCustomDhtList
Definition: settings.h:590
Settings::getMaxAutoAcceptSize
size_t getMaxAutoAcceptSize() const
Definition: settings.cpp:1407
Settings::getAudioThreshold
qreal getAudioThreshold() const override
Definition: settings.cpp:1728
Settings::setSpellCheckingEnabled
void setSpellCheckingEnabled(bool newValue)
Definition: settings.cpp:1047
Settings::splitterState
QByteArray splitterState
Definition: settings.h:79
Settings::showIdenticonsChanged
void showIdenticonsChanged(bool enabled)
Settings::setAutoAwayTime
void setAutoAwayTime(int newValue)
Sets how long the user may stay idle, before online status is set to "away".
Definition: settings.cpp:1265
Db
Definition: settings.h:47
Settings::getAudioOutDevEnabled
bool getAudioOutDevEnabled() const override
Definition: settings.cpp:1767
Settings::getAudioBitrate
int getAudioBitrate() const override
Definition: settings.cpp:1793
igroupsettings.h
Settings::blackList
QStringList blackList
Definition: settings.h:110
Settings::timestampFormatChanged
void timestampFormatChanged(const QString &format)
Settings::showWindow
bool showWindow
Definition: settings.h:611
INotificationSettings
Definition: inotificationsettings.h:24
Settings::closeToTray
bool closeToTray
Definition: settings.h:604
Settings::updateFriendAddress
void updateFriendAddress(const QString &newAddr)
Definition: settings.cpp:1869
Settings::setGroupAlwaysNotify
void setGroupAlwaysNotify(bool newValue) override
Definition: settings.cpp:1099
Settings::inDev
QString inDev
Definition: settings.h:113
Settings::getLightTrayIcon
bool getLightTrayIcon() const
Definition: settings.cpp:1002