#ifndef NOTICEMENU_H #define NOTICEMENU_H #include #include #include #include #include #include #include "notification-settings/applications-settings.h" using namespace kdk; class NoticeMenu : public QMenu { Q_OBJECT public: NoticeMenu(QWidget *parent = nullptr); void initStaus(const UkuiNotification::SingleApplicationSettings &settings); void setVoiceEnable(bool state); void setDetailShowOnLockScreenEnable(bool state); void setShowOnLockScreenEnable(bool state); void setPopupStyle(UkuiNotification::SettingsProperty::Property style); static QFrame *setLine(); private: void initUi(); void setFrame(QFrame *frame, QString str, KSwitchButton *btn); void setFrame(QFrame *frame, QString str, QRadioButton *btn); void setConnect(); private: KSwitchButton *m_voiceBtn = nullptr; KSwitchButton *m_detailBtn = nullptr; KSwitchButton *m_showBtn = nullptr; QButtonGroup *m_styleGrounp = nullptr; QRadioButton *m_noneBtn = nullptr; QRadioButton *m_mutativeBtn = nullptr; QRadioButton *m_alwaysBtn = nullptr; protected: void showEvent(QShowEvent *event); Q_SIGNALS: void voiceSignals(bool checked); void detailSignals(bool checked); void showSignals(bool checked); void styleBtnSignals(int id); }; #endif // NOTICEMENU_H