PowerMaster/include/dashboard.h

55 lines
1.2 KiB
C++

#ifndef DASHBOARD_H
#define DASHBOARD_H
#include "qboxlayout.h"
#include <QObject>
class DashboardFrame;
class CustomTab;
class QMenu;
class DataPanel;
class Dashboard : public QObject
{
Q_OBJECT
public:
explicit Dashboard(const QString& strName, QObject *parent = nullptr);
~Dashboard();
const QString& getName();
void setName(const QString&);
void setFrame(DashboardFrame*);
DashboardFrame* frame();
void setDisplayAreaLayout(QHBoxLayout*);
CustomTab* tab();
QWidget* displayArea();
void setActive(bool);
void addPanel(const QString&);
void removePanel(const QString&);
void deleteSubWidgets();
public slots:
void contextMenu_tab(const QPoint&);
void onAction_rename();
void onAction_remove();
void onSignal_removePanel(const QString&);
signals:
void sgl_rename();
void sgl_remove();
private:
QString m_strName;
DashboardFrame* m_pFrame;
CustomTab* m_pTab;
QMenu* m_pTabMenu;
QWidget* m_pDisplayArea;
QHBoxLayout* m_pDisplayAreaLayout;
QList<DataPanel*> m_dataPanels;
int m_nPanenlNameNumber;
};
#endif