21#ifndef TULIPSETTINGS_H
22#define TULIPSETTINGS_H
25#include <QNetworkProxy>
28#include <tulip/GlGraphRenderingParameters.h>
29#include <tulip/Size.h>
30#include <tulip/Graph.h>
42class TLP_QT_SCOPE TulipSettings :
public QSettings, GlDefaultSelectionColorManager, Observable {
44 Q_ENUMS(DisplayProperty)
47 static TulipSettings &instance();
49 static QString elementKey(
const QString &configEntry,
tlp::ElementType elem);
51 static void synchronizeSettings();
53 static void synchronizeViewSettings();
58 static QStringList recentDocuments();
64 static void addToRecentDocuments(
const QString &);
69 static void checkRecentDocuments();
77 static void addRemoteLocation(
const QString &remoteLocation);
85 static void removeRemoteLocation(
const QString &remoteLocation);
92 static const QStringList remoteLocations();
93 static const QStringList pluginsToRemove();
95 static void markPluginForRemoval(
const QString &pluginLibrary);
96 static void unmarkPluginForRemoval(
const QString &pluginLibrary);
98 static tlp::Color defaultColor(
tlp::ElementType elem,
bool tulipDefault =
false);
101 static tlp::Color defaultLabelColor(
bool tulipDefault =
false);
102 static void setDefaultLabelColor(
const tlp::Color &color);
104 static tlp::Size defaultSize(
tlp::ElementType elem,
bool tulipDefault =
false);
111 tlp::Color defaultSelectionColor(
bool tulipDefault =
false)
override;
113 static tlp::Color getDefaultSelectionColor(
bool tulipDefault =
false);
114 static void setDefaultSelectionColor(
const tlp::Color &color);
116 static QSet<QString> favoriteAlgorithms();
117 static void addFavoriteAlgorithm(
const QString &name);
118 static void removeFavoriteAlgorithm(
const QString &name);
121 static bool isProxyEnabled();
122 static void setProxyEnabled(
bool);
124 static QNetworkProxy::ProxyType proxyType();
125 static void setProxyType(QNetworkProxy::ProxyType);
127 static QString proxyHost();
128 static void setProxyHost(
const QString &);
130 static unsigned int proxyPort();
131 static void setProxyPort(
unsigned int);
133 static bool isUseProxyAuthentification();
134 static void setUseProxyAuthentification(
bool);
136 static QString proxyUsername();
137 static void setProxyUsername(
const QString &);
139 static QString proxyPassword();
140 static void setProxyPassword(
const QString &);
142 static void applyProxySettings();
144 static bool isFirstRun();
145 static void setFirstRun(
bool);
147 static bool isFirstTulipMMRun();
148 static bool userHasLaunchedTulipMM(
const std::string &mmVersion);
149 static void setFirstTulipMMRun(
bool);
151 static bool displayDefaultViews();
152 static void setDisplayDefaultViews(
bool);
154 static bool isAutomaticMapMetric();
155 static void setAutomaticMapMetric(
bool);
157 static bool isAutomaticCentering();
158 static void setAutomaticCentering(
bool);
160 static bool isAutomaticRatio();
161 static void setAutomaticRatio(
bool);
163 static bool isViewOrtho();
164 static void setViewOrtho(
bool);
166 static bool isResultPropertyStored();
167 static void setResultPropertyStored(
bool);
169 enum LogPluginCall { NoLog = 0, LogCall = 1, LogCallWithExecutionTime = 2 };
170 static unsigned int logPluginCall();
171 static void setLogPluginCall(
unsigned int);
173 static bool isUseTlpbFileFormat();
174 static void setUseTlpbFileFormat(
bool);
176 static unsigned int seedOfRandomSequence();
178 static void initSeedOfRandomSequence();
180 static bool warnUserAboutGraphicsCard();
181 static void setWarnUserAboutGraphicsCard(
bool);
183 static bool isDisplayInDarkMode();
184 static void setDisplayInDarkMode(
bool);
187 _DEPRECATED
static bool showStatusBar();
188 _DEPRECATED
static void setShowStatusBar(
bool);
190 static bool loggerAnchored();
191 static void setLoggerAnchored(
bool);
193 static QStringList recentPerspectiveFiles();
194 static void setRecentPerspectiveFiles(QStringList &doc);
196 void treatEvent(
const Event &message)
override;
200 static TulipSettings *_instance;
202 void setFavoriteAlgorithms(
const QSet<QString> &lst);
void setSeedOfRandomSequence(unsigned int seed=UINT_MAX)
Gives the value of the seed used for further initialization of a random sequence (with further calls ...