diff options
author | Friedemann Kleint <Friedemann.Kleint@nokia.com> | 2009-11-24 15:05:02 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@nokia.com> | 2009-11-24 15:05:02 +0100 |
commit | 65e11062bb1671328e16736db9f2668ba87e5edb (patch) | |
tree | bd364c5c34790d52bdbf77a5950542ca522223f0 /src/plugins/texteditor | |
parent | c49bed119986350efa577876efc855d6d5f0d293 (diff) |
Polish the settings dialog.
Add a title label to the pages. Use QGroupBoxes throughout.
Extend SavedAction to work with checkable QGroupBoxes. Polish UI files,
use common layout for VCS plugins. Performance: Apply only visited
settings pages. Add search keywords.
Task-number: QTCREATOR-26
Diffstat (limited to 'src/plugins/texteditor')
-rw-r--r-- | src/plugins/texteditor/behaviorsettingspage.cpp | 16 | ||||
-rw-r--r-- | src/plugins/texteditor/behaviorsettingspage.h | 2 | ||||
-rw-r--r-- | src/plugins/texteditor/behaviorsettingspage.ui | 2 | ||||
-rw-r--r-- | src/plugins/texteditor/displaysettingspage.cpp | 18 | ||||
-rw-r--r-- | src/plugins/texteditor/displaysettingspage.h | 1 | ||||
-rw-r--r-- | src/plugins/texteditor/fontsettingspage.cpp | 8 | ||||
-rw-r--r-- | src/plugins/texteditor/fontsettingspage.h | 1 | ||||
-rw-r--r-- | src/plugins/texteditor/fontsettingspage.ui | 8 |
8 files changed, 51 insertions, 5 deletions
diff --git a/src/plugins/texteditor/behaviorsettingspage.cpp b/src/plugins/texteditor/behaviorsettingspage.cpp index ed013c6b61..86b7acac5d 100644 --- a/src/plugins/texteditor/behaviorsettingspage.cpp +++ b/src/plugins/texteditor/behaviorsettingspage.cpp @@ -35,6 +35,7 @@ #include <coreplugin/icore.h> #include <QtCore/QSettings> +#include <QtCore/QTextStream> using namespace TextEditor; @@ -46,6 +47,7 @@ struct BehaviorSettingsPage::BehaviorSettingsPagePrivate Ui::BehaviorSettingsPage m_page; TabSettings m_tabSettings; StorageSettings m_storageSettings; + QString m_searchKeywords; }; BehaviorSettingsPage::BehaviorSettingsPagePrivate::BehaviorSettingsPagePrivate @@ -95,6 +97,15 @@ QWidget *BehaviorSettingsPage::createPage(QWidget *parent) QWidget *w = new QWidget(parent); m_d->m_page.setupUi(w); settingsToUI(); + if (m_d->m_searchKeywords.isEmpty()) { + QTextStream(&m_d->m_searchKeywords) << m_d->m_page.insertSpaces->text() + << ' ' << m_d->m_page.smartBackspace->text() + << ' ' << m_d->m_page.cleanWhitespace->text() + << ' ' << m_d->m_page.addFinalNewLine->text() + << ' ' << m_d->m_page.groupBoxTabAndIndentSettings->title() + << ' ' << m_d->m_page.groupBoxStorageSettings->title(); + m_d->m_searchKeywords.remove(QLatin1Char('&')); + } return w; } @@ -167,3 +178,8 @@ StorageSettings BehaviorSettingsPage::storageSettings() const { return m_d->m_storageSettings; } + +bool BehaviorSettingsPage::matches(const QString &s) const +{ + return m_d->m_searchKeywords.contains(s, Qt::CaseInsensitive); +} diff --git a/src/plugins/texteditor/behaviorsettingspage.h b/src/plugins/texteditor/behaviorsettingspage.h index 2bc524198f..007c11a303 100644 --- a/src/plugins/texteditor/behaviorsettingspage.h +++ b/src/plugins/texteditor/behaviorsettingspage.h @@ -70,6 +70,8 @@ public: TabSettings tabSettings() const; StorageSettings storageSettings() const; + virtual bool matches(const QString &s) const; + signals: void tabSettingsChanged(const TextEditor::TabSettings &); void storageSettingsChanged(const TextEditor::StorageSettings &); diff --git a/src/plugins/texteditor/behaviorsettingspage.ui b/src/plugins/texteditor/behaviorsettingspage.ui index c20e2aaad1..8ba86f0f59 100644 --- a/src/plugins/texteditor/behaviorsettingspage.ui +++ b/src/plugins/texteditor/behaviorsettingspage.ui @@ -138,7 +138,7 @@ <item> <layout class="QHBoxLayout" name="horizontalLayout"> <item> - <widget class="QLabel" name="label"> + <widget class="QLabel" name="tabKeyIndentLabel"> <property name="text"> <string>Tab key performs auto-indent:</string> </property> diff --git a/src/plugins/texteditor/displaysettingspage.cpp b/src/plugins/texteditor/displaysettingspage.cpp index 9f4fa6a90a..ceb011a50c 100644 --- a/src/plugins/texteditor/displaysettingspage.cpp +++ b/src/plugins/texteditor/displaysettingspage.cpp @@ -34,6 +34,7 @@ #include <coreplugin/icore.h> #include <QtCore/QSettings> +#include <QtCore/QTextStream> using namespace TextEditor; @@ -44,6 +45,7 @@ struct DisplaySettingsPage::DisplaySettingsPagePrivate const DisplaySettingsPageParameters m_parameters; Ui::DisplaySettingsPage m_page; DisplaySettings m_displaySettings; + QString m_searchKeywords; }; DisplaySettingsPage::DisplaySettingsPagePrivate::DisplaySettingsPagePrivate @@ -92,6 +94,17 @@ QWidget *DisplaySettingsPage::createPage(QWidget *parent) QWidget *w = new QWidget(parent); m_d->m_page.setupUi(w); settingsToUI(); + if (m_d->m_searchKeywords.isEmpty()) { + QTextStream(&m_d->m_searchKeywords) << m_d->m_page.displayLineNumbers->text() + << ' ' << m_d->m_page.highlightCurrentLine->text() + << ' ' << m_d->m_page.displayFoldingMarkers->text() + << ' ' << m_d->m_page.highlightBlocks->text() + << ' ' << m_d->m_page.visualizeWhitespace->text() + << ' ' << m_d->m_page.animateMatchingParentheses->text() + << ' ' << m_d->m_page.enableTextWrapping->text() + << ' ' << m_d->m_page.mouseNavigation->text(); + m_d->m_searchKeywords.remove(QLatin1Char('&')); + } return w; } @@ -160,3 +173,8 @@ void DisplaySettingsPage::setDisplaySettings(const DisplaySettings &newDisplaySe emit displaySettingsChanged(newDisplaySettings); } } + +bool DisplaySettingsPage::matches(const QString &s) const +{ + return m_d->m_searchKeywords.contains(s, Qt::CaseInsensitive); +} diff --git a/src/plugins/texteditor/displaysettingspage.h b/src/plugins/texteditor/displaysettingspage.h index f9d8ab3b13..902e984a57 100644 --- a/src/plugins/texteditor/displaysettingspage.h +++ b/src/plugins/texteditor/displaysettingspage.h @@ -65,6 +65,7 @@ public: QWidget *createPage(QWidget *parent); void apply(); void finish() { } + virtual bool matches(const QString &s) const; DisplaySettings displaySettings() const; void setDisplaySettings(const DisplaySettings &); diff --git a/src/plugins/texteditor/fontsettingspage.cpp b/src/plugins/texteditor/fontsettingspage.cpp index 898f775cc4..de2bf702f0 100644 --- a/src/plugins/texteditor/fontsettingspage.cpp +++ b/src/plugins/texteditor/fontsettingspage.cpp @@ -133,6 +133,7 @@ public: Ui::FontSettingsPage ui; SchemeListModel *m_schemeListModel; bool m_refreshingSchemeList; + QString m_searchKeywords; }; } // namespace Internal @@ -367,6 +368,8 @@ QWidget *FontSettingsPage::createPage(QWidget *parent) updatePointSizes(); refreshColorSchemeList(); d_ptr->m_lastValue = d_ptr->m_value; + if (d_ptr->m_searchKeywords.isEmpty()) + d_ptr->m_searchKeywords = d_ptr->ui.fontGroupBox->title() + QLatin1Char(' ') + d_ptr->ui.colorSchemeGroupBox->title(); return w; } @@ -618,3 +621,8 @@ const FontSettings &FontSettingsPage::fontSettings() const { return d_ptr->m_value; } + +bool FontSettingsPage::matches(const QString &s) const +{ + return d_ptr->m_searchKeywords.contains(s, Qt::CaseInsensitive); +} diff --git a/src/plugins/texteditor/fontsettingspage.h b/src/plugins/texteditor/fontsettingspage.h index e2095a3fce..d9d9027284 100644 --- a/src/plugins/texteditor/fontsettingspage.h +++ b/src/plugins/texteditor/fontsettingspage.h @@ -97,6 +97,7 @@ public: QWidget *createPage(QWidget *parent); void apply(); void finish(); + virtual bool matches(const QString &) const; void saveSettings(); diff --git a/src/plugins/texteditor/fontsettingspage.ui b/src/plugins/texteditor/fontsettingspage.ui index 1cd02f47a8..cb7f5d1fb6 100644 --- a/src/plugins/texteditor/fontsettingspage.ui +++ b/src/plugins/texteditor/fontsettingspage.ui @@ -12,13 +12,13 @@ </property> <layout class="QVBoxLayout" name="verticalLayout"> <item> - <widget class="QGroupBox" name="groupBox"> + <widget class="QGroupBox" name="fontGroupBox"> <property name="title"> <string>Font</string> </property> <layout class="QGridLayout" name="gridLayout"> <item row="0" column="0"> - <widget class="QLabel" name="label_5"> + <widget class="QLabel" name="familyLabel"> <property name="sizePolicy"> <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> <horstretch>0</horstretch> @@ -57,7 +57,7 @@ </spacer> </item> <item row="0" column="3"> - <widget class="QLabel" name="label_6"> + <widget class="QLabel" name="sizeLabel"> <property name="sizePolicy"> <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> <horstretch>0</horstretch> @@ -103,7 +103,7 @@ </widget> </item> <item> - <widget class="QGroupBox" name="groupBox_2"> + <widget class="QGroupBox" name="colorSchemeGroupBox"> <property name="title"> <string>Color Scheme</string> </property> |