Added a container dialog for stand-alone settingspages (SettingsPageDlg).
authorManuel Nickschas <sputnick@quassel-irc.org>
Sun, 3 Feb 2008 02:17:57 +0000 (02:17 +0000)
committerManuel Nickschas <sputnick@quassel-irc.org>
Sun, 3 Feb 2008 02:17:57 +0000 (02:17 +0000)
Used that for enabling direct access to the networks settings via File -> Networks.
Gotta love modularity...

14 files changed:
Quassel.kdevelop.filelist
src/common/logger.cpp
src/common/main.cpp
src/qtui/mainwin.cpp
src/qtui/mainwin.h
src/qtui/qtui.pri
src/qtui/settingsdlg.cpp
src/qtui/settingsdlg.h
src/qtui/settingspagedlg.cpp [new file with mode: 0644]
src/qtui/settingspagedlg.h [new file with mode: 0644]
src/qtui/settingspages/identitiessettingspage.cpp
src/qtui/settingspages/networkssettingspage.cpp
src/qtui/ui/settingsdlg.ui
src/qtui/ui/settingspagedlg.ui [new file with mode: 0644]

index e24ff46..19f4d2e 100644 (file)
@@ -44,8 +44,6 @@ src/client/modelpropertymapper.cpp
 src/client/modelpropertymapper.h
 src/client/networkmodel.cpp
 src/client/networkmodel.h
 src/client/modelpropertymapper.h
 src/client/networkmodel.cpp
 src/client/networkmodel.h
-src/client/nickmodel.cpp
-src/client/nickmodel.h
 src/client/quasselui.h
 src/client/selectionmodelsynchronizer.cpp
 src/client/selectionmodelsynchronizer.h
 src/client/quasselui.h
 src/client/selectionmodelsynchronizer.cpp
 src/client/selectionmodelsynchronizer.h
@@ -162,8 +160,6 @@ src/qtui/debugconsole.cpp
 src/qtui/debugconsole.h
 src/qtui/guisettings.cpp
 src/qtui/guisettings.h
 src/qtui/debugconsole.h
 src/qtui/guisettings.cpp
 src/qtui/guisettings.h
-src/qtui/identities.cpp
-src/qtui/identities.h
 src/qtui/inputwidget.cpp
 src/qtui/inputwidget.h
 src/qtui/mainwin.cpp
 src/qtui/inputwidget.cpp
 src/qtui/inputwidget.h
 src/qtui/mainwin.cpp
@@ -175,10 +171,10 @@ src/qtui/qtui.h
 src/qtui/qtui.pri
 src/qtui/qtuistyle.cpp
 src/qtui/qtuistyle.h
 src/qtui/qtui.pri
 src/qtui/qtuistyle.cpp
 src/qtui/qtuistyle.h
-src/qtui/serverlist.cpp
-src/qtui/serverlist.h
 src/qtui/settingsdlg.cpp
 src/qtui/settingsdlg.h
 src/qtui/settingsdlg.cpp
 src/qtui/settingsdlg.h
+src/qtui/settingspagedlg.cpp
+src/qtui/settingspagedlg.h
 src/qtui/settingspages
 src/qtui/settingspages/createidentitydlg.ui
 src/qtui/settingspages/fontssettingspage.cpp
 src/qtui/settingspages
 src/qtui/settingspages/createidentitydlg.ui
 src/qtui/settingspages/fontssettingspage.cpp
@@ -188,15 +184,12 @@ src/qtui/settingspages/identitiessettingspage.cpp
 src/qtui/settingspages/identitiessettingspage.h
 src/qtui/settingspages/identitiessettingspage.ui
 src/qtui/settingspages/networkeditdlg.ui
 src/qtui/settingspages/identitiessettingspage.h
 src/qtui/settingspages/identitiessettingspage.ui
 src/qtui/settingspages/networkeditdlg.ui
