diff --git a/src/plugins/texteditor/outlinefactory.cpp b/src/plugins/texteditor/outlinefactory.cpp index dac2e6b8c67..b80599ef342 100644 --- a/src/plugins/texteditor/outlinefactory.cpp +++ b/src/plugins/texteditor/outlinefactory.cpp @@ -149,5 +149,23 @@ Core::NavigationView OutlineFactory::createWidget() return n; } +void OutlineFactory::saveSettings(int position, QWidget *widget) +{ + OutlineWidgetStack *widgetStack = qobject_cast(widget); + Q_ASSERT(widgetStack); + QSettings *settings = Core::ICore::instance()->settings(); + settings->setValue("Outline."+QString::number(position)+".SyncWithEditor", + widgetStack->toggleSyncButton()->isEnabled()); +} + +void OutlineFactory::restoreSettings(int position, QWidget *widget) +{ + OutlineWidgetStack *widgetStack = qobject_cast(widget); + Q_ASSERT(widgetStack); + QSettings *settings = Core::ICore::instance()->settings(); + widgetStack->toggleSyncButton()->setChecked( + settings->value("Outline."+QString::number(position)+".SyncWithEditor", true).toBool()); +} + } // namespace Internal } // namespace TextEditor diff --git a/src/plugins/texteditor/outlinefactory.h b/src/plugins/texteditor/outlinefactory.h index 360ccbdd280..8c5fe1b5c0f 100644 --- a/src/plugins/texteditor/outlinefactory.h +++ b/src/plugins/texteditor/outlinefactory.h @@ -57,7 +57,8 @@ public: virtual QString id() const; virtual QKeySequence activationSequence() const; virtual Core::NavigationView createWidget(); - + virtual void saveSettings(int position, QWidget *widget); + virtual void restoreSettings(int position, QWidget *widget); private: QList m_factories; };