PowerMaster/include/customTab.h

50 lines
865 B
C
Raw Normal View History

#ifndef CUSTOMTAB_H
#define CUSTOMTAB_H
#include <QFrame>
class QLabel;
class QBoxLayout;
2024-11-07 12:08:56 +08:00
class Dashboard;
class CustomTab : public QFrame
{
Q_OBJECT
public:
CustomTab(QWidget *parent = nullptr);
virtual ~CustomTab();
void setActive(bool);
void setText(const QString&);
QString text();
void setIcon(const QIcon&);
2024-11-07 12:08:56 +08:00
void setDashboard(Dashboard*);
Dashboard* dashboard();
signals:
void clicked();
protected:
void mousePressEvent(QMouseEvent*);
void mouseMoveEvent(QMouseEvent*);
void mouseReleaseEvent(QMouseEvent*);
private:
QIcon m_Icon;
QSize m_IconSize;
QLabel* m_pIconLabel;
QLabel* m_pTitle;
QBoxLayout* m_pLayout;
2024-11-07 12:08:56 +08:00
Dashboard* m_pDashboard; //所属于的dashboard
QPoint m_pStartPos;
bool m_bLeftButtonPressed;
bool m_bDragging;
};
#endif