Qt 4.8
Public Slots | Signals | Public Functions | Protected Functions | Properties | List of all members
QStatusBar Class Reference

The QStatusBar class provides a horizontal bar suitable for presenting status information. More...

#include <qstatusbar.h>

Inheritance diagram for QStatusBar:
QWidget QObject QPaintDevice

Public Slots

void clearMessage ()
 Removes any temporary message being shown. More...
 
void showMessage (const QString &text, int timeout=0)
 Hides the normal status indications and displays the given message for the specified number of milli-seconds ({timeout}). More...
 
- Public Slots inherited from QWidget
bool close ()
 Closes this widget. More...
 
void hide ()
 Hides the widget. More...
 
void lower ()
 Lowers the widget to the bottom of the parent widget's stack. More...
 
void raise ()
 Raises this widget to the top of the parent widget's stack. More...
 
void repaint ()
 Repaints the widget directly by calling paintEvent() immediately, unless updates are disabled or the widget is hidden. More...
 
void setDisabled (bool)
 Disables widget input events if disable is true; otherwise enables input events. More...
 
void setEnabled (bool)
 
void setFocus ()
 Gives the keyboard input focus to this widget (or its focus proxy) if this widget or one of its parents is the active window. More...
 
void setHidden (bool hidden)
 Convenience function, equivalent to setVisible(!hidden). More...
 
QT_MOC_COMPAT void setShown (bool shown)
 Use setVisible(shown) instead. More...
 
void setStyleSheet (const QString &styleSheet)
 
virtual void setVisible (bool visible)
 
void setWindowModified (bool)
 
void setWindowTitle (const QString &)
 
void show ()
 Shows the widget and its child widgets. More...
 
void showFullScreen ()
 Shows the widget in full-screen mode. More...
 
void showMaximized ()
 Shows the widget maximized. More...
 
void showMinimized ()
 Shows the widget minimized, as an icon. More...
 
void showNormal ()
 Restores the widget after it has been maximized or minimized. More...
 
void update ()
 Updates the widget unless updates are disabled or the widget is hidden. More...
 
- Public Slots inherited from QObject
void deleteLater ()
 Schedules this object for deletion. More...
 

Signals

void messageChanged (const QString &text)
 This signal is emitted whenever the temporary status message changes. More...
 
- Signals inherited from QWidget
void customContextMenuRequested (const QPoint &pos)
 This signal is emitted when the widget's contextMenuPolicy is Qt::CustomContextMenu, and the user has requested a context menu on the widget. More...
 
- Signals inherited from QObject
void destroyed (QObject *=0)
 This signal is emitted immediately before the object obj is destroyed, and can not be blocked. More...
 

Public Functions

void addPermanentWidget (QWidget *widget, int stretch=0)
 Adds the given widget permanently to this status bar, reparenting the widget if it isn't already a child of this QStatusBar object. More...
 
void addWidget (QWidget *widget, int stretch=0)
 Adds the given widget to this status bar, reparenting the widget if it isn't already a child of this QStatusBar object. More...
 
QString currentMessage () const
 Returns the temporary message currently shown, or an empty string if there is no such message. More...
 
int insertPermanentWidget (int index, QWidget *widget, int stretch=0)
 Inserts the given widget at the given index permanently to this status bar, reparenting the widget if it isn't already a child of this QStatusBar object. More...
 
int insertWidget (int index, QWidget *widget, int stretch=0)
 Inserts the given widget at the given index to this status bar, reparenting the widget if it isn't already a child of this QStatusBar object. More...
 
bool isSizeGripEnabled () const
 
 QStatusBar (QWidget *parent=0)
 Constructs a status bar with a size grip and the given parent. More...
 
void removeWidget (QWidget *widget)
 Removes the specified widget from the status bar. More...
 
void setSizeGripEnabled (bool)
 
virtual ~QStatusBar ()
 Destroys this status bar and frees any allocated resources and child widgets. More...
 
- Public Functions inherited from QWidget
bool acceptDrops () const
 
QString accessibleDescription () const
 
QString accessibleName () const
 
QList< QAction * > actions () const
 Returns the (possibly empty) list of this widget's actions. More...
 
void activateWindow ()
 Sets the top-level widget containing this widget to be the active window. More...
 
void addAction (QAction *action)
 Appends the action action to this widget's list of actions. More...
 
void addActions (QList< QAction *> actions)
 Appends the actions actions to this widget's list of actions. More...
 
void adjustSize ()
 Adjusts the size of the widget to fit its contents. More...
 
bool autoFillBackground () const
 
QPalette::ColorRole backgroundRole () const
 Returns the background role of the widget. More...
 
QSize baseSize () const
 
QWidgetchildAt (int x, int y) const
 Returns the visible child widget at the position ({x}, {y}) in the widget's coordinate system. More...
 
QWidgetchildAt (const QPoint &p) const
 Returns the visible child widget at point p in the widget's own coordinate system. More...
 
QRect childrenRect () const
 
QRegion childrenRegion () const
 
void clearFocus ()
 Takes keyboard input focus from the widget. More...
 
void clearMask ()
 Removes any mask set by setMask(). More...
 
QMargins contentsMargins () const
 The contentsMargins function returns the widget's contents margins. More...
 
QRect contentsRect () const
 Returns the area inside the widget's margins. More...
 
Qt::ContextMenuPolicy contextMenuPolicy () const
 
void createWinId ()
 
QCursor cursor () const
 
int devType () const
 
WId effectiveWinId () const
 Returns the effective window system identifier of the widget, i. More...
 
void ensurePolished () const
 Ensures that the widget has been polished by QStyle (i.e., has a proper font and palette). More...
 
Qt::FocusPolicy focusPolicy () const
 
QWidgetfocusProxy () const
 Returns the focus proxy, or 0 if there is no focus proxy. More...
 
QWidgetfocusWidget () const
 Returns the last child of this widget that setFocus had been called on. More...
 
const QFontfont () const
 
QFontInfo fontInfo () const
 Returns the font info for the widget's current font. More...
 
QFontMetrics fontMetrics () const
 Returns the font metrics for the widget's current font. More...
 
QPalette::ColorRole foregroundRole () const
 Returns the foreground role. More...
 
QRect frameGeometry () const
 
QSize frameSize () const
 
const QRectgeometry () const
 
void getContentsMargins (int *left, int *top, int *right, int *bottom) const
 Returns the widget's contents margins for left, top, right, and bottom. More...
 
HDC getDC () const
 Returns the window system handle of the widget, for low-level access. More...
 
void grabGesture (Qt::GestureType type, Qt::GestureFlags flags=Qt::GestureFlags())
 Subscribes the widget to a given gesture with specific flags. More...
 
void grabKeyboard ()
 Grabs the keyboard input. More...
 
void grabMouse ()
 Grabs the mouse input. More...
 
void grabMouse (const QCursor &)
 
int grabShortcut (const QKeySequence &key, Qt::ShortcutContext context=Qt::WindowShortcut)
 Adds a shortcut to Qt's shortcut system that watches for the given key sequence in the given context. More...
 
QGraphicsEffectgraphicsEffect () const
 The graphicsEffect function returns a pointer to the widget's graphics effect. More...
 
QGraphicsProxyWidgetgraphicsProxyWidget () const
 Returns the proxy widget for the corresponding embedded widget in a graphics view; otherwise returns 0. More...
 
bool hasFocus () const
 
bool hasMouseTracking () const
 
int height () const
 
virtual int heightForWidth (int) const
 Returns the preferred height for this widget, given the width w. More...
 
QInputContextinputContext ()
 This function returns the QInputContext for this widget. More...
 
Qt::InputMethodHints inputMethodHints () const
 
virtual QVariant inputMethodQuery (Qt::InputMethodQuery) const
 This method is only relevant for input widgets. More...
 
void insertAction (QAction *before, QAction *action)
 Inserts the action action to this widget's list of actions, before the action before. More...
 
void insertActions (QAction *before, QList< QAction *> actions)
 Inserts the actions actions to this widget's list of actions, before the action before. More...
 
WId internalWinId () const
 Returns the window system identifier of the widget, or 0 if the widget is not created yet. More...
 
bool isActiveWindow () const
 
