Files
qt-creator/src/plugins/projectexplorer/compileoutputwindow.h
Lucie Gérard a7956df3ca Use SPDX license identifiers
Replace the current license disclaimer in files by
a SPDX-License-Identifier.

Task-number: QTBUG-67283
Change-Id: I708fd1f9f2b73d60f57cc3568646929117825813
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-08-26 12:27:18 +00:00

84 lines
2.2 KiB
C++

// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#pragma once
#include "buildstep.h"
#include "projectexplorersettings.h"
#include <coreplugin/dialogs/ioptionspage.h>
#include <coreplugin/ioutputpane.h>
QT_BEGIN_NAMESPACE
class QToolButton;
QT_END_NAMESPACE
namespace Core { class OutputWindow; }
namespace Utils { class OutputFormatter; }
namespace ProjectExplorer {
class Task;
namespace Internal {
class ShowOutputTaskHandler;
class CompileOutputTextEdit;
class CompileOutputWindow final : public Core::IOutputPane
{
Q_OBJECT
public:
explicit CompileOutputWindow(QAction *cancelBuildAction);
~CompileOutputWindow() override;
QWidget *outputWidget(QWidget *) override;
QList<QWidget *> toolBarWidgets() const override;
QString displayName() const override { return tr("Compile Output"); }
int priorityInStatusBar() const override;
void clearContents() override;
bool canFocus() const override;
bool hasFocus() const override;
void setFocus() override;
bool canNext() const override;
bool canPrevious() const override;
void goToNext() override;
void goToPrev() override;
bool canNavigate() const override;
void appendText(const QString &text, BuildStep::OutputFormat format);
void registerPositionOf(const Task &task, int linkedOutputLines, int skipLines, int offset = 0);
void flush();
void reset();
const CompileOutputSettings &settings() const { return m_settings; }
void setSettings(const CompileOutputSettings &settings);
Utils::OutputFormatter *outputFormatter() const;
private:
void updateFilter() override;
const QList<Core::OutputWindow *> outputWindows() const override { return {m_outputWindow}; }
void loadSettings();
void storeSettings() const;
void updateFromSettings();
Core::OutputWindow *m_outputWindow;
ShowOutputTaskHandler *m_handler;
QToolButton *m_cancelBuildButton;
QToolButton * const m_settingsButton;
CompileOutputSettings m_settings;
};
class CompileOutputSettingsPage final : public Core::IOptionsPage
{
public:
CompileOutputSettingsPage();
};
} // namespace Internal
} // namespace ProjectExplorer