[GRASS-SVN] r68754 - grass/trunk/gui/wxpython/gui_core

svn_grass at osgeo.org svn_grass at osgeo.org
Thu Jun 23 17:48:41 PDT 2016


Author: annakrat
Date: 2016-06-23 17:48:41 -0700 (Thu, 23 Jun 2016)
New Revision: 68754

Modified:
   grass/trunk/gui/wxpython/gui_core/forms.py
Log:
wxGUI: fix escape button to close dialogs and fix keyboard shortcuts on Mac, see #797

Modified: grass/trunk/gui/wxpython/gui_core/forms.py
===================================================================
--- grass/trunk/gui/wxpython/gui_core/forms.py	2016-06-24 00:31:43 UTC (rev 68753)
+++ grass/trunk/gui/wxpython/gui_core/forms.py	2016-06-24 00:48:41 UTC (rev 68754)
@@ -550,7 +550,11 @@
         # buttons
         btnsizer = wx.BoxSizer(orient=wx.HORIZONTAL)
         # cancel
-        self.btn_cancel = wx.Button(parent=self.panel, id=wx.ID_CLOSE)
+        if sys.platform == 'darwin':
+            # stock id automatically adds ctrl-c shortcut to close dialog
+            self.btn_cancel = wx.Button(parent=self.panel, label=_("Close"))
+        else:
+            self.btn_cancel = wx.Button(parent=self.panel, id=wx.ID_CLOSE)
         self.btn_cancel.SetToolTipString(
             _("Close this window without executing the command (Ctrl+Q)"))
         btnsizer.Add(
@@ -562,7 +566,7 @@
         # bind closing to ESC and CTRL+Q
         self.Bind(wx.EVT_MENU, self.OnCancel, id=wx.ID_CLOSE)
         accelTableList = [(wx.ACCEL_NORMAL, wx.WXK_ESCAPE, wx.ID_CLOSE)]
-        accelTableList = [(wx.ACCEL_CTRL, ord('Q'), wx.ID_CLOSE)]
+        accelTableList.append((wx.ACCEL_CTRL, ord('Q'), wx.ID_CLOSE))
         # TODO: bind Ctrl-t for tile windows here (trac #2004)
 
         if self.get_dcmd is not None:  # A callback has been set up
@@ -596,7 +600,11 @@
             accelTableList.append((wx.ACCEL_CTRL, ord('R'), wx.ID_OK))
 
         # copy
-        self.btn_clipboard = wx.Button(parent=self.panel, id=wx.ID_COPY)
+        if sys.platform == 'darwin':
+            # stock id automatically adds ctrl-c shortcut to copy command
+            self.btn_clipboard = wx.Button(parent=self.panel, label=_("Copy"))
+        else:
+            self.btn_clipboard = wx.Button(parent=self.panel, id=wx.ID_COPY)
         self.btn_clipboard.SetToolTipString(
             _("Copy the current command string to the clipboard"))
         btnsizer.Add(item=self.btn_clipboard, proportion=0,



More information about the grass-commit mailing list