#pragma once #include "topic_editor_utils.h" #include #include namespace Ui { class TopicPreviewWidget; } namespace TopicEditorBase { class TopicPreviewer; class TOPICEDITORBASE_EXPORT TopicPreviewWidget : public QWidget { Q_OBJECT public: explicit TopicPreviewWidget(QWidget *parent = nullptr); ~TopicPreviewWidget(); void setTopicData(const TopicData &data); void setTopicEnabled(bool enabled); QString description() const; void setDescription(const QString &description); TopicPreviewer *previewer(); private: void contextMenuEvent(QContextMenuEvent *event); signals: void startDragMe(); void stopDragMe(); void deleteMe(); private: Ui::TopicPreviewWidget *m_ui{nullptr}; }; }