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 "configdocument.h"
|
||||
#include "ui_configdocument.h"
|
||||
#include "preferencesdialog.h"
|
||||
|
||||
#include <QMessageBox>
|
||||
#include <QFile>
|
||||
|
@ -103,6 +104,8 @@ ConfigDocument::ConfigDocument(QMap<QString, QString>& settings, QString file,
|
|||
this, SLOT(buttonChecked()));
|
||||
QObject::connect(ui->textButton, SIGNAL(toggled(bool)),
|
||||
this, SLOT(buttonChecked()));
|
||||
|
||||
settingsChanged();
|
||||
}
|
||||
|
||||
ConfigDocument::~ConfigDocument()
|
||||
|
@ -398,3 +401,39 @@ void ConfigDocument::buttonChecked()
|
|||
settings.setValue("linesVisible", ui->linesButton->isChecked());
|
||||
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 buttonChecked();
|
||||
|
||||
void connectPrefs(PreferencesDialog *prefs);
|
||||
|
||||
public slots:
|
||||
void settingsChanged();
|
||||
|
||||
private:
|
||||
void addRow(QString key, QString value);
|
||||
|
||||
|
|
|
@ -311,8 +311,7 @@ void EditorWindow::addTab(TabContent *doc)
|
|||
this, SLOT(lineChanged(int)));
|
||||
|
||||
/* Connecting to settings change events */
|
||||
if(doc->type() == TabContent::Skin)
|
||||
dynamic_cast<SkinDocument*>(doc)->connectPrefs(prefs);
|
||||
doc->connectPrefs(prefs);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
|
||||
#include <QWidget>
|
||||
|
||||
class PreferencesDialog;
|
||||
|
||||
class TabContent : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
@ -24,11 +26,14 @@ public:
|
|||
|
||||
virtual bool requestClose() = 0;
|
||||
|
||||
virtual void connectPrefs(PreferencesDialog* prefs) = 0;
|
||||
|
||||
signals:
|
||||
void titleChanged(QString);
|
||||
void lineChanged(int);
|
||||
|
||||
public slots:
|
||||
virtual void settingsChanged() = 0;
|
||||
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue