X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Fqt4%2FDockView.h;h=bb456d9b5deea53ebf93641146ea0c936db7a5bd;hb=425d092204118ea6c24c28e85fdf03fcf2bb51a4;hp=cce14d0670a593aa614069bceeb0750f885e301b;hpb=66b5fb67b3b8da4bec1752eeee4a9cb11b153797;p=lyx.git diff --git a/src/frontends/qt4/DockView.h b/src/frontends/qt4/DockView.h index cce14d0670..bb456d9b5d 100644 --- a/src/frontends/qt4/DockView.h +++ b/src/frontends/qt4/DockView.h @@ -12,10 +12,8 @@ #ifndef DOCK_VIEW_H #define DOCK_VIEW_H -#include "controllers/Dialog.h" +#include "Dialog.h" #include "GuiView.h" -#include "qt_helpers.h" -#include "debug.h" #include @@ -23,61 +21,43 @@ namespace lyx { namespace frontend { /// Dock Widget container for LyX dialogs. -/// This template class that encapsulates a given Widget inside a -/// QDockWidget and presents a Dialog interface -template +/** + * This template class that encapsulates a given Widget inside a + * QDockWidget and presents a Dialog interface + * FIXME: create a DockView.cpp file + **/ class DockView : public QDockWidget, public Dialog { public: DockView( - GuiViewBase & parent, ///< the main window where to dock. - std::string const & name, ///< dialog identifier. + GuiView & parent, ///< the main window where to dock. + QString const & name, ///< dialog identifier. + QString const & title, ///< dialog title. Qt::DockWidgetArea area = Qt::LeftDockWidgetArea, ///< Position of the dock (and also drawer) Qt::WindowFlags flags = 0 ) - : QDockWidget(&parent, flags), name_(name) + : QDockWidget(&parent, flags), Dialog(parent, name, title) { + setObjectName(name); if (flags & Qt::Drawer) setFeatures(QDockWidget::NoDockWidgetFeatures); - MyController * c = new MyController(*this); - controller_ = c; - controller_->setLyXView(parent); - widget_ = new MyWidget(*c); - setWidget(widget_); - setWindowTitle(widget_->windowTitle()); parent.addDockWidget(area, this); + hide(); } - ~DockView() { delete widget_; delete controller_; } + + virtual ~DockView() {} + + virtual QWidget * asQWidget() { return this; } + virtual QWidget const * asQWidget() const { return this; } + + /// We don't want to restore geometry session for dock widgets. + void restoreSession() {} /// Dialog inherited methods //@{ void applyView() {} - void hideView() { QDockWidget::hide(); } - void showView() - { - widget_->updateView(); // make sure its up-to-date - QDockWidget::show(); - } - bool isVisibleView() const { return QDockWidget::isVisible(); } - void checkStatus() { updateView(); } - void redraw() { redrawView(); } - void redrawView() {} - void updateData(std::string const &) { updateView(); } - void updateView() - { - widget_->updateView(); - QDockWidget::update(); - } bool isClosing() const { return false; } - void partialUpdateView(int /*id*/) {} - Controller & controller() { return *controller_; } - std::string name() const { return name_; } //@} -private: - /// The encapsulated widget. - MyWidget * widget_; - Controller * controller_; - std::string name_; }; } // frontend