diff options
| author | Robert Bieber <robby@bieberphoto.com> | 2010-07-06 20:23:27 +0000 |
|---|---|---|
| committer | Robert Bieber <robby@bieberphoto.com> | 2010-07-06 20:23:27 +0000 |
| commit | eccc2bd009e967e45d38a573080d13a1339eb0a6 (patch) | |
| tree | 810341f795f88ab63147d3ed545c1eb812347ebc /utils/themeeditor | |
| parent | 120f3e1c10c36fd5d174741d0da81ba84fc79ae3 (diff) | |
| download | rockbox-eccc2bd009e967e45d38a573080d13a1339eb0a6.zip rockbox-eccc2bd009e967e45d38a573080d13a1339eb0a6.tar.gz rockbox-eccc2bd009e967e45d38a573080d13a1339eb0a6.tar.bz2 rockbox-eccc2bd009e967e45d38a573080d13a1339eb0a6.tar.xz | |
Theme Editor: Added font directory option in preferences dialog, renderer will now search that directory for fonts if they're not found in the project directory
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27322 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'utils/themeeditor')
| -rw-r--r-- | utils/themeeditor/graphics/rbfont.cpp | 15 | ||||
| -rw-r--r-- | utils/themeeditor/gui/preferencesdialog.cpp | 34 | ||||
| -rw-r--r-- | utils/themeeditor/gui/preferencesdialog.h | 3 | ||||
| -rw-r--r-- | utils/themeeditor/gui/preferencesdialog.ui | 34 |
4 files changed, 82 insertions, 4 deletions
diff --git a/utils/themeeditor/graphics/rbfont.cpp b/utils/themeeditor/graphics/rbfont.cpp index e59c79a..1c2739d 100644 --- a/utils/themeeditor/graphics/rbfont.cpp +++ b/utils/themeeditor/graphics/rbfont.cpp @@ -27,6 +27,7 @@ #include <QPainter> #include <QBitmap> #include <QImage> +#include <QSettings> quint16 RBFont::maxFontSizeFor16BitOffsets = 0xFFDB; @@ -36,7 +37,19 @@ RBFont::RBFont(QString file) /* Attempting to locate the correct file name */ if(!QFile::exists(file)) - file = ":/fonts/08-Schumacher-Clean.fnt"; + { + /* Checking in the fonts repository */ + QSettings settings; + settings.beginGroup("RBFont"); + + file = file.split("/").last(); + file = settings.value("fontDir", "").toString() + "/" + file; + + settings.endGroup(); + + if(!QFile::exists(file)) + file = ":/fonts/08-Schumacher-Clean.fnt"; + } header.insert("filename", file); /* Opening the file */ diff --git a/utils/themeeditor/gui/preferencesdialog.cpp b/utils/themeeditor/gui/preferencesdialog.cpp index 8cd9665..f8c71f4 100644 --- a/utils/themeeditor/gui/preferencesdialog.cpp +++ b/utils/themeeditor/gui/preferencesdialog.cpp @@ -24,6 +24,7 @@ #include <QSettings> #include <QColorDialog> +#include <QFileDialog> PreferencesDialog::PreferencesDialog(QWidget *parent) : QDialog(parent), @@ -43,6 +44,7 @@ void PreferencesDialog::loadSettings() { loadColors(); loadFont(); + loadFontDir(); } void PreferencesDialog::loadColors() @@ -105,10 +107,21 @@ void PreferencesDialog::loadFont() } +void PreferencesDialog::loadFontDir() +{ + QSettings settings; + settings.beginGroup("RBFont"); + + ui->fontBox->setText(settings.value("fontDir", "/").toString()); + + settings.endGroup(); +} + void PreferencesDialog::saveSettings() { saveColors(); saveFont(); + saveFontDir(); } void PreferencesDialog::saveColors() @@ -146,6 +159,16 @@ void PreferencesDialog::saveFont() settings.endGroup(); } +void PreferencesDialog::saveFontDir() +{ + QSettings settings; + settings.beginGroup("RBFont"); + + settings.setValue("fontDir", ui->fontBox->text()); + + settings.endGroup(); +} + void PreferencesDialog::setupUI() { /* Connecting color buttons */ @@ -161,6 +184,9 @@ void PreferencesDialog::setupUI() for(int i = 0; i < buttons.count(); i++) QObject::connect(buttons[i], SIGNAL(pressed()), this, SLOT(colorClicked())); + + QObject::connect(ui->fontBrowseButton, SIGNAL(clicked()), + this, SLOT(browseFont())); } void PreferencesDialog::colorClicked() @@ -193,6 +219,14 @@ void PreferencesDialog::colorClicked() } } +void PreferencesDialog::browseFont() +{ + QString path = QFileDialog:: + getExistingDirectory(this, "Font Directory", + ui->fontBox->text()); + ui->fontBox->setText(path); +} + void PreferencesDialog::accept() { saveSettings(); diff --git a/utils/themeeditor/gui/preferencesdialog.h b/utils/themeeditor/gui/preferencesdialog.h index d717d04..3df2409 100644 --- a/utils/themeeditor/gui/preferencesdialog.h +++ b/utils/themeeditor/gui/preferencesdialog.h @@ -47,6 +47,7 @@ public slots: private slots: void colorClicked(); + void browseFont(); private: Ui::PreferencesDialog *ui; @@ -54,9 +55,11 @@ private: void loadSettings(); void loadColors(); void loadFont(); + void loadFontDir(); void saveSettings(); void saveColors(); void saveFont(); + void saveFontDir(); void setupUI(); diff --git a/utils/themeeditor/gui/preferencesdialog.ui b/utils/themeeditor/gui/preferencesdialog.ui index 7dddcf9..15e1743 100644 --- a/utils/themeeditor/gui/preferencesdialog.ui +++ b/utils/themeeditor/gui/preferencesdialog.ui @@ -23,9 +23,6 @@ <property name="tabPosition"> <enum>QTabWidget::North</enum> </property> - <property name="currentIndex"> - <number>0</number> - </property> <widget class="QWidget" name="tab_2"> <attribute name="title"> <string>Editor</string> @@ -258,6 +255,37 @@ </item> </layout> </widget> + <widget class="QWidget" name="tab"> + <attribute name="title"> + <string>Fonts</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_4"> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_10"> + <item> + <widget class="QLabel" name="label_10"> + <property name="text"> + <string>Font Path</string> + </property> + <property name="buddy"> + <cstring>fontBox</cstring> + </property> + </widget> + </item> + <item> + <widget class="QLineEdit" name="fontBox"/> + </item> + <item> + <widget class="QPushButton" name="fontBrowseButton"> + <property name="text"> + <string>Browse...</string> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </widget> </widget> </item> <item> |