瀏覽代碼

Remove tree dock

Kandrashin Denis 13 年之前
父節點
當前提交
8923f8609a
共有 2 個文件被更改,包括 13 次插入6 次删除
  1. 10 5
      source/fb2main.cpp
  2. 3 1
      source/fb2main.h

+ 10 - 5
source/fb2main.cpp

@@ -92,6 +92,7 @@ void Fb2MainWindow::treeActivated(const QModelIndex &index)
 void Fb2MainWindow::treeDestroyed()
 {
     treeView = NULL;
+    dockTree = NULL;
 }
 
 bool Fb2MainWindow::loadXML(const QString &filename)
@@ -389,11 +390,11 @@ void Fb2MainWindow::createTree()
     treeView->setHeaderHidden(true);
     connect(treeView, SIGNAL(activated(QModelIndex)), SLOT(treeActivated(QModelIndex)));
     connect(treeView, SIGNAL(destroyed()), SLOT(treeDestroyed()));
-    QDockWidget * dock = new QDockWidget(tr("Contents"), this);
-    dock->setAttribute(Qt::WA_DeleteOnClose);
-    dock->setFeatures(QDockWidget::AllDockWidgetFeatures);
-    dock->setWidget(treeView);
-    addDockWidget(Qt::LeftDockWidgetArea, dock);
+    dockTree = new QDockWidget(tr("Contents"), this);
+    dockTree->setAttribute(Qt::WA_DeleteOnClose);
+    dockTree->setFeatures(QDockWidget::AllDockWidgetFeatures);
+    dockTree->setWidget(treeView);
+    addDockWidget(Qt::LeftDockWidgetArea, dockTree);
 }
 
 void Fb2MainWindow::createText()
@@ -615,6 +616,10 @@ void Fb2MainWindow::viewQsci()
         delete textEdit;
         textEdit = NULL;
     }
+    if (dockTree) {
+        delete dockTree;
+        dockTree = NULL;
+    }
     createQsci();
     qsciEdit->setText(html);
 }

+ 3 - 1
source/fb2main.h

@@ -5,8 +5,9 @@
 
 QT_BEGIN_NAMESPACE
 class QAction;
-class QMenu;
+class QDockWidget;
 class QFile;
+class QMenu;
 class QModelIndex;
 class QTextEdit;
 class QTreeView;
@@ -74,6 +75,7 @@ private:
     Fb2WebView *textEdit;
     QTextEdit *noteEdit;
     QTextEdit *messageEdit;
+    QDockWidget *dockTree;
     QsciScintilla *qsciEdit;
     QTreeView * treeView;
     QString curFile;