All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DisplayDock.cpp
Go to the documentation of this file.
1 /* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2 
3  This file is part of the TerraLib - a Framework for building GIS enabled applications.
4 
5  TerraLib is free software: you can redistribute it and/or modify
6  it under the terms of the GNU Lesser General Public License as published by
7  the Free Software Foundation, either version 3 of the License,
8  or (at your option) any later version.
9 
10  TerraLib is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public License
16  along with TerraLib. See COPYING. If not, write to
17  TerraLib Team at <terralib-team@terralib.org>.
18  */
19 
20 /*!
21  \file DisplayDock.cpp
22 
23  \brief
24 
25  \ingroup layout
26 */
27 
28 // TerraLib
29 #include "DisplayDock.h"
30 
31 // Qt
32 #include <QMainWindow>
33 
34 te::qt::plugins::layout::DisplayDock::DisplayDock( QWidget * parent, Qt::WindowFlags flags ) :
35  QDockWidget(parent, flags),
36  m_previousCentralWidget(0),
37  m_previousCentralWidgetVisibilite(true)
38 {
39  setVisible(false);
40  setWindowTitle("Layout Display");
41 }
42 
44 {
45 
46 }
47 
49 {
50  QDockWidget::closeEvent(event);
51 
52  if(widget())
53  {
54  widget()->close();
55  }
56 
57  removeDock();
58 }
59 
61 {
62  m_previousCentralWidget = previous;
63 
64  m_previousCentralWidget->setParent(0);
65 }
66 
68 {
69  QMainWindow* mw = (QMainWindow*)parentWidget();
70 
71  if(mw)
72  {
73  mw->removeDockWidget(this);
74  this->setParent(0);
75 
76  if(m_previousCentralWidget)
77  {
78  mw->setCentralWidget(m_previousCentralWidget);
79  m_previousCentralWidget->show();
80  }
81  }
82 }
83 
85 {
86  close();
87 }
void setPreviousCentralWidget(QWidget *previous)
Definition: DisplayDock.cpp:60
DisplayDock(QWidget *parent=0, Qt::WindowFlags flags=0)
Definition: DisplayDock.cpp:34
virtual void closeEvent(QCloseEvent *event)
Definition: DisplayDock.cpp:48