Mercurial > octave
annotate libgui/src/dw-main-window.cc @ 31619:ad014fc78bd6
use individual local gui_settings objects
Previously, we created a single gui_settings object (derived from
QSettings) and accessed it from the resource_manager object. That
design is not necessary and is not the way QSettings was designed to
be used. Instead of managing a single object, we should be using
individual QSettings objects where needed. Each individual QSettings
object manages thread-safe access to a single global collection of
settings. The Qt docs say that operations on QSettings are not thread
safe, but that means that you can't create a QSettings object in one
thread and use it in another without some locking. I'm not sure
whether we were doing that correctly, but with this change it no
longer matters. Each QSettings object does perform locking when
reading or writing the underlying global data.
* resource-manager.h, resource-manager.cc
(resource_manager::m_settings): Delete data member.
(resource_manager::get_settings): Delete.
* annotation-dialog.cc, QTerminal.cc, QTerminal.h, command-widget.cc,
command-widget.h, community-news.cc, dialog.cc,
documentation-bookmarks.cc, documentation-bookmarks.h,
documentation-dock-widget.cc, documentation-dock-widget.h,
documentation.cc, documentation.h, dw-main-window.cc,
dw-main-window.h, external-editor-interface.cc, files-dock-widget.cc,
files-dock-widget.h, find-files-dialog.cc, history-dock-widget.cc,
history-dock-widget.h, file-editor-interface.h, file-editor-tab.cc,
file-editor-tab.h, file-editor.cc, file-editor.h, find-dialog.cc,
octave-qscintilla.cc, main-window.cc, main-window.h, news-reader.cc,
octave-dock-widget.cc, octave-dock-widget.h, qt-interpreter-events.cc,
qt-interpreter-events.h, release-notes.cc, resource-manager.cc,
resource-manager.h, set-path-dialog.cc, settings-dialog.cc,
settings-dialog.h, shortcut-manager.cc, shortcut-manager.h,
terminal-dock-widget.cc, terminal-dock-widget.h, variable-editor.cc,
variable-editor.h, welcome-wizard.cc, workspace-model.cc,
workspace-model.h, workspace-view.cc: Use local gui_settings objects
instead of accessing a pointer to a single gui_settings object owned
by the resource_manager object.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 02 Dec 2022 14:23:53 -0500 |
parents | 796f54d4ddbf |
children | 0645ea65ca6b |
rev | line source |
---|---|
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
1 //////////////////////////////////////////////////////////////////////// |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
2 // |
30564
796f54d4ddbf
update Octave Project Developers copyright for the new year
John W. Eaton <jwe@octave.org>
parents:
29358
diff
changeset
|
3 // Copyright (C) 2013-2022 The Octave Project Developers |
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
4 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
5 // See the file COPYRIGHT.md in the top-level directory of this |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
6 // distribution or <https://octave.org/copyright/>. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
7 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
8 // This file is part of Octave. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
9 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
10 // Octave is free software: you can redistribute it and/or modify it |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
11 // under the terms of the GNU General Public License as published by |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
12 // the Free Software Foundation, either version 3 of the License, or |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
13 // (at your option) any later version. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
14 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
15 // Octave is distributed in the hope that it will be useful, but |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
16 // WITHOUT ANY WARRANTY; without even the implied warranty of |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
18 // GNU General Public License for more details. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
19 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
20 // You should have received a copy of the GNU General Public License |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
21 // along with Octave; see the file COPYING. If not, see |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
22 // <https://www.gnu.org/licenses/>. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
23 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
24 //////////////////////////////////////////////////////////////////////// |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
25 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
26 /* This is the main window derived from QMainWindow for being used |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
27 as the main window in dock widgets like the variable editor or |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
28 the file editor |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
29 */ |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
30 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
31 #if defined (HAVE_CONFIG_H) |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
32 # include "config.h" |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
33 #endif |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
34 |
27412
da1f59fe04b3
try to use consitent ordering for include files in libgui sources
John W. Eaton <jwe@octave.org>
parents:
27277
diff
changeset
|
35 #include <QDockWidget> |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
36 #include <QMenu> |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
37 |
27412
da1f59fe04b3
try to use consitent ordering for include files in libgui sources
John W. Eaton <jwe@octave.org>
parents:
27277
diff
changeset
|
38 #include "dw-main-window.h" |
31619
ad014fc78bd6
use individual local gui_settings objects
John W. Eaton <jwe@octave.org>
parents:
30564
diff
changeset
|
39 #include "gui-preferences-sc.h" |
27629
8b6e928e0705
in GUI objects, store reference to base_qobject instead of resource_manager
John W. Eaton <jwe@octave.org>
parents:
27620
diff
changeset
|
40 #include "octave-qobject.h" |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
41 #include "shortcut-manager.h" |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
42 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
43 namespace octave |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
44 { |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
45 |
27629
8b6e928e0705
in GUI objects, store reference to base_qobject instead of resource_manager
John W. Eaton <jwe@octave.org>
parents:
27620
diff
changeset
|
46 dw_main_window::dw_main_window (base_qobject& oct_qobj, QWidget *p) |
8b6e928e0705
in GUI objects, store reference to base_qobject instead of resource_manager
John W. Eaton <jwe@octave.org>
parents:
27620
diff
changeset
|
47 : QMainWindow (p), m_octave_qobj (oct_qobj) |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
48 { |
27629
8b6e928e0705
in GUI objects, store reference to base_qobject instead of resource_manager
John W. Eaton <jwe@octave.org>
parents:
27620
diff
changeset
|
49 resource_manager& rmgr = m_octave_qobj.get_resource_manager (); |
8b6e928e0705
in GUI objects, store reference to base_qobject instead of resource_manager
John W. Eaton <jwe@octave.org>
parents:
27620
diff
changeset
|
50 |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
51 // Adding the actions for closing the dock widgets |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
52 m_close_action |
27629
8b6e928e0705
in GUI objects, store reference to base_qobject instead of resource_manager
John W. Eaton <jwe@octave.org>
parents:
27620
diff
changeset
|
53 = add_action (nullptr, rmgr.icon ("window-close", false), |
8b6e928e0705
in GUI objects, store reference to base_qobject instead of resource_manager
John W. Eaton <jwe@octave.org>
parents:
27620
diff
changeset
|
54 tr ("&Close"), SLOT (request_close ()), this); |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
55 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
56 m_close_all_action |
27629
8b6e928e0705
in GUI objects, store reference to base_qobject instead of resource_manager
John W. Eaton <jwe@octave.org>
parents:
27620
diff
changeset
|
57 = add_action (nullptr, rmgr.icon ("window-close", false), |
8b6e928e0705
in GUI objects, store reference to base_qobject instead of resource_manager
John W. Eaton <jwe@octave.org>
parents:
27620
diff
changeset
|
58 tr ("Close &All"), SLOT (request_close_all ()), this); |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
59 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
60 m_close_others_action |
27629
8b6e928e0705
in GUI objects, store reference to base_qobject instead of resource_manager
John W. Eaton <jwe@octave.org>
parents:
27620
diff
changeset
|
61 = add_action (nullptr, rmgr.icon ("window-close", false), |
8b6e928e0705
in GUI objects, store reference to base_qobject instead of resource_manager
John W. Eaton <jwe@octave.org>
parents:
27620
diff
changeset
|
62 tr ("Close &Other"), SLOT (request_close_other ()), this); |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
63 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
64 m_switch_left_action |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
65 = add_action (nullptr, QIcon (), tr ("Switch to &Left Widget"), |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
66 SLOT (request_switch_left ()), this); |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
67 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
68 m_switch_right_action |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
69 = add_action (nullptr, QIcon (), tr ("Switch to &Right Widget"), |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
70 SLOT (request_switch_right ()), this); |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
71 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
72 // The list of actions for floating widgets |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
73 m_actions_list << m_close_action; |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
74 m_actions_list << m_close_others_action; |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
75 m_actions_list << m_close_all_action; |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
76 m_actions_list << m_switch_left_action; |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
77 m_actions_list << m_switch_right_action; |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
78 |
31619
ad014fc78bd6
use individual local gui_settings objects
John W. Eaton <jwe@octave.org>
parents:
30564
diff
changeset
|
79 notice_settings (); |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
80 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
81 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
82 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
83 // Re-implementing the popup menu of the main window |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
84 QMenu *dw_main_window::createPopupMenu () |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
85 { |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
86 QList<QAction *> new_actions = QList<QAction *> (); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
87 new_actions.append (m_close_action); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
88 new_actions.append (m_close_others_action); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
89 new_actions.append (m_close_all_action); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
90 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
91 QMenu *menu = QMainWindow::createPopupMenu (); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
92 QList<QAction *> actions = menu->actions(); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
93 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
94 if (actions.length () > 0) |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
95 { |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
96 QAction *sep = menu->insertSeparator (actions.at (0)); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
97 menu->insertActions (sep, new_actions); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
98 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
99 else |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
100 menu->addActions (new_actions); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
101 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
102 return menu; |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
103 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
104 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
105 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
106 // Adding an action to the main window |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
107 QAction * dw_main_window::add_action (QMenu *menu, const QIcon& icon, |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
108 const QString& text, const char *member, |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
109 QWidget *receiver) |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
110 { |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
111 QAction *a; |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
112 QWidget *r = this; |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
113 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
114 if (receiver != nullptr) |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
115 r = receiver; |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
116 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
117 if (menu) |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
118 a = menu->addAction (icon, text, r, member); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
119 else |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
120 { |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
121 a = new QAction (icon, text, this); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
122 a->setEnabled (true); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
123 connect (a, SIGNAL (triggered ()), r, member); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
124 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
125 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
126 addAction (a); // important for shortcut context |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
127 a->setShortcutContext (Qt::WidgetWithChildrenShortcut); |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
128 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
129 return a; |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
130 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
131 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
132 // Update the settings |
31619
ad014fc78bd6
use individual local gui_settings objects
John W. Eaton <jwe@octave.org>
parents:
30564
diff
changeset
|
133 void dw_main_window::notice_settings (void) |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
134 { |
27630
262cdd0f7619
don't use singleton pattern for shortcut manager in GUI
John W. Eaton <jwe@octave.org>
parents:
27629
diff
changeset
|
135 shortcut_manager& scmgr = m_octave_qobj.get_shortcut_manager (); |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
136 |
27818
fa0582694fda
replace literal strings by symbolic constants for shortcut preferences
Torsten Lilge <ttl-octave@mailbox.org>
parents:
27630
diff
changeset
|
137 scmgr.set_shortcut (m_close_action, sc_edit_file_close); |
fa0582694fda
replace literal strings by symbolic constants for shortcut preferences
Torsten Lilge <ttl-octave@mailbox.org>
parents:
27630
diff
changeset
|
138 scmgr.set_shortcut (m_close_all_action, sc_edit_file_close_all); |
fa0582694fda
replace literal strings by symbolic constants for shortcut preferences
Torsten Lilge <ttl-octave@mailbox.org>
parents:
27630
diff
changeset
|
139 scmgr.set_shortcut (m_close_others_action, sc_edit_file_close_other); |
27630
262cdd0f7619
don't use singleton pattern for shortcut manager in GUI
John W. Eaton <jwe@octave.org>
parents:
27629
diff
changeset
|
140 |
27818
fa0582694fda
replace literal strings by symbolic constants for shortcut preferences
Torsten Lilge <ttl-octave@mailbox.org>
parents:
27630
diff
changeset
|
141 scmgr.set_shortcut (m_switch_left_action, sc_edit_tabs_switch_left_tab); |
fa0582694fda
replace literal strings by symbolic constants for shortcut preferences
Torsten Lilge <ttl-octave@mailbox.org>
parents:
27630
diff
changeset
|
142 scmgr.set_shortcut (m_switch_right_action, sc_edit_tabs_switch_right_tab); |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
143 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
144 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
145 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
146 // Slots for handling actions |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
147 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
148 // Close current widget |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
149 void dw_main_window::request_close () |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
150 { |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
151 for (int i = 0; i < m_dw_list.length (); i++) |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
152 { |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
153 if (m_dw_list.at (i)->hasFocus ()) |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
154 { |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
155 m_dw_list.at (i)->close (); |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
156 if (i > 0) |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
157 m_dw_list.at (i-1)->setFocus (); |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
158 break; |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
159 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
160 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
161 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
162 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
163 // Close other widgets |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
164 void dw_main_window::request_close_other () |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
165 { |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
166 for (int i = m_dw_list.length () - 1; i >= 0; i--) |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
167 { |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
168 if (! m_dw_list.at (i)->hasFocus ()) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
169 m_dw_list.at (i)->close (); |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
170 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
171 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
172 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
173 // Close all widgets |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
174 void dw_main_window::request_close_all () |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
175 { |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
176 for (int i = m_dw_list.length () - 1; i >= 0; i--) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
177 m_dw_list.at (i)->close (); |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
178 } |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
179 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
180 // Switch to left widget |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
181 void dw_main_window::request_switch_left () |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
182 { |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
183 request_switch (-1); |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
184 } |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
185 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
186 // Switch to right widget |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
187 void dw_main_window::request_switch_right () |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
188 { |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
189 request_switch (1); |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
190 } |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
191 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
192 // Switch to left/right widget |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
193 void dw_main_window::request_switch (int direction) |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
194 { |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
195 int active = -1, next; |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
196 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
197 for (int i = m_dw_list.length () - 1; i >= 0; i--) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
198 { |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
199 if (m_dw_list.at (i)->hasFocus ()) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
200 { |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
201 active = i; |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
202 break; |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
203 } |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
204 } |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
205 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
206 if (active == -1) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
207 return; |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
208 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
209 if (direction == -1 && active == 0) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
210 next = m_dw_list.length () - 1; |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
211 else if (direction == 1 && active == m_dw_list.length () - 1) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
212 next = 0; |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
213 else |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
214 next = active + direction; |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
215 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
216 m_dw_list.at (next)->raise (); |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
217 m_dw_list.at (next)->activateWindow (); |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
218 m_dw_list.at (next)->setFocus (); |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
219 } |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
220 |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
221 |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
222 // Reimplemented Event |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
223 bool dw_main_window::event (QEvent *ev) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
224 { |
27277
db687716fed6
style fixes: generally aim to break long lines before operators, not after
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
225 if (ev->type () == QEvent::ChildAdded |
db687716fed6
style fixes: generally aim to break long lines before operators, not after
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
226 || ev->type () == QEvent::ChildRemoved) |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
227 { |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
228 // Adding or Removing a child indicates that a dock widget was |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
229 // created or removed. |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
230 // In all cases, the list of dock widgets has to be updated. |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
231 m_dw_list = findChildren<QDockWidget *>(); |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
232 } |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
233 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
234 if (ev->type () == QEvent::StyleChange) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
235 { |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
236 // This might indicate un- or re-docking a widget: Make sure |
27893
465ac679e976
Fix typos and grammar errors in comments in libgui (patch #9790)
Andrew Janke <andrew@apjanke.net>
parents:
27818
diff
changeset
|
237 // floating widgets get a copy of our actions |
25411
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
238 for (int i = m_dw_list.length () - 1; i >= 0; i--) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
239 { |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
240 // First remove possibly existing actions |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
241 for (int j = m_actions_list.length () - 1; j >0; j--) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
242 m_dw_list.at (i)->removeAction (m_actions_list.at (j)); |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
243 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
244 // Then add our actions for floating widgets |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
245 if (m_dw_list.at (i)->isFloating ()) |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
246 m_dw_list.at (i)->addActions (m_actions_list); |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
247 } |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
248 } |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
249 |
ad3d018e595f
provide shortcuts for switching between widgets in var. editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
25398
diff
changeset
|
250 return QMainWindow::event (ev); |
25398
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
251 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
252 |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
253 } |
a78e5b8d5ee7
provide shortcuts for closing widgets of the variable editor (bug #53002)
Torsten <mttl@mailbox.org>
parents:
diff
changeset
|
254 |