#ifndef TOPQUICKBUTTONV2_H #define TOPQUICKBUTTONV2_H #include #include #include class TopClassAbs; class TopQuickButtonV2Private; class TopQuickButtonV2 : public QToolButton { Q_OBJECT signals: void closeTrigged(); void fixTrigged(bool iBol); public: enum Type { Type_Shortcut, Type_Group, Type_Action }; explicit TopQuickButtonV2(QWidget *parent = 0); ~TopQuickButtonV2(); public slots: void setUid(const QString &iStr); QString uid() const; void setType(Type iType); Type type() const; void setData(const QVariant &iDataVar); QVariant data() const; void setFixed(bool iBol); bool isFixed() const; void setModified(bool iBol); bool isModified() const; void setClosable(bool iBol); bool isClosable() const; void setActived(bool iBol); bool isActived() const; void setOpened(bool iBol); bool isOpened() const; void setUnfixable(bool iIsUnfixableBol); bool isUnfixable() const; public slots: private slots: void onCustomContextMenuRequested(const QPoint &iPos); void onCloseActionTrigged(); void onFixedActionTrigged(); void changeStyleSheet(); protected: const QScopedPointer d_ptr; private: Q_DISABLE_COPY(TopQuickButtonV2) Q_DECLARE_PRIVATE(TopQuickButtonV2) }; #endif // TOPQUICKBUTTONV2_H