42 #ifndef QMDISUBWINDOW_P_H 43 #define QMDISUBWINDOW_P_H 61 #include <QStyleOptionTitleBar> 66 #include <private/qwidget_p.h> 86 if (classname && strcmp(classname,
"ControlElement") == 0)
100 #ifndef QT_NO_MENUBAR 101 void showButtonsInMenuBar(
QMenuBar *menuBar);
102 void removeButtonsFromMenuBar(
QMenuBar *menuBar = 0);
105 void updateWindowIcon(
const QIcon &windowIcon);
112 #ifndef QT_NO_MENUBAR 144 HResizeReverse = 0x10,
145 VResizeReverse = 0x20
157 NumWindowStateActions
166 : changeFlags(changeFlags),
167 cursorShape(cursorShape),
180 #ifndef QT_NO_SIZEGRIP 183 #ifndef QT_NO_RUBBERBAND 194 #ifndef QT_NO_RUBBERBAND 215 #ifndef QT_NO_ACTIONS 228 void _q_updateStaysOnTopHint();
229 void _q_enterInteractiveMode();
233 void leaveInteractiveMode();
234 void removeBaseWidget();
235 void initOperationMap();
237 void createSystemMenu();
240 void updateDirtyRegions();
241 void updateGeometryConstraints();
243 void setNewGeometry(
const QPoint &pos);
244 void setMinimizeMode();
245 void setNormalMode();
246 void setMaximizeMode();
247 void setActive(
bool activate,
bool changeFocus =
true);
248 void processClickedSubControl();
254 void sizeParameters(
int *margin,
int *minWidth)
const;
255 bool drawTitleBarWhenMaximized()
const;
256 #ifndef QT_NO_MENUBAR 258 void showButtonsInMenuBar(
QMenuBar *menuBar);
259 void removeButtonsFromMenuBar();
261 void updateWindowTitle(
bool requestFromChild);
262 #ifndef QT_NO_RUBBERBAND 263 void enterRubberBandMode();
264 void leaveRubberBandMode();
267 void updateActions();
268 void setFocusWidget();
270 void setWindowFlags(Qt::WindowFlags windowFlags);
277 #endif // QT_NO_ACTION 278 QSize iconSize()
const;
279 #ifndef QT_NO_SIZEGRIP 281 void setSizeGripVisible(
bool visible =
true)
const;
283 void updateInternalWindowTitle();
285 void setNewWindowTitle();
291 || (q->isMaximized() && !drawTitleBarWhenMaximized())) {
296 if (hasBorder(options))
297 height += q->isMinimized() ? 8 : 4;
313 #ifndef QT_NO_RUBBERBAND 314 if (isInRubberBandMode)
318 q->setGeometry(*geometry);
335 return currentOperation !=
None && currentOperation != Move;
340 return currentOperation == Move;
344 #endif // QT_NO_MDIAREA 348 #endif // QMDISUBWINDOW_P_H
SubControl
This enum describes the available sub controls.
bool isMoveOperation() const
#define QT_END_NAMESPACE
This macro expands to.
The QSizeGrip class provides a resize handle for resizing top-level windows.
QPointer< QWidget > restoreFocusWidget
bool ignoreNextActivationEvent
QString lastChildWindowTitle
QPointer< QMdiSubWindow > mdiChild
The QStyleOptionTitleBar class is used to describe the parameters for drawing a title bar...
int titleBarHeight() const
QSize expandedTo(const QSize &) const
Returns a size holding the maximum width and height of this size and the given otherSize.
QStyleOptionTitleBar cachedStyleOptions
int height() const
Returns the height of the rectangle.
QPointer< QWidget > m_controllerWidget
The QString class provides a Unicode character string.
The QObject class is the base class of all Qt objects.
QMdiSubWindow::SubWindowOptions options
bool isShadeRequestFromMinimizeMode
QSize internalMinimumSize
QPointer< QMenuBar > m_menuBar
Operation currentOperation
#define QT_BEGIN_NAMESPACE
This macro expands to.
void setGeometry(const QRect &r)
Sets the geometry of the rubber band to rect, specified in the coordinate system of its parent widget...
bool isExplicitlyDeactivated
void setNewGeometry(QRect *geometry)
QSize size() const
Returns the size of the rectangle.
void setSize(const QSize &s)
Sets the size of the rectangle to the given size.
QPointer< QWidget > m_menuLabel
QPointer< QMdi::ControlContainer > controlContainer
The QRegion class specifies a clip region for a painter.
QPointer< QWidget > previousRight
QPointer< QWidget > baseWidget
The QMouseEvent class contains parameters that describe a mouse event.
QPointer< QWidget > previousLeft
ControlElement(QMdiSubWindow *child)
QMenuBar * menuBar() const
#define Q_DECLARE_PUBLIC(Class)
Qt::FocusReason focusInReason
bool hasBorder(const QStyleOptionTitleBar &options) const
QPointer< QMdiSubWindow > mdiChild
The QFont class specifies a font used for drawing text.
QStyle::SubControl activeSubControl
void * qt_metacast(const char *classname)
The QPoint class defines a point in the plane using integer precision.
QPointer< QMenu > systemMenu
The QRect class defines a rectangle in the plane using integer precision.
QWidget * controllerWidget() const
QPoint mousePressPosition
bool ignoreWindowTitleChange
The QSize class defines the size of a two-dimensional object using integer point precision.
The QVBoxLayout class lines up widgets vertically.
QStyle::SubControl getSubControl(const QPoint &pos) const
OperationInfo(uint changeFlags, Qt::CursorShape cursorShape, bool hover=true)
The QRubberBand class provides a rectangle or line that can indicate a selection or a boundary...
QMap< Operation, OperationInfo > OperationInfoMap
QWidget * systemMenuLabel() const
QPointer< QSizeGrip > sizeGrip
QRect rect
the area that should be used for various calculations and painting
Qt::CursorShape cursorShape
The QMdiSubWindow class provides a subwindow class for QMdiArea.
bool isResizeOperation() const
QStyle::SubControl hoveredSubControl
OperationInfoMap operationMap
The QPalette class contains color groups for each widget state.
The QIcon class provides scalable icons in different modes and states.