29 Q_PROPERTY(QSize iconSize READ iconSize WRITE setIconSize)
30 Q_PROPERTY(Qt::ToolButtonStyle toolButtonStyle READ toolButtonStyle WRITE setToolButtonStyle)
31#if QT_CONFIG(dockwidget)
32 Q_PROPERTY(
bool animated READ isAnimated WRITE setAnimated)
34 Q_PROPERTY(
bool documentMode READ documentMode WRITE setDocumentMode)
36#if QT_CONFIG(tabwidget)
37 Q_PROPERTY(QTabWidget::TabShape tabShape READ tabShape WRITE setTabShape)
39 Q_PROPERTY(
bool dockNestingEnabled READ isDockNestingEnabled WRITE setDockNestingEnabled)
41 Q_PROPERTY(DockOptions dockOptions READ dockOptions WRITE setDockOptions)
43 Q_PROPERTY(
bool unifiedTitleAndToolBarOnMac READ unifiedTitleAndToolBarOnMac
44 WRITE setUnifiedTitleAndToolBarOnMac)
50 AllowNestedDocks = 0x02,
51 AllowTabbedDocks = 0x04,
52 ForceTabbedDocks = 0x08,
54 GroupedDragging = 0x20
57 Q_DECLARE_FLAGS(DockOptions, DockOption)
60 explicit QMainWindow(QWidget *parent =
nullptr, Qt::WindowFlags flags = Qt::WindowFlags());
63 QSize iconSize()
const;
64 void setIconSize(
const QSize &iconSize);
66 Qt::ToolButtonStyle toolButtonStyle()
const;
67 void setToolButtonStyle(Qt::ToolButtonStyle toolButtonStyle);
69#if QT_CONFIG(dockwidget)
70 bool isAnimated()
const;
71 bool isDockNestingEnabled()
const;
75 bool documentMode()
const;
76 void setDocumentMode(
bool enabled);
79#if QT_CONFIG(tabwidget)
80 QTabWidget::TabShape tabShape()
const;
81 void setTabShape(QTabWidget::TabShape tabShape);
82 QTabWidget::TabPosition tabPosition(Qt::DockWidgetArea area)
const;
83 void setTabPosition(Qt::DockWidgetAreas areas, QTabWidget::TabPosition tabPosition);
86 void setDockOptions(DockOptions options);
87 DockOptions dockOptions()
const;
89 bool isSeparator(
const QPoint &pos)
const;
92 QMenuBar *menuBar()
const;
93 void setMenuBar(QMenuBar *menubar);
95 QWidget *menuWidget()
const;
96 void setMenuWidget(QWidget *menubar);
99#if QT_CONFIG(statusbar)
100 QStatusBar *statusBar()
const;
101 void setStatusBar(QStatusBar *statusbar);
104 QWidget *centralWidget()
const;
105 void setCentralWidget(QWidget *widget);
107 QWidget *takeCentralWidget();
109#if QT_CONFIG(dockwidget)
110 void setCorner(Qt::Corner corner, Qt::DockWidgetArea area);
111 Qt::DockWidgetArea corner(Qt::Corner corner)
const;
114#if QT_CONFIG(toolbar)
115 void addToolBarBreak(Qt::ToolBarArea area = Qt::TopToolBarArea);
116 void insertToolBarBreak(QToolBar *before);
118 void addToolBar(Qt::ToolBarArea area, QToolBar *toolbar);
119 void addToolBar(QToolBar *toolbar);
120 QToolBar *addToolBar(
const QString &title);
121 void insertToolBar(QToolBar *before, QToolBar *toolbar);
122 void removeToolBar(QToolBar *toolbar);
123 void removeToolBarBreak(QToolBar *before);
125 bool unifiedTitleAndToolBarOnMac()
const;
127 Qt::ToolBarArea toolBarArea(
const QToolBar *toolbar)
const;
128 bool toolBarBreak(QToolBar *toolbar)
const;
131#if QT_CONFIG(dockwidget)
132 void addDockWidget(Qt::DockWidgetArea area, QDockWidget *dockwidget);
133 void addDockWidget(Qt::DockWidgetArea area, QDockWidget *dockwidget,
134 Qt::Orientation orientation);
135 void splitDockWidget(QDockWidget *after, QDockWidget *dockwidget,
136 Qt::Orientation orientation);
138 void tabifyDockWidget(QDockWidget *first, QDockWidget *second);
139 QList<QDockWidget*> tabifiedDockWidgets(QDockWidget *dockwidget)
const;
141 void removeDockWidget(QDockWidget *dockwidget);
142 bool restoreDockWidget(QDockWidget *dockwidget);
144 Qt::DockWidgetArea dockWidgetArea(QDockWidget *dockwidget)
const;
146 void resizeDocks(
const QList<QDockWidget *> &docks,
147 const QList<
int> &sizes, Qt::Orientation orientation);
150 QByteArray saveState(
int version = 0)
const;
151 bool restoreState(
const QByteArray &state,
int version = 0);
154 virtual QMenu *createPopupMenu();
158#if QT_CONFIG(dockwidget)
159 void setAnimated(
bool enabled);
160 void setDockNestingEnabled(
bool enabled);
162#if QT_CONFIG(toolbar)
163 void setUnifiedTitleAndToolBarOnMac(
bool set);
167 void iconSizeChanged(
const QSize &iconSize);
168 void toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle);
169#if QT_CONFIG(dockwidget)
170 void tabifiedDockWidgetActivated(QDockWidget *dockWidget);
174#ifndef QT_NO_CONTEXTMENU
175 void contextMenuEvent(QContextMenuEvent *event) override;
177 bool event(QEvent *event) override;
180 Q_DECLARE_PRIVATE(QMainWindow)
181 Q_DISABLE_COPY(QMainWindow)
182 friend class QDockWidgetGroupWindow;
The QMainWindow class provides a main application window.