bool isAncestorOf (const QWidget *child) const
 Returns true if this widget is a parent, (or grandparent and so on to any level), of the given child, and both widgets are within the same window; otherwise returns false. More...
 
bool isEnabled () const
 
bool isEnabledTo (QWidget *) const
 Returns true if this widget would become enabled if ancestor is enabled; otherwise returns false. More...
 
bool isEnabledToTLW () const
 This function is deprecated. More...
 
bool isFullScreen () const
 
bool isHidden () const
 Returns true if the widget is hidden, otherwise returns false. More...
 
bool isLeftToRight () const
 
bool isMaximized () const
 
bool isMinimized () const
 
bool isModal () const
 
bool isRightToLeft () const
 
bool isTopLevel () const
 Use isWindow() instead. More...
 
bool isVisible () const
 
bool isVisibleTo (QWidget *) const
 Returns true if this widget would become visible if ancestor is shown; otherwise returns false. More...
 
bool isWindow () const
 Returns true if the widget is an independent window, otherwise returns false. More...
 
bool isWindowModified () const
 
QLayoutlayout () const
 Returns the layout manager that is installed on this widget, or 0 if no layout manager is installed. More...
 
Qt::LayoutDirection layoutDirection () const
 
QLocale locale () const
 
Qt::HANDLE macCGHandle () const
 Returns the CoreGraphics handle of the widget. More...
 
Qt::HANDLE macQDHandle () const
 Returns the QuickDraw handle of the widget. More...
 
QPoint mapFrom (QWidget *, const QPoint &) const
 Translates the widget coordinate pos from the coordinate system of parent to this widget's coordinate system. More...
 
QPoint mapFromGlobal (const QPoint &) const
 Translates the global screen coordinate pos to widget coordinates. More...
 
QPoint mapFromParent (const QPoint &) const
 Translates the parent widget coordinate pos to widget coordinates. More...
 
QPoint mapTo (QWidget *, const QPoint &) const
 Translates the widget coordinate pos to the coordinate system of parent. More...
 
QPoint mapToGlobal (const QPoint &) const
 Translates the widget coordinate pos to global screen coordinates. More...
 
QPoint mapToParent (const QPoint &) const
 Translates the widget coordinate pos to a coordinate in the parent widget. More...
 
QRegion mask () const
 Returns the mask currently set on a widget. More...
 
int maximumHeight () const
 
QSize maximumSize () const
 
int maximumWidth () const
 
int minimumHeight () const
 
QSize minimumSize () const
 
virtual QSize minimumSizeHint () const
 
int minimumWidth () const
 
void move (int x, int y)
 This corresponds to move(QPoint(x, y)). More...
 
void move (const QPoint &)
 
QWidgetnativeParentWidget () const
 Returns the native parent for this widget, i. More...
 
QWidgetnextInFocusChain () const
 Returns the next widget in this widget's focus chain. More...
 
QRect normalGeometry () const
 
void overrideWindowFlags (Qt::WindowFlags type)
 Sets the window flags for the widget to flags, without telling the window system. More...
 
void overrideWindowState (Qt::WindowStates state)
 
QPaintEnginepaintEngine () const
 Returns the widget's paint engine. More...
 
const QPalettepalette () const
 
QWidgetparentWidget () const
 Returns the parent of this widget, or 0 if it does not have any parent widget. More...
 
QPoint pos () const
 
QWidgetpreviousInFocusChain () const
 The previousInFocusChain function returns the previous widget in this widget's focus chain. More...
 
 QWidget (QWidget *parent=0, Qt::WindowFlags f=0)
 Constructs a widget which is a child of parent, with widget flags set to f. More...
 
QRect rect () const
 
void releaseDC (HDC) const
 Releases the HDC hdc acquired by a previous call to getDC(). More...
 
void releaseKeyboard ()
 Releases the keyboard grab. More...
 
void releaseMouse ()
 Releases the mouse grab. More...
 
void releaseShortcut (int id)
 Removes the shortcut with the given id from Qt's shortcut system. More...
 
void removeAction (QAction *action)
 Removes the action action from this widget's list of actions. More...
 
void render (QPaintDevice *target, const QPoint &targetOffset=QPoint(), const QRegion &sourceRegion=QRegion(), RenderFlags renderFlags=RenderFlags(DrawWindowBackground|DrawChildren))
 Renders the sourceRegion of this widget into the target using renderFlags to determine how to render. More...
 
void render (QPainter *painter, const QPoint &targetOffset=QPoint(), const QRegion &sourceRegion=QRegion(), RenderFlags renderFlags=RenderFlags(DrawWindowBackground|DrawChildren))
 Renders the widget into the painter's QPainter::device(). More...
 
void repaint (int x, int y, int w, int h)
 This version repaints a rectangle (x, y, w, h) inside the widget. More...
 
void repaint (const QRect &)
 This version repaints a rectangle rect inside the widget. More...
 
void repaint (const QRegion &)
 This version repaints a region rgn inside the widget. More...
 
void resize (int w, int h)
 This corresponds to resize(QSize(w, h)). More...
 
void resize (const QSize &)
 
bool restoreGeometry (const QByteArray &geometry)
 Restores the geometry and state top-level widgets stored in the byte array geometry. More...
 
QByteArray saveGeometry () const
 Saves the current geometry and state for top-level widgets. More...
 
void scroll (int dx, int dy)
 Scrolls the widget including its children dx pixels to the right and dy downward. More...
 
void scroll (int dx, int dy, const QRect &)
 This version only scrolls r and does not move the children of the widget. More...
 
void setAcceptDrops (bool on)
 
void setAccessibleDescription (const QString &description)
 
void setAccessibleName (const QString &name)
 
void setAttribute (Qt::WidgetAttribute, bool on=true)
 Sets the attribute attribute on this widget if on is true; otherwise clears the attribute. More...
 
void setAutoFillBackground (bool enabled)
 
void setBackgroundRole (QPalette::ColorRole)
 Sets the background role of the widget to role. More...
 
void setBaseSize (const QSize &)
 
void setBaseSize (int basew, int baseh)
 This corresponds to setBaseSize(QSize(basew, baseh)). More...
 
void setContentsMargins (int left, int top, int right, int bottom)
 Sets the margins around the contents of the widget to have the sizes left, top, right, and bottom. More...
 
void setContentsMargins (const QMargins &margins)
 The setContentsMargins function sets the margins around the widget's contents. More...
 
void setContextMenuPolicy (Qt::ContextMenuPolicy policy)
 
void setCursor (const QCursor &)
 
void setFixedHeight (int h)
 Sets both the minimum and maximum heights of the widget to h without changing the widths. More...
 
void setFixedSize (const QSize &)
 Sets both the minimum and maximum sizes of the widget to s, thereby preventing it from ever growing or shrinking. More...
 
void setFixedSize (int w, int h)
 Sets the width of the widget to w and the height to h. More...
 
void setFixedWidth (int w)
 Sets both the minimum and maximum width of the widget to w without changing the heights. More...
 
void setFocus (Qt::FocusReason reason)
 Gives the keyboard input focus to this widget (or its focus proxy) if this widget or one of its parents is the active window. More...
 
void setFocusPolicy (Qt::FocusPolicy policy)
 
void setFocusProxy (QWidget *)
 Sets the widget's focus proxy to widget w. More...
 
void setFont (const QFont &)
 Use the single-argument overload instead. More...
 
void setForegroundRole (QPalette::ColorRole)
 Sets the foreground role of the widget to role. More...
 
void setGeometry (int x, int y, int w, int h)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.This corresponds to setGeometry(QRect(x, y, w, h)). More...
 
void setGeometry (const QRect &)
 
void setGraphicsEffect (QGraphicsEffect *effect)
 The setGraphicsEffect function is for setting the widget's graphics effect. More...
 
void setInputContext (QInputContext *)
 This function sets the input context context on this widget. More...
 
void setInputMethodHints (Qt::InputMethodHints hints)
 
void setLayout (QLayout *)
 Sets the layout manager for this widget to layout. More...
 
void setLayoutDirection (Qt::LayoutDirection direction)
 
void setLocale (const QLocale &locale)
 
