aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/texteditor
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/texteditor')
-rw-r--r--src/plugins/texteditor/behaviorsettingspage.cpp54
-rw-r--r--src/plugins/texteditor/behaviorsettingspage.h3
-rw-r--r--src/plugins/texteditor/behaviorsettingswidget.cpp29
-rw-r--r--src/plugins/texteditor/behaviorsettingswidget.h2
-rw-r--r--src/plugins/texteditor/displaysettingspage.cpp36
-rw-r--r--src/plugins/texteditor/displaysettingspage.h3
-rw-r--r--src/plugins/texteditor/fontsettingspage.cpp76
-rw-r--r--src/plugins/texteditor/fontsettingspage.h3
-rw-r--r--src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp62
-rw-r--r--src/plugins/texteditor/generichighlighter/highlightersettingspage.h3
-rw-r--r--src/plugins/texteditor/simplecodestylepreferenceswidget.cpp5
-rw-r--r--src/plugins/texteditor/simplecodestylepreferenceswidget.h1
-rw-r--r--src/plugins/texteditor/snippets/snippetssettingspage.cpp27
-rw-r--r--src/plugins/texteditor/snippets/snippetssettingspage.h3
-rw-r--r--src/plugins/texteditor/tabsettingswidget.cpp15
-rw-r--r--src/plugins/texteditor/tabsettingswidget.h1
16 files changed, 109 insertions, 214 deletions
diff --git a/src/plugins/texteditor/behaviorsettingspage.cpp b/src/plugins/texteditor/behaviorsettingspage.cpp
index a5a7001f0a..b9a2bc1524 100644
--- a/src/plugins/texteditor/behaviorsettingspage.cpp
+++ b/src/plugins/texteditor/behaviorsettingspage.cpp
@@ -49,6 +49,7 @@
#include <qmljseditor/qmljseditorconstants.h>
#include <qmljstools/qmljstoolsconstants.h>
+#include <QPointer>
#include <QSettings>
#include <QTextCodec>
@@ -59,6 +60,7 @@ struct BehaviorSettingsPage::BehaviorSettingsPagePrivate
explicit BehaviorSettingsPagePrivate(const BehaviorSettingsPageParameters &p);
const BehaviorSettingsPageParameters m_parameters;
+ QPointer<QWidget> m_widget;
Internal::Ui::BehaviorSettingsPage *m_page;
void init();
@@ -70,8 +72,6 @@ struct BehaviorSettingsPage::BehaviorSettingsPagePrivate
StorageSettings m_storageSettings;
BehaviorSettings m_behaviorSettings;
ExtraEncodingSettings m_extraEncodingSettings;
-
- QString m_searchKeywords;
};
BehaviorSettingsPage::BehaviorSettingsPagePrivate::BehaviorSettingsPagePrivate
@@ -114,30 +114,28 @@ BehaviorSettingsPage::~BehaviorSettingsPage()
delete d;
}
-QWidget *BehaviorSettingsPage::createPage(QWidget *parent)
+QWidget *BehaviorSettingsPage::widget()
{
- QWidget *w = new QWidget(parent);
- d->m_page = new Internal::Ui::BehaviorSettingsPage;
- d->m_page->setupUi(w);
- if (Utils::HostOsInfo::isMacHost())
- d->m_page->gridLayout->setContentsMargins(-1, 0, -1, 0); // don't ask.
- d->m_pageCodeStyle = new SimpleCodeStylePreferences(w);
- d->m_pageCodeStyle->setDelegatingPool(d->m_codeStyle->delegatingPool());
- d->m_pageCodeStyle->setTabSettings(d->m_codeStyle->tabSettings());
- d->m_pageCodeStyle->setCurrentDelegate(d->m_codeStyle->currentDelegate());
- d->m_page->behaviorWidget->setCodeStyle(d->m_pageCodeStyle);
-
- TabSettingsWidget *tabSettingsWidget = d->m_page->behaviorWidget->tabSettingsWidget();
- tabSettingsWidget->setCodingStyleWarningVisible(true);
- connect(tabSettingsWidget, SIGNAL(codingStyleLinkClicked(TextEditor::TabSettingsWidget::CodingStyleLink)),
- this, SLOT(openCodingStylePreferences(TextEditor::TabSettingsWidget::CodingStyleLink)));
-
- settingsToUI();
-
- if (d->m_searchKeywords.isEmpty())
- d->m_searchKeywords = d->m_page->behaviorWidget->collectUiKeywords();
-
- return w;
+ if (!d->m_widget) {
+ d->m_widget = new QWidget;
+ d->m_page = new Internal::Ui::BehaviorSettingsPage;
+ d->m_page->setupUi(d->m_widget);
+ if (Utils::HostOsInfo::isMacHost())
+ d->m_page->gridLayout->setContentsMargins(-1, 0, -1, 0); // don't ask.
+ d->m_pageCodeStyle = new SimpleCodeStylePreferences(d->m_widget);
+ d->m_pageCodeStyle->setDelegatingPool(d->m_codeStyle->delegatingPool());
+ d->m_pageCodeStyle->setTabSettings(d->m_codeStyle->tabSettings());
+ d->m_pageCodeStyle->setCurrentDelegate(d->m_codeStyle->currentDelegate());
+ d->m_page->behaviorWidget->setCodeStyle(d->m_pageCodeStyle);
+
+ TabSettingsWidget *tabSettingsWidget = d->m_page->behaviorWidget->tabSettingsWidget();
+ tabSettingsWidget->setCodingStyleWarningVisible(true);
+ connect(tabSettingsWidget, SIGNAL(codingStyleLinkClicked(TextEditor::TabSettingsWidget::CodingStyleLink)),
+ this, SLOT(openCodingStylePreferences(TextEditor::TabSettingsWidget::CodingStyleLink)));
+
+ settingsToUI();
+ }
+ return d->m_widget;
}
void BehaviorSettingsPage::apply()
@@ -227,6 +225,7 @@ void BehaviorSettingsPage::settingsToUI()
void BehaviorSettingsPage::finish()
{
+ delete d->m_widget;
if (!d->m_page) // page was never shown
return;
delete d->m_page;
@@ -263,11 +262,6 @@ const ExtraEncodingSettings &BehaviorSettingsPage::extraEncodingSettings() const
return d->m_extraEncodingSettings;
}
-bool BehaviorSettingsPage::matches(const QString &s) const
-{
- return d->m_searchKeywords.contains(s, Qt::CaseInsensitive);
-}
-
void BehaviorSettingsPage::openCodingStylePreferences(TabSettingsWidget::CodingStyleLink link)
{
diff --git a/src/plugins/texteditor/behaviorsettingspage.h b/src/plugins/texteditor/behaviorsettingspage.h
index ccaaaa34ef..042c9640dc 100644
--- a/src/plugins/texteditor/behaviorsettingspage.h
+++ b/src/plugins/texteditor/behaviorsettingspage.h
@@ -62,10 +62,9 @@ public:
~BehaviorSettingsPage();
// IOptionsPage
- QWidget *createPage(QWidget *parent);
+ QWidget *widget();
void apply();
void finish();
- bool matches(const QString &s) const;
ICodeStylePreferences *codeStyle() const;
CodeStylePool *codeStylePool() const;
diff --git a/src/plugins/texteditor/behaviorsettingswidget.cpp b/src/plugins/texteditor/behaviorsettingswidget.cpp
index 044b2a328d..83571a06c3 100644
--- a/src/plugins/texteditor/behaviorsettingswidget.cpp
+++ b/src/plugins/texteditor/behaviorsettingswidget.cpp
@@ -223,35 +223,6 @@ void BehaviorSettingsWidget::assignedExtraEncodingSettings(
(ExtraEncodingSettings::Utf8BomSetting)d->m_ui.utf8BomBox->currentIndex();
}
-QString BehaviorSettingsWidget::collectUiKeywords() const
-{
- static const QLatin1Char sep(' ');
- QString keywords;
- QTextStream(&keywords)
- << sep << d->m_ui.tabPreferencesWidget->searchKeywords()
- << sep << d->m_ui.autoIndent->text()
- << sep << d->m_ui.smartBackspaceLabel->text()
- << sep << d->m_ui.tabKeyBehaviorLabel->text()
- << sep << d->m_ui.cleanWhitespace->text()
- << sep << d->m_ui.inEntireDocument->text()
- << sep << d->m_ui.cleanIndentation->text()
- << sep << d->m_ui.addFinalNewLine->text()
- << sep << d->m_ui.encodingLabel->text()
- << sep << d->m_ui.utf8BomLabel->text()
- << sep << d->m_ui.mouseNavigation->text()
- << sep << d->m_ui.scrollWheelZooming->text()
- << sep << d->m_ui.helpTooltipsLabel->text()
- << sep << d->m_ui.constrainTooltipsBox->itemText(0)
- << sep << d->m_ui.constrainTooltipsBox->itemText(1)
- << sep << d->m_ui.camelCaseNavigation->text()
- << sep << d->m_ui.keyboardTooltips->text()
- << sep << d->m_ui.groupBoxStorageSettings->title()
- << sep << d->m_ui.groupBoxEncodings->title()
- << sep << d->m_ui.groupBoxMouse->title();
- keywords.remove(QLatin1Char('&'));
- return keywords;
-}
-
TabSettingsWidget *BehaviorSettingsWidget::tabSettingsWidget() const
{
return d->m_ui.tabPreferencesWidget->tabSettingsWidget();
diff --git a/src/plugins/texteditor/behaviorsettingswidget.h b/src/plugins/texteditor/behaviorsettingswidget.h
index 7fe303da22..50420bfaca 100644
--- a/src/plugins/texteditor/behaviorsettingswidget.h
+++ b/src/plugins/texteditor/behaviorsettingswidget.h
@@ -76,8 +76,6 @@ public:
void setAssignedExtraEncodingSettings(const ExtraEncodingSettings &encodingSettings);
void assignedExtraEncodingSettings(ExtraEncodingSettings *encodingSettings) const;
- QString collectUiKeywords() const;
-
TabSettingsWidget *tabSettingsWidget() const;
signals:
diff --git a/src/plugins/texteditor/displaysettingspage.cpp b/src/plugins/texteditor/displaysettingspage.cpp
index b5470e8ea0..010c4f9c9e 100644
--- a/src/plugins/texteditor/displaysettingspage.cpp
+++ b/src/plugins/texteditor/displaysettingspage.cpp
@@ -33,6 +33,7 @@
#include <coreplugin/icore.h>
+#include <QPointer>
#include <QTextStream>
using namespace TextEditor;
@@ -42,9 +43,9 @@ struct DisplaySettingsPage::DisplaySettingsPagePrivate
explicit DisplaySettingsPagePrivate(const DisplaySettingsPageParameters &p);
const DisplaySettingsPageParameters m_parameters;
+ QPointer<QWidget> m_widget;
Internal::Ui::DisplaySettingsPage *m_page;
DisplaySettings m_displaySettings;
- QString m_searchKeywords;
};
DisplaySettingsPage::DisplaySettingsPagePrivate::DisplaySettingsPagePrivate
@@ -68,28 +69,15 @@ DisplaySettingsPage::~DisplaySettingsPage()
delete d;
}
-QWidget *DisplaySettingsPage::createPage(QWidget *parent)
+QWidget *DisplaySettingsPage::widget()
{
- QWidget *w = new QWidget(parent);
- d->m_page = new Internal::Ui::DisplaySettingsPage;
- d->m_page->setupUi(w);
- settingsToUI();
- if (d->m_searchKeywords.isEmpty()) {
- QTextStream(&d->m_searchKeywords) << d->m_page->displayLineNumbers->text()
- << ' ' << d->m_page->highlightCurrentLine->text()
- << ' ' << d->m_page->displayFoldingMarkers->text()
- << ' ' << d->m_page->highlightBlocks->text()
- << ' ' << d->m_page->visualizeWhitespace->text()
- << ' ' << d->m_page->animateMatchingParentheses->text()
- << ' ' << d->m_page->highlightMatchingParentheses->text()
- << ' ' << d->m_page->enableTextWrapping->text()
- << ' ' << d->m_page->autoFoldFirstComment->text()
- << ' ' << d->m_page->centerOnScroll->text()
- << ' ' << d->m_page->openLinksInNextSplit->text()
- << ' ' << d->m_page->displayFileEncoding->text();
- d->m_searchKeywords.remove(QLatin1Char('&'));
+ if (!d->m_widget) {
+ d->m_widget = new QWidget;
+ d->m_page = new Internal::Ui::DisplaySettingsPage;
+ d->m_page->setupUi(d->m_widget);
+ settingsToUI();
}
- return w;
+ return d->m_widget;
}
void DisplaySettingsPage::apply()
@@ -104,6 +92,7 @@ void DisplaySettingsPage::apply()
void DisplaySettingsPage::finish()
{
+ delete d->m_widget;
if (!d->m_page) // page was never shown
return;
delete d->m_page;
@@ -163,8 +152,3 @@ void DisplaySettingsPage::setDisplaySettings(const DisplaySettings &newDisplaySe
emit displaySettingsChanged(newDisplaySettings);
}
}
-
-bool DisplaySettingsPage::matches(const QString &s) const
-{
- return d->m_searchKeywords.contains(s, Qt::CaseInsensitive);
-}
diff --git a/src/plugins/texteditor/displaysettingspage.h b/src/plugins/texteditor/displaysettingspage.h
index 802e303277..54f08259e3 100644
--- a/src/plugins/texteditor/displaysettingspage.h
+++ b/src/plugins/texteditor/displaysettingspage.h
@@ -55,10 +55,9 @@ public:
~DisplaySettingsPage();
// IOptionsPage
- QWidget *createPage(QWidget *parent);
+ QWidget *widget();
void apply();
void finish();
- bool matches(const QString &s) const;
const DisplaySettings &displaySettings() const;
diff --git a/src/plugins/texteditor/fontsettingspage.cpp b/src/plugins/texteditor/fontsettingspage.cpp
index e3cd7e496a..a5bd146316 100644
--- a/src/plugins/texteditor/fontsettingspage.cpp
+++ b/src/plugins/texteditor/fontsettingspage.cpp
@@ -36,14 +36,15 @@
#include <utils/stringutils.h>
#include <utils/qtcassert.h>
-#include <QDebug>
-#include <QSettings>
-#include <QTimer>
#include <QFileDialog>
#include <QFontDatabase>
#include <QInputDialog>
#include <QMessageBox>
#include <QPalette>
+#include <QPointer>
+#include <QSettings>
+#include <QTimer>
+#include <QDebug>
namespace TextEditor {
namespace Internal {
@@ -122,10 +123,10 @@ public:
TextEditor::FormatDescriptions m_descriptions;
FontSettings m_value;
FontSettings m_lastValue;
+ QPointer<QWidget> m_widget;
Ui::FontSettingsPage *m_ui;
SchemeListModel *m_schemeListModel;
bool m_refreshingSchemeList;
- QString m_searchKeywords;
};
} // namespace Internal
@@ -326,49 +327,40 @@ FontSettingsPage::~FontSettingsPage()
delete d_ptr;
}
-QWidget *FontSettingsPage::createPage(QWidget *parent)
+QWidget *FontSettingsPage::widget()
{
- QWidget *w = new QWidget(parent);
- d_ptr->m_ui = new Ui::FontSettingsPage;
- d_ptr->m_ui->setupUi(w);
- d_ptr->m_ui->schemeComboBox->setModel(d_ptr->m_schemeListModel);
+ if (!d_ptr->m_widget){
+ d_ptr->m_widget = new QWidget;
+ d_ptr->m_ui = new Ui::FontSettingsPage;
+ d_ptr->m_ui->setupUi(d_ptr->m_widget);
+ d_ptr->m_ui->schemeComboBox->setModel(d_ptr->m_schemeListModel);
- QFontDatabase db;
- const QStringList families = db.families();
- d_ptr->m_ui->familyComboBox->addItems(families);
- const int idx = families.indexOf(d_ptr->m_value.family());
- d_ptr->m_ui->familyComboBox->setCurrentIndex(idx);
+ QFontDatabase db;
+ const QStringList families = db.families();
+ d_ptr->m_ui->familyComboBox->addItems(families);
+ const int idx = families.indexOf(d_ptr->m_value.family());
+ d_ptr->m_ui->familyComboBox->setCurrentIndex(idx);
- d_ptr->m_ui->antialias->setChecked(d_ptr->m_value.antialias());
- d_ptr->m_ui->zoomSpinBox->setValue(d_ptr->m_value.fontZoom());
+ d_ptr->m_ui->antialias->setChecked(d_ptr->m_value.antialias());
+ d_ptr->m_ui->zoomSpinBox->setValue(d_ptr->m_value.fontZoom());
- d_ptr->m_ui->schemeEdit->setFormatDescriptions(d_ptr->m_descriptions);
- d_ptr->m_ui->schemeEdit->setBaseFont(d_ptr->m_value.font());
- d_ptr->m_ui->schemeEdit->setColorScheme(d_ptr->m_value.colorScheme());
+ d_ptr->m_ui->schemeEdit->setFormatDescriptions(d_ptr->m_descriptions);
+ d_ptr->m_ui->schemeEdit->setBaseFont(d_ptr->m_value.font());
+ d_ptr->m_ui->schemeEdit->setColorScheme(d_ptr->m_value.colorScheme());
- connect(d_ptr->m_ui->familyComboBox, SIGNAL(currentIndexChanged(QString)), this, SLOT(fontFamilySelected(QString)));
- connect(d_ptr->m_ui->sizeComboBox, SIGNAL(currentIndexChanged(QString)), this, SLOT(fontSizeSelected(QString)));
- connect(d_ptr->m_ui->zoomSpinBox, SIGNAL(valueChanged(int)), this, SLOT(fontZoomChanged()));
- connect(d_ptr->m_ui->schemeComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(colorSchemeSelected(int)));
- connect(d_ptr->m_ui->copyButton, SIGNAL(clicked()), this, SLOT(copyColorScheme()));
- connect(d_ptr->m_ui->deleteButton, SIGNAL(clicked()), this, SLOT(confirmDeleteColorScheme()));
+ connect(d_ptr->m_ui->familyComboBox, SIGNAL(currentIndexChanged(QString)), this, SLOT(fontFamilySelected(QString)));
+ connect(d_ptr->m_ui->sizeComboBox, SIGNAL(currentIndexChanged(QString)), this, SLOT(fontSizeSelected(QString)));
+ connect(d_ptr->m_ui->zoomSpinBox, SIGNAL(valueChanged(int)), this, SLOT(fontZoomChanged()));
+ connect(d_ptr->m_ui->schemeComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(colorSchemeSelected(int)));
+ connect(d_ptr->m_ui->copyButton, SIGNAL(clicked()), this, SLOT(copyColorScheme()));
+ connect(d_ptr->m_ui->deleteButton, SIGNAL(clicked()), this, SLOT(confirmDeleteColorScheme()));
- updatePointSizes();
- refreshColorSchemeList();
- d_ptr->m_lastValue = d_ptr->m_value;
- if (d_ptr->m_searchKeywords.isEmpty()) {
- QLatin1Char sep(' ');
- d_ptr->m_searchKeywords =
- d_ptr->m_ui->fontGroupBox->title() + sep
- + d_ptr->m_ui->familyLabel->text() + sep
- + d_ptr->m_ui->sizeLabel->text() + sep
- + d_ptr->m_ui->zoomLabel->text() + sep
- + d_ptr->m_ui->antialias->text() + sep
- + d_ptr->m_ui->colorSchemeGroupBox->title();
- d_ptr->m_searchKeywords.remove(QLatin1Char('&'));
+ updatePointSizes();
+ refreshColorSchemeList();
+ d_ptr->m_lastValue = d_ptr->m_value;
}
- return w;
+ return d_ptr->m_widget;
}
void FontSettingsPage::fontFamilySelected(const QString &family)
@@ -630,6 +622,7 @@ void FontSettingsPage::saveSettings()
void FontSettingsPage::finish()
{
+ delete d_ptr->m_widget;
if (!d_ptr->m_ui) // page was never shown
return;
// If changes were applied, these are equal. Otherwise restores last value.
@@ -642,8 +635,3 @@ 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 3870904cd2..a5b9f6057f 100644
--- a/src/plugins/texteditor/fontsettingspage.h
+++ b/src/plugins/texteditor/fontsettingspage.h
@@ -92,10 +92,9 @@ public:
~FontSettingsPage();
- QWidget *createPage(QWidget *parent);
+ QWidget *widget();
void apply();
void finish();
- bool matches(const QString &) const;
void saveSettings();
diff --git a/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp b/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp
index 637a580434..3aba87e3ad 100644
--- a/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp
+++ b/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp
@@ -36,6 +36,7 @@
#include <coreplugin/icore.h>
#include <QMessageBox>
+#include <QPointer>
using namespace TextEditor;
using namespace Internal;
@@ -50,10 +51,9 @@ struct HighlighterSettingsPage::HighlighterSettingsPagePrivate
const QString m_displayName;
const QString m_settingsPrefix;
- QString m_searchKeywords;
-
HighlighterSettings m_settings;
+ QPointer<QWidget> m_widget;
Ui::HighlighterSettingsPage *m_page;
};
@@ -88,36 +88,30 @@ HighlighterSettingsPage::~HighlighterSettingsPage()
delete m_d;
}
-QWidget *HighlighterSettingsPage::createPage(QWidget *parent)
-{
- QWidget *w = new QWidget(parent);
- m_d->m_page = new Ui::HighlighterSettingsPage;
- m_d->m_page->setupUi(w);
- m_d->m_page->definitionFilesPath->setExpectedKind(Utils::PathChooser::ExistingDirectory);
- m_d->m_page->definitionFilesPath->setHistoryCompleter(QLatin1String("TextEditor.Highlighter.History"));
- m_d->m_page->definitionFilesPath->addButton(tr("Download Definitions..."), this,
- SLOT(requestAvailableDefinitionsMetaData()));
- m_d->m_page->fallbackDefinitionFilesPath->setExpectedKind(Utils::PathChooser::ExistingDirectory);
- m_d->m_page->fallbackDefinitionFilesPath->setHistoryCompleter(QLatin1String("TextEditor.Highlighter.History"));
- m_d->m_page->fallbackDefinitionFilesPath->addButton(tr("Autodetect"), this,
- SLOT(resetDefinitionsLocation()));
-
- settingsToUI();
-
- if (m_d->m_searchKeywords.isEmpty()) {
- QTextStream(&m_d->m_searchKeywords) << m_d->m_page->definitionFilesGroupBox->title()
- << m_d->m_page->locationLabel->text()
- << m_d->m_page->useFallbackLocation->text()
- << m_d->m_page->ignoreLabel->text();
+QWidget *HighlighterSettingsPage::widget()
+{
+ if (!m_d->m_widget) {
+ m_d->m_widget = new QWidget;
+ m_d->m_page = new Ui::HighlighterSettingsPage;
+ m_d->m_page->setupUi(m_d->m_widget);
+ m_d->m_page->definitionFilesPath->setExpectedKind(Utils::PathChooser::ExistingDirectory);
+ m_d->m_page->definitionFilesPath->setHistoryCompleter(QLatin1String("TextEditor.Highlighter.History"));
+ m_d->m_page->definitionFilesPath->addButton(tr("Download Definitions..."), this,
+ SLOT(requestAvailableDefinitionsMetaData()));
+ m_d->m_page->fallbackDefinitionFilesPath->setExpectedKind(Utils::PathChooser::ExistingDirectory);
+ m_d->m_page->fallbackDefinitionFilesPath->setHistoryCompleter(QLatin1String("TextEditor.Highlighter.History"));
+ m_d->m_page->fallbackDefinitionFilesPath->addButton(tr("Autodetect"), this,
+ SLOT(resetDefinitionsLocation()));
+
+ settingsToUI();
+
+ connect(m_d->m_page->useFallbackLocation, SIGNAL(clicked(bool)),
+ this, SLOT(setFallbackLocationState(bool)));
+ connect(m_d->m_page->definitionFilesPath, SIGNAL(validChanged(bool)),
+ this, SLOT(setDownloadDefinitionsState(bool)));
+ connect(m_d->m_widget, SIGNAL(destroyed()), this, SLOT(ignoreDownloadReply()));
}
-
- connect(m_d->m_page->useFallbackLocation, SIGNAL(clicked(bool)),
- this, SLOT(setFallbackLocationState(bool)));
- connect(m_d->m_page->definitionFilesPath, SIGNAL(validChanged(bool)),
- this, SLOT(setDownloadDefinitionsState(bool)));
- connect(w, SIGNAL(destroyed()), this, SLOT(ignoreDownloadReply()));
-
- return w;
+ return m_d->m_widget;
}
void HighlighterSettingsPage::apply()
@@ -135,17 +129,13 @@ void HighlighterSettingsPage::apply()
void HighlighterSettingsPage::finish()
{
+ delete m_d->m_widget;
if (!m_d->m_page) // page was not shown
return;
delete m_d->m_page;
m_d->m_page = 0;
}
-bool HighlighterSettingsPage::matches(const QString &s) const
-{
- return m_d->m_searchKeywords.contains(s, Qt::CaseInsensitive);
-}
-
const HighlighterSettings &HighlighterSettingsPage::highlighterSettings() const
{
m_d->ensureInitialized();
diff --git a/src/plugins/texteditor/generichighlighter/highlightersettingspage.h b/src/plugins/texteditor/generichighlighter/highlightersettingspage.h
index 770ef4c4cf..ef72878b48 100644
--- a/src/plugins/texteditor/generichighlighter/highlightersettingspage.h
+++ b/src/plugins/texteditor/generichighlighter/highlightersettingspage.h
@@ -52,10 +52,9 @@ public:
HighlighterSettingsPage(Core::Id id, QObject *parent);
~HighlighterSettingsPage();
- QWidget *createPage(QWidget *parent);
+ QWidget *widget();
void apply();
void finish();
- bool matches(const QString &s) const;
const HighlighterSettings &highlighterSettings() const;
diff --git a/src/plugins/texteditor/simplecodestylepreferenceswidget.cpp b/src/plugins/texteditor/simplecodestylepreferenceswidget.cpp
index 072a8a25f4..f143c249d4 100644
--- a/src/plugins/texteditor/simplecodestylepreferenceswidget.cpp
+++ b/src/plugins/texteditor/simplecodestylepreferenceswidget.cpp
@@ -94,11 +94,6 @@ void SimpleCodeStylePreferencesWidget::slotTabSettingsChanged(const TextEditor::
current->setTabSettings(settings);
}
-QString SimpleCodeStylePreferencesWidget::searchKeywords() const
-{
- return m_tabSettingsWidget->searchKeywords();
-}
-
void SimpleCodeStylePreferencesWidget::setFlat(bool on)
{
m_tabSettingsWidget->setFlat(on);
diff --git a/src/plugins/texteditor/simplecodestylepreferenceswidget.h b/src/plugins/texteditor/simplecodestylepreferenceswidget.h
index 2ba5a38d36..776da7a75b 100644
--- a/src/plugins/texteditor/simplecodestylepreferenceswidget.h
+++ b/src/plugins/texteditor/simplecodestylepreferenceswidget.h
@@ -52,7 +52,6 @@ public:
explicit SimpleCodeStylePreferencesWidget(QWidget *parent = 0);
void setPreferences(ICodeStylePreferences *tabPreferences);
- QString searchKeywords() const;
void setFlat(bool on);
TabSettingsWidget *tabSettingsWidget() const;
diff --git a/src/plugins/texteditor/snippets/snippetssettingspage.cpp b/src/plugins/texteditor/snippets/snippetssettingspage.cpp
index c59d510f32..88bb429c3e 100644
--- a/src/plugins/texteditor/snippets/snippetssettingspage.cpp
+++ b/src/plugins/texteditor/snippets/snippetssettingspage.cpp
@@ -39,11 +39,12 @@
#include <texteditor/texteditorsettings.h>
#include <extensionsystem/pluginmanager.h>
-#include <QModelIndex>
#include <QAbstractTableModel>
#include <QList>
-#include <QTextStream>
#include <QMessageBox>
+#include <QModelIndex>
+#include <QPointer>
+#include <QTextStream>
namespace TextEditor {
namespace Internal {
@@ -269,12 +270,13 @@ public:
Core::Id id() const { return m_id; }
const QString &displayName() const { return m_displayName; }
- bool isKeyword(const QString &s) const { return m_keywords.contains(s, Qt::CaseInsensitive); }
void configureUi(QWidget *parent);
void apply();
void finish();
+ QPointer<QWidget> m_widget;
+
private slots:
void loadSnippetGroup(int index);
void markSnippetsCollection();
@@ -302,7 +304,6 @@ private:
const QString m_settingsPrefix;
SnippetsTableModel *m_model;
bool m_snippetsCollectionChanged;
- QString m_keywords;
SnippetsSettings m_settings;
Ui::SnippetsSettingsPage m_ui;
};
@@ -350,8 +351,6 @@ void SnippetsSettingsPagePrivate::configureUi(QWidget *w)
m_ui.revertButton->setEnabled(false);
- QTextStream(&m_keywords) << m_displayName;
-
loadSettings();
loadSnippetGroup(m_ui.groupCombo->currentIndex());
@@ -566,16 +565,13 @@ SnippetsSettingsPage::~SnippetsSettingsPage()
delete d;
}
-bool SnippetsSettingsPage::matches(const QString &s) const
+QWidget *SnippetsSettingsPage::widget()
{
- return d->isKeyword(s);
-}
-
-QWidget *SnippetsSettingsPage::createPage(QWidget *parent)
-{
- QWidget *w = new QWidget(parent);
- d->configureUi(w);
- return w;
+ if (!d->m_widget) {
+ d->m_widget = new QWidget;
+ d->configureUi(d->m_widget);
+ }
+ return d->m_widget;
}
void SnippetsSettingsPage::apply()
@@ -586,6 +582,7 @@ void SnippetsSettingsPage::apply()
void SnippetsSettingsPage::finish()
{
d->finish();
+ delete d->m_widget;
}
} // Internal
diff --git a/src/plugins/texteditor/snippets/snippetssettingspage.h b/src/plugins/texteditor/snippets/snippetssettingspage.h
index 04737b71d3..154dbd670c 100644
--- a/src/plugins/texteditor/snippets/snippetssettingspage.h
+++ b/src/plugins/texteditor/snippets/snippetssettingspage.h
@@ -45,8 +45,7 @@ public:
SnippetsSettingsPage(Core::Id id, QObject *parent);
~SnippetsSettingsPage();
- bool matches(const QString &s) const;
- QWidget *createPage(QWidget *parent);
+ QWidget *widget();
void apply();
void finish();
diff --git a/src/plugins/texteditor/tabsettingswidget.cpp b/src/plugins/texteditor/tabsettingswidget.cpp
index 2ce5756437..3f36eef375 100644
--- a/src/plugins/texteditor/tabsettingswidget.cpp
+++ b/src/plugins/texteditor/tabsettingswidget.cpp
@@ -101,21 +101,6 @@ void TabSettingsWidget::setFlat(bool on)
ui->tabsAndIndentationGroupBox->layout()->setContentsMargins(margin, -1, margin, margin);
}
-QString TabSettingsWidget::searchKeywords() const
-{
- QString rc;
- QLatin1Char sep(' ');
- QTextStream(&rc)
- << sep << ui->tabsAndIndentationGroupBox->title()
- << sep << ui->tabPolicyLabel->text()
- << sep << ui->tabSizeLabel->text()
- << sep << ui->indentSizeLabel->text()
- << sep << ui->continuationAlignBehaviorLabel->text()
- ;
- rc.remove(QLatin1Char('&'));
- return rc;
-}
-
void TabSettingsWidget::setCodingStyleWarningVisible(bool visible)
{
ui->codingStyleWarning->setVisible(visible);
diff --git a/src/plugins/texteditor/tabsettingswidget.h b/src/plugins/texteditor/tabsettingswidget.h
index 802a7933ca..41a490f783 100644
--- a/src/plugins/texteditor/tabsettingswidget.h
+++ b/src/plugins/texteditor/tabsettingswidget.h
@@ -56,7 +56,6 @@ public:
TabSettings tabSettings() const;
void setFlat(bool on);
- QString searchKeywords() const;
void setCodingStyleWarningVisible(bool visible);
public slots: