changeset 176:59a64b19565a

remove all panes when loading a new track
author lbajardsilogic
date Wed, 21 Nov 2007 11:31:35 +0000
parents 9c2400251179
children 846a6259a081
files sv/main/MainWindow.cpp
diffstat 1 files changed, 30 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/sv/main/MainWindow.cpp	Wed Nov 21 10:55:26 2007 +0000
+++ b/sv/main/MainWindow.cpp	Wed Nov 21 11:31:35 2007 +0000
@@ -2882,9 +2882,6 @@
 	m_paneStack->deletePane(pane);
     }
 
-	if (m_document)
-		m_document->removeAllFilters();
-
 	m_infoWidget->reset();
 	m_searchWidget->reset();
 	m_resultsWidget->reset();
@@ -5388,23 +5385,41 @@
 
 void MainWindow::importEasaierFile(const QString& filename)
 {
-	int i = m_paneStack->getPaneCount();
-	while (i > 0) {
-
-		Pane *pane = m_paneStack->getPane(i - 1);
-
-		int j= pane->getLayerCount();
-		while (j > 0) {
-			m_document->removeLayerFromView(pane, pane->getLayer(j - 1));
-			j--;
+	/*****remove all panes****/
+	while (m_paneStack->getPaneCount() > 0) {
+
+		Pane *pane = m_paneStack->getPane(m_paneStack->getPaneCount() - 1);
+
+		while (pane->getLayerCount() > 0) {
+			m_document->removeLayerFromView
+			(pane, pane->getLayer(pane->getLayerCount() - 1));
 		}
-		i--;
+
+		m_overview->unregisterView(pane);
+		m_paneStack->deletePane(pane);
     }
 
+    while (m_paneStack->getHiddenPaneCount() > 0) {
+
+		Pane *pane = m_paneStack->getHiddenPane
+			(m_paneStack->getHiddenPaneCount() - 1);
+
+		while (pane->getLayerCount() > 0) {
+			m_document->removeLayerFromView
+			(pane, pane->getLayer(pane->getLayerCount() - 1));
+		}
+
+		m_overview->unregisterView(pane);
+		m_paneStack->deletePane(pane);
+    }
+	/*********/
+
 	m_document->reset();
     
-	//createDocument();
-	Pane *pane = m_paneStack->getCurrentPane();
+	Pane *pane = m_paneStack->addPane();
+
+    connect(pane, SIGNAL(contextHelpChanged(const QString &)),
+            this, SLOT(contextHelpChanged(const QString &)));
 
     if (!m_timeRulerLayer) {
 		m_timeRulerLayer = m_document->createMainModelLayer(LayerFactory::TimeRuler);