void setMask (const QBitmap &)
 Causes only the pixels of the widget for which bitmap has a corresponding 1 bit to be visible. More...
 
void setMask (const QRegion &)
 Causes only the parts of the widget which overlap region to be visible. More...
 
void setMaximumHeight (int maxh)
 
void setMaximumSize (const QSize &)
 
void setMaximumSize (int maxw, int maxh)
 This function corresponds to setMaximumSize(QSize(maxw, maxh)). More...
 
void setMaximumWidth (int maxw)
 
void setMinimumHeight (int minh)
 
void setMinimumSize (const QSize &)
 
void setMinimumSize (int minw, int minh)
 This function corresponds to setMinimumSize(QSize(minw, minh)). More...
 
void setMinimumWidth (int minw)
 
void setMouseTracking (bool enable)
 
void setPalette (const QPalette &)
 Use the single-argument overload instead. More...
 
void setParent (QWidget *parent)
 Sets the parent of the widget to parent, and resets the window flags. More...
 
void setParent (QWidget *parent, Qt::WindowFlags f)
 This function also takes widget flags, f as an argument. More...
 
void setShortcutAutoRepeat (int id, bool enable=true)
 If enable is true, auto repeat of the shortcut with the given id is enabled; otherwise it is disabled. More...
 
void setShortcutEnabled (int id, bool enable=true)
 If enable is true, the shortcut with the given id is enabled; otherwise the shortcut is disabled. More...
 
void setSizeIncrement (const QSize &)
 
void setSizeIncrement (int w, int h)
 Sets the x (width) size increment to w and the y (height) size increment to h. More...
 
void setSizePolicy (QSizePolicy)
 
void setSizePolicy (QSizePolicy::Policy horizontal, QSizePolicy::Policy vertical)
 Sets the size policy of the widget to horizontal and vertical, with standard stretch and no height-for-width. More...
 
void setStatusTip (const QString &)
 
void setStyle (QStyle *)
 Sets the widget's GUI style to style. More...
 
void setToolTip (const QString &)
 
void setUpdatesEnabled (bool enable)
 
void setupUi (QWidget *widget)
 Sets up the user interface for the specified widget. More...
 
void setWhatsThis (const QString &)
 
void setWindowFilePath (const QString &filePath)
 
void setWindowFlags (Qt::WindowFlags type)
 
void setWindowIcon (const QIcon &icon)
 
void setWindowIconText (const QString &)
 
void setWindowModality (Qt::WindowModality windowModality)
 
void setWindowOpacity (qreal level)
 
void setWindowRole (const QString &)
 Sets the window's role to role. More...
 
void setWindowState (Qt::WindowStates state)
 Sets the window state to windowState. More...
 
void setWindowSurface (QWindowSurface *surface)
 Sets the window surface to be the surface specified. More...
 
QSize size () const
 
virtual QSize sizeHint () const
 
QSize sizeIncrement () const
 
QSizePolicy sizePolicy () const
 
void stackUnder (QWidget *)
 Places the widget under w in the parent widget's stack. More...
 
QString statusTip () const
 
QStylestyle () const
 
QString styleSheet () const
 
bool testAttribute (Qt::WidgetAttribute) const
 Returns true if attribute attribute is set on this widget; otherwise returns false. More...
 
QString toolTip () const
 
QWidgettopLevelWidget () const
 
bool underMouse () const
 Returns true if the widget is under the mouse cursor; otherwise returns false. More...
 
void ungrabGesture (Qt::GestureType type)
 Unsubscribes the widget from a given gesture type. More...
 
void unsetCursor ()
 
void unsetLayoutDirection ()
 
void unsetLocale ()
 
void update (int x, int y, int w, int h)
 This version updates a rectangle (x, y, w, h) inside the widget. More...
 
void update (const QRect &)
 This version updates a rectangle rect inside the widget. More...
 
void update (const QRegion &)
 This version repaints a region rgn inside the widget. More...
 
void updateGeometry ()
 Notifies the layout system that this widget has changed and may need to change geometry. More...
 
bool updatesEnabled () const
 
QRegion visibleRegion () const
 Returns the unobscured region where paint events can occur. More...
 
QString whatsThis () const
 
int width () const
 
QWidgetwindow () const
 Returns the window for this widget, i.e. More...
 
QString windowFilePath () const
 
Qt::WindowFlags windowFlags () const
 Window flags are a combination of a type (e. More...
 
QIcon windowIcon () const
 
QString windowIconText () const
 
Qt::WindowModality windowModality () const
 
qreal windowOpacity () const
 
QString windowRole () const
 Returns the window's role, or an empty string. More...
 
Qt::WindowStates windowState () const
 Returns the current window state. More...
 
QWindowSurfacewindowSurface () const
 Returns the QWindowSurface this widget will be drawn into. More...
 
QString windowTitle () const
 
Qt::WindowType windowType () const
 Returns the window type of this widget. More...
 
WId winId () const
 Returns the window system identifier of the widget. More...
 
int x () const
 
const QX11Infox11Info () const
 Returns information about the configuration of the X display used to display the widget. More...
 
Qt::HANDLE x11PictureHandle () const
 Returns the X11 Picture handle of the widget for XRender support. More...
 
int y () const
 
 ~QWidget ()
 Destroys the widget. More...
 
- Public Functions inherited from QObject
bool blockSignals (bool b)
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). More...
 
const QObjectListchildren () const
 Returns a list of child objects. More...
 
bool connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=0, const QObject *receiver=0, const char *member=0)
 
bool disconnect (const QObject *receiver, const char *member=0)
 
void dumpObjectInfo ()
 Dumps information about signal connections, etc. More...
 
void dumpObjectTree ()
 Dumps a tree of children to the debug output. More...
 
QList< QByteArraydynamicPropertyNames () const
 Returns the names of all properties that were dynamically added to the object using setProperty(). More...
 
virtual bool eventFilter (QObject *, QEvent *)
 Filters events if this object has been installed as an event filter for the watched object. More...
 
template<typename T >
findChild (const QString &aName=QString()) const
 Returns the child of this object that can be cast into type T and that is called name, or 0 if there is no such object. More...
 
template<typename T >
QList< T > findChildren (const QString &aName=QString()) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. More...
 
template<typename T >
QList< T > findChildren (const QRegExp &re) const
 
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false. More...
 
void installEventFilter (QObject *)
 Installs an event filter filterObj on this object. More...
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false. More...
 
void killTimer (int id)
 Kills the timer with timer identifier, id. More...
 
virtual const QMetaObjectmetaObject () const
 Returns a pointer to the meta-object of this object. More...
 
void moveToThread (QThread *thread)
 Changes the thread affinity for this object and its children. More...
 
QString objectName () const
 
QObjectparent () const
 Returns a pointer to the parent object. More...
 
QVariant property (const char *name) const
 Returns the value of the object's name property. More...
 
Q_INVOKABLE QObject (QObject *parent=0)
 Constructs an object with parent object parent. More...
 
void removeEventFilter (QObject *)
 Removes an event filter object obj from this object. More...
 
void setObjectName (const QString &name)
 
void setParent (QObject *)
 Makes the object a child of parent. More...
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value. More...
 
void setUserData (uint id, QObjectUserData *data)
 
bool signalsBlocked () const
 Returns true if signals are blocked; otherwise returns false. More...
 
int startTimer (int interval)
 Starts a timer and returns a timer identifier, or returns zero if it could not start a timer. More...
 
QThreadthread () const
 Returns the thread in which the object lives. More...
 
QObjectUserDatauserData (uint id) const
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects. More...
 
- Public Functions inherited from QPaintDevice
int colorCount () const
 
int depth () const
 
int height () const
 
int heightMM () const
 
int logicalDpiX () const
 
int logicalDpiY () const
 
QT_DEPRECATED int numColors () const
 
bool paintingActive () const
 
int physicalDpiX () const
 
int physicalDpiY () const
 
int width () const
 
int widthMM () const
 
virtual ~QPaintDevice ()
 

Protected Functions

bool event (QEvent *)
 Reimplemented Function More...
 
void hideOrShow ()
 Ensures that the right widgets are visible. More...
 
void paintEvent (QPaintEvent *)
 Reimplemented FunctionShows the temporary message, if appropriate, in response to the paint event. More...
 
void reformat ()
 Changes the status bar's appearance to account for item changes. More...
 
void resizeEvent (QResizeEvent *)
 Reimplemented Function More...
 
void showEvent (QShowEvent *)
 Reimplemented Function More...
 
- Protected Functions inherited from QWidget
virtual void actionEvent (QActionEvent *)
 This event handler is called with the given event whenever the widget's actions are changed. More...
 
virtual void changeEvent (QEvent *)
 This event handler can be reimplemented to handle state changes. More...
 
virtual void closeEvent (QCloseEvent *)
 This event handler is called with the given event when Qt receives a window close request for a top-level widget from the window system. More...
 
virtual void contextMenuEvent (QContextMenuEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive widget context menu events. More...
 
void create (WId=0, bool initializeWindow=true, bool destroyOldWindow=true)
 Creates a new widget window if window is 0, otherwise sets the widget's window to window. More...
 
void destroy (bool destroyWindow=true, bool destroySubWindows=true)
 Frees up window system resources. More...
 
virtual void dragEnterEvent (QDragEnterEvent *)
 This event handler is called when a drag is in progress and the mouse enters this widget. More...
 
virtual void dragLeaveEvent (QDragLeaveEvent *)
 This event handler is called when a drag is in progress and the mouse leaves this widget. More...
 
virtual void dragMoveEvent (QDragMoveEvent *)
 This event handler is called if a drag is in progress, and when any of the following conditions occur: the cursor enters this widget, the cursor moves within this widget, or a modifier key is pressed on the keyboard while this widget has the focus. More...
 
virtual void dropEvent (QDropEvent *)
 This event handler is called when the drag is dropped on this widget. More...
 
virtual void enabledChange (bool)
 
virtual void enterEvent (QEvent *)
 This event handler can be reimplemented in a subclass to receive widget enter events which are passed in the event parameter. More...
 
virtual void focusInEvent (QFocusEvent *)
 This event handler can be reimplemented in a subclass to receive keyboard focus events (focus received) for the widget. More...
 
bool focusNextChild ()
 Finds a new widget to give the keyboard focus to, as appropriate for Tab, and returns true if it can find a new widget, or false if it can't. More...
 
virtual bool focusNextPrevChild (bool next)
 Finds a new widget to give the keyboard focus to, as appropriate for Tab and Shift+Tab, and returns true if it can find a new widget, or false if it can't. More...
 
virtual void focusOutEvent (QFocusEvent *)
 This event handler can be reimplemented in a subclass to receive keyboard focus events (focus lost) for the widget. More...
 
bool focusPreviousChild ()
 Finds a new widget to give the keyboard focus to, as appropriate for Shift+Tab, and returns true if it can find a new widget, or false if it can't. More...
 
virtual void fontChange (const QFont &)
 
virtual void hideEvent (QHideEvent *)
 This event handler can be reimplemented in a subclass to receive widget hide events. More...
 
virtual void inputMethodEvent (QInputMethodEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive Input Method composition events. More...
 
virtual void keyPressEvent (QKeyEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive key press events for the widget. More...
 
virtual void keyReleaseEvent (QKeyEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive key release events for the widget. More...
 
virtual void languageChange ()
 
virtual void leaveEvent (QEvent *)
 This event handler can be reimplemented in a subclass to receive widget leave events which are passed in the event parameter. More...
 
virtual bool macEvent (EventHandlerCallRef, EventRef)
 This special event handler can be reimplemented in a subclass to receive native Macintosh events. More...
 
int metric (PaintDeviceMetric) const
 Internal implementation of the virtual QPaintDevice::metric() function. More...
 
virtual void mouseDoubleClickEvent (QMouseEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive mouse double click events for the widget. More...
 
virtual void mouseMoveEvent (QMouseEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive mouse move events for the widget. More...
 
virtual void mousePressEvent (QMouseEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive mouse press events for the widget. More...
 
virtual void mouseReleaseEvent (QMouseEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive mouse release events for the widget. More...
 
virtual void moveEvent (QMoveEvent *)
 This event handler can be reimplemented in a subclass to receive widget move events which are passed in the event parameter. More...
 
virtual void paletteChange (const QPalette &)
 
 QWidget (QWidgetPrivate &d, QWidget *parent, Qt::WindowFlags f)
 
virtual bool qwsEvent (QWSEvent *)
 This special event handler can be reimplemented in a subclass to receive native Qt for Embedded Linux events which are passed in the event parameter. More...
 
void resetInputContext ()
 This function can be called on the widget that currently has focus to reset the input method operating on it. More...
 
virtual void styleChange (QStyle &)
 
virtual void tabletEvent (QTabletEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive tablet events for the widget. More...
 
virtual void wheelEvent (QWheelEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive wheel events for the widget. More...
 
virtual void windowActivationChange (bool)
 
virtual bool winEvent (MSG *message, long *result)
 This special event handler can be reimplemented in a subclass to receive native Windows events which are passed in the message parameter. More...
 
virtual bool x11Event (XEvent *)
 This special event handler can be reimplemented in a subclass to receive native X11 events passed in the event parameter. More...
 
- Protected Functions inherited from QObject
virtual void childEvent (QChildEvent *)
 This event handler can be reimplemented in a subclass to receive child events. More...
 
virtual void connectNotify (const char *signal)
 This virtual function is called when something has been connected to signal in this object. More...
 
virtual void customEvent (QEvent *)
 This event handler can be reimplemented in a subclass to receive custom events. More...
 
virtual void disconnectNotify (const char *signal)
 This virtual function is called when something has been disconnected from signal in this object. More...
 
 QObject (QObjectPrivate &dd, QObject *parent=0)
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal. More...
 
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns 0. More...
 
int senderSignalIndex () const
 
virtual void timerEvent (QTimerEvent *)
 This event handler can be reimplemented in a subclass to receive timer events for the object. More...
 
- Protected Functions inherited from QPaintDevice
 QPaintDevice ()
 

Properties

bool sizeGripEnabled
 whether the QSizeGrip in the bottom-right corner of the status bar is enabled More...
 

Additional Inherited Members

- Public Types inherited from QWidget
enum  RenderFlag { DrawWindowBackground = 0x1, DrawChildren = 0x2, IgnoreMask = 0x4 }
 This enum describes how to render the widget when calling QWidget::render(). More...
 
- Public Types inherited from QPaintDevice
enum  PaintDeviceMetric {
  PdmWidth = 1, PdmHeight, PdmWidthMM, PdmHeightMM,
  PdmNumColors, PdmDepth, PdmDpiX, PdmDpiY,
  PdmPhysicalDpiX, PdmPhysicalDpiY
}
 
- Static Public Functions inherited from QWidget
static QWidgetfind (WId)
 Returns a pointer to the widget with window identifer/handle id. More...
 
static QWidgetkeyboardGrabber ()
 Returns the widget that is currently grabbing the keyboard input. More...
 
static QWidgetmouseGrabber ()
 Returns the widget that is currently grabbing the mouse input. More...
 
static void setTabOrder (QWidget *, QWidget *)
 Puts the second widget after the first widget in the focus order. More...
 
- Static Public Functions inherited from QObject
static bool connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 Creates a connection of the given type from the signal in the sender object to the method in the receiver object. More...
 
static bool connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 Disconnects signal in object sender from method in object receiver. More...
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static uint registerUserData ()
 
static QString tr (const char *sourceText, const char *comment=0, int n=-1)
 
static QString trUtf8 (const char *sourceText, const char *comment=0, int n=-1)
 
- Static Public Functions inherited from QPaintDevice
static QWSDisplayqwsDisplay ()
 
- Static Public Variables inherited from QObject
static const QMetaObject staticMetaObject
 This variable stores the meta-object for the class. More...
 
- Protected Slots inherited from QWidget
void updateMicroFocus ()
 Updates the widget's micro focus. More...
 
- Protected Variables inherited from QObject
QScopedPointer< QObjectDatad_ptr
 
- Protected Variables inherited from QPaintDevice
ushort painters
 
- Static Protected Variables inherited from QObject
static const QMetaObject staticQtMetaObject
 

Detailed Description

The QStatusBar class provides a horizontal bar suitable for presenting status information.

Each status indicator falls into one of three categories:

QStatusBar lets you display all three types of indicators.

Typically, a request for the status bar functionality occurs in relation to a QMainWindow object. QMainWindow provides a main application window, with a menu bar, tool bars, dock widgets and a status bar around a large central widget. The status bar can be retrieved using the QMainWindow::statusBar() function, and replaced using the QMainWindow::setStatusBar() function.

Use the showMessage() slot to display a temporary message:

void MainWindow::createStatusBar()
{
statusBar()->showMessage(tr("Ready"));
}

To remove a temporary message, use the clearMessage() slot, or set a time limit when calling showMessage(). For example:

void MainWindow::print()
{
#ifndef QT_NO_PRINTDIALOG
QTextDocument *document = textEdit->document();
QPrinter printer;
QPrintDialog *dlg = new QPrintDialog(&printer, this);
if (dlg->exec() != QDialog::Accepted)
return;
document->print(&printer);
statusBar()->showMessage(tr("Ready"), 2000);
#endif
}

Use the currentMessage() function to retrieve the temporary message currently shown. The QStatusBar class also provide the messageChanged() signal which is emitted whenever the temporary status message changes.

Normal and Permanent messages are displayed by creating a small widget (QLabel, QProgressBar or even QToolButton) and then adding it to the status bar using the addWidget() or the addPermanentWidget() function. Use the removeWidget() function to remove such messages from the status bar.

statusBar()->addWidget(new MyReadWriteIndication);

By default QStatusBar provides a QSizeGrip in the lower-right corner. You can disable it using the setSizeGripEnabled() function. Use the isSizeGripEnabled() function to determine the current status of the size grip.

plastique-statusbar.png
A status bar shown in the Plastique widget style
See also
QMainWindow, QStatusTipEvent, {fowler}{GUI Design Handbook: Status Bar}, {Application Example}

Definition at line 57 of file qstatusbar.h.

Constructors and Destructors

◆ QStatusBar()

QStatusBar::QStatusBar ( QWidget parent = 0)
explicit

Constructs a status bar with a size grip and the given parent.

See also
setSizeGripEnabled()

Definition at line 283 of file qstatusbar.cpp.

Referenced by QStatusBarPrivate::messageRect().

284  : QWidget(*new QStatusBarPrivate, parent, 0)
285 {
286  Q_D(QStatusBar);
287  d->box = 0;
288  d->timer = 0;
289 
290 #ifndef QT_NO_SIZEGRIP
291  d->resizer = 0;
292  setSizeGripEnabled(true); // causes reformat()
293 #else
294  reformat();
295 #endif
296 }
double d
Definition: qnumeric_p.h:62
void reformat()
Changes the status bar&#39;s appearance to account for item changes.
Definition: qstatusbar.cpp:535
#define Q_D(Class)
Definition: qglobal.h:2482
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57
QWidget(QWidget *parent=0, Qt::WindowFlags f=0)
Constructs a widget which is a child of parent, with widget flags set to f.
Definition: qwidget.cpp:1189
void setSizeGripEnabled(bool)
Definition: qstatusbar.cpp:504

◆ ~QStatusBar()

QStatusBar::~QStatusBar ( )
virtual

Destroys this status bar and frees any allocated resources and child widgets.

Definition at line 302 of file qstatusbar.cpp.

303 {
304  Q_D(QStatusBar);
305  while (!d->items.isEmpty())
306  delete d->items.takeFirst();
307 }
double d
Definition: qnumeric_p.h:62
#define Q_D(Class)
Definition: qglobal.h:2482
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57

Functions

◆ addPermanentWidget()

void QStatusBar::addPermanentWidget ( QWidget widget,
int  stretch = 0 
)

Adds the given widget permanently to this status bar, reparenting the widget if it isn't already a child of this QStatusBar object.

The stretch parameter is used to compute a suitable size for the given widget as the status bar grows and shrinks. The default stretch factor is 0, i.e giving the widget a minimum of space.

Permanently means that the widget may not be obscured by temporary messages. It is is located at the far right of the status bar.

See also
insertPermanentWidget(), removeWidget(), addWidget()

Definition at line 392 of file qstatusbar.cpp.

393 {
394  if (!widget)
395  return;
396  insertPermanentWidget(d_func()->items.size(), widget, stretch);
397 }
QPointer< QWidget > widget
int insertPermanentWidget(int index, QWidget *widget, int stretch=0)
Inserts the given widget at the given index permanently to this status bar, reparenting the widget if...
Definition: qstatusbar.cpp:421

◆ addWidget()

void QStatusBar::addWidget ( QWidget widget,
int  stretch = 0 
)

Adds the given widget to this status bar, reparenting the widget if it isn't already a child of this QStatusBar object.

The stretch parameter is used to compute a suitable size for the given widget as the status bar grows and shrinks. The default stretch factor is 0, i.e giving the widget a minimum of space.

The widget is located to the far left of the first permanent widget (see addPermanentWidget()) and may be obscured by temporary messages.

See also
insertWidget(), removeWidget(), addPermanentWidget()

Definition at line 324 of file qstatusbar.cpp.

325 {
326  if (!widget)
327  return;
328  insertWidget(d_func()->indexToLastNonPermanentWidget() + 1, widget, stretch);
329 }
int insertWidget(int index, QWidget *widget, int stretch=0)
Inserts the given widget at the given index to this status bar, reparenting the widget if it isn&#39;t al...
Definition: qstatusbar.cpp:353

◆ clearMessage

void QStatusBar::clearMessage ( )
slot

Removes any temporary message being shown.

See also
currentMessage(), showMessage(), removeWidget()

Definition at line 637 of file qstatusbar.cpp.

Referenced by showMessage().

638 {
639  Q_D(QStatusBar);
640  if (d->tempItem.isEmpty())
641  return;
642  if (d->timer) {
643  qDeleteInEventHandler(d->timer);
644  d->timer = 0;
645  }
646  d->tempItem.clear();
647  hideOrShow();
648 }
double d
Definition: qnumeric_p.h:62
#define Q_D(Class)
Definition: qglobal.h:2482
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57
void qDeleteInEventHandler(QObject *o)
Definition: qobject.cpp:4348
void hideOrShow()
Ensures that the right widgets are visible.
Definition: qstatusbar.cpp:699

◆ currentMessage()

QString QStatusBar::currentMessage ( ) const

Returns the temporary message currently shown, or an empty string if there is no such message.

See also
showMessage()

Definition at line 656 of file qstatusbar.cpp.

657 {
658  Q_D(const QStatusBar);
659  return d->tempItem;
660 }
double d
Definition: qnumeric_p.h:62
#define Q_D(Class)
Definition: qglobal.h:2482
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57

◆ event()

bool QStatusBar::event ( QEvent e)
protectedvirtual

Reimplemented Function

Reimplemented from QWidget.

Definition at line 787 of file qstatusbar.cpp.

788 {
789  Q_D(QStatusBar);
790 
791  if (e->type() == QEvent::LayoutRequest
792 #ifdef QT3_SUPPORT
793  || e->type() == QEvent::LayoutHint
794 #endif
795  ) {
796  // Calculate new strut height and call reformat() if it has changed
797  int maxH = fontMetrics().height();
798 
799  QStatusBarPrivate::SBItem* item = 0;
800  for (int i=0; i<d->items.size(); ++i) {
801  item = d->items.at(i);
802  if (!item)
803  break;
804  int itemH = qMin(qSmartMinSize(item->w).height(), item->w->maximumHeight());
805  maxH = qMax(maxH, itemH);
806  }
807 
808 #ifndef QT_NO_SIZEGRIP
809  if (d->resizer)
810  maxH = qMax(maxH, d->resizer->sizeHint().height());
811 #endif
812 
813  if (maxH != d->savedStrut)
814  reformat();
815  else
816  update();
817  }
818  if (e->type() == QEvent::ChildRemoved) {
819  QStatusBarPrivate::SBItem* item = 0;
820  for (int i=0; i<d->items.size(); ++i) {
821  item = d->items.at(i);
822  if (!item)
823  break;
824  if (item->w == ((QChildEvent*)e)->child()) {
825  d->items.removeAt(i);
826  delete item;
827  }
828  }
829  }
830 
831 // On Mac OS X Leopard it is possible to drag the window by clicking
832 // on the tool bar on most applications.
833 #ifndef Q_WS_MAC
834  return QWidget::event(e);
835 #else
837  return QWidget::event(e);
838 
839  // Enable drag-click only if the status bar is the status bar for a
840  // QMainWindow with a unifed toolbar.
841  if (parent() == 0 || qobject_cast<QMainWindow *>(parent()) == 0 ||
842  qobject_cast<QMainWindow *>(parent())->unifiedTitleAndToolBarOnMac() == false )
843  return QWidget::event(e);
844 
845  // Check for mouse events.
847  if (e->type() == QEvent::MouseButtonPress ||
848  e->type() == QEvent::MouseMove ||
850  mouseEvent = static_cast <QMouseEvent*>(e);
851  } else {
852  return QWidget::event(e);
853  }
854 
855  // The following is a standard mouse drag handler.
856  if (e->type() == QEvent::MouseButtonPress && (mouseEvent->button() == Qt::LeftButton)) {
857  d->dragStart = mouseEvent->pos();
858  } else if (e->type() == QEvent::MouseMove){
859  if (d->dragStart == QPoint())
860  return QWidget::event(e);
861  QPoint pos = mouseEvent->pos();
862  QPoint delta = (pos - d->dragStart);
863  window()->move(window()->pos() + delta);
864  } else if (e->type() == QEvent::MouseButtonRelease && (mouseEvent->button() == Qt::LeftButton)){
865  d->dragStart = QPoint();
866  } else {
867  return QWidget::event(e);
868  }
869 
870  return true;
871 #endif
872 }
QPoint pos() const
double d
Definition: qnumeric_p.h:62
Q_DECL_CONSTEXPR const T & qMin(const T &a, const T &b)
Definition: qglobal.h:1215
Q_GUI_EXPORT QSize qSmartMinSize(const QSize &sizeHint, const QSize &minSizeHint, const QSize &minSize, const QSize &maxSize, const QSizePolicy &sizePolicy)
void reformat()
Changes the status bar&#39;s appearance to account for item changes.
Definition: qstatusbar.cpp:535
#define Q_D(Class)
Definition: qglobal.h:2482
Q_DECL_CONSTEXPR const T & qMax(const T &a, const T &b)
Definition: qglobal.h:1217
const QPoint & pos() const
Returns the position of the mouse cursor, relative to the widget that received the event...
Definition: qevent.h:95
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57
void update()
Updates the widget unless updates are disabled or the widget is hidden.
Definition: qwidget.cpp:10883
QFontMetrics fontMetrics() const
Returns the font metrics for the widget&#39;s current font.
Definition: qwidget.h:984
int maximumHeight
the widget&#39;s maximum height in pixels
Definition: qwidget.h:177
Qt::MouseButton button() const
Returns the button that caused the event.
Definition: qevent.h:101
The QMouseEvent class contains parameters that describe a mouse event.
Definition: qevent.h:85
The QChildEvent class contains event parameters for child object events.
Definition: qcoreevent.h:353
QObject * parent() const
Returns a pointer to the parent object.
Definition: qobject.h:273
The QPoint class defines a point in the plane using integer precision.
Definition: qpoint.h:53
int height() const
Returns the height.
Definition: qsize.h:129
static void mouseEvent(MouseAction action, QWidget *widget, Qt::MouseButton button, Qt::KeyboardModifiers stateKey, QPoint pos, int delay=-1)
Definition: qtestmouse.h:71
QWidget * window() const
Returns the window for this widget, i.e.
Definition: qwidget.cpp:4492
static const MacVersion MacintoshVersion
the version of the Macintosh operating system on which the application is run (Mac only)...
Definition: qglobal.h:1646
bool event(QEvent *)
This is the main event handler; it handles event event.
Definition: qwidget.cpp:8636
int height() const
Returns the height of the font.
Type type() const
Returns the event type.
Definition: qcoreevent.h:303
void move(int x, int y)
This corresponds to move(QPoint(x, y)).
Definition: qwidget.h:1011

◆ hideOrShow()

void QStatusBar::hideOrShow ( )
protected

Ensures that the right widgets are visible.

Used by the showMessage() and clearMessage() functions.

Definition at line 699 of file qstatusbar.cpp.

Referenced by clearMessage(), and showMessage().

700 {
701  Q_D(QStatusBar);
702  bool haveMessage = !d->tempItem.isEmpty();
703 
704  QStatusBarPrivate::SBItem* item = 0;
705  for (int i=0; i<d->items.size(); ++i) {
706  item = d->items.at(i);
707  if (!item || item->p)
708  break;
709  if (haveMessage && item->w->isVisible()) {
710  item->w->hide();
712  } else if (!haveMessage && !item->w->testAttribute(Qt::WA_WState_ExplicitShowHide)) {
713  item->w->show();
714  }
715  }
716 
717  emit messageChanged(d->tempItem);
718 
719 #ifndef QT_NO_ACCESSIBILITY
720  if (QAccessible::isActive())
722 #endif
723 
724  repaint(d->messageRect());
725 }
double d
Definition: qnumeric_p.h:62
static void updateAccessibility(QObject *, int who, Event reason)
Notifies accessibility clients about a change in object&#39;s accessibility information.
bool isVisible() const
Definition: qwidget.h:1005
#define Q_D(Class)
Definition: qglobal.h:2482
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57
bool testAttribute(Qt::WidgetAttribute) const
Returns true if attribute attribute is set on this widget; otherwise returns false.
Definition: qwidget.h:1041
#define emit
Definition: qobjectdefs.h:76
void show()
Shows the widget and its child widgets.
void hide()
Hides the widget.
Definition: qwidget.h:501
static bool isActive()
Returns true if an accessibility implementation has been requested during the runtime of the applicat...
void repaint()
Repaints the widget directly by calling paintEvent() immediately, unless updates are disabled or the ...
Definition: qwidget.cpp:10761
void setAttribute(Qt::WidgetAttribute, bool on=true)
Sets the attribute attribute on this widget if on is true; otherwise clears the attribute.
Definition: qwidget.cpp:11087
void messageChanged(const QString &text)
This signal is emitted whenever the temporary status message changes.

◆ insertPermanentWidget()

int QStatusBar::insertPermanentWidget ( int  index,
QWidget widget,
int  stretch = 0 
)

Inserts the given widget at the given index permanently to this status bar, reparenting the widget if it isn't already a child of this QStatusBar object.

Since
4.2

If index is out of range, the widget is appended (in which case it is the actual index of the widget that is returned).

The stretch parameter is used to compute a suitable size for the given widget as the status bar grows and shrinks. The default stretch factor is 0, i.e giving the widget a minimum of space.

Permanently means that the widget may not be obscured by temporary messages. It is is located at the far right of the status bar.

See also
addPermanentWidget(), removeWidget(), addWidget()

Definition at line 421 of file qstatusbar.cpp.

Referenced by addPermanentWidget().

422 {
423  if (!widget)
424  return -1;
425 
426  Q_D(QStatusBar);
427  QStatusBarPrivate::SBItem* item = new QStatusBarPrivate::SBItem(widget, stretch, true);
428 
429  int idx = d->indexToLastNonPermanentWidget();
430  if (index < 0 || index > d->items.size() || (idx >= 0 && index <= idx)) {
431  qWarning("QStatusBar::insertPermanentWidget: Index out of range (%d), appending widget", index);
432  index = d->items.size();
433  }
434  d->items.insert(index, item);
435 
436  reformat();
437  if (!widget->isHidden() || !widget->testAttribute(Qt::WA_WState_ExplicitShowHide))
438  widget->show();
439 
440  return index;
441 }
double d
Definition: qnumeric_p.h:62
void reformat()
Changes the status bar&#39;s appearance to account for item changes.
Definition: qstatusbar.cpp:535
#define Q_D(Class)
Definition: qglobal.h:2482
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57
bool isHidden() const
Returns true if the widget is hidden, otherwise returns false.
Definition: qwidget.h:1008
bool testAttribute(Qt::WidgetAttribute) const
Returns true if attribute attribute is set on this widget; otherwise returns false.
Definition: qwidget.h:1041
Q_CORE_EXPORT void qWarning(const char *,...)
void show()
Shows the widget and its child widgets.
quint16 index

◆ insertWidget()

int QStatusBar::insertWidget ( int  index,
QWidget widget,
int  stretch = 0 
)

Inserts the given widget at the given index to this status bar, reparenting the widget if it isn't already a child of this QStatusBar object.

Since
4.2

If index is out of range, the widget is appended (in which case it is the actual index of the widget that is returned).

The stretch parameter is used to compute a suitable size for the given widget as the status bar grows and shrinks. The default stretch factor is 0, i.e giving the widget a minimum of space.

The widget is located to the far left of the first permanent widget (see addPermanentWidget()) and may be obscured by temporary messages.

See also
addWidget(), removeWidget(), addPermanentWidget()

Definition at line 353 of file qstatusbar.cpp.

Referenced by addWidget().

354 {
355  if (!widget)
356  return -1;
357 
358  Q_D(QStatusBar);
359  QStatusBarPrivate::SBItem* item = new QStatusBarPrivate::SBItem(widget, stretch, false);
360 
361  int idx = d->indexToLastNonPermanentWidget();
362  if (index < 0 || index > d->items.size() || (idx >= 0 && index > idx + 1)) {
363  qWarning("QStatusBar::insertWidget: Index out of range (%d), appending widget", index);
364  index = idx + 1;
365  }
366  d->items.insert(index, item);
367 
368  if (!d->tempItem.isEmpty())
369  widget->hide();
370 
371  reformat();
372  if (!widget->isHidden() || !widget->testAttribute(Qt::WA_WState_ExplicitShowHide))
373  widget->show();
374 
375  return index;
376 }
double d
Definition: qnumeric_p.h:62
void reformat()
Changes the status bar&#39;s appearance to account for item changes.
Definition: qstatusbar.cpp:535
#define Q_D(Class)
Definition: qglobal.h:2482
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57
bool isHidden() const
Returns true if the widget is hidden, otherwise returns false.
Definition: qwidget.h:1008
bool testAttribute(Qt::WidgetAttribute) const
Returns true if attribute attribute is set on this widget; otherwise returns false.
Definition: qwidget.h:1041
Q_CORE_EXPORT void qWarning(const char *,...)
void show()
Shows the widget and its child widgets.
void hide()
Hides the widget.
Definition: qwidget.h:501
quint16 index

◆ isSizeGripEnabled()

bool QStatusBar::isSizeGripEnabled ( ) const

Definition at line 494 of file qstatusbar.cpp.

495 {
496 #ifdef QT_NO_SIZEGRIP
497  return false;
498 #else
499  Q_D(const QStatusBar);
500  return !!d->resizer;
501 #endif
502 }
double d
Definition: qnumeric_p.h:62
#define Q_D(Class)
Definition: qglobal.h:2482
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57

◆ messageChanged

QStatusBar::messageChanged ( const QString message)
signal

This signal is emitted whenever the temporary status message changes.

The new temporary message is passed in the message parameter which is a null-string when the message has been removed.

See also
showMessage(), clearMessage()

Referenced by hideOrShow().

◆ paintEvent()

void QStatusBar::paintEvent ( QPaintEvent event)
protectedvirtual

Reimplemented FunctionShows the temporary message, if appropriate, in response to the paint event.

Reimplemented from QWidget.

Definition at line 746 of file qstatusbar.cpp.

747 {
748  Q_D(QStatusBar);
749  bool haveMessage = !d->tempItem.isEmpty();
750 
751  QPainter p(this);
752  QStyleOption opt;
753  opt.initFrom(this);
754  style()->drawPrimitive(QStyle::PE_PanelStatusBar, &opt, &p, this);
755 
756  for (int i=0; i<d->items.size(); ++i) {
757  QStatusBarPrivate::SBItem* item = d->items.at(i);
758  if (item && item->w->isVisible() && (!haveMessage || item->p)) {
759  QRect ir = item->w->geometry().adjusted(-2, -1, 2, 1);
760  if (event->rect().intersects(ir)) {
761  QStyleOption opt(0);
762  opt.rect = ir;
763  opt.palette = palette();
765  style()->drawPrimitive(QStyle::PE_FrameStatusBarItem, &opt, &p, item->w);
766  }
767  }
768  }
769  if (haveMessage) {
770  p.setPen(palette().foreground().color());
771  p.drawText(d->messageRect(), Qt::AlignLeading | Qt::AlignVCenter | Qt::TextSingleLine, d->tempItem);
772  }
773 }
The QPainter class performs low-level painting on widgets and other paint devices.
Definition: qpainter.h:86
double d
Definition: qnumeric_p.h:62
QRect adjusted(int x1, int y1, int x2, int y2) const
Returns a new rectangle with dx1, dy1, dx2 and dy2 added respectively to the existing coordinates of ...
Definition: qrect.h:431
QStyle::State state
the style flags that are used when drawing the control
Definition: qstyleoption.h:88
bool isVisible() const
Definition: qwidget.h:1005
#define Q_D(Class)
Definition: qglobal.h:2482
QStyle * style() const
Definition: qwidget.cpp:2742
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57
The QStyleOption class stores the parameters used by QStyle functions.
Definition: qstyleoption.h:67
void initFrom(const QWidget *w)
Definition: qstyleoption.h:99
const QPalette & palette() const
virtual void drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, QPainter *p, const QWidget *w=0) const =0
Draws the given primitive element with the provided painter using the style options specified by opti...
QPalette palette
the palette that should be used when painting the control
Definition: qstyleoption.h:92
The QRect class defines a rectangle in the plane using integer precision.
Definition: qrect.h:58
bool intersects(const QRect &r) const
Returns true if this rectangle intersects with the given rectangle (i.
Definition: qrect.cpp:1429
const QRect & rect() const
Returns the rectangle that needs to be updated.
Definition: qevent.h:305
QRect geometry
the geometry of the widget relative to its parent and excluding the window frame
Definition: qwidget.h:158
QRect rect
the area that should be used for various calculations and painting
Definition: qstyleoption.h:90

◆ reformat()

void QStatusBar::reformat ( )
protected

Changes the status bar's appearance to account for item changes.

Special subclasses may need this function, but geometry management will usually take care of any necessary rearrangements.

Definition at line 535 of file qstatusbar.cpp.

Referenced by event(), insertPermanentWidget(), insertWidget(), QStatusBar(), removeWidget(), and setSizeGripEnabled().

536 {
537  Q_D(QStatusBar);
538  if (d->box)
539  delete d->box;
540 
541  QBoxLayout *vbox;
542 #ifndef QT_NO_SIZEGRIP
543  if (d->resizer) {
544  d->box = new QHBoxLayout(this);
545  d->box->setMargin(0);
546  vbox = new QVBoxLayout;
547  d->box->addLayout(vbox);
548  } else
549 #endif
550  {
551  vbox = d->box = new QVBoxLayout(this);
552  d->box->setMargin(0);
553  }
554  vbox->addSpacing(3);
555  QBoxLayout* l = new QHBoxLayout;
556  vbox->addLayout(l);
557  l->addSpacing(2);
558  l->setSpacing(6);
559 
560  int maxH = fontMetrics().height();
561 
562  int i;
564  for (i=0,item=0; i<d->items.size(); ++i) {
565  item = d->items.at(i);
566  if (!item || item->p)
567  break;
568  l->addWidget(item->w, item->s);
569  int itemH = qMin(qSmartMinSize(item->w).height(), item->w->maximumHeight());
570  maxH = qMax(maxH, itemH);
571  }
572 
573  l->addStretch(0);
574 
575  for (item=0; i<d->items.size(); ++i) {
576  item = d->items.at(i);
577  if (!item)
578  break;
579  l->addWidget(item->w, item->s);
580  int itemH = qMin(qSmartMinSize(item->w).height(), item->w->maximumHeight());
581  maxH = qMax(maxH, itemH);
582  }
583 #ifndef QT_NO_SIZEGRIP
584  if (d->resizer) {
585  maxH = qMax(maxH, d->resizer->sizeHint().height());
586  d->box->addSpacing(1);
587  d->box->addWidget(d->resizer, 0, Qt::AlignBottom);
588  }
589 #endif
590  l->addStrut(maxH);
591  d->savedStrut = maxH;
592  vbox->addSpacing(2);
593  d->box->activate();
594  update();
595 }
double d
Definition: qnumeric_p.h:62
Q_DECL_CONSTEXPR const T & qMin(const T &a, const T &b)
Definition: qglobal.h:1215
The QBoxLayout class lines up child widgets horizontally or vertically.
Definition: qboxlayout.h:60
Q_GUI_EXPORT QSize qSmartMinSize(const QSize &sizeHint, const QSize &minSizeHint, const QSize &minSize, const QSize &maxSize, const QSizePolicy &sizePolicy)
void addLayout(QLayout *layout, int stretch=0)
Adds layout to the end of the box, with serial stretch factor stretch.
#define Q_D(Class)
Definition: qglobal.h:2482
void addWidget(QWidget *, int stretch=0, Qt::Alignment alignment=0)
Adds widget to the end of this box layout, with a stretch factor of stretch and alignment alignment...
Q_DECL_CONSTEXPR const T & qMax(const T &a, const T &b)
Definition: qglobal.h:1217
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57
void update()
Updates the widget unless updates are disabled or the widget is hidden.
Definition: qwidget.cpp:10883
void addStretch(int stretch=0)
Adds a stretchable space (a QSpacerItem) with zero minimum size and stretch factor stretch to the end...
QFontMetrics fontMetrics() const
Returns the font metrics for the widget&#39;s current font.
Definition: qwidget.h:984
void addStrut(int)
Limits the perpendicular dimension of the box (e.g.
int maximumHeight
the widget&#39;s maximum height in pixels
Definition: qwidget.h:177
void addSpacing(int size)
Adds a non-stretchable space (a QSpacerItem) with size size to the end of this box layout...
void setSpacing(int spacing)
Reimplements QLayout::setSpacing().
Definition: qboxlayout.cpp:667
int height() const
Returns the height.
Definition: qsize.h:129
QFactoryLoader * l
The QHBoxLayout class lines up widgets horizontally.
Definition: qboxlayout.h:129
The QVBoxLayout class lines up widgets vertically.
Definition: qboxlayout.h:149
int height() const
Returns the height of the font.

◆ removeWidget()

void QStatusBar::removeWidget ( QWidget widget)

Removes the specified widget from the status bar.

Note
This function does not delete the widget but hides it. To add the widget again, you must call both the addWidget() and show() functions.
See also
addWidget(), addPermanentWidget(), clearMessage()

Definition at line 453 of file qstatusbar.cpp.

454 {
455  if (!widget)
456  return;
457 
458  Q_D(QStatusBar);
459  bool found = false;
461  for (int i=0; i<d->items.size(); ++i) {
462  item = d->items.at(i);
463  if (!item)
464  break;
465  if (item->w == widget) {
466  d->items.removeAt(i);
467  item->w->hide();
468  delete item;
469  found = true;
470  break;
471  }
472  }
473 
474  if (found)
475  reformat();
476 #if defined(QT_DEBUG)
477  else
478  qDebug("QStatusBar::removeWidget(): Widget not found.");
479 #endif
480 }
double d
Definition: qnumeric_p.h:62
void reformat()
Changes the status bar&#39;s appearance to account for item changes.
Definition: qstatusbar.cpp:535
#define Q_D(Class)
Definition: qglobal.h:2482
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57
Q_CORE_EXPORT void qDebug(const char *,...)
void hide()
Hides the widget.
Definition: qwidget.h:501

◆ resizeEvent()

void QStatusBar::resizeEvent ( QResizeEvent e)
protectedvirtual

Reimplemented Function

Reimplemented from QWidget.

Definition at line 778 of file qstatusbar.cpp.

779 {
781 }
virtual void resizeEvent(QResizeEvent *)
This event handler can be reimplemented in a subclass to receive widget resize events which are passe...
Definition: qwidget.cpp:9587

◆ setSizeGripEnabled()

void QStatusBar::setSizeGripEnabled ( bool  enabled)

Definition at line 504 of file qstatusbar.cpp.

Referenced by QAxServerBase::eventFilter(), and QStatusBar().

505 {
506 #ifdef QT_NO_SIZEGRIP
507  Q_UNUSED(enabled);
508 #else
509  Q_D(QStatusBar);
510  if (!enabled != !d->resizer) {
511  if (enabled) {
512  d->resizer = new QSizeGrip(this);
513  d->resizer->hide();
514  d->resizer->installEventFilter(this);
515  d->showSizeGrip = true;
516  } else {
517  delete d->resizer;
518  d->resizer = 0;
519  d->showSizeGrip = false;
520  }
521  reformat();
522  if (d->resizer && isVisible())
523  d->tryToShowSizeGrip();
524  }
525 #endif
526 }
double d
Definition: qnumeric_p.h:62
bool enabled
whether the widget is enabled
Definition: qwidget.h:157
The QSizeGrip class provides a resize handle for resizing top-level windows.
Definition: qsizegrip.h:55
bool isVisible() const
Definition: qwidget.h:1005
void reformat()
Changes the status bar&#39;s appearance to account for item changes.
Definition: qstatusbar.cpp:535
#define Q_D(Class)
Definition: qglobal.h:2482
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57
#define Q_UNUSED(x)
Indicates to the compiler that the parameter with the specified name is not used in the body of a fun...
Definition: qglobal.h:1729

◆ showEvent()

void QStatusBar::showEvent ( QShowEvent )
protectedvirtual

Reimplemented Function

Reimplemented from QWidget.

Definition at line 730 of file qstatusbar.cpp.

731 {
732 #ifndef QT_NO_SIZEGRIP
733  Q_D(QStatusBar);
734  if (d->resizer && d->showSizeGrip)
735  d->tryToShowSizeGrip();
736 #endif
737 }
double d
Definition: qnumeric_p.h:62
#define Q_D(Class)
Definition: qglobal.h:2482
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57

◆ showMessage

void QStatusBar::showMessage ( const QString message,
int  timeout = 0 
)
slot

Hides the normal status indications and displays the given message for the specified number of milli-seconds ({timeout}).

If {timeout} is 0 (default), the {message} remains displayed until the clearMessage() slot is called or until the showMessage() slot is called again to change the message.

Note that showMessage() is called to show temporary explanations of tool tip texts, so passing a {timeout} of 0 is not sufficient to display a permanent message{permanent message}.

See also
messageChanged(), currentMessage(), clearMessage()

Definition at line 611 of file qstatusbar.cpp.

612 {
613  Q_D(QStatusBar);
614 
615  d->tempItem = message;
616 
617  if (timeout > 0) {
618  if (!d->timer) {
619  d->timer = new QTimer(this);
620  connect(d->timer, SIGNAL(timeout()), this, SLOT(clearMessage()));
621  }
622  d->timer->start(timeout);
623  } else if (d->timer) {
624  delete d->timer;
625  d->timer = 0;
626  }
627 
628  hideOrShow();
629 }
double d
Definition: qnumeric_p.h:62
#define SLOT(a)
Definition: qobjectdefs.h:226
#define Q_D(Class)
Definition: qglobal.h:2482
void clearMessage()
Removes any temporary message being shown.
Definition: qstatusbar.cpp:637
The QStatusBar class provides a horizontal bar suitable for presenting status information.
Definition: qstatusbar.h:57
#define SIGNAL(a)
Definition: qobjectdefs.h:227
static bool connect(const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
Creates a connection of the given type from the signal in the sender object to the method in the rece...
Definition: qobject.cpp:2580
The QTimer class provides repetitive and single-shot timers.
Definition: qtimer.h:56
void hideOrShow()
Ensures that the right widgets are visible.
Definition: qstatusbar.cpp:699

Properties

◆ sizeGripEnabled

QStatusBar::sizeGripEnabled
private

whether the QSizeGrip in the bottom-right corner of the status bar is enabled

The size grip is enabled by default.

Definition at line 61 of file qstatusbar.h.


The documentation for this class was generated from the following files: