annotate libgui/src/qt-interpreter-events.h @ 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 9c0099048264
children 431f80aba37a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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: 30195
diff changeset
3 // Copyright (C) 2011-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 ////////////////////////////////////////////////////////////////////////
16415
70032fc70bee move octave-link and octave-event-listener classes to libinterp
John W. Eaton <jwe@octave.org>
parents:
diff changeset
25
27263
99aa1bcb8848 rename octave_link and octave_link_events classes, move inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 27260
diff changeset
26 #if ! defined (octave_qt_interpreter_events_h)
99aa1bcb8848 rename octave_link and octave_link_events classes, move inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 27260
diff changeset
27 #define octave_qt_interpreter_events_h 1
16415
70032fc70bee move octave-link and octave-event-listener classes to libinterp
John W. Eaton <jwe@octave.org>
parents:
diff changeset
28
16468
0f143f68078d use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents: 16443
diff changeset
29 #include <list>
16415
70032fc70bee move octave-link and octave-event-listener classes to libinterp
John W. Eaton <jwe@octave.org>
parents:
diff changeset
30 #include <string>
70032fc70bee move octave-link and octave-event-listener classes to libinterp
John W. Eaton <jwe@octave.org>
parents:
diff changeset
31
16468
0f143f68078d use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents: 16443
diff changeset
32 #include <QList>
27412
da1f59fe04b3 try to use consitent ordering for include files in libgui sources
John W. Eaton <jwe@octave.org>
parents: 27409
diff changeset
33 #include <QMutex>
16423
04c4dd7fd3ce use signal for octave_link::update_dbstop_marker
John W. Eaton <jwe@octave.org>
parents: 16422
diff changeset
34 #include <QObject>
04c4dd7fd3ce use signal for octave_link::update_dbstop_marker
John W. Eaton <jwe@octave.org>
parents: 16422
diff changeset
35 #include <QString>
19714
21015ca26566 Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents: 19697
diff changeset
36 #include <QWaitCondition>
16423
04c4dd7fd3ce use signal for octave_link::update_dbstop_marker
John W. Eaton <jwe@octave.org>
parents: 16422
diff changeset
37
27611
0495b64288f7 use new gui_settings class instead of using QSettings directly
John W. Eaton <jwe@octave.org>
parents: 27602
diff changeset
38 #include "dialog.h"
16415
70032fc70bee move octave-link and octave-event-listener classes to libinterp
John W. Eaton <jwe@octave.org>
parents:
diff changeset
39
27611
0495b64288f7 use new gui_settings class instead of using QSettings directly
John W. Eaton <jwe@octave.org>
parents: 27602
diff changeset
40 #include "event-manager.h"
27553
9b72eb111b7e eliminate global uiwidget_creator variable
John W. Eaton <jwe@octave.org>
parents: 27442
diff changeset
41
17824
86e8dbccf7c7 show when variables are complex in workspace view (bug #40445)
John W. Eaton <jwe@octave.org>
parents: 17790
diff changeset
42 // Defined for purposes of sending QList<int> as part of signal.
86e8dbccf7c7 show when variables are complex in workspace view (bug #40445)
John W. Eaton <jwe@octave.org>
parents: 17790
diff changeset
43 typedef QList<int> QIntList;
86e8dbccf7c7 show when variables are complex in workspace view (bug #40445)
John W. Eaton <jwe@octave.org>
parents: 17790
diff changeset
44
24641
7d177be54c37 pass variable value to variable editor in addition to variable name
John W. Eaton <jwe@octave.org>
parents: 24632
diff changeset
45 class octave_value;
7d177be54c37 pass variable value to variable editor in addition to variable name
John W. Eaton <jwe@octave.org>
parents: 24632
diff changeset
46
24645
f61502510d08 restore ability to select variables for editing from workspace widget
John W. Eaton <jwe@octave.org>
parents: 24641
diff changeset
47 namespace octave
f61502510d08 restore ability to select variables for editing from workspace widget
John W. Eaton <jwe@octave.org>
parents: 24641
diff changeset
48 {
27588
f0e3f3e28a8e move qt_interpreter_events object from interpreter_qobject to octave_qobject
John W. Eaton <jwe@octave.org>
parents: 27553
diff changeset
49 class base_qobject;
f0e3f3e28a8e move qt_interpreter_events object from interpreter_qobject to octave_qobject
John W. Eaton <jwe@octave.org>
parents: 27553
diff changeset
50
27285
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
51 // The functions in this class are not normally called directly, but
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
52 // are invoked from the Octave interpreter thead by methods in the
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
53 // event_manager class. In most cases, they should only translate
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
54 // data from the types typically used in the interpreter to whatever
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
55 // is required by the GUI (for example, std::string to QString) and
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
56 // emit a Qt signal.
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
57 //
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
58 // The use of Qt signals provides a thread-safe way for the Octave
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
59 // interpreter to notify the GUI of events (directory or workspace has
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
60 // changed, for example) or to request that the GUI perform actions
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
61 // (display a dialog, for example).
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
62 //
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
63 // By using this class as a wrapper around the Qt signals, we maintain
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
64 // a separation between the Octave interpreter and any specific GUI
6c438195f4e0 internal documentation for interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27284
diff changeset
65 // toolkit (no Qt headers are used in the Octave interpreter sources).
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
66
27263
99aa1bcb8848 rename octave_link and octave_link_events classes, move inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 27260
diff changeset
67 class qt_interpreter_events : public QObject, public interpreter_events
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
68 {
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
69 Q_OBJECT
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
70
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
71 public:
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
72
27588
f0e3f3e28a8e move qt_interpreter_events object from interpreter_qobject to octave_qobject
John W. Eaton <jwe@octave.org>
parents: 27553
diff changeset
73 qt_interpreter_events (base_qobject& oct_qobj);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
74
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
75 // No copying!
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
76
27263
99aa1bcb8848 rename octave_link and octave_link_events classes, move inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 27260
diff changeset
77 qt_interpreter_events (const qt_interpreter_events&) = delete;
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
78
27263
99aa1bcb8848 rename octave_link and octave_link_events classes, move inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 27260
diff changeset
79 qt_interpreter_events& operator = (const qt_interpreter_events&) = delete;
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
80
27263
99aa1bcb8848 rename octave_link and octave_link_events classes, move inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 27260
diff changeset
81 ~qt_interpreter_events (void) = default;
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
82
29503
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
83 // Note: these functions currently do nothing with the old terminal
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
84 // widget.
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
85 void start_gui (bool gui_app = false);
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
86 void close_gui (void);
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
87
30195
a7981aa5822b event-manager: Add function to signal valid implementation of GUI dialogs (bug #60980).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29836
diff changeset
88 bool have_dialogs (void) const { return true; }
a7981aa5822b event-manager: Add function to signal valid implementation of GUI dialogs (bug #60980).
Markus Mützel <markus.muetzel@gmx.de>
parents: 29836
diff changeset
89
27442
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
90 std::list<std::string>
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
91 file_dialog (const filter_list& filter, const std::string& title,
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
92 const std::string& filename, const std::string& pathname,
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
93 const std::string& multimode);
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
94
27442
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
95 std::list<std::string>
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
96 input_dialog (const std::list<std::string>& prompt,
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
97 const std::string& title, const std::list<float>& nr,
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
98 const std::list<float>& nc,
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
99 const std::list<std::string>& defaults);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
100
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
101 std::pair<std::list<int>, int>
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
102 list_dialog (const std::list<std::string>& list,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
103 const std::string& mode, int width, int height,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
104 const std::list<int>& initial_value,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
105 const std::string& name,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
106 const std::list<std::string>& prompt,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
107 const std::string& ok_string,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
108 const std::string& cancel_string);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
109
27442
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
110 std::string
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
111 question_dialog (const std::string& msg, const std::string& title,
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
112 const std::string& btn1, const std::string& btn2,
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
113 const std::string& btn3, const std::string& btndef);
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
114
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
115 void update_path_dialog (void);
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
116
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
117 void show_preferences (void);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
118
27602
ba317c535adb define new __event_manager_apply_preferences__ function
John W. Eaton <jwe@octave.org>
parents: 27601
diff changeset
119 void apply_preferences (void);
ba317c535adb define new __event_manager_apply_preferences__ function
John W. Eaton <jwe@octave.org>
parents: 27601
diff changeset
120
29787
b4d2fa28d1d4 allow terminal window to be opened from command line
John W. Eaton <jwe@octave.org>
parents: 29613
diff changeset
121 void show_terminal_window (void);
b4d2fa28d1d4 allow terminal window to be opened from command line
John W. Eaton <jwe@octave.org>
parents: 29613
diff changeset
122
29613
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
123 bool show_documentation (const std::string& file);
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
124
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
125 void show_file_browser (void);
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
126
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
127 void show_command_history (void);
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
128
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
129 void show_workspace (void);
27442
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
130
29835
a946d742fb97 allow community news window to be opened from command line
John W. Eaton <jwe@octave.org>
parents: 29787
diff changeset
131 void show_community_news (int serial);
29836
56465c0739fa allow release notes window to be opened from command line
John W. Eaton <jwe@octave.org>
parents: 29835
diff changeset
132 void show_release_notes (void);
29835
a946d742fb97 allow community news window to be opened from command line
John W. Eaton <jwe@octave.org>
parents: 29787
diff changeset
133
27442
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
134 bool edit_file (const std::string& file);
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
135
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
136 void edit_variable (const std::string& name, const octave_value& val);
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
137
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
138 bool confirm_shutdown (void);
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
139
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
140 bool prompt_new_edit_file (const std::string& file);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
141
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
142 int debug_cd_or_addpath_error (const std::string& file,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
143 const std::string& dir,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
144 bool addpath_option);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
145
27442
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
146 uint8NDArray get_named_icon (const std::string& icon_name);
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
147
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
148 std::string gui_preference (const std::string& key,
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
149 const std::string& value);
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
150
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
151 bool copy_image_to_clipboard (const std::string& file);
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
152
27669
271b5cd640d7 Add functions to show GUI windows (bug #57213)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents: 27643
diff changeset
153 void focus_window (const std::string win_name);
271b5cd640d7 Add functions to show GUI windows (bug #57213)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents: 27643
diff changeset
154
27442
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
155 void execute_command_in_terminal (const std::string& command);
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
156
29613
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
157 void register_documentation (const std::string& file);
27442
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
158
29613
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
159 void unregister_documentation (const std::string& file);
27442
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
160
29503
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
161 // Note: this function currently does nothing with the old terminal
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
162 // widget.
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
163 void interpreter_output (const std::string& msg);
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
164
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
165 void display_exception (const execution_exception& ee, bool beep);
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
166
29057
450920c987b8 update profiler status in gui from interpreter
Torsten Lilge <ttl-octave@mailbox.org>
parents: 29001
diff changeset
167 void gui_status_update (const std::string& feature, const std::string& status);
450920c987b8 update profiler status in gui from interpreter
Torsten Lilge <ttl-octave@mailbox.org>
parents: 29001
diff changeset
168
28788
aba2c4eadb83 add functions of loaded packages to auto-completion list (bug #56207)
Torsten Lilge <ttl-octave@mailbox.org>
parents: 27923
diff changeset
169 void update_gui_lexer (void);
aba2c4eadb83 add functions of loaded packages to auto-completion list (bug #56207)
Torsten Lilge <ttl-octave@mailbox.org>
parents: 27923
diff changeset
170
27442
6e4519df0be2 group functions by category in interpreter_events and event_manager classes
John W. Eaton <jwe@octave.org>
parents: 27412
diff changeset
171 void directory_changed (const std::string& dir);
27311
0040b7668518 update load path dialog when path is modified via console
Torsten Lilge <ttl-octave@mailbox.org>
parents: 27285
diff changeset
172
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
173 void file_remove (const std::string& old_name,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
174 const std::string& new_name);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
175
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
176 void file_renamed (bool load_new = true);
25742
d3c6de326bae close/reload editor tab when file is (re)moved in gui terminal (bug #43922)
Torsten <mttl@mailbox.org>
parents: 25678
diff changeset
177
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
178 void set_workspace (bool top_level, bool debug,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
179 const symbol_info_list& syminfo,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
180 bool update_variable_editor);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
181
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
182 void clear_workspace (void);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
183
29503
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
184 void update_prompt (const std::string& prompt);
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
185
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
186 void set_history (const string_vector& hist);
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
187
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
188 void append_history (const std::string& hist_entry);
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
189
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
190 void clear_history (void);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
191
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
192 void pre_input_event (void);
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
193
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
194 void post_input_event (void);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
195
27392
820a87b87c01 clean up use of interpreter in qt_interpreter_events::enter_debugger_event
John W. Eaton <jwe@octave.org>
parents: 27311
diff changeset
196 void enter_debugger_event (const std::string& fcn_name,
820a87b87c01 clean up use of interpreter in qt_interpreter_events::enter_debugger_event
John W. Eaton <jwe@octave.org>
parents: 27311
diff changeset
197 const std::string& fcn_file_name, int line);
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
198
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
199 void execute_in_debugger_event (const std::string& file, int line);
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
200
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
201 void exit_debugger_event (void);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
202
27284
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
203 void update_breakpoint (bool insert, const std::string& file, int line,
1a8762e5662b remove "do_" prefix from interpreter_events class methods
John W. Eaton <jwe@octave.org>
parents: 27263
diff changeset
204 const std::string& cond);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
205
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
206 void lock (void) { m_mutex.lock (); }
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
207
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
208 void wait (void) { m_waitcondition.wait (&m_mutex); }
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
209
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
210 void unlock (void) { m_mutex.unlock (); }
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
211
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
212 void wake_all (void) { m_waitcondition.wakeAll (); }
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
213
27588
f0e3f3e28a8e move qt_interpreter_events object from interpreter_qobject to octave_qobject
John W. Eaton <jwe@octave.org>
parents: 27553
diff changeset
214 public slots:
f0e3f3e28a8e move qt_interpreter_events object from interpreter_qobject to octave_qobject
John W. Eaton <jwe@octave.org>
parents: 27553
diff changeset
215
f0e3f3e28a8e move qt_interpreter_events object from interpreter_qobject to octave_qobject
John W. Eaton <jwe@octave.org>
parents: 27553
diff changeset
216 void confirm_shutdown_octave (void);
f0e3f3e28a8e move qt_interpreter_events object from interpreter_qobject to octave_qobject
John W. Eaton <jwe@octave.org>
parents: 27553
diff changeset
217
27599
ada24a1979c0 improve thread safety of qt_interpreter_events::get_named_icon
John W. Eaton <jwe@octave.org>
parents: 27590
diff changeset
218 void get_named_icon_slot (const QString& name);
ada24a1979c0 improve thread safety of qt_interpreter_events::get_named_icon
John W. Eaton <jwe@octave.org>
parents: 27590
diff changeset
219
27601
7a748f7545c9 improve thread safety of qt_interpreter_events::gui_preference
John W. Eaton <jwe@octave.org>
parents: 27600
diff changeset
220 void gui_preference_slot (const QString& key, const QString& value);
7a748f7545c9 improve thread safety of qt_interpreter_events::gui_preference
John W. Eaton <jwe@octave.org>
parents: 27600
diff changeset
221
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
222 signals:
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
223
29503
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
224 // Note: these signals are not currently used by the old terminal widget.
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
225 void start_gui_signal (bool gui_app);
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
226 void close_gui_signal (void);
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
227
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
228 void copy_image_to_clipboard_signal (const QString& file, bool remove_file);
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
229
27669
271b5cd640d7 Add functions to show GUI windows (bug #57213)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents: 27643
diff changeset
230 void focus_window_signal (const QString& win_name);
271b5cd640d7 Add functions to show GUI windows (bug #57213)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents: 27643
diff changeset
231
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
232 void edit_file_signal (const QString& file);
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
233
27409
a0d49e55acae rename change_directory to directory_changed in event manager
John W. Eaton <jwe@octave.org>
parents: 27396
diff changeset
234 void directory_changed_signal (const QString& dir);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
235
27311
0040b7668518 update load path dialog when path is modified via console
Torsten Lilge <ttl-octave@mailbox.org>
parents: 27285
diff changeset
236 void update_path_dialog_signal (void);
0040b7668518 update load path dialog when path is modified via console
Torsten Lilge <ttl-octave@mailbox.org>
parents: 27285
diff changeset
237
25742
d3c6de326bae close/reload editor tab when file is (re)moved in gui terminal (bug #43922)
Torsten <mttl@mailbox.org>
parents: 25678
diff changeset
238 void file_remove_signal (const QString& old_name, const QString& new_name);
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
239
25742
d3c6de326bae close/reload editor tab when file is (re)moved in gui terminal (bug #43922)
Torsten <mttl@mailbox.org>
parents: 25678
diff changeset
240 void file_renamed_signal (bool load_new);
d3c6de326bae close/reload editor tab when file is (re)moved in gui terminal (bug #43922)
Torsten <mttl@mailbox.org>
parents: 25678
diff changeset
241
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
242 void execute_command_in_terminal_signal (const QString& command);
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
243
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
244 void set_workspace_signal (bool top_level, bool debug,
26117
a6df420457ac use symbol_info_list instead of symbol_scope to pass workspace info to gui
John W. Eaton <jwe@octave.org>
parents: 25940
diff changeset
245 const symbol_info_list& syminfo);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
246
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
247 void clear_workspace_signal (void);
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
248
29503
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
249 void update_prompt_signal (const QString& prompt);
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
250
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
251 void set_history_signal (const QStringList& hist);
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
252
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
253 void append_history_signal (const QString& hist_entry);
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
254
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
255 void clear_history_signal (void);
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
256
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
257 void enter_debugger_signal (void);
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
258
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
259 void exit_debugger_signal (void);
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
260
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
261 void update_breakpoint_marker_signal (bool insert, const QString& file,
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
262 int line, const QString& cond);
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
263
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
264 void insert_debugger_pointer_signal (const QString&, int);
27260
5ac60319575b separate octave_link event queue from events and actions
John W. Eaton <jwe@octave.org>
parents: 27217
diff changeset
265
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
266 void delete_debugger_pointer_signal (const QString&, int);
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
267
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
268 void show_preferences_signal (void);
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
269
27601
7a748f7545c9 improve thread safety of qt_interpreter_events::gui_preference
John W. Eaton <jwe@octave.org>
parents: 27600
diff changeset
270 void gui_preference_signal (const QString& key, const QString& value);
25639
7644e7f1721f change gui preferences from within the worker thread (bug #49119)
Torsten <mttl@mailbox.org>
parents: 25407
diff changeset
271
29787
b4d2fa28d1d4 allow terminal window to be opened from command line
John W. Eaton <jwe@octave.org>
parents: 29613
diff changeset
272 void show_terminal_window_signal (void);
b4d2fa28d1d4 allow terminal window to be opened from command line
John W. Eaton <jwe@octave.org>
parents: 29613
diff changeset
273
29613
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
274 void show_documentation_signal (const QString& file);
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
275
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
276 void register_documentation_signal (const QString& file);
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
277
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
278 void unregister_documentation_signal (const QString& file);
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
279
29613
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
280 void show_file_browser_signal (void);
25060
1cd3aeda7598 Allow registering compressed help at run time (bug #53006).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents: 25054
diff changeset
281
29613
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
282 void show_command_history_signal (void);
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
283
9367cba2a6d5 allow most dock widgets to be used from command line
John W. Eaton <jwe@octave.org>
parents: 29503
diff changeset
284 void show_workspace_signal (void);
25060
1cd3aeda7598 Allow registering compressed help at run time (bug #53006).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents: 25054
diff changeset
285
29835
a946d742fb97 allow community news window to be opened from command line
John W. Eaton <jwe@octave.org>
parents: 29787
diff changeset
286 void show_community_news_signal (int serial);
29836
56465c0739fa allow release notes window to be opened from command line
John W. Eaton <jwe@octave.org>
parents: 29835
diff changeset
287 void show_release_notes_signal (void);
29835
a946d742fb97 allow community news window to be opened from command line
John W. Eaton <jwe@octave.org>
parents: 29787
diff changeset
288
31087
9c0099048264 exp cmd widget: fix missing promt after error
Torsten Lilge <ttl-octave@mailbox.org>
parents: 30564
diff changeset
289 // Note: the next two signals are currently not used by the old terminal widget.
29503
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
290 void interpreter_output_signal (const QString& msg);
31087
9c0099048264 exp cmd widget: fix missing promt after error
Torsten Lilge <ttl-octave@mailbox.org>
parents: 30564
diff changeset
291 void new_command_line_signal (const QString& msg = QString ());
29503
3bfec185c9e2 experimental command window widget with server loop
John W. Eaton <jwe@octave.org>
parents: 29359
diff changeset
292
29057
450920c987b8 update profiler status in gui from interpreter
Torsten Lilge <ttl-octave@mailbox.org>
parents: 29001
diff changeset
293 void gui_status_update_signal (const QString& feature, const QString& status);
450920c987b8 update profiler status in gui from interpreter
Torsten Lilge <ttl-octave@mailbox.org>
parents: 29001
diff changeset
294
28788
aba2c4eadb83 add functions of loaded packages to auto-completion list (bug #56207)
Torsten Lilge <ttl-octave@mailbox.org>
parents: 27923
diff changeset
295 void update_gui_lexer_signal (bool update_apis_only);
aba2c4eadb83 add functions of loaded packages to auto-completion list (bug #56207)
Torsten Lilge <ttl-octave@mailbox.org>
parents: 27923
diff changeset
296
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
297 void edit_variable_signal (const QString& name, const octave_value& val);
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
298
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
299 void refresh_variable_editor_signal (void);
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
300
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
301 void confirm_shutdown_signal (void);
27590
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
302
27599
ada24a1979c0 improve thread safety of qt_interpreter_events::get_named_icon
John W. Eaton <jwe@octave.org>
parents: 27590
diff changeset
303 void get_named_icon_signal (const QString& name);
ada24a1979c0 improve thread safety of qt_interpreter_events::get_named_icon
John W. Eaton <jwe@octave.org>
parents: 27590
diff changeset
304
31619
ad014fc78bd6 use individual local gui_settings objects
John W. Eaton <jwe@octave.org>
parents: 31087
diff changeset
305 void settings_changed (bool);
27601
7a748f7545c9 improve thread safety of qt_interpreter_events::gui_preference
John W. Eaton <jwe@octave.org>
parents: 27600
diff changeset
306
27602
ba317c535adb define new __event_manager_apply_preferences__ function
John W. Eaton <jwe@octave.org>
parents: 27601
diff changeset
307 void apply_new_settings (void);
ba317c535adb define new __event_manager_apply_preferences__ function
John W. Eaton <jwe@octave.org>
parents: 27601
diff changeset
308
27590
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
309 private:
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
310
27601
7a748f7545c9 improve thread safety of qt_interpreter_events::gui_preference
John W. Eaton <jwe@octave.org>
parents: 27600
diff changeset
311 QString gui_preference_adjust (const QString& key, const QString& value);
7a748f7545c9 improve thread safety of qt_interpreter_events::gui_preference
John W. Eaton <jwe@octave.org>
parents: 27600
diff changeset
312
27590
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
313 void insert_debugger_pointer (const std::string& file, int line);
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
314
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
315 void delete_debugger_pointer (const std::string& file, int line);
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
316
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
317 base_qobject& m_octave_qobj;
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
318
27643
337132e66ec2 eliminate need for global access to resource manager in uiwidget objects
John W. Eaton <jwe@octave.org>
parents: 27629
diff changeset
319 QUIWidgetCreator m_uiwidget_creator;
337132e66ec2 eliminate need for global access to resource manager in uiwidget objects
John W. Eaton <jwe@octave.org>
parents: 27629
diff changeset
320
27600
bb9aecedc167 use single QVariant object for return values in qt_interpreter_events class
John W. Eaton <jwe@octave.org>
parents: 27599
diff changeset
321 QVariant m_result;
27599
ada24a1979c0 improve thread safety of qt_interpreter_events::get_named_icon
John W. Eaton <jwe@octave.org>
parents: 27590
diff changeset
322
27590
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
323 QMutex m_mutex;
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
324
f6b729077ebd use consistent order for signal/slot/other decls in libgui/src files
John W. Eaton <jwe@octave.org>
parents: 27588
diff changeset
325 QWaitCondition m_waitcondition;
24718
ea1c88bd4430 move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents: 24645
diff changeset
326 };
24645
f61502510d08 restore ability to select variables for editing from workspace widget
John W. Eaton <jwe@octave.org>
parents: 24641
diff changeset
327 }
f61502510d08 restore ability to select variables for editing from workspace widget
John W. Eaton <jwe@octave.org>
parents: 24641
diff changeset
328
16422
436f6e0e4268 include file cleanup for octave-qt-link files
John W. Eaton <jwe@octave.org>
parents: 16420
diff changeset
329 #endif