File indexing completed on 2024-10-06 04:26:02

0001 /*
0002     SPDX-FileCopyrightText: 2011 Michal Malek <michalm@jabster.pl>
0003     SPDX-FileCopyrightText: 1998-2007 Sebastian Trueg <trueg@k3b.org>
0004 
0005     SPDX-License-Identifier: GPL-2.0-or-later
0006 */
0007 
0008 
0009 
0010 #ifndef K3B_STATUSBAR_MANAGER_H
0011 #define K3B_STATUSBAR_MANAGER_H
0012 
0013 #include <QObject>
0014 
0015 class QLabel;
0016 class QEvent;
0017 class QTimer;
0018 
0019 namespace K3b {
0020     
0021     class Doc;
0022     class MainWindow;
0023     
0024     class StatusBarManager : public QObject
0025     {
0026         Q_OBJECT
0027 
0028     public:
0029         explicit StatusBarManager( MainWindow* parent );
0030         ~StatusBarManager() override;
0031 
0032     public Q_SLOTS:
0033         void update();
0034 
0035     private Q_SLOTS:
0036         void showActionStatusText( const QString& text );
0037         void clearActionStatusText();
0038         void slotActiveProjectChanged( K3b::Doc* doc );
0039         void slotUpdateProjectStats();
0040 
0041     private:
0042         bool eventFilter( QObject* o, QEvent* e ) override;
0043 
0044         QLabel* m_labelInfoMessage;
0045         QLabel* m_pixFreeTemp;
0046         QLabel* m_labelFreeTemp;
0047         QLabel* m_versionBox;
0048         QLabel* m_labelProjectInfo;
0049 
0050         MainWindow* m_mainWindow;
0051 
0052         QTimer* m_updateTimer;
0053     };
0054 }
0055 
0056 #endif