forked from len0rd/rockbox
Theme Editor: Editor font/color settings are now applied to config documents
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27818 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
a9d752b1bd
commit
18a6f42f26
4 changed files with 50 additions and 2 deletions
|
@ -22,6 +22,7 @@
|
||||||
#include "projectmodel.h"
|
#include "projectmodel.h"
|
||||||
#include "configdocument.h"
|
#include "configdocument.h"
|
||||||
#include "ui_configdocument.h"
|
#include "ui_configdocument.h"
|
||||||
|
#include "preferencesdialog.h"
|
||||||
|
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
#include <QFile>
|
#include <QFile>
|
||||||
|
@ -103,6 +104,8 @@ ConfigDocument::ConfigDocument(QMap<QString, QString>& settings, QString file,
|
||||||
this, SLOT(buttonChecked()));
|
this, SLOT(buttonChecked()));
|
||||||
QObject::connect(ui->textButton, SIGNAL(toggled(bool)),
|
QObject::connect(ui->textButton, SIGNAL(toggled(bool)),
|
||||||
this, SLOT(buttonChecked()));
|
this, SLOT(buttonChecked()));
|
||||||
|
|
||||||
|
settingsChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
ConfigDocument::~ConfigDocument()
|
ConfigDocument::~ConfigDocument()
|
||||||
|
@ -398,3 +401,39 @@ void ConfigDocument::buttonChecked()
|
||||||
settings.setValue("linesVisible", ui->linesButton->isChecked());
|
settings.setValue("linesVisible", ui->linesButton->isChecked());
|
||||||
settings.endGroup();
|
settings.endGroup();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ConfigDocument::connectPrefs(PreferencesDialog *prefs)
|
||||||
|
{
|
||||||
|
QObject::connect(prefs, SIGNAL(accepted()),
|
||||||
|
this, SLOT(settingsChanged()));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void ConfigDocument::settingsChanged()
|
||||||
|
{
|
||||||
|
/* Setting the editor colors */
|
||||||
|
QSettings settings;
|
||||||
|
settings.beginGroup("SkinDocument");
|
||||||
|
|
||||||
|
QColor fg = settings.value("fgColor", Qt::black).value<QColor>();
|
||||||
|
QColor bg = settings.value("bgColor", Qt::white).value<QColor>();
|
||||||
|
QPalette palette;
|
||||||
|
palette.setColor(QPalette::All, QPalette::Base, bg);
|
||||||
|
palette.setColor(QPalette::All, QPalette::Text, fg);
|
||||||
|
editor->setPalette(palette);
|
||||||
|
|
||||||
|
QColor highlight = settings.value("errorColor", Qt::red).value<QColor>();
|
||||||
|
editor->setErrorColor(highlight);
|
||||||
|
|
||||||
|
/* Setting the font */
|
||||||
|
QFont def("Monospace");
|
||||||
|
def.setStyleHint(QFont::TypeWriter);
|
||||||
|
QFont family = settings.value("fontFamily", def).value<QFont>();
|
||||||
|
family.setPointSize(settings.value("fontSize", 12).toInt());
|
||||||
|
editor->setFont(family);
|
||||||
|
|
||||||
|
editor->repaint();
|
||||||
|
|
||||||
|
settings.endGroup();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
|
@ -88,6 +88,11 @@ private slots:
|
||||||
void unblockUpdates(){ block = false; }
|
void unblockUpdates(){ block = false; }
|
||||||
void buttonChecked();
|
void buttonChecked();
|
||||||
|
|
||||||
|
void connectPrefs(PreferencesDialog *prefs);
|
||||||
|
|
||||||
|
public slots:
|
||||||
|
void settingsChanged();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void addRow(QString key, QString value);
|
void addRow(QString key, QString value);
|
||||||
|
|
||||||
|
|
|
@ -311,8 +311,7 @@ void EditorWindow::addTab(TabContent *doc)
|
||||||
this, SLOT(lineChanged(int)));
|
this, SLOT(lineChanged(int)));
|
||||||
|
|
||||||
/* Connecting to settings change events */
|
/* Connecting to settings change events */
|
||||||
if(doc->type() == TabContent::Skin)
|
doc->connectPrefs(prefs);
|
||||||
dynamic_cast<SkinDocument*>(doc)->connectPrefs(prefs);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,8 @@
|
||||||
|
|
||||||
#include <QWidget>
|
#include <QWidget>
|
||||||
|
|
||||||
|
class PreferencesDialog;
|
||||||
|
|
||||||
class TabContent : public QWidget
|
class TabContent : public QWidget
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
@ -24,11 +26,14 @@ public:
|
||||||
|
|
||||||
virtual bool requestClose() = 0;
|
virtual bool requestClose() = 0;
|
||||||
|
|
||||||
|
virtual void connectPrefs(PreferencesDialog* prefs) = 0;
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void titleChanged(QString);
|
void titleChanged(QString);
|
||||||
void lineChanged(int);
|
void lineChanged(int);
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
|
virtual void settingsChanged() = 0;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue