diff options
Diffstat (limited to 'src/settings')
-rw-r--r-- | src/settings/appearancewidget.cpp | 48 | ||||
-rw-r--r-- | src/settings/appearancewidget.h | 1 | ||||
-rw-r--r-- | src/settings/settings_appearance.ui | 34 |
3 files changed, 77 insertions, 6 deletions
diff --git a/src/settings/appearancewidget.cpp b/src/settings/appearancewidget.cpp index 42c9db14..89918ac7 100644 --- a/src/settings/appearancewidget.cpp +++ b/src/settings/appearancewidget.cpp @@ -35,6 +35,11 @@ #include <KGlobal> #include <KCharsets> + +int zoomFactorList[13] = {5, 6, 7, 8, 9, 10, 11, 13, 15, 20, 25, 30}; + + + AppearanceWidget::AppearanceWidget(QWidget *parent) : QWidget(parent) , _changed(false) @@ -58,6 +63,7 @@ AppearanceWidget::AppearanceWidget(QWidget *parent) connect(fantasyFontChooser, SIGNAL(currentFontChanged(QFont)), this, SLOT(hasChanged())); populateEncodingMenu(); + populateZoomMenu(); } @@ -69,6 +75,11 @@ void AppearanceWidget::save() ReKonfig::setSansSerifFontFamily(sansSerifFontChooser->currentFont().family()); ReKonfig::setCursiveFontFamily(cursiveFontChooser->currentFont().family()); ReKonfig::setFantasyFontFamily(fantasyFontChooser->currentFont().family()); + + // zoom + int index = zoomCombo->currentIndex(); + int zoomFactor = zoomFactorList[index]; + ReKonfig::setDefaultZoom(zoomFactor); } @@ -87,11 +98,9 @@ void AppearanceWidget::hasChanged() bool AppearanceWidget::isDefault() { - bool def = true; - // TODO: implement me!! - return def; + return !_changed; } @@ -104,12 +113,39 @@ void AppearanceWidget::populateEncodingMenu() encodingCombo->setWhatsThis(i18n("Select the default encoding to be used; normally, you will be fine with 'Use language encoding' " "and should not have to change this.")); - connect(encodingCombo, SIGNAL(activated(QString)), this, SLOT(setEncoding(QString))); - connect(encodingCombo, SIGNAL(activated(QString)), this, SLOT(hasChanged())); - QString enc = ReKonfig::defaultEncoding(); int indexOfEnc = encodings.indexOf(enc); encodingCombo->setCurrentIndex(indexOfEnc); + + connect(encodingCombo, SIGNAL(activated(QString)), this, SLOT(setEncoding(QString))); + connect(encodingCombo, SIGNAL(activated(QString)), this, SLOT(hasChanged())); +} + + +void AppearanceWidget::populateZoomMenu() +{ + zoomCombo->setEditable(false); + QStringList availableZooms; + + int actualZoom = 0; + int defZoom = ReKonfig::defaultZoom(); + + for (int i = 0; i < 13; i++) + { + int zoomFactor = zoomFactorList[i]; + QString zoomString = QString::number(zoomFactor*10) + QL1S("%"); + availableZooms << zoomString; + + if (zoomFactor == defZoom) + { + actualZoom = i; + } + } + + zoomCombo->addItems(availableZooms); + zoomCombo->setCurrentIndex(actualZoom); + + connect(zoomCombo, SIGNAL(activated(QString)), this, SLOT(hasChanged())); } diff --git a/src/settings/appearancewidget.h b/src/settings/appearancewidget.h index 2154df81..39dafbaf 100644 --- a/src/settings/appearancewidget.h +++ b/src/settings/appearancewidget.h @@ -58,6 +58,7 @@ private Q_SLOTS: private: void populateEncodingMenu(); + void populateZoomMenu(); bool _changed; }; diff --git a/src/settings/settings_appearance.ui b/src/settings/settings_appearance.ui index 525881b5..4246a92c 100644 --- a/src/settings/settings_appearance.ui +++ b/src/settings/settings_appearance.ui @@ -237,6 +237,40 @@ </widget> </item> <item> + <widget class="QGroupBox" name="groupBox_5"> + <property name="title"> + <string>Zoom</string> + </property> + <layout class="QHBoxLayout" name="horizontalLayout_3"> + <item> + <widget class="QLabel" name="label_11"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>200</width> + <height>0</height> + </size> + </property> + <property name="text"> + <string>Default page zoom</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item> + <widget class="KComboBox" name="zoomCombo"/> + </item> + </layout> + </widget> + </item> + <item> <widget class="QGroupBox" name="groupBox_4"> <property name="title"> <string>Character Encoding</string> |