diff sv/main/MainWindow.cpp @ 10:9e054206ed97

add connection setting information reading and saving
author lbajardsilogic
date Fri, 11 May 2007 15:40:34 +0000
parents ba54bc09cd62
children ac5491829e61
line wrap: on
line diff
--- a/sv/main/MainWindow.cpp	Fri May 11 15:40:03 2007 +0000
+++ b/sv/main/MainWindow.cpp	Fri May 11 15:40:34 2007 +0000
@@ -64,6 +64,7 @@
 #include "base/CommandHistory.h"
 #include "base/Profiler.h"
 #include "base/Clipboard.h"
+#include "base/TempDirectory.h"
 #include "osc/OSCQueue.h"
 
 // For version information
@@ -319,6 +320,8 @@
         oscTimer->start(1000);
     }
 
+	m_httpClient = new HttpClient(TempDirectory::getInstance()->getConfigPath());
+
     setupMenus();
     setupToolbars();
 
@@ -577,7 +580,7 @@
                          tr("&Quit"), this);
     action->setShortcut(tr("Ctrl+Q"));
     action->setStatusTip(tr("Exit Sonic Visualiser"));
-    connect(action, SIGNAL(triggered()), this, SLOT(close()));
+    connect(action, SIGNAL(triggered()), this, SLOT(exit()));
     menu->addAction(action);
 }
 
@@ -699,9 +702,9 @@
     menu = menuBar()->addMenu(tr("&Settings"));
     menu->setTearOffEnabled(true);
     
-	//action = new QAction(tr("&Connection settings"), this);
-	//connect(action, SIGNAL(triggered()), this, SLOT(connectionSettings()));
-	//menu->addAction(action);
+	action = new QAction(tr("&Connection settings"), this);
+	connect(action, SIGNAL(triggered()), this, SLOT(connectionSettings()));
+	menu->addAction(action);
 
 	action = new QAction(tr("&Style setting"), this);
 	connect(action, SIGNAL(triggered()), this, SLOT(styleSetting()));
@@ -4842,7 +4845,45 @@
     QMessageBox::about(this, tr("About Sonic Visualiser"), aboutText);
 }
 
+void MainWindow::connectionSettings()
+{
+	ConnectionSettings* connection = new ConnectionSettings(m_httpClient);
+}
+
 void MainWindow::styleSetting()
 {
      m_gallery.show();
+}
+
+bool MainWindow::saveConfigFile()
+{
+	QString s;
+
+	s += QString("<config>\n");
+	
+	s += m_httpClient->toXmlString("\t");
+
+	s += QString("</config>\n");
+
+	QString filePath = TempDirectory::getInstance()->getConfigPath();
+	
+	QFile *file = new QFile(filePath);
+
+	if (!file->open(QIODevice::WriteOnly))
+		return false;
+
+	QTextStream config(file);
+
+	config << s;
+
+	file->close();
+
+	return true;
+}
+
+void MainWindow::exit()
+{	
+	closeSession();
+	saveConfigFile();
+	close();
 }
\ No newline at end of file