forked from qt-creator/qt-creator
OutputPane: Use setter for priority and fix default visibility
Do not show the buttons of output views with priority < 0 (instead of only == -1). Reduce the number of buttons that are shown by default to the essential ones. Change-Id: I5b44f18537b3033ce9d616f044a8b54b76988783 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This commit is contained in:
@@ -76,6 +76,7 @@ TestResultsPane::TestResultsPane(QObject *parent) :
|
||||
{
|
||||
setId("TestResults");
|
||||
setDisplayName(Tr::tr("Test Results"));
|
||||
setPriorityInStatusBar(-30);
|
||||
m_outputWidget = new QStackedWidget;
|
||||
QWidget *visualOutputWidget = new QWidget;
|
||||
m_outputWidget->addWidget(visualOutputWidget);
|
||||
@@ -276,11 +277,6 @@ QList<QWidget *> TestResultsPane::toolBarWidgets() const
|
||||
return result;
|
||||
}
|
||||
|
||||
int TestResultsPane::priorityInStatusBar() const
|
||||
{
|
||||
return -666;
|
||||
}
|
||||
|
||||
void TestResultsPane::clearContents()
|
||||
{
|
||||
m_filterModel->clearTestResults();
|
||||
|
||||
@@ -60,7 +60,6 @@ public:
|
||||
// IOutputPane interface
|
||||
QWidget *outputWidget(QWidget *parent) override;
|
||||
QList<QWidget *> toolBarWidgets() const override;
|
||||
int priorityInStatusBar() const override;
|
||||
void clearContents() override;
|
||||
void setFocus() override;
|
||||
bool hasFocus() const override;
|
||||
|
||||
@@ -172,6 +172,7 @@ AxivionOutputPane::AxivionOutputPane(QObject *parent)
|
||||
{
|
||||
setId("Axivion");
|
||||
setDisplayName(Tr::tr("Axivion"));
|
||||
setPriorityInStatusBar(-50);
|
||||
|
||||
m_outputWidget = new QStackedWidget;
|
||||
DashboardWidget *dashboardWidget = new DashboardWidget(m_outputWidget);
|
||||
@@ -209,11 +210,6 @@ QList<QWidget *> AxivionOutputPane::toolBarWidgets() const
|
||||
return buttons;
|
||||
}
|
||||
|
||||
int AxivionOutputPane::priorityInStatusBar() const
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
|
||||
void AxivionOutputPane::clearContents()
|
||||
{
|
||||
}
|
||||
|
||||
@@ -21,7 +21,6 @@ public:
|
||||
// IOutputPane interface
|
||||
QWidget *outputWidget(QWidget *parent) override;
|
||||
QList<QWidget *> toolBarWidgets() const override;
|
||||
int priorityInStatusBar() const override;
|
||||
void clearContents() override;
|
||||
void setFocus() override;
|
||||
bool hasFocus() const override;
|
||||
|
||||
@@ -365,6 +365,7 @@ SearchResultWindow::SearchResultWindow(QWidget *newSearchPanel)
|
||||
{
|
||||
setId("SearchResults");
|
||||
setDisplayName(Tr::tr("Search Results"));
|
||||
setPriorityInStatusBar(80);
|
||||
m_instance = this;
|
||||
readSettings();
|
||||
}
|
||||
@@ -657,14 +658,6 @@ void SearchResultWindow::writeSettings()
|
||||
s->endGroup();
|
||||
}
|
||||
|
||||
/*!
|
||||
\internal
|
||||
*/
|
||||
int SearchResultWindow::priorityInStatusBar() const
|
||||
{
|
||||
return 80;
|
||||
}
|
||||
|
||||
/*!
|
||||
\internal
|
||||
*/
|
||||
|
||||
@@ -114,7 +114,6 @@ public:
|
||||
QWidget *outputWidget(QWidget *) override;
|
||||
QList<QWidget*> toolBarWidgets() const override;
|
||||
|
||||
int priorityInStatusBar() const override;
|
||||
void visibilityChanged(bool visible) override;
|
||||
bool hasFocus() const override;
|
||||
bool canFocus() const override;
|
||||
|
||||
@@ -49,16 +49,6 @@ namespace Core {
|
||||
Returns the toolbar widgets for the output pane.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int IOutputPane::priorityInStatusBar() const
|
||||
|
||||
Determines the position of the output pane on the status bar.
|
||||
\list
|
||||
\li 100 to 0 from front to end
|
||||
\li -1 do not show in status bar
|
||||
\endlist
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn void IOutputPane::clearContents()
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
virtual const QList<OutputWindow *> outputWindows() const { return {}; }
|
||||
virtual void ensureWindowVisible(OutputWindow *) { }
|
||||
|
||||
virtual int priorityInStatusBar() const = 0;
|
||||
int priorityInStatusBar() const;
|
||||
|
||||
virtual void clearContents() = 0;
|
||||
virtual void visibilityChanged(bool visible);
|
||||
@@ -84,6 +84,7 @@ signals:
|
||||
protected:
|
||||
void setId(const Utils::Id &id);
|
||||
void setDisplayName(const QString &name);
|
||||
void setPriorityInStatusBar(int priority);
|
||||
|
||||
void setupFilterUi(const Utils::Key &historyKey);
|
||||
QString filterText() const;
|
||||
@@ -110,6 +111,7 @@ private:
|
||||
|
||||
Utils::Id m_id;
|
||||
QString m_displayName;
|
||||
int m_priority = -1;
|
||||
Core::CommandButton * const m_zoomInButton;
|
||||
Core::CommandButton * const m_zoomOutButton;
|
||||
QAction *m_filterActionRegexp = nullptr;
|
||||
|
||||
@@ -22,6 +22,8 @@ MessageOutputWindow::MessageOutputWindow()
|
||||
{
|
||||
setId("GeneralMessages");
|
||||
setDisplayName(Tr::tr("General Messages"));
|
||||
setPriorityInStatusBar(-100);
|
||||
|
||||
m_widget = new OutputWindow(Context(Constants::C_GENERAL_OUTPUT_PANE), zoomSettingsKey);
|
||||
m_widget->setReadOnly(true);
|
||||
|
||||
@@ -72,11 +74,6 @@ void MessageOutputWindow::append(const QString &text)
|
||||
m_widget->appendMessage(text, Utils::GeneralMessageFormat);
|
||||
}
|
||||
|
||||
int MessageOutputWindow::priorityInStatusBar() const
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
|
||||
bool MessageOutputWindow::canNext() const
|
||||
{
|
||||
return false;
|
||||
|
||||
@@ -20,7 +20,6 @@ public:
|
||||
|
||||
QWidget *outputWidget(QWidget *parent) override;
|
||||
|
||||
int priorityInStatusBar() const override;
|
||||
void clearContents() override;
|
||||
|
||||
void append(const QString &text);
|
||||
|
||||
@@ -128,6 +128,30 @@ QString IOutputPane::displayName() const
|
||||
return m_displayName;
|
||||
}
|
||||
|
||||
/*!
|
||||
Determines the position of the output pane on the status bar and the
|
||||
default visibility.
|
||||
\sa setPriorityInStatusBar()
|
||||
*/
|
||||
int IOutputPane::priorityInStatusBar() const
|
||||
{
|
||||
return m_priority;
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the position of the output pane on the status bar and the default
|
||||
visibility to \a priority.
|
||||
\list
|
||||
\li higher numbers are further to the front
|
||||
\li >= 0 are shown in status bar by default
|
||||
\li < 0 are not shown in status bar by default
|
||||
\endlist
|
||||
*/
|
||||
void IOutputPane::setPriorityInStatusBar(int priority)
|
||||
{
|
||||
m_priority = priority;
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the translated display name of the output pane to \a name.
|
||||
*/
|
||||
@@ -522,7 +546,7 @@ void OutputPaneManager::initialize()
|
||||
m_instance->buttonTriggered(i);
|
||||
});
|
||||
|
||||
bool visible = outPane->priorityInStatusBar() != -1;
|
||||
const bool visible = outPane->priorityInStatusBar() >= 0;
|
||||
data.button->setVisible(visible);
|
||||
|
||||
connect(data.action, &QAction::triggered, m_instance, [i] {
|
||||
|
||||
@@ -39,6 +39,8 @@ Console::Console()
|
||||
{
|
||||
setId("QMLDebuggerConsole");
|
||||
setDisplayName(Tr::tr("QML Debugger Console"));
|
||||
setPriorityInStatusBar(-40);
|
||||
|
||||
m_consoleItemModel = new ConsoleItemModel(this);
|
||||
|
||||
m_consoleWidget = new QWidget;
|
||||
@@ -144,11 +146,6 @@ QList<QWidget *> Console::toolBarWidgets() const
|
||||
m_spacer, m_statusLabel};
|
||||
}
|
||||
|
||||
int Console::priorityInStatusBar() const
|
||||
{
|
||||
return 20;
|
||||
}
|
||||
|
||||
void Console::clearContents()
|
||||
{
|
||||
m_consoleItemModel->clear();
|
||||
|
||||
@@ -34,7 +34,6 @@ public:
|
||||
|
||||
QWidget *outputWidget(QWidget *) override;
|
||||
QList<QWidget *> toolBarWidgets() const override;
|
||||
int priorityInStatusBar() const override;
|
||||
void clearContents() override;
|
||||
bool canFocus() const override;
|
||||
bool hasFocus() const override;
|
||||
|
||||
@@ -154,6 +154,8 @@ AppOutputPane::AppOutputPane() :
|
||||
{
|
||||
setId("ApplicationOutput");
|
||||
setDisplayName(Tr::tr("Application Output"));
|
||||
setPriorityInStatusBar(60);
|
||||
|
||||
ExtensionSystem::PluginManager::addObject(m_handler);
|
||||
|
||||
setObjectName("AppOutputPane"); // Used in valgrind engine
|
||||
@@ -307,11 +309,6 @@ QList<QWidget *> AppOutputPane::toolBarWidgets() const
|
||||
m_formatterWidget} + IOutputPane::toolBarWidgets();
|
||||
}
|
||||
|
||||
int AppOutputPane::priorityInStatusBar() const
|
||||
{
|
||||
return 60;
|
||||
}
|
||||
|
||||
void AppOutputPane::clearContents()
|
||||
{
|
||||
auto *currentWindow = qobject_cast<Core::OutputWindow *>(m_tabWidget->currentWidget());
|
||||
|
||||
@@ -46,7 +46,6 @@ public:
|
||||
|
||||
QWidget *outputWidget(QWidget *) override;
|
||||
QList<QWidget *> toolBarWidgets() const override;
|
||||
int priorityInStatusBar() const override;
|
||||
void clearContents() override;
|
||||
bool canFocus() const override;
|
||||
bool hasFocus() const override;
|
||||
|
||||
@@ -52,6 +52,8 @@ CompileOutputWindow::CompileOutputWindow(QAction *cancelBuildAction) :
|
||||
{
|
||||
setId("CompileOutput");
|
||||
setDisplayName(QCoreApplication::translate("QtC::ProjectExplorer", "Compile Output"));
|
||||
setPriorityInStatusBar(40);
|
||||
|
||||
Core::Context context(C_COMPILE_OUTPUT);
|
||||
m_outputWindow = new Core::OutputWindow(context, SETTINGS_KEY);
|
||||
m_outputWindow->setWindowTitle(displayName());
|
||||
@@ -178,11 +180,6 @@ void CompileOutputWindow::clearContents()
|
||||
m_outputWindow->clear();
|
||||
}
|
||||
|
||||
int CompileOutputWindow::priorityInStatusBar() const
|
||||
{
|
||||
return 50;
|
||||
}
|
||||
|
||||
bool CompileOutputWindow::canNext() const
|
||||
{
|
||||
return false;
|
||||
|
||||
@@ -48,7 +48,6 @@ public:
|
||||
|
||||
QWidget *outputWidget(QWidget *) override;
|
||||
QList<QWidget *> toolBarWidgets() const override;
|
||||
int priorityInStatusBar() const override;
|
||||
void clearContents() override;
|
||||
bool canFocus() const override;
|
||||
bool hasFocus() const override;
|
||||
|
||||
@@ -170,6 +170,8 @@ TaskWindow::TaskWindow() : d(std::make_unique<TaskWindowPrivate>())
|
||||
{
|
||||
setId("Issues");
|
||||
setDisplayName(Tr::tr("Issues"));
|
||||
setPriorityInStatusBar(100);
|
||||
|
||||
d->m_model = new Internal::TaskModel(this);
|
||||
d->m_filter = new Internal::TaskFilterModel(d->m_model);
|
||||
d->m_filter->setAutoAcceptChildRows(true);
|
||||
@@ -500,11 +502,6 @@ int TaskWindow::warningTaskCount(Id category) const
|
||||
return d->m_model->warningTaskCount(category);
|
||||
}
|
||||
|
||||
int TaskWindow::priorityInStatusBar() const
|
||||
{
|
||||
return 90;
|
||||
}
|
||||
|
||||
void TaskWindow::clearContents()
|
||||
{
|
||||
// clear all tasks in all displays
|
||||
|
||||
@@ -40,7 +40,6 @@ public:
|
||||
QWidget *outputWidget(QWidget *) override;
|
||||
QList<QWidget *> toolBarWidgets() const override;
|
||||
|
||||
int priorityInStatusBar() const override;
|
||||
void clearContents() override;
|
||||
void visibilityChanged(bool visible) override;
|
||||
|
||||
|
||||
@@ -122,6 +122,8 @@ SerialOutputPane::SerialOutputPane(Settings &settings) :
|
||||
{
|
||||
setId("Serial Terminal");
|
||||
setDisplayName(Tr::tr(Constants::OUTPUT_PANE_TITLE));
|
||||
setPriorityInStatusBar(-70);
|
||||
|
||||
createToolButtons();
|
||||
|
||||
auto layout = new QVBoxLayout;
|
||||
@@ -176,11 +178,6 @@ QList<QWidget *> SerialOutputPane::toolBarWidgets() const
|
||||
m_resetButton };
|
||||
}
|
||||
|
||||
int SerialOutputPane::priorityInStatusBar() const
|
||||
{
|
||||
return 30;
|
||||
}
|
||||
|
||||
void SerialOutputPane::clearContents()
|
||||
{
|
||||
auto currentWindow = qobject_cast<Core::OutputWindow *>(m_tabWidget->currentWidget());
|
||||
|
||||
@@ -51,7 +51,6 @@ public:
|
||||
QWidget *outputWidget(QWidget *parent) final;
|
||||
QList<QWidget *> toolBarWidgets() const final;
|
||||
|
||||
int priorityInStatusBar() const final;
|
||||
void clearContents() final;
|
||||
bool canFocus() const final;
|
||||
bool hasFocus() const final;
|
||||
|
||||
@@ -30,6 +30,8 @@ SquishOutputPane::SquishOutputPane()
|
||||
{
|
||||
setId("Squish");
|
||||
setDisplayName(Tr::tr("Squish"));
|
||||
setPriorityInStatusBar(-60);
|
||||
|
||||
m_instance = this;
|
||||
|
||||
m_outputPane = new QTabWidget;
|
||||
@@ -116,11 +118,6 @@ QList<QWidget *> SquishOutputPane::toolBarWidgets() const
|
||||
return {m_filterButton, m_expandAll, m_collapseAll};
|
||||
}
|
||||
|
||||
int SquishOutputPane::priorityInStatusBar() const
|
||||
{
|
||||
return -777;
|
||||
}
|
||||
|
||||
void SquishOutputPane::clearContents()
|
||||
{
|
||||
if (m_outputPane->currentIndex() == 0)
|
||||
|
||||
@@ -35,7 +35,6 @@ public:
|
||||
// IOutputPane interface
|
||||
QWidget *outputWidget(QWidget *parent) override;
|
||||
QList<QWidget *> toolBarWidgets() const override;
|
||||
int priorityInStatusBar() const override;
|
||||
void clearContents() override;
|
||||
void visibilityChanged(bool visible) override;
|
||||
void setFocus() override;
|
||||
|
||||
@@ -42,6 +42,8 @@ TerminalPane::TerminalPane(QObject *parent)
|
||||
{
|
||||
setId("Terminal");
|
||||
setDisplayName(Tr::tr("Terminal"));
|
||||
setPriorityInStatusBar(20);
|
||||
|
||||
setupContext(m_selfContext, &m_tabWidget);
|
||||
setZoomButtonsEnabled(true);
|
||||
|
||||
@@ -350,11 +352,6 @@ QList<QWidget *> TerminalPane::toolBarWidgets() const
|
||||
return widgets << m_openSettingsButton << m_lockKeyboardButton << m_escSettingButton;
|
||||
}
|
||||
|
||||
int TerminalPane::priorityInStatusBar() const
|
||||
{
|
||||
return 50;
|
||||
}
|
||||
|
||||
void TerminalPane::clearContents()
|
||||
{
|
||||
if (const auto t = currentTerminal())
|
||||
|
||||
@@ -27,7 +27,6 @@ public:
|
||||
|
||||
QWidget *outputWidget(QWidget *parent) override;
|
||||
QList<QWidget *> toolBarWidgets() const override;
|
||||
int priorityInStatusBar() const override;
|
||||
void clearContents() override;
|
||||
void visibilityChanged(bool visible) override;
|
||||
void setFocus() override;
|
||||
|
||||
@@ -28,6 +28,8 @@ TodoOutputPane::TodoOutputPane(TodoItemsModel *todoItemsModel, const Settings *s
|
||||
{
|
||||
setId("To-DoEntries");
|
||||
setDisplayName(Tr::tr("To-Do Entries"));
|
||||
setPriorityInStatusBar(10);
|
||||
|
||||
createTreeView();
|
||||
createScopeButtons();
|
||||
setScanningScope(ScanningScopeCurrentFile); // default
|
||||
@@ -61,11 +63,6 @@ QList<QWidget*> TodoOutputPane::toolBarWidgets() const
|
||||
return widgets;
|
||||
}
|
||||
|
||||
int TodoOutputPane::priorityInStatusBar() const
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
void TodoOutputPane::clearContents()
|
||||
{
|
||||
clearKeywordFilter();
|
||||
|
||||
@@ -35,7 +35,6 @@ public:
|
||||
|
||||
QWidget *outputWidget(QWidget *parent) override;
|
||||
QList<QWidget*> toolBarWidgets() const override;
|
||||
int priorityInStatusBar() const override;
|
||||
void clearContents() override;
|
||||
void setFocus() override;
|
||||
bool hasFocus() const override;
|
||||
|
||||
@@ -285,6 +285,8 @@ VcsOutputWindow::VcsOutputWindow()
|
||||
{
|
||||
setId("VersionControl");
|
||||
setDisplayName(Tr::tr("Version Control"));
|
||||
setPriorityInStatusBar(-20);
|
||||
|
||||
d = new VcsOutputWindowPrivate;
|
||||
Q_ASSERT(d->passwordRegExp.isValid());
|
||||
m_instance = this;
|
||||
@@ -329,11 +331,6 @@ QWidget *VcsOutputWindow::outputWidget(QWidget *parent)
|
||||
return &d->widget;
|
||||
}
|
||||
|
||||
int VcsOutputWindow::priorityInStatusBar() const
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
|
||||
void VcsOutputWindow::clearContents()
|
||||
{
|
||||
d->widget.clear();
|
||||
|
||||
@@ -23,8 +23,6 @@ class VCSBASE_EXPORT VcsOutputWindow : public Core::IOutputPane
|
||||
public:
|
||||
QWidget *outputWidget(QWidget *parent) override;
|
||||
|
||||
int priorityInStatusBar() const override;
|
||||
|
||||
void clearContents() override;
|
||||
|
||||
void setFocus() override;
|
||||
|
||||
Reference in New Issue
Block a user