Mercurial > octave
annotate 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 |
rev | line source |
---|---|
31696
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
1 //////////////////////////////////////////////////////////////////////// |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
2 // |
32632
2e484f9f1f18
maint: update Octave Project Developers copyright for the new year
John W. Eaton <jwe@octave.org>
parents:
31771
diff
changeset
|
3 // Copyright (C) 2014-2024 The Octave Project Developers |
31696
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
4 // |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
5 // See the file COPYRIGHT.md in the top-level directory of this |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
6 // distribution or <https://octave.org/copyright/>. |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
7 // |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
8 // This file is part of Octave. |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
9 // |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
10 // Octave is free software: you can redistribute it and/or modify it |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
11 // under the terms of the GNU General Public License as published by |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
12 // the Free Software Foundation, either version 3 of the License, or |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
13 // (at your option) any later version. |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
14 // |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
15 // Octave is distributed in the hope that it will be useful, but |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
16 // WITHOUT ANY WARRANTY; without even the implied warranty of |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
18 // GNU General Public License for more details. |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
19 // |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
20 // You should have received a copy of the GNU General Public License |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
21 // along with Octave; see the file COPYING. If not, see |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
22 // <https://www.gnu.org/licenses/>. |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
23 // |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
24 //////////////////////////////////////////////////////////////////////// |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
25 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
26 #if ! defined (octave_shortcuts_tree_widget_h) |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
27 #define octave_shortcuts_tree_widget_h 1 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
28 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
29 #include <QCheckBox> |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
30 #include <QDialog> |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
31 #include <QKeyEvent> |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
32 #include <QLineEdit> |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
33 #include <QString> |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
34 #include <QTreeWidget> |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
35 #include <QtCore> |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
36 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
37 #include "gui-preferences.h" |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
38 #include "gui-settings.h" |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
39 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
40 OCTAVE_BEGIN_NAMESPACE(octave) |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
41 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
42 class enter_shortcut : public QLineEdit |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
43 { |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
44 Q_OBJECT |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
45 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
46 public: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
47 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
48 enter_shortcut (QWidget *p = nullptr); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
49 |
31771
21f9b34eb893
maint: Eliminate "(void)" in C++ function prototypes/declarations.
Rik <rik@octave.org>
parents:
31708
diff
changeset
|
50 ~enter_shortcut () = default; |
31696
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
51 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
52 virtual void keyPressEvent (QKeyEvent *e); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
53 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
54 public slots: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
55 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
56 void handle_direct_shortcut (int); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
57 void handle_shift_modifier (int); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
58 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
59 private: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
60 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
61 bool m_direct_shortcut; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
62 bool m_shift_modifier; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
63 }; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
64 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
65 class tree_widget_shortcut_item : public QTreeWidgetItem |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
66 { |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
67 public: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
68 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
69 enum |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
70 { |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
71 DESCRIPTION_COLUMN = 0, |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
72 DEFAULT_COLUMN, |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
73 ACTUAL_COLUMN |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
74 }; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
75 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
76 tree_widget_shortcut_item (QTreeWidgetItem *parent, const sc_pref& scpref, |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
77 const QString& actual_text); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
78 |
31771
21f9b34eb893
maint: Eliminate "(void)" in C++ function prototypes/declarations.
Rik <rik@octave.org>
parents:
31708
diff
changeset
|
79 QString settings_key () const; |
31696
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
80 |
31771
21f9b34eb893
maint: Eliminate "(void)" in C++ function prototypes/declarations.
Rik <rik@octave.org>
parents:
31708
diff
changeset
|
81 QString description () const; |
31696
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
82 void set_description (const QString& text); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
83 |
31771
21f9b34eb893
maint: Eliminate "(void)" in C++ function prototypes/declarations.
Rik <rik@octave.org>
parents:
31708
diff
changeset
|
84 QString default_text () const; |
31696
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
85 void set_default_text (const QString& text); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
86 |
31771
21f9b34eb893
maint: Eliminate "(void)" in C++ function prototypes/declarations.
Rik <rik@octave.org>
parents:
31708
diff
changeset
|
87 QString actual_text () const; |
31696
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
88 void set_actual_text (const QString& text); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
89 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
90 private: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
91 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
92 QString m_settings_key; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
93 }; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
94 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
95 class shortcut_edit_dialog : public QDialog |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
96 { |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
97 Q_OBJECT |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
98 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
99 public: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
100 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
101 shortcut_edit_dialog (tree_widget_shortcut_item *shortcut_item, |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
102 QWidget *parent = nullptr); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
103 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
104 public slots: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
105 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
106 void finished (int result); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
107 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
108 signals: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
109 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
110 void set_shortcut (const QString& settings_key, |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
111 const QString& settings_value); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
112 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
113 private: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
114 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
115 tree_widget_shortcut_item *m_shortcut_item; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
116 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
117 enter_shortcut *m_edit_actual; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
118 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
119 QString m_settings_key; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
120 QString m_default_text; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
121 }; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
122 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
123 class shortcuts_tree_widget : public QTreeWidget |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
124 { |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
125 Q_OBJECT |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
126 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
127 public: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
128 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
129 shortcuts_tree_widget (QWidget *parent); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
130 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
131 void import_shortcuts (gui_settings& settings); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
132 |
33414
ec8b3c32effa
allow unbinding GUI shortcuts (bug #65580)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
32632
diff
changeset
|
133 void export_shortcuts (gui_settings& settings, bool full = true); |
31696
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
134 |
31771
21f9b34eb893
maint: Eliminate "(void)" in C++ function prototypes/declarations.
Rik <rik@octave.org>
parents:
31708
diff
changeset
|
135 void set_default_shortcuts (); |
31696
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
136 |
31771
21f9b34eb893
maint: Eliminate "(void)" in C++ function prototypes/declarations.
Rik <rik@octave.org>
parents:
31708
diff
changeset
|
137 void write_settings (); |
31696
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
138 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
139 public slots: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
140 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
141 void edit_selection (QTreeWidgetItem *item, int col); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
142 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
143 void update_widget_value (const QString& settings_key, |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
144 const QString& sc_text); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
145 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
146 private: |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
147 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
148 tree_widget_shortcut_item * get_item (const QString& settings_key); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
149 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
150 void update_settings_value (gui_settings& settings, |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
151 const QString& settings_key); |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
152 }; |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
153 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
154 OCTAVE_END_NAMESPACE(octave) |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
155 |
8fed04d0607c
eliminate shortcut_manager class and revamp shortcut handling
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
156 #endif |