Add option to override the UI color

* Add -color option to core plugin which will override
   the base UI color for that session.

Reviewed-by: thorbjorn
This commit is contained in:
Tobias Hunger
2009-11-25 18:44:54 +01:00
parent a37592a16f
commit 9bf1d52685
5 changed files with 33 additions and 3 deletions

View File

@@ -228,6 +228,11 @@ void MainWindow::setSuppressNavigationWidget(bool suppress)
m_navigationWidget->setSuppressed(suppress);
}
void MainWindow::setOverrideColor(const QColor &color)
{
m_overrideColor = color;
}
MainWindow::~MainWindow()
{
hide();
@@ -1103,7 +1108,10 @@ void MainWindow::readSettings()
{
m_settings->beginGroup(QLatin1String(settingsGroup));
Utils::StyleHelper::setBaseColor(m_settings->value(QLatin1String(colorKey)).value<QColor>());
if (m_overrideColor.isValid())
Utils::StyleHelper::setBaseColor(m_overrideColor);
else
Utils::StyleHelper::setBaseColor(m_settings->value(QLatin1String(colorKey)).value<QColor>());
const QVariant geom = m_settings->value(QLatin1String(geometryKey));
if (geom.isValid()) {
@@ -1126,7 +1134,8 @@ void MainWindow::writeSettings()
{
m_settings->beginGroup(QLatin1String(settingsGroup));
m_settings->setValue(QLatin1String(colorKey), Utils::StyleHelper::baseColor());
if (!(m_overrideColor.isValid() && Utils::StyleHelper::baseColor() == m_overrideColor))
m_settings->setValue(QLatin1String(colorKey), Utils::StyleHelper::baseColor());
if (windowState() & (Qt::WindowMaximized | Qt::WindowFullScreen)) {
m_settings->setValue(QLatin1String(maxKey), (bool) (windowState() & Qt::WindowMaximized));