-src/qtui/settingspages/networkeditdlgnew.ui
 src/qtui/settingspages/networkssettingspage.cpp
 src/qtui/settingspages/networkssettingspage.h
 src/qtui/settingspages/networkssettingspage.ui
 src/qtui/settingspages/nickeditdlg.ui
 src/qtui/settingspages/networkssettingspage.cpp
 src/qtui/settingspages/networkssettingspage.h
 src/qtui/settingspages/networkssettingspage.ui
 src/qtui/settingspages/nickeditdlg.ui
-src/qtui/settingspages/nickeditdlgnew.ui
 src/qtui/settingspages/saveidentitiesdlg.ui
 src/qtui/settingspages/servereditdlg.ui
 src/qtui/settingspages/saveidentitiesdlg.ui
 src/qtui/settingspages/servereditdlg.ui
-src/qtui/settingspages/servereditdlgnew.ui
 src/qtui/settingspages/settingspages.pri
 src/qtui/topicwidget.cpp
 src/qtui/topicwidget.h
 src/qtui/settingspages/settingspages.pri
 src/qtui/topicwidget.cpp
 src/qtui/topicwidget.h
@@ -206,14 +199,8 @@ src/qtui/ui/bufferviewwidget.ui
 src/qtui/ui/bufferwidget.ui
 src/qtui/ui/coreconnectdlg.ui
 src/qtui/ui/debugconsole.ui
 src/qtui/ui/bufferwidget.ui
 src/qtui/ui/coreconnectdlg.ui
 src/qtui/ui/debugconsole.ui
-src/qtui/ui/identitiesdlg.ui
-src/qtui/ui/identitieseditdlg.ui
 src/qtui/ui/mainwin.ui
 src/qtui/ui/mainwin.ui
-src/qtui/ui/networkeditdlg.ui
-src/qtui/ui/nickeditdlg.ui
 src/qtui/ui/nicklistwidget.ui
 src/qtui/ui/nicklistwidget.ui
-src/qtui/ui/servereditdlg.ui
-src/qtui/ui/serverlistdlg.ui
 src/qtui/ui/settingsdlg.ui
 src/qtui/ui/topicwidget.ui
 src/qtui/verticaldock.cpp
 src/qtui/ui/settingsdlg.ui
 src/qtui/ui/topicwidget.ui
 src/qtui/verticaldock.cpp
index 26296bb..de20651 100644 (file)
@@ -25,7 +25,7 @@
 
 
 Logger::~Logger() {
 
 
 Logger::~Logger() {
-  //qInstallMsgHandler(0);
+  qInstallMsgHandler(0);
 }
 
 void messageHandler(QtMsgType type, const char *msg) {
 }
 
 void messageHandler(QtMsgType type, const char *msg) {
@@ -46,5 +46,5 @@ void messageHandler(QtMsgType type, const char *msg) {
 }
 
 Logger::Logger() {
 }
 
 Logger::Logger() {
-  //qInstallMsgHandler(messageHandler);
+  qInstallMsgHandler(messageHandler);
 }
 }
index 6b39f5f..f34cfd1 100644 (file)
@@ -24,6 +24,7 @@
 #include <QTranslator>
 
 #include "global.h"
 #include <QTranslator>
 
 #include "global.h"
+#include "logger.h"
 #include "settings.h"
 
 #if defined BUILD_CORE
 #include "settings.h"
 
 #if defined BUILD_CORE
@@ -61,6 +62,8 @@ int main(int argc, char **argv) {
   signal(SIGTERM, handle_signal);
   signal(SIGINT, handle_signal);
 
   signal(SIGTERM, handle_signal);
   signal(SIGINT, handle_signal);
 
+  // Logger logger;
+
   Global::registerMetaTypes();
 
 #include "../../version.inc"
   Global::registerMetaTypes();
 
 #include "../../version.inc"
index 83032f1..e88dd35 100644 (file)
@@ -30,6 +30,7 @@
 #include "buffermodel.h"
 #include "nicklistwidget.h"
 #include "settingsdlg.h"
 #include "buffermodel.h"
 #include "nicklistwidget.h"
 #include "settingsdlg.h"
+#include "settingspagedlg.h"
 #include "signalproxy.h"
 #include "topicwidget.h"
 #include "inputwidget.h"
 #include "signalproxy.h"
 #include "topicwidget.h"
 #include "inputwidget.h"
@@ -118,8 +119,8 @@ void MainWin::setupMenus() {
   connect(ui.actionAboutQt, SIGNAL(triggered()), QApplication::instance(), SLOT(aboutQt()));
 
   actionEditNetworks = new QAction(QIcon(":/22x22/actions/configure"), tr("Edit &Networks..."), this);
   connect(ui.actionAboutQt, SIGNAL(triggered()), QApplication::instance(), SLOT(aboutQt()));
 
   actionEditNetworks = new QAction(QIcon(":/22x22/actions/configure"), tr("Edit &Networks..."), this);
-  actionEditNetworks->setEnabled(false); // FIXME
   ui.menuNetworks->addAction(actionEditNetworks);
   ui.menuNetworks->addAction(actionEditNetworks);
+  connect(actionEditNetworks, SIGNAL(triggered()), this, SLOT(showNetworkDlg()));
 }
 
 void MainWin::setupViews() {
 }
 
 void MainWin::setupViews() {
@@ -330,6 +331,11 @@ void MainWin::systrayActivated( QSystemTrayIcon::ActivationReason activationReas
   }
 }
 
   }
 }
 
