]> cloud.milkyroute.net Git - dolphin.git/commitdiff
prevent that the user can open more than one instance of the settings dialog
authorPeter Penz <peter.penz19@gmail.com>
Tue, 13 Jan 2009 18:06:15 +0000 (18:06 +0000)
committerPeter Penz <peter.penz19@gmail.com>
Tue, 13 Jan 2009 18:06:15 +0000 (18:06 +0000)
svn path=/trunk/KDE/kdebase/apps/; revision=910588

src/dolphinmainwindow.cpp
src/dolphinmainwindow.h

index a69e1a37ae14605d93ca79c88c58dd98377cece5..9c55a40f4f82ca7547cb3bc1b6ca44b8dde5a1dd 100644 (file)
@@ -93,7 +93,8 @@ DolphinMainWindow::DolphinMainWindow(int id) :
     m_id(id),
     m_tabIndex(0),
     m_viewTab(),
-    m_actionHandler(0)
+    m_actionHandler(0),
+    m_settingsDialog(0)
 {
     setObjectName("Dolphin#");
 
@@ -701,9 +702,13 @@ void DolphinMainWindow::toggleShowMenuBar()
 
 void DolphinMainWindow::editSettings()
 {
-    DolphinSettingsDialog* dialog = new DolphinSettingsDialog(this);
-    dialog->setAttribute(Qt::WA_DeleteOnClose);
-    dialog->show();
+    if (m_settingsDialog == 0) {
+        m_settingsDialog = new DolphinSettingsDialog(this);
+        m_settingsDialog->setAttribute(Qt::WA_DeleteOnClose);
+        m_settingsDialog->show();
+    } else {
+        m_settingsDialog->raise();
+    }
 }
 
 void DolphinMainWindow::setActiveTab(int index)
index 8ec61d764f3443a7008f4556b43895226a996e77..4220e825f13f1cd5e6d085663c50af10327ce755 100644 (file)
@@ -39,6 +39,7 @@ typedef KIO::FileUndoManager::CommandType CommandType;
 class KAction;
 class DolphinViewActionHandler;
 class DolphinApplication;
+class DolphinSettingsDialog;
 class DolphinViewContainer;
 class KNewMenu;
 class KTabBar;
@@ -434,6 +435,7 @@ private:
     QList<ViewTab> m_viewTab;
 
     DolphinViewActionHandler* m_actionHandler;
+    QPointer<DolphinSettingsDialog> m_settingsDialog;
 };
 
 inline DolphinViewContainer* DolphinMainWindow::activeViewContainer() const