changeset 10:9e054206ed97

add connection setting information reading and saving
author lbajardsilogic
date Fri, 11 May 2007 15:40:34 +0000
parents 5370801117f2
children f1602cb4cd0b
files sv/main/MainWindow.cpp sv/main/MainWindow.h
diffstat 2 files changed, 52 insertions(+), 4 deletions(-) [+]
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
--- a/sv/main/MainWindow.h	Fri May 11 15:40:03 2007 +0000
+++ b/sv/main/MainWindow.h	Fri May 11 15:40:34 2007 +0000
@@ -31,6 +31,7 @@
 #include "transform/Transform.h"
 #include "document/SVFileReader.h"
 #include "data/fileio/FileFinder.h"
+#include "data/fileio/HttpClient.h"
 #include "widgets/WidgetGallery.h"
 
 #include <map>
@@ -244,8 +245,11 @@
     void help();
     void about();
 
+	void connectionSettings();
 	void styleSetting();
 
+	void exit();
+
 protected:
     QString                  m_sessionFile;
     QString                  m_audioFile;
@@ -414,6 +418,8 @@
 
     void toXml(QTextStream &stream);
 
+	bool saveConfigFile();
+
 	static MainWindow	*m_instance;
 
 	InfoWidget			*m_infoWidget;
@@ -426,6 +432,7 @@
 
 	WidgetGallery			m_gallery;
 
+	HttpClient				*m_httpClient;
 };