#pragma once #include "lts_notification_export.h" #include #include #include #include namespace LtsSession { class LtsSession; } namespace LtsNotification { class LtsNotificationController; class LTSNOTIFICATION_EXPORT LtsNotification : public QObject { Q_OBJECT public: explicit LtsNotification(LtsNotificationController* ctl); ~LtsNotification(); void setIcon(const QIcon& icon); void setAction(const std::function& action); void setToolTip(const QString& toolTip); void setCount(const int count); void setEnabled(bool enable); void setBackground(const int r, const int g, const int b); const QString& tooltip() const; private: LtsNotificationController* m_controller; private slots: void slotCtlDestroyed(QObject* obj); }; } // namespace LtsNotification