diff options
| author | 2014-12-06 17:33:25 -0500 | |
|---|---|---|
| committer | 2014-12-06 17:33:25 -0500 | |
| commit | 7167ce41b61d2ba2cdb526777a4233eb84a3b66a (patch) | |
| tree | a35c14143716e1f2c98f808c81f89426045a946f /SQLiteStudio3/guiSQLiteStudio/statusfield.h | |
Imported Upstream version 2.99.6upstream/2.99.6
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/statusfield.h')
| -rw-r--r-- | SQLiteStudio3/guiSQLiteStudio/statusfield.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/statusfield.h b/SQLiteStudio3/guiSQLiteStudio/statusfield.h new file mode 100644 index 0000000..ac07f51 --- /dev/null +++ b/SQLiteStudio3/guiSQLiteStudio/statusfield.h @@ -0,0 +1,58 @@ +#ifndef STATUSFIELD_H +#define STATUSFIELD_H + +#include "guiSQLiteStudio_global.h" +#include <QVariant> +#include <QDockWidget> + +class QMenu; +class QAbstractAnimation; +class QTableWidgetItem; + +namespace Ui { + class StatusField; +} + +class GUI_API_EXPORT StatusField : public QDockWidget +{ + Q_OBJECT + + public: + explicit StatusField(QWidget *parent = 0); + ~StatusField(); + + bool hasMessages() const; + + protected: + void changeEvent(QEvent *e); + + private: + void addEntry(const QIcon& icon, const QString& text, const QColor &color); + void flashItems(const QList<QTableWidgetItem*>& items, const QColor& color); + void setupMenu(); + void readRecentMessages(); + + Ui::StatusField *ui = nullptr; + QMenu* menu = nullptr; + QAction* copyAction = nullptr; + QAction* clearAction = nullptr; + QList<QAbstractAnimation*> itemAnimations; + bool noFlashing = false; + + static const int timeStampColumnWidth = 70; + static const int itemCountLimit = 30; + static constexpr const char* timeStampFormat = "hh:mm:ss"; + + private slots: + void customContextMenuRequested(const QPoint& pos); + void info(const QString& text); + void warn(const QString& text); + void error(const QString& text); + void reset(); + void fontChanged(const QVariant& variant); + + signals: + void linkActivated(const QString& link); +}; + +#endif // STATUSFIELD_H |
