aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2023-09-13 15:36:07 +0200
committerEike Ziller <eike.ziller@qt.io>2023-09-18 10:14:42 +0000
commit053c6253b84db1df5380bfecf6f7e632b0abd5ed (patch)
tree8aca49b85a8cde0068742ccef3f4f8111279209c
parent409a4c972a01caa487a10cfd0997ab5d7ac0fbc5 (diff)
OutputPane: Add an id() for the settings
It was using the displayName for the key in the settings (visibility and shortcut), which is annoying when changing the language. Change-Id: Iffa784347c59389599c90f468dcba15834599c39 Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
-rw-r--r--src/plugins/autotest/testresultspane.cpp1
-rw-r--r--src/plugins/axivion/axivionoutputpane.cpp1
-rw-r--r--src/plugins/coreplugin/find/searchresultwindow.cpp1
-rw-r--r--src/plugins/coreplugin/ioutputpane.h3
-rw-r--r--src/plugins/coreplugin/messageoutputwindow.cpp1
-rw-r--r--src/plugins/coreplugin/outputpanemanager.cpp21
-rw-r--r--src/plugins/debugger/console/console.cpp1
-rw-r--r--src/plugins/projectexplorer/appoutputpane.cpp1
-rw-r--r--src/plugins/projectexplorer/compileoutputwindow.cpp1
-rw-r--r--src/plugins/projectexplorer/taskwindow.cpp1
-rw-r--r--src/plugins/serialterminal/serialoutputpane.cpp1
-rw-r--r--src/plugins/squish/squishoutputpane.cpp1
-rw-r--r--src/plugins/terminal/terminalpane.cpp1
-rw-r--r--src/plugins/todo/todooutputpane.cpp1
-rw-r--r--src/plugins/vcsbase/vcsoutputwindow.cpp1
15 files changed, 34 insertions, 3 deletions
diff --git a/src/plugins/autotest/testresultspane.cpp b/src/plugins/autotest/testresultspane.cpp
index 90f675bc92..43dce00ed9 100644
--- a/src/plugins/autotest/testresultspane.cpp
+++ b/src/plugins/autotest/testresultspane.cpp
@@ -74,6 +74,7 @@ TestResultsPane::TestResultsPane(QObject *parent) :
IOutputPane(parent),
m_context(new IContext(this))
{
+ setId("TestResults");
setDisplayName(Tr::tr("Test Results"));
m_outputWidget = new QStackedWidget;
QWidget *visualOutputWidget = new QWidget;
diff --git a/src/plugins/axivion/axivionoutputpane.cpp b/src/plugins/axivion/axivionoutputpane.cpp
index 11937b2060..c961501fa2 100644
--- a/src/plugins/axivion/axivionoutputpane.cpp
+++ b/src/plugins/axivion/axivionoutputpane.cpp
@@ -170,6 +170,7 @@ void DashboardWidget::updateUi()
AxivionOutputPane::AxivionOutputPane(QObject *parent)
: Core::IOutputPane(parent)
{
+ setId("Axivion");
setDisplayName(Tr::tr("Axivion"));
m_outputWidget = new QStackedWidget;
diff --git a/src/plugins/coreplugin/find/searchresultwindow.cpp b/src/plugins/coreplugin/find/searchresultwindow.cpp
index 48ed8b875e..c7ff84b3ee 100644
--- a/src/plugins/coreplugin/find/searchresultwindow.cpp
+++ b/src/plugins/coreplugin/find/searchresultwindow.cpp
@@ -363,6 +363,7 @@ SearchResultWindow *SearchResultWindow::m_instance = nullptr;
SearchResultWindow::SearchResultWindow(QWidget *newSearchPanel)
: d(new SearchResultWindowPrivate(this, newSearchPanel))
{
+ setId("SearchResults");
setDisplayName(Tr::tr("Search Results"));
m_instance = this;
readSettings();
diff --git a/src/plugins/coreplugin/ioutputpane.h b/src/plugins/coreplugin/ioutputpane.h
index 4521456b3d..ff03386650 100644
--- a/src/plugins/coreplugin/ioutputpane.h
+++ b/src/plugins/coreplugin/ioutputpane.h
@@ -33,6 +33,7 @@ public:
virtual QWidget *outputWidget(QWidget *parent) = 0;
virtual QList<QWidget *> toolBarWidgets() const;
+ Utils::Id id() const;
QString displayName() const;
virtual const QList<OutputWindow *> outputWindows() const { return {}; }
virtual void ensureWindowVisible(OutputWindow *) { }
@@ -81,6 +82,7 @@ signals:
void fontChanged(const QFont &font);
protected:
+ void setId(const Utils::Id &id);
void setDisplayName(const QString &name);
void setupFilterUi(const Utils::Key &historyKey);
@@ -106,6 +108,7 @@ private:
Utils::Id filterCaseSensitivityActionId() const;
Utils::Id filterInvertedActionId() const;
+ Utils::Id m_id;
QString m_displayName;
Core::CommandButton * const m_zoomInButton;
Core::CommandButton * const m_zoomOutButton;
diff --git a/src/plugins/coreplugin/messageoutputwindow.cpp b/src/plugins/coreplugin/messageoutputwindow.cpp
index c33fdfe1e4..7ee6e6b1a5 100644
--- a/src/plugins/coreplugin/messageoutputwindow.cpp
+++ b/src/plugins/coreplugin/messageoutputwindow.cpp
@@ -20,6 +20,7 @@ const char zoomSettingsKey[] = "Core/MessageOutput/Zoom";
MessageOutputWindow::MessageOutputWindow()
{
+ setId("GeneralMessages");
setDisplayName(Tr::tr("General Messages"));
m_widget = new OutputWindow(Context(Constants::C_GENERAL_OUTPUT_PANE), zoomSettingsKey);
m_widget->setReadOnly(true);
diff --git a/src/plugins/coreplugin/outputpanemanager.cpp b/src/plugins/coreplugin/outputpanemanager.cpp
index 3d6cf74cee..7bb9964ff3 100644
--- a/src/plugins/coreplugin/outputpanemanager.cpp
+++ b/src/plugins/coreplugin/outputpanemanager.cpp
@@ -104,6 +104,23 @@ QList<QWidget *> IOutputPane::toolBarWidgets() const
}
/*!
+ Returns the ID of the output pane.
+*/
+Id IOutputPane::id() const
+{
+ return m_id;
+}
+
+/*!
+ Sets the ID of the output pane to \a id.
+ This is used for persisting the visibility state.
+*/
+void IOutputPane::setId(const Utils::Id &id)
+{
+ m_id = id;
+}
+
+/*!
Returns the translated display name of the output pane.
*/
QString IOutputPane::displayName() const
@@ -481,9 +498,7 @@ void OutputPaneManager::initialize()
minTitleWidth = qMax(minTitleWidth, titleFm.horizontalAdvance(outPane->displayName()));
- QString suffix = outPane->displayName().simplified();
- suffix.remove(QLatin1Char(' '));
- data.id = baseId.withSuffix(suffix);
+ data.id = baseId.withSuffix(outPane->id().toString());
data.action = new QAction(outPane->displayName(), m_instance);
Command *cmd = ActionManager::registerAction(data.action, data.id);
diff --git a/src/plugins/debugger/console/console.cpp b/src/plugins/debugger/console/console.cpp
index 6ba7bd3d91..0eeac32155 100644
--- a/src/plugins/debugger/console/console.cpp
+++ b/src/plugins/debugger/console/console.cpp
@@ -37,6 +37,7 @@ namespace Debugger::Internal {
Console::Console()
{
+ setId("QMLDebuggerConsole");
setDisplayName(Tr::tr("QML Debugger Console"));
m_consoleItemModel = new ConsoleItemModel(this);
diff --git a/src/plugins/projectexplorer/appoutputpane.cpp b/src/plugins/projectexplorer/appoutputpane.cpp
index 5c1143f40c..ad4eb326ed 100644
--- a/src/plugins/projectexplorer/appoutputpane.cpp
+++ b/src/plugins/projectexplorer/appoutputpane.cpp
@@ -152,6 +152,7 @@ AppOutputPane::AppOutputPane() :
Tr::tr("Show the output that generated this issue in Application Output."),
Tr::tr("A")))
{
+ setId("ApplicationOutput");
setDisplayName(Tr::tr("Application Output"));
ExtensionSystem::PluginManager::addObject(m_handler);
diff --git a/src/plugins/projectexplorer/compileoutputwindow.cpp b/src/plugins/projectexplorer/compileoutputwindow.cpp
index 159cb8f166..1cd8d9a233 100644
--- a/src/plugins/projectexplorer/compileoutputwindow.cpp
+++ b/src/plugins/projectexplorer/compileoutputwindow.cpp
@@ -50,6 +50,7 @@ CompileOutputWindow::CompileOutputWindow(QAction *cancelBuildAction) :
m_cancelBuildButton(new QToolButton),
m_settingsButton(new QToolButton)
{
+ setId("CompileOutput");
setDisplayName(QCoreApplication::translate("QtC::ProjectExplorer", "Compile Output"));
Core::Context context(C_COMPILE_OUTPUT);
m_outputWindow = new Core::OutputWindow(context, SETTINGS_KEY);
diff --git a/src/plugins/projectexplorer/taskwindow.cpp b/src/plugins/projectexplorer/taskwindow.cpp
index cd028e0c8b..dc25997500 100644
--- a/src/plugins/projectexplorer/taskwindow.cpp
+++ b/src/plugins/projectexplorer/taskwindow.cpp
@@ -168,6 +168,7 @@ static QToolButton *createFilterButton(const QIcon &icon, const QString &toolTip
TaskWindow::TaskWindow() : d(std::make_unique<TaskWindowPrivate>())
{
+ setId("Issues");
setDisplayName(Tr::tr("Issues"));
d->m_model = new Internal::TaskModel(this);
d->m_filter = new Internal::TaskFilterModel(d->m_model);
diff --git a/src/plugins/serialterminal/serialoutputpane.cpp b/src/plugins/serialterminal/serialoutputpane.cpp
index 63a34d1ce1..fd2dfb39ff 100644
--- a/src/plugins/serialterminal/serialoutputpane.cpp
+++ b/src/plugins/serialterminal/serialoutputpane.cpp
@@ -120,6 +120,7 @@ SerialOutputPane::SerialOutputPane(Settings &settings) :
m_closeAllTabsAction(new QAction(Tr::tr("Close All Tabs"), this)),
m_closeOtherTabsAction(new QAction(Tr::tr("Close Other Tabs"), this))
{
+ setId("Serial Terminal");
setDisplayName(Tr::tr(Constants::OUTPUT_PANE_TITLE));
createToolButtons();
diff --git a/src/plugins/squish/squishoutputpane.cpp b/src/plugins/squish/squishoutputpane.cpp
index 54704fc062..55612f588c 100644
--- a/src/plugins/squish/squishoutputpane.cpp
+++ b/src/plugins/squish/squishoutputpane.cpp
@@ -28,6 +28,7 @@ static SquishOutputPane *m_instance = nullptr;
SquishOutputPane::SquishOutputPane()
{
+ setId("Squish");
setDisplayName(Tr::tr("Squish"));
m_instance = this;
diff --git a/src/plugins/terminal/terminalpane.cpp b/src/plugins/terminal/terminalpane.cpp
index 0a8af29751..5f1ab15723 100644
--- a/src/plugins/terminal/terminalpane.cpp
+++ b/src/plugins/terminal/terminalpane.cpp
@@ -40,6 +40,7 @@ TerminalPane::TerminalPane(QObject *parent)
: IOutputPane(parent)
, m_selfContext("Terminal.Pane")
{
+ setId("Terminal");
setDisplayName(Tr::tr("Terminal"));
setupContext(m_selfContext, &m_tabWidget);
setZoomButtonsEnabled(true);
diff --git a/src/plugins/todo/todooutputpane.cpp b/src/plugins/todo/todooutputpane.cpp
index ff48103383..5a656a541d 100644
--- a/src/plugins/todo/todooutputpane.cpp
+++ b/src/plugins/todo/todooutputpane.cpp
@@ -26,6 +26,7 @@ TodoOutputPane::TodoOutputPane(TodoItemsModel *todoItemsModel, const Settings *s
m_todoItemsModel(todoItemsModel),
m_settings(settings)
{
+ setId("To-DoEntries");
setDisplayName(Tr::tr("To-Do Entries"));
createTreeView();
createScopeButtons();
diff --git a/src/plugins/vcsbase/vcsoutputwindow.cpp b/src/plugins/vcsbase/vcsoutputwindow.cpp
index 43396cd1fe..ea07ccf9d6 100644
--- a/src/plugins/vcsbase/vcsoutputwindow.cpp
+++ b/src/plugins/vcsbase/vcsoutputwindow.cpp
@@ -283,6 +283,7 @@ static VcsOutputWindowPrivate *d = nullptr;
VcsOutputWindow::VcsOutputWindow()
{
+ setId("VersionControl");
setDisplayName(Tr::tr("Version Control"));
d = new VcsOutputWindowPrivate;
Q_ASSERT(d->passwordRegExp.isValid());