changeset 20076:a00d545c95df

make "select" button on Qt figure window return to default cursor * MouseModeActionGroup.cc (MouseModeActionGroup::actionToggled, MouseModeActionGroup::setMode): Never set state of "select" button to checked.
author John W. Eaton <jwe@octave.org>
date Tue, 14 Apr 2015 14:27:22 -0400
parents 8aa424ffc076
children 69f92e0affd2
files libgui/graphics/MouseModeActionGroup.cc
diffstat 1 files changed, 15 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/libgui/graphics/MouseModeActionGroup.cc	Mon Apr 13 23:41:08 2015 -0400
+++ b/libgui/graphics/MouseModeActionGroup.cc	Tue Apr 14 14:27:22 2015 -0400
@@ -54,7 +54,6 @@
                                  tr ("Select"), this));
 
   m_actions[4]->setEnabled (false);
-  m_actions[5]->setEnabled (false);
 
   foreach (QAction* a, m_actions)
     {
@@ -86,8 +85,14 @@
         {
           m_current = m_actions[i];
           for (int j = 0; j < m_actions.size (); j++)
-            if (j != i)
-              m_actions[j]->setChecked (false);
+            {
+              // SelectMode cancels all the others but the button
+              // doesn't remain highlighed.
+
+              if (j != i || i+1 == SelectMode)
+                m_actions[j]->setChecked (false);
+            }
+
           emit modeChanged (static_cast<MouseMode> (i+1));
         }
     }
@@ -97,7 +102,13 @@
 MouseModeActionGroup::setMode (MouseMode mode)
 {
   for (int i = 0; i < m_actions.size (); i++)
-    m_actions[i]->setChecked (i == mode - 1);
+    m_actions[i]->setChecked (i+1 == mode);
+
+  // SelectMode cancels all the others but the button doesn't remain
+  // highlighed.
+
+  if (mode == SelectMode)
+    m_actions[SelectMode-1]->setChecked (false);
 }
   
 };