Index: trunk/GnssCenter/monitor/monitor.cpp
===================================================================
--- trunk/GnssCenter/monitor/monitor.cpp	(revision 5473)
+++ trunk/GnssCenter/monitor/monitor.cpp	(revision 5474)
@@ -69,12 +69,14 @@
   connect(_actStopThrift, SIGNAL(triggered()), this, SLOT(slotStopThrift()));
 
-  // Window title
-  // ------------
-  setTitle();
-
   // Thrift Client;
   // --------------
   _thriftClient = 0;
   _results      = 0;
+
+  // Read Settings, Set Title, Enable/Disable Actions
+  // ------------------------------------------------
+  readSettings();
+  setTitle();
+  enableActions();
 }
 
@@ -92,23 +94,32 @@
 }
 
+// Read Settings
+/////////////////////////////////////////////////////////////////////////////
+void t_monitor::readSettings() {
+  t_settings settings(pluginName);
+  _host = settings.value("host").toString();
+  if (_host.isEmpty()) {
+    _host = "localhost";
+  }
+  _port = settings.value("port").toString();
+}
+
 // Set title
 /////////////////////////////////////////////////////////////////////////////
 void t_monitor::setTitle() {
-  t_settings settings(pluginName);
-  QString host = settings.value("host").toString();
-  if (host.isEmpty()) {
-    host = "localhost";
-  }
-  QString port = settings.value("port").toString();
-  if (port.isEmpty()) {
+  if (_port.isEmpty()) {
     setWindowTitle(QString(pluginName));
-    _actStartThrift->setEnabled(false);
-    _actStopThrift->setEnabled(false);
   }
   else {
-    _actStartThrift->setEnabled(true);
-    _actStopThrift->setEnabled(false);
-    setWindowTitle(QString(pluginName) + "   " + host + ':' + port);
-  }
+    setWindowTitle(QString(pluginName) + "   " + _host + ':' + _port);
+  }
+}
+
+// Enable/Disable Actions
+/////////////////////////////////////////////////////////////////////////////
+void t_monitor::enableActions() {
+  _actConfig->setEnabled(true);
+  _actStartThrift->setEnabled(true);
+  _actStopThrift->setEnabled(true);
 }
 
@@ -118,5 +129,7 @@
   t_dlgConf dlg(this);
   dlg.exec();
+  readSettings();
   setTitle();
+  enableActions();
 }
 
@@ -124,15 +137,7 @@
 /////////////////////////////////////////////////////////////////////////////
 void t_monitor::slotStartThrift() {
-  _actConfig->setEnabled(false);
-  _actStartThrift->setEnabled(false);
-  _actStopThrift->setEnabled(true);
+  enableActions();
   if (!_thriftClient) {
-    t_settings settings(pluginName);
-    QString host = settings.value("host").toString();
-    if (host.isEmpty()) {
-      host = "localhost";
-    }
-    int port = settings.value("port").toInt();
-    _thriftClient = new t_thriftClient(this, host, port);
+    _thriftClient = new t_thriftClient(this, _host, _port.toInt());
     connect(_thriftClient, SIGNAL(finished()), this, SLOT(slotThriftFinished()));
     _thriftClient->start();
@@ -144,5 +149,5 @@
 /////////////////////////////////////////////////////////////////////////////
 void t_monitor::slotStopThrift() {
-  _actStopThrift->setEnabled(false);
+  enableActions();
   if (_thriftClient) {
     _thriftClient->stop();
@@ -154,7 +159,5 @@
 /////////////////////////////////////////////////////////////////////////////
 void t_monitor::slotThriftFinished() {
-  _actConfig->setEnabled(true);
-  _actStartThrift->setEnabled(true);
-  _actStopThrift->setEnabled(false);
+  enableActions();
   sender()->deleteLater();
   _thriftClient = 0;
Index: trunk/GnssCenter/monitor/monitor.h
===================================================================
--- trunk/GnssCenter/monitor/monitor.h	(revision 5473)
+++ trunk/GnssCenter/monitor/monitor.h	(revision 5474)
@@ -31,5 +31,7 @@
 
  private:
+  void readSettings();
   void setTitle();
+  void enableActions();
   QMutex                        _mutex;
   QTabWidget*                   _tabWidget;
@@ -38,4 +40,6 @@
   QAction*                      _actStopThrift;
   t_worldPlot*                  _plot;
+  QString                       _host;
+  QString                       _port;
   t_thriftClient*               _thriftClient;
   std::vector<t_thriftResult*>* _results;
