#ifndef VCTRL_CTRLMAINWINDOW_H #define VCTRL_CTRLMAINWINDOW_H #include #include #include #include #include "viewerinterface.h" namespace VCtrl { class TransparencyDialog final : public QDialog { Q_OBJECT public: TransparencyDialog(QWidget *parent = nullptr); double getTransparencyValue() const { return m_pSlider->value() / 100.0; } private: QSlider *m_pSlider; }; class ViewWidget; class CtrlImpl; class CtrlMainWindow final : public QWidget { Q_OBJECT public: explicit CtrlMainWindow(QWidget *parent); void openView(ViewWidget *pViewWidget); void openViews(const std::vector &vecMainWindowSubWidgets); void closeView(ViewWidget *pViewWidget); void updateHighlightThreads(ViewWidget *pWidget); void clearGridLayout(); private: void onHighlighterTimerTimeout(); private: QTimer m_highlighterTimer; QHash m_highlighterCounter; }; } #endif // VCTRL_CTRLMAINWINDOW_H