FakeVim: Use new IOptionsPage convenience functions

Change-Id: I739fe152a4f642a19c90be71bbe5adbc8747f402
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
hjk
2021-03-25 16:58:33 +01:00
parent adad221aa2
commit 19d078bb5c

View File

@@ -371,29 +371,23 @@ public:
setCategory(SETTINGS_CATEGORY);
setDisplayCategory(Tr::tr("FakeVim"));
setCategoryIconPath(":/fakevim/images/settingscategory_fakevim.png");
setLayouter([this](QWidget *widget) { return layoutPage(widget); });
setSettings(fakeVimSettings());
}
QWidget *widget() override;
void apply() override;
void finish() override;
private:
void layoutPage(QWidget *);
void copyTextEditorSettings();
void setQtStyle();
void setPlainStyle();
void updateVimRcWidgets();
QPointer<QWidget> m_widget;
};
QWidget *FakeVimOptionPage::widget()
void FakeVimOptionPage::layoutPage(QWidget *widget)
{
if (!m_widget) {
m_widget = new QWidget;
auto copyTextEditorSettings = new QPushButton(tr("Copy Text Editor Settings"));
auto setQtStyle = new QPushButton(tr("Set Qt Style"));
auto setPlainStyle = new QPushButton(tr("Set Plain Style"));
auto copyTextEditorSettings = new QPushButton(Tr::tr("Copy Text Editor Settings"));
auto setQtStyle = new QPushButton(Tr::tr("Set Qt Style"));
auto setPlainStyle = new QPushButton(Tr::tr("Set Plain Style"));
using namespace Layouting;
FakeVimSettings &s = *fakeVimSettings();
@@ -435,14 +429,14 @@ QWidget *FakeVimOptionPage::widget()
s.useFakeVim,
Group {
Title(tr("Vim Behavior")),
Title(Tr::tr("Vim Behavior")),
bools,
ints,
strings
},
Group {
Title(tr("Plugin Emulation")),
Title(Tr::tr("Plugin Emulation")),
s.emulateVimCommentary,
s.emulateReplaceWithRegister,
s.emulateArgTextObj,
@@ -453,7 +447,7 @@ QWidget *FakeVimOptionPage::widget()
Row { copyTextEditorSettings, setQtStyle, setPlainStyle, Stretch() },
Stretch()
}.attachTo(m_widget, true);
}.attachTo(widget, true);
connect(copyTextEditorSettings, &QAbstractButton::clicked,
this, &FakeVimOptionPage::copyTextEditorSettings);
@@ -464,22 +458,6 @@ QWidget *FakeVimOptionPage::widget()
connect(&s.readVimRc, &FvBaseAspect::changed,
this, &FakeVimOptionPage::updateVimRcWidgets);
updateVimRcWidgets();
}
return m_widget;
}
void FakeVimOptionPage::apply()
{
FakeVimSettings &s = *fakeVimSettings();
s.apply();
s.writeSettings(ICore::settings());
}
void FakeVimOptionPage::finish()
{
FakeVimSettings &s = *fakeVimSettings();
s.cancel();
delete m_widget;
}
void FakeVimOptionPage::copyTextEditorSettings()