forked from qt-creator/qt-creator
ProjectExplorer: Use new settings page convenience for app output
Following the pattern introduced in 809e62e373
.
Change-Id: I87dc785e071b3b80817df984ab3921e949f9f1bc
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -120,8 +120,7 @@ private:
|
|||||||
int m_tabIndexForMiddleClick = -1;
|
int m_tabIndexForMiddleClick = -1;
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
} // Internal
|
||||||
}
|
|
||||||
|
|
||||||
TabWidget::TabWidget(QWidget *parent)
|
TabWidget::TabWidget(QWidget *parent)
|
||||||
: QTabWidget(parent)
|
: QTabWidget(parent)
|
||||||
@@ -817,11 +816,11 @@ bool AppOutputPane::canNavigate() const
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
class AppOutputSettingsPage::SettingsWidget : public QWidget
|
class AppOutputSettingsWidget : public Core::IOptionsPageWidget
|
||||||
{
|
{
|
||||||
Q_DECLARE_TR_FUNCTIONS(ProjectExplorer::Internal::AppOutputSettingsPage)
|
Q_DECLARE_TR_FUNCTIONS(ProjectExplorer::Internal::AppOutputSettingsPage)
|
||||||
public:
|
public:
|
||||||
SettingsWidget()
|
AppOutputSettingsWidget()
|
||||||
{
|
{
|
||||||
const AppOutputSettings &settings = ProjectExplorerPlugin::appOutputSettings();
|
const AppOutputSettings &settings = ProjectExplorerPlugin::appOutputSettings();
|
||||||
m_wrapOutputCheckBox.setText(tr("Word-wrap output"));
|
m_wrapOutputCheckBox.setText(tr("Word-wrap output"));
|
||||||
@@ -863,7 +862,7 @@ public:
|
|||||||
layout->addStretch(1);
|
layout->addStretch(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
AppOutputSettings settings() const
|
void apply() final
|
||||||
{
|
{
|
||||||
AppOutputSettings s;
|
AppOutputSettings s;
|
||||||
s.wrapOutput = m_wrapOutputCheckBox.isChecked();
|
s.wrapOutput = m_wrapOutputCheckBox.isChecked();
|
||||||
@@ -874,9 +873,12 @@ public:
|
|||||||
s.debugOutputMode = static_cast<AppOutputPaneMode>(
|
s.debugOutputMode = static_cast<AppOutputPaneMode>(
|
||||||
m_debugOutputModeComboBox.currentData().toInt());
|
m_debugOutputModeComboBox.currentData().toInt());
|
||||||
s.maxCharCount = m_maxCharsBox.value();
|
s.maxCharCount = m_maxCharsBox.value();
|
||||||
return s;
|
|
||||||
|
ProjectExplorerPlugin::setAppOutputSettings(s);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void finish() final {}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QCheckBox m_wrapOutputCheckBox;
|
QCheckBox m_wrapOutputCheckBox;
|
||||||
QCheckBox m_cleanOldOutputCheckBox;
|
QCheckBox m_cleanOldOutputCheckBox;
|
||||||
@@ -891,25 +893,10 @@ AppOutputSettingsPage::AppOutputSettingsPage()
|
|||||||
setId(OPTIONS_PAGE_ID);
|
setId(OPTIONS_PAGE_ID);
|
||||||
setDisplayName(tr("Application Output"));
|
setDisplayName(tr("Application Output"));
|
||||||
setCategory(Constants::BUILD_AND_RUN_SETTINGS_CATEGORY);
|
setCategory(Constants::BUILD_AND_RUN_SETTINGS_CATEGORY);
|
||||||
|
setWidgetCreator([] { return new AppOutputSettingsWidget; });
|
||||||
}
|
}
|
||||||
|
|
||||||
QWidget *AppOutputSettingsPage::widget()
|
} // ProjectExplorer
|
||||||
{
|
|
||||||
if (!m_widget)
|
|
||||||
m_widget = new SettingsWidget;
|
|
||||||
return m_widget;
|
|
||||||
}
|
|
||||||
|
|
||||||
void AppOutputSettingsPage::apply()
|
|
||||||
{
|
|
||||||
if (m_widget)
|
|
||||||
ProjectExplorerPlugin::setAppOutputSettings(m_widget->settings());
|
|
||||||
}
|
|
||||||
|
|
||||||
void AppOutputSettingsPage::finish()
|
|
||||||
{
|
|
||||||
delete m_widget;
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "appoutputpane.moc"
|
#include "appoutputpane.moc"
|
||||||
|
|
||||||
|
@@ -165,14 +165,6 @@ class AppOutputSettingsPage : public Core::IOptionsPage
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
AppOutputSettingsPage();
|
AppOutputSettingsPage();
|
||||||
|
|
||||||
private:
|
|
||||||
QWidget *widget() override;
|
|
||||||
void apply() override;
|
|
||||||
void finish() override;
|
|
||||||
|
|
||||||
class SettingsWidget;
|
|
||||||
QPointer<SettingsWidget> m_widget;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace Internal
|
} // namespace Internal
|
||||||
|
Reference in New Issue
Block a user