diff libgui/src/shortcuts-tree-widget.h @ 33414:ec8b3c32effa stable

allow unbinding GUI shortcuts (bug #65580) * gui-settings.cc (sc_value): if shortcut is not contained in the settings, take the default shortcut, otherwise take contents of settings, even if empty (no shortcut selected for the action); (set_shortcut): use sc_value and set the return value as shortcut for the action, even if empty (shortcut): do not treat empty shortcut as special case * shortcuts-tree-widget.cc (shortcut_edit_dialog): add a clear button, set the current contents of the actual column into the line edit instead of the settings value, use lambda expression instead of separate trivial slot set_default_shortcut; (shortcuts_tree_widget): do not use settings group as now sc_value is used becuase we also want to show active shortcuts that are identical to the default value; (export_shortcuts): only write the shortcut into the settings file if it differs from the default value or if a full export into a user file is desired; (write_settings): call export_shortcuts with full flag false * shortcuts-tree-widget.h: remove slot set_default_shortcut, export-shortcuts with boolean argument if full export or not
author Torsten Lilge <ttl-octave@mailbox.org>
date Sun, 14 Apr 2024 15:14:17 +0200
parents 2e484f9f1f18
children 7f18c537e101
line wrap: on
line diff
--- a/libgui/src/shortcuts-tree-widget.h	Mon Apr 15 16:37:08 2024 +0200
+++ b/libgui/src/shortcuts-tree-widget.h	Sun Apr 14 15:14:17 2024 +0200
@@ -105,8 +105,6 @@
 
   void finished (int result);
 
-  void set_default_shortcut ();
-
 signals:
 
   void set_shortcut (const QString& settings_key,
@@ -132,7 +130,7 @@
 
   void import_shortcuts (gui_settings& settings);
 
-  void export_shortcuts (gui_settings& settings);
+  void export_shortcuts (gui_settings& settings, bool full = true);
 
   void set_default_shortcuts ();