2018-03-16 21:46:57 +00:00
|
|
|
#ifndef CUTTERWIDGET_H
|
|
|
|
#define CUTTERWIDGET_H
|
|
|
|
|
|
|
|
#include <QDockWidget>
|
|
|
|
|
|
|
|
class MainWindow;
|
|
|
|
|
|
|
|
class CutterDockWidget : public QDockWidget
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
public:
|
|
|
|
explicit CutterDockWidget(MainWindow *main, QAction *action = nullptr);
|
2019-01-12 17:02:51 +00:00
|
|
|
~CutterDockWidget() override;
|
|
|
|
bool eventFilter(QObject *object, QEvent *event) override;
|
|
|
|
|
2018-03-16 21:46:57 +00:00
|
|
|
public slots:
|
|
|
|
void toggleDockWidget(bool show);
|
|
|
|
|
|
|
|
private:
|
|
|
|
QAction *action;
|
|
|
|
|
2019-01-12 17:02:51 +00:00
|
|
|
/**
|
|
|
|
* @brief doRefresh tells if the widget must refresh its content.
|
|
|
|
*/
|
|
|
|
bool doRefresh = false;
|
|
|
|
void refreshIfNeeded();
|
|
|
|
|
2018-03-16 21:46:57 +00:00
|
|
|
protected:
|
2018-03-21 20:32:32 +00:00
|
|
|
void closeEvent(QCloseEvent *event) override;
|
2019-01-12 17:02:51 +00:00
|
|
|
bool isVisibleToUser();
|
|
|
|
virtual void refreshContent() = 0;
|
2018-03-16 21:46:57 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // CUTTERWIDGET_H
|