+void MainWin::showNetworkDlg() {
+  SettingsPageDlg dlg(new NetworksSettingsPage(this), this);
+  dlg.exec();
+}
+
 void MainWin::clientNetworkCreated(NetworkId id) {
   const Network *net = Client::network(id);
   QAction *act = new QAction(net->networkName(), this);
 void MainWin::clientNetworkCreated(NetworkId id) {
   const Network *net = Client::network(id);
   QAction *act = new QAction(net->networkName(), this);
index d194a6f..e285896 100644 (file)
@@ -61,6 +61,7 @@ class MainWin : public QMainWindow {
   private slots:
 
     void showSettingsDlg();
   private slots:
 
     void showSettingsDlg();
+    void showNetworkDlg();
     void showDebugConsole();
 
     void showCoreConnectionDlg(bool autoConnect = false);
     void showDebugConsole();
 
     void showCoreConnectionDlg(bool autoConnect = false);
index 033e7be..bffc108 100644 (file)
@@ -3,15 +3,15 @@ QT_MOD = core gui network
 
 SRCS += bufferwidget.cpp chatline-old.cpp \
         chatwidget.cpp coreconnectdlg.cpp configwizard.cpp \
 
 SRCS += bufferwidget.cpp chatline-old.cpp \
         chatwidget.cpp coreconnectdlg.cpp configwizard.cpp \
-        guisettings.cpp mainwin.cpp nicklistwidget.cpp qtui.cpp qtuistyle.cpp settingsdlg.cpp \
+        guisettings.cpp mainwin.cpp nicklistwidget.cpp qtui.cpp qtuistyle.cpp settingsdlg.cpp settingspagedlg.cpp \
         topicwidget.cpp debugconsole.cpp inputwidget.cpp verticaldock.cpp
 
 HDRS += bufferwidget.h chatline-old.h chatwidget.h configwizard.h \
         topicwidget.cpp debugconsole.cpp inputwidget.cpp verticaldock.cpp
 
 HDRS += bufferwidget.h chatline-old.h chatwidget.h configwizard.h \
-        coreconnectdlg.h mainwin.h nicklistwidget.h qtui.h qtuistyle.h settingsdlg.h \
+        coreconnectdlg.h mainwin.h nicklistwidget.h qtui.h qtuistyle.h settingsdlg.h settingspagedlg.h \
         topicwidget.h debugconsole.h inputwidget.h verticaldock.h
 
 FORMNAMES = mainwin.ui coreaccounteditdlg.ui coreconnectdlg.ui bufferviewwidget.ui bufferwidget.ui nicklistwidget.ui settingsdlg.ui \
         topicwidget.h debugconsole.h inputwidget.h verticaldock.h
 
 FORMNAMES = mainwin.ui coreaccounteditdlg.ui coreconnectdlg.ui bufferviewwidget.ui bufferwidget.ui nicklistwidget.ui settingsdlg.ui \
-            topicwidget.ui debugconsole.ui inputwidget.ui
+            settingspagedlg.ui topicwidget.ui debugconsole.ui inputwidget.ui
 
 for(ui, FORMNAMES) {
   FRMS += ui/$${ui}
 
 for(ui, FORMNAMES) {
   FRMS += ui/$${ui}
index 919ca34..eb07319 100644 (file)
@@ -65,6 +65,7 @@ void SettingsDlg::registerSettingsPage(SettingsPage *sp) {
   QTreeWidgetItem *item = new QTreeWidgetItem(cat, QStringList(sp->title()));
   treeItems[sp] = item;
   pages[QString("%1$%2").arg(sp->category(), sp->title())] = sp;
   QTreeWidgetItem *item = new QTreeWidgetItem(cat, QStringList(sp->title()));
   treeItems[sp] = item;
   pages[QString("%1$%2").arg(sp->category(), sp->title())] = sp;
+  sp->load();
   // TESTING
   selectPage(sp->category(), sp->title());
 }
   // TESTING
   selectPage(sp->category(), sp->title());
 }
index 31be186..cefc780 100644 (file)
@@ -59,17 +59,5 @@ class SettingsDlg : public QDialog {
     //QSize recommendedSize;
 };
 
     //QSize recommendedSize;
 };
 
-/*
-class CoreSettingsPage : public QWidget, SettingsInterface {
-  Q_OBJECT
-
-  public:
-
-
-  private:
-    Ui::CoreSettingsPage ui;
-
-};
-*/
 
 #endif
 
 #endif
diff --git a/src/qtui/settingspagedlg.cpp b/src/qtui/settingspagedlg.cpp
new file mode 100644 (file)
index 0000000..7d36cf5
--- /dev/null
@@ -0,0 +1,107 @@
+/***************************************************************************
+ *   Copyright (C) 2005-08 by the Quassel IRC Team                         *
+ *   devel@quassel-irc.org                                                 *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) version 3.                                           *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+#include "settingspagedlg.h"
+
+SettingsPageDlg::SettingsPageDlg(SettingsPage *page, QWidget *parent) : QDialog(parent) {
+  ui.setupUi(this);
+  _currentPage = page;
+  page->setParent(this);
+  ui.pageTitle->setText(page->title());
+
+  // make the scrollarea behave sanely
+  ui.settingsFrame->setWidgetResizable(true);
+  ui.settingsFrame->setWidget(page);
+
+  updateGeometry();
+
+  connect(page, SIGNAL(changed(bool)), this, SLOT(setButtonStates()));
+  connect(ui.buttonBox, SIGNAL(clicked(QAbstractButton *)), this, SLOT(buttonClicked(QAbstractButton *)));
+  page->load();
+  setButtonStates();
+}
+
+SettingsPage *SettingsPageDlg::currentPage() const {
+  return _currentPage;
+}
+
+void SettingsPageDlg::setButtonStates() {
+  SettingsPage *sp = currentPage();
+  ui.buttonBox->button(QDialogButtonBox::Ok)->setEnabled(sp && sp->hasChanged());
+  ui.buttonBox->button(QDialogButtonBox::Apply)->setEnabled(sp && sp->hasChanged());
+  ui.buttonBox->button(QDialogButtonBox::Reset)->setEnabled(sp && sp->hasChanged());
+  ui.buttonBox->button(QDialogButtonBox::RestoreDefaults)->setEnabled(sp && sp->hasDefaults());
+}
+
+void SettingsPageDlg::buttonClicked(QAbstractButton *button) {
+  switch(ui.buttonBox->standardButton(button)) {
+    case QDialogButtonBox::Ok:
+      if(applyChanges()) accept();
+      break;
+    case QDialogButtonBox::Apply:
+      applyChanges();
+      break;
+    case QDialogButtonBox::Cancel:
+      undoChanges();
+      reject();
+      break;
+    case QDialogButtonBox::Reset:
+      reload();
+      break;
+    case QDialogButtonBox::RestoreDefaults:
+      loadDefaults();
+      break;
+    default:
+      break;
+  }
+}
+
+bool SettingsPageDlg::applyChanges() {
+  if(!currentPage()) return false;
+  if(currentPage()->aboutToSave()) {
+    currentPage()->save();
+    return true;
+  }
+  return false;
+}
+
+void SettingsPageDlg::undoChanges() {
+  if(currentPage()) {
+    currentPage()->load();
+  }
+}
+
+void SettingsPageDlg::reload() {
+  if(!currentPage()) return;
+  int ret = QMessageBox::question(this, tr("Reload Settings"), tr("Do you like to reload the settings, undoing your changes on this page?"),
+                                  QMessageBox::Yes|QMessageBox::No, QMessageBox::No);
+  if(ret == QMessageBox::Yes) {
+    currentPage()->load();
+  }
+}
+
+void SettingsPageDlg::loadDefaults() {
+  if(!currentPage()) return;
+  int ret = QMessageBox::question(this, tr("Restore Defaults"), tr("Do you like to restore the default values for this page?"),
+                                  QMessageBox::RestoreDefaults|QMessageBox::Cancel, QMessageBox::Cancel);
+  if(ret == QMessageBox::Yes) {
+    currentPage()->defaults();
+  }
+}
diff --git a/src/qtui/settingspagedlg.h b/src/qtui/settingspagedlg.h
new file mode 100644 (file)
index 0000000..febf8bd
--- /dev/null
@@ -0,0 +1,51 @@
+/***************************************************************************
+ *   Copyright (C) 2005-08 by the Quassel IRC Team                         *
+ *   devel@quassel-irc.org                                                 *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) version 3.                                           *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+#ifndef _SETTINGSPAGEDLG_H_
+#define _SETTINGSPAGEDLG_H_
+
+#include <QtGui>
+#include "ui_settingspagedlg.h"
+
+#include "settingspage.h"
+
+class SettingsPageDlg : public QDialog {
+  Q_OBJECT
+  public:
+    SettingsPageDlg(SettingsPage * page, QWidget *parent = 0);
+
+    SettingsPage *currentPage() const;
+
+  private slots:
+    void buttonClicked(QAbstractButton *);
+    bool applyChanges();
+    void undoChanges();
+    void reload();
+    void loadDefaults();
+    void setButtonStates();
+
+  private:
+    Ui::SettingsPageDlg ui;
+
+    SettingsPage *_currentPage;
+
+};
+
+#endif
index bd8fccd..9c677db 100644 (file)
@@ -29,7 +29,7 @@ IdentitiesSettingsPage::IdentitiesSettingsPage(QWidget *parent)
   : SettingsPage(tr("General"), tr("Identities"), parent) {
 
   ui.setupUi(this);
   : SettingsPage(tr("General"), tr("Identities"), parent) {
 
   ui.setupUi(this);
-  setEnabled(false);  // need a core connection!
+  setEnabled(Client::isConnected());  // need a core connection!
   setWidgetStates();
   connect(Client::instance(), SIGNAL(coreConnectionStateChanged(bool)), this, SLOT(coreConnectionStateChanged(bool)));
   connect(Client::instance(), SIGNAL(identityCreated(IdentityId)), this, SLOT(clientIdentityCreated(IdentityId)));
   setWidgetStates();
   connect(Client::instance(), SIGNAL(coreConnectionStateChanged(bool)), this, SLOT(coreConnectionStateChanged(bool)));
   connect(Client::instance(), SIGNAL(identityCreated(IdentityId)), this, SLOT(clientIdentityCreated(IdentityId)));
index 66b7649..cbfa192 100644 (file)
@@ -37,7 +37,7 @@ NetworksSettingsPage::NetworksSettingsPage(QWidget *parent) : SettingsPage(tr("G
   disconnectedIcon = QIcon(":/22x22/actions/network-disconnect");
 
   currentId = 0;
   disconnectedIcon = QIcon(":/22x22/actions/network-disconnect");
 
   currentId = 0;
-  setEnabled(false);  // need a core connection!
+  setEnabled(Client::isConnected());  // need a core connection!
   setWidgetStates();
   connect(Client::instance(), SIGNAL(coreConnectionStateChanged(bool)), this, SLOT(coreConnectionStateChanged(bool)));
   connect(Client::instance(), SIGNAL(networkCreated(NetworkId)), this, SLOT(clientNetworkAdded(NetworkId)));
   setWidgetStates();
   connect(Client::instance(), SIGNAL(coreConnectionStateChanged(bool)), this, SLOT(coreConnectionStateChanged(bool)));
   connect(Client::instance(), SIGNAL(networkCreated(NetworkId)), this, SLOT(clientNetworkAdded(NetworkId)));
index a4615f7..88f9cee 100644 (file)
@@ -5,8 +5,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>881</width>
-    <height>663</height>
+    <width>828</width>
+    <height>587</height>
    </rect>
   </property>
   <property name="windowTitle" >
    </rect>
   </property>
   <property name="windowTitle" >
diff --git a/src/qtui/ui/settingspagedlg.ui b/src/qtui/ui/settingspagedlg.ui
new file mode 100644 (file)
index 0000000..56f7514
--- /dev/null
@@ -0,0 +1,107 @@
+<ui version="4.0" >
+ <class>SettingsPageDlg</class>
+ <widget class="QDialog" name="SettingsPageDlg" >
+  <property name="geometry" >
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>703</width>
+    <height>588</height>
+   </rect>
+  </property>
+  <property name="windowTitle" >
+   <string>Dialog</string>
+  </property>
+  <layout class="QVBoxLayout" >
+   <item>
+    <widget class="QLabel" name="pageTitle" >
+     <property name="font" >
+      <font>
+       <weight>75</weight>
+       <bold>true</bold>
+      </font>
+     </property>
+     <property name="text" >
+      <string>Settings</string>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="Line" name="line" >
+     <property name="orientation" >
+      <enum>Qt::Horizontal</enum>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QScrollArea" name="settingsFrame" >
+     <property name="sizePolicy" >
+      <sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+     <property name="frameShape" >
+      <enum>QFrame::StyledPanel</enum>
+     </property>
+     <property name="frameShadow" >
+      <enum>QFrame::Sunken</enum>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QDialogButtonBox" name="buttonBox" >
+     <property name="orientation" >
+      <enum>Qt::Horizontal</enum>
+     </property>
+     <property name="standardButtons" >
+      <set>QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::NoButton|QDialogButtonBox::Ok|QDialogButtonBox::Reset|QDialogButtonBox::RestoreDefaults</set>
+     </property>
+    </widget>
+   </item>
+  </layout>
+ </widget>
+ <customwidgets>
+  <customwidget>
+   <class>QScrollArea</class>
+   <extends>QFrame</extends>
+   <header>QScrollArea</header>
+   <container>1</container>
+  </customwidget>
+ </customwidgets>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>accepted()</signal>
+   <receiver>SettingsPageDlg</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel" >
+     <x>248</x>
+     <y>254</y>
+    </hint>
+    <hint type="destinationlabel" >
+     <x>157</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>rejected()</signal>
+   <receiver>SettingsPageDlg</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel" >
+     <x>316</x>
+     <y>260</y>
+    </hint>
+    <hint type="destinationlabel" >
+     <x>286</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>