IOutputPane Class | Extending Qt Creator Manual
Description: The IOutputPane class is an interface for providing Output panes.

- Extending Qt Creator Manual
- QtCreator
- IOutputPane
- Extending Qt Creator Manual 13.0.1

# IOutputPane Class

class Core::IOutputPane

The IOutputPane class is an interface for providing Output panes. More...

Header: | #include <coreplugin/ioutputpane.h>
Inherits: | QObject
Inherited By: | Core::SearchResultWindow

- List of all members, including inherited members

## Public Types

enum | Flag { NoModeSwitch, ModeSwitch, WithFocus, EnsureSizeHint }
flags | Flags

## Public Functions

| IOutputPane(QObject *parent = nullptr)
virtual bool | canFocus() const = 0
virtual bool | canNavigate() const = 0
virtual bool | canNext() const = 0
virtual bool | canPrevious() const = 0
virtual void | clearContents() = 0
QString | displayName() const
virtual void | goToNext() = 0
virtual void | goToPrev() = 0
virtual bool | hasFocus() const = 0
Utils::Id | id() const
virtual QWidget * | outputWidget(QWidget *parent) = 0
int | priorityInStatusBar() const
virtual void | setFocus() = 0
virtual QList<QWidget *> | toolBarWidgets() const
virtual void | visibilityChanged(bool visible)

## Public Slots

void | flash()
void | hide()
void | navigateStateChanged()
void | popup(int flags)
void | setIconBadgeNumber(int number)
void | toggle(int flags)

## Signals

void | flashButton()
void | hidePage()
void | navigateStateUpdate()
void | setBadgeNumber(int number)
void | showPage(int flags)
void | togglePage(int flags)

## Protected Functions

void | setDisplayName(const QString &name)
void | setId(const Utils::Id &id)
void | setPriorityInStatusBar(int priority)

## Detailed Description

## Member Type Documentation

### enum IOutputPane::Flag
flags IOutputPane::Flags

This enum type controls the behavior of the output pane when it is requested to show itself.

Constant | Value | Description
--- | --- | ---
`Core::IOutputPane::NoModeSwitch` | `0` | Does not switch between the modes.
`Core::IOutputPane::ModeSwitch` | `1` | Does switch between the modes.
`Core::IOutputPane::WithFocus` | `2` | Sets focus if canFocus returns true.
`Core::IOutputPane::EnsureSizeHint` | `4` | Ensures the use of the minimum size.

The Flags type is a typedef for QFlags<Flag>. It stores an OR combination of Flag values.

## Member Function Documentation

### IOutputPane::IOutputPane(QObject *parent = nullptr)

Constructs an output pane as the child of parent.

### `[pure virtual]` bool IOutputPane::canFocus() const

Returns `true` when the output pane can be focused right now (for example, the search result window does not want to be focused if there are no results).

### `[pure virtual]` bool IOutputPane::canNavigate() const

Determines whether the output pane's navigation buttons can be enabled. When this returns `false`, the buttons are disabled and cannot be enabled.

See also IOutputPane::canNext() and IOutputPane::canPrevious().

### `[pure virtual]` bool IOutputPane::canNext() const

Determines whether the Next button in the output pane is enabled. Is overwritten when `canNavigate()` returns `false`.

See also IOutputPane::canNavigate(), IOutputPane::canPrevious(), and IOutputPane::goToNext().

### `[pure virtual]` bool IOutputPane::canPrevious() const

Determines whether the Previous button in the output pane is enabled. Is overwritten when `canNavigate()` returns `false`.

See also IOutputPane::canNavigate(), IOutputPane::canNext(), and IOutputPane::goToPrev().

### `[pure virtual]` void IOutputPane::clearContents()

Is called on selecting the clear button.

### QString IOutputPane::displayName() const

Returns the translated display name of the output pane.

See also setDisplayName().

### `[slot]` void IOutputPane::flash()

Emits the signal `flashButton()`.

See also IOutputPane::flashButton().

### `[signal]` void IOutputPane::flashButton()

Makes the status bar button belonging to the output pane flash.

### `[pure virtual]` void IOutputPane::goToNext()

Is called on selecting the Next button.

See also IOutputPane::canNext().

### `[pure virtual]` void IOutputPane::goToPrev()

Is called on selecting the Previous button.

See also IOutputPane::canPrevious().

### `[pure virtual]` bool IOutputPane::hasFocus() const

Returns `true` when the output pane has focus.

See also IOutputPane::canFocus().

### `[slot]` void IOutputPane::hide()

Emits the signal `hidePage()`.

See also IOutputPane::hidePage().

### `[signal]` void IOutputPane::hidePage()

Hides the output pane.

### Utils::Id IOutputPane::id() const

Returns the ID of the output pane.

See also setId().

### `[slot]` void IOutputPane::navigateStateChanged()

Emits the signal `navigateStateUpdate()`.

See also IOutputPane::navigateStateUpdate().

### `[signal]` void IOutputPane::navigateStateUpdate()

Notifies the output pane manager that the state of canNext, canPrevious, or canNavigate has changed and the buttons need to be updated.

### `[pure virtual]` QWidget *IOutputPane::outputWidget(QWidget *parent)

Returns the output widget (as the child of parent) for the output pane.

### `[slot]` void IOutputPane::popup(int flags)

Emits the signal `showPage(int flags)` with the given parameter flags.

See also IOutputPane::showPage().

### int IOutputPane::priorityInStatusBar() const

Determines the position of the output pane on the status bar and the default visibility.

See also setPriorityInStatusBar().

### `[signal]` void IOutputPane::setBadgeNumber(int number)

Displays number in the status bar button belonging to the output pane (for example, number of issues on building).

### `[protected]` void IOutputPane::setDisplayName(const QString &name)

Sets the translated display name of the output pane to name.

See also displayName().

### `[pure virtual]` void IOutputPane::setFocus()

Gives focus to the output pane window.

See also hasFocus().

### `[slot]` void IOutputPane::setIconBadgeNumber(int number)

Emits the signal `setBadgeNumber(int number)` with the given parameter number.

See also IOutputPane::setBadgeNumber().

### `[protected]` void IOutputPane::setId(const Utils::Id &id)

Sets the ID of the output pane to id. This is used for persisting the visibility state.

See also id().

### `[protected]` void IOutputPane::setPriorityInStatusBar(int priority)

Sets the position of the output pane on the status bar and the default visibility to priority.

- higher numbers are further to the front
- >= 0 are shown in status bar by default
- < 0 are not shown in status bar by default

See also priorityInStatusBar().

### `[signal]` void IOutputPane::showPage(int flags)

Shows the output pane. The parameter flags controls the behavior.

See also IOutputPane::Flags.

### `[slot]` void IOutputPane::toggle(int flags)

Emits the signal `togglePage(int flags)` with the given parameter flags.

See also IOutputPane::togglePage().

### `[signal]` void IOutputPane::togglePage(int flags)

Toggles the hide and show states of the output pane. The parameter flags controls the behavior.

See also IOutputPane::hidePage(), IOutputPane::showPage(), and IOutputPane::Flags.

### `[virtual]` QList<QWidget *> IOutputPane::toolBarWidgets() const

Returns the toolbar widgets for the output pane.

### `[virtual]` void IOutputPane::visibilityChanged(bool visible)

Gets called when the visibility is changed. visible is `true` when the output pane is now visible or `false` otherwise.