55 lines
984 B
C++
Executable File
55 lines
984 B
C++
Executable File
#ifndef VCTRL_CTRLMAINWINDOW_H
|
|
#define VCTRL_CTRLMAINWINDOW_H
|
|
|
|
|
|
#include <QDialog>
|
|
#include <QSlider>
|
|
#include <QTimer>
|
|
#include <QHash>
|
|
|
|
#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<ViewWidget *> &vecMainWindowSubWidgets);
|
|
void closeView(ViewWidget *pViewWidget);
|
|
void updateHighlightThreads(ViewWidget *pWidget);
|
|
void clearGridLayout();
|
|
|
|
private:
|
|
void onHighlighterTimerTimeout();
|
|
private:
|
|
QTimer m_highlighterTimer;
|
|
QHash<ViewWidget *, int> m_highlighterCounter;
|
|
};
|
|
}
|
|
|
|
#endif // VCTRL_CTRLMAINWINDOW_H
|