Commit 62cdaab2 authored by Don Gagne's avatar Don Gagne

Dock widget no longer supports floating mode

Action passed in in order to make X in title bar close work
parent be818a66
...@@ -25,15 +25,23 @@ ...@@ -25,15 +25,23 @@
#include <QCloseEvent> #include <QCloseEvent>
QGCDockWidget::QGCDockWidget(const QString& title, QWidget *parent, Qt::WindowFlags flags) : QGCDockWidget::QGCDockWidget(const QString& title, QAction* action, QWidget *parent, Qt::WindowFlags flags) :
QDockWidget(title, parent, flags) QDockWidget(title, parent, flags),
_action(action)
{ {
QDockWidget::DockWidgetFeatures features = QDockWidget::DockWidgetMovable;
if (action) {
features |= QDockWidget::DockWidgetClosable;
}
setFeatures(features);
} }
// Instead of destroying the widget just hide it // Instead of destroying the widget just hide it
void QGCDockWidget::closeEvent(QCloseEvent* event) void QGCDockWidget::closeEvent(QCloseEvent* event)
{ {
Q_ASSERT(_action);
event->ignore(); event->ignore();
setVisible(false); _action->trigger();
} }
...@@ -25,6 +25,7 @@ ...@@ -25,6 +25,7 @@
#define QGCDockWidget_h #define QGCDockWidget_h
#include <QDockWidget> #include <QDockWidget>
#include <QAction>
/// @file /// @file
/// @brief Subclass of QDockWidget so we can intercept the closeEvent. /// @brief Subclass of QDockWidget so we can intercept the closeEvent.
...@@ -35,9 +36,12 @@ class QGCDockWidget : public QDockWidget { ...@@ -35,9 +36,12 @@ class QGCDockWidget : public QDockWidget {
Q_OBJECT Q_OBJECT
public: public:
QGCDockWidget(const QString& title, QWidget *parent = 0, Qt::WindowFlags flags = 0); QGCDockWidget(const QString& title, QAction* action, QWidget *parent = 0, Qt::WindowFlags flags = 0);
void closeEvent(QCloseEvent* event); void closeEvent(QCloseEvent* event);
private:
QAction* _action;
}; };
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment