QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgsstatusbar.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsstatusbar.h
3 --------------
4 begin : May 2017
5 copyright : (C) 2017 by Nyall Dawson
6 email : nyall dot dawson at gmail dot com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGSSTATUSBAR_H
19#define QGSSTATUSBAR_H
20
21#include "qgis_gui.h"
22#include "qgis_sip.h"
23#include <QWidget>
24
25class QHBoxLayout;
26class QLineEdit;
27class QStatusBar;
28
45class GUI_EXPORT QgsStatusBar : public QWidget
46{
47 Q_OBJECT
48
49 public:
50
52 enum Anchor
53 {
54 AnchorLeft = 0,
56 };
57
61 QgsStatusBar( QWidget *parent SIP_TRANSFERTHIS = nullptr );
62
72 void addPermanentWidget( QWidget *widget SIP_TRANSFER, int stretch = 0, Anchor anchor = AnchorRight );
73
78 void removeWidget( QWidget *widget );
79
84 QString currentMessage() const;
85
86 public slots:
87
95 void showMessage( const QString &message, int timeout = 0 );
96
101 void clearMessage();
102
110 void setParentStatusBar( QStatusBar *statusBar );
111
112
113 protected:
114
115 void changeEvent( QEvent *event ) override;
116
117 private:
118
119 QHBoxLayout *mLayout = nullptr;
120 QLineEdit *mLineEdit = nullptr;
121 QTimer *mTempMessageTimer = nullptr;
122 QStatusBar *mParentStatusBar = nullptr;
123 QMetaObject::Connection mShowMessageConnection;
124
125};
126
127#endif // QGSSTATUSBAR_H
128
129
A proxy widget for QStatusBar.
Definition: qgsstatusbar.h:46
Anchor
Placement anchor for widgets.
Definition: qgsstatusbar.h:53
@ AnchorRight
Anchor widget to right of status bar.
Definition: qgsstatusbar.h:55
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:53
#define SIP_TRANSFER
Definition: qgis_sip.h:36