diff gui/src/workspace-view.cc @ 15164:bc801a44bb1f

follow Octave pattern for resource_manager singleton * resource-manager.h, resource-manager.cc: Don't expose pointer to instance. Use static forwarding functions to access instance and perform actions. * files-dockwidget.cc, file-editor-tab.cc, lexer-octave-gui.cc, main-window.cc, octave-gui.cc, settings-dialog.cc, workspace-view.cc: Use resource_manager::METHOD instead of resource_manager::instance()->METHOD.
author John W. Eaton <jwe@octave.org>
date Mon, 13 Aug 2012 12:16:26 -0400
parents 2d6766e93f7b
children
line wrap: on
line diff
--- a/gui/src/workspace-view.cc	Mon Aug 13 10:32:19 2012 -0400
+++ b/gui/src/workspace-view.cc	Mon Aug 13 12:16:26 2012 -0400
@@ -50,10 +50,15 @@
   widget ()->setLayout (layout);
 
   // Initialize collapse/expand state of the workspace subcategories.
-  _explicit_collapse.local      = resource_manager::instance ()->get_settings ()->value ("workspaceview/local_collapsed", false).toBool ();
-  _explicit_collapse.global     = resource_manager::instance ()->get_settings ()->value ("workspaceview/global_collapsed", false).toBool ();;
-  _explicit_collapse.persistent = resource_manager::instance ()->get_settings ()->value ("workspaceview/persistent_collapsed", false).toBool ();;
-  _explicit_collapse.hidden     = resource_manager::instance ()->get_settings ()->value ("workspaceview/hidden_collapsed", false).toBool ();;
+
+  QSettings *settings = resource_manager::get_settings ();
+
+  // FIXME -- what should happen if settings is 0?
+
+  _explicit_collapse.local      = settings->value ("workspaceview/local_collapsed", false).toBool ();
+  _explicit_collapse.global     = settings->value ("workspaceview/global_collapsed", false).toBool ();;
+  _explicit_collapse.persistent = settings->value ("workspaceview/persistent_collapsed", false).toBool ();;
+  _explicit_collapse.hidden     = settings->value ("workspaceview/hidden_collapsed", false).toBool ();;
 
   // Connect signals and slots.
   connect (this, SIGNAL (visibilityChanged (bool)),
@@ -74,10 +79,14 @@
 
 workspace_view::~workspace_view ()
 {
-  resource_manager::instance ()->get_settings ()->setValue("workspaceview/local_collapsed", _explicit_collapse.local);
-  resource_manager::instance ()->get_settings ()->setValue("workspaceview/global_collapsed", _explicit_collapse.global);
-  resource_manager::instance ()->get_settings ()->setValue("workspaceview/persistent_collapsed", _explicit_collapse.persistent);
-  resource_manager::instance ()->get_settings ()->setValue("workspaceview/hidden_collapsed", _explicit_collapse.hidden);
+  QSettings *settings = resource_manager::get_settings ();
+
+  // FIXME -- what should happen if settings is 0?
+
+  settings->setValue("workspaceview/local_collapsed", _explicit_collapse.local);
+  settings->setValue("workspaceview/global_collapsed", _explicit_collapse.global);
+  settings->setValue("workspaceview/persistent_collapsed", _explicit_collapse.persistent);
+  settings->setValue("workspaceview/hidden_collapsed", _explicit_collapse.hidden);
 }
 
 void