Mercurial > octave
annotate libgui/src/main-window.cc @ 24645:f61502510d08
restore ability to select variables for editing from workspace widget
* octave-qt-link.h, octave-qt-link.cc: Declare octave::symbol_scope as
a Qt metatype.
(octave_qt_link::set_workspace_signal): Pass scope instead of
individual lists of scope things. Change all uses.
(octave_qt_link::do_set_workspace): Pass scope instead of list of
workspace_element objects.
* octave-link.h, octave-link.cc (octave_link::set_workspace,
octave_link::do_set_workspace): Pass scope instead of list of
workspace_element objects. Change all uses.
* workspace-model.h, workspace-model.cc (workspace_model::m_scope):
New data member.
(workspace_model::set_workspace): Pass and store scope instead of
individual lists of scope things. Change all uses.
(workspace_model::clear_data): Also invalidate m_scope.
(workspace_model::update_table): Unpack scope info here without using
an intermediate list of workspace elements.
(workspace_model::scope): New function.
* workspace-view.h, workspace-view.cc
(workspace_view::edit_variable_signal): Also pass value object.
Change all uses.
(workspace_view::setModel): Also extract value from scope.
* workspace-element.h: Delete.
* libinterp/corefcn/module.mk: Update.
* symscope.h, symscope.cc (symbol_scope::workspace_info,
symbol_scope::symbol_scope_rep::workspace_info): Delete.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Sat, 27 Jan 2018 09:06:50 -0500 |
parents | 7d177be54c37 |
children | 88bb3f086d9a |
rev | line source |
---|---|
15204
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
1 /* |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
2 |
23219
3ac9f9ecfae5
maint: Update copyright dates.
John W. Eaton <jwe@octave.org>
parents:
23160
diff
changeset
|
3 Copyright (C) 2013-2017 John W. Eaton |
22323
bac0d6f07a3e
maint: Update copyright notices for 2016.
John W. Eaton <jwe@octave.org>
parents:
22254
diff
changeset
|
4 Copyright (C) 2011-2016 Jacob Dawid |
15204
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
5 |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
6 This file is part of Octave. |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
7 |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
24520
diff
changeset
|
8 Octave is free software: you can redistribute it and/or modify it |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22599
diff
changeset
|
9 under the terms of the GNU General Public License as published by |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
24520
diff
changeset
|
10 the Free Software Foundation, either version 3 of the License, or |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22599
diff
changeset
|
11 (at your option) any later version. |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22599
diff
changeset
|
12 |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22599
diff
changeset
|
13 Octave is distributed in the hope that it will be useful, but |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22599
diff
changeset
|
14 WITHOUT ANY WARRANTY; without even the implied warranty of |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22599
diff
changeset
|
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22599
diff
changeset
|
16 GNU General Public License for more details. |
15204
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
17 |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
18 You should have received a copy of the GNU General Public License |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
19 along with Octave; see the file COPYING. If not, see |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
24520
diff
changeset
|
20 <https://www.gnu.org/licenses/>. |
15204
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
21 |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
22 */ |
13501 | 23 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
24 #if defined (HAVE_CONFIG_H) |
21301
40de9f8f23a6
Use '#include "config.h"' rather than <config.h>.
Rik <rik@octave.org>
parents:
21203
diff
changeset
|
25 # include "config.h" |
15286
ae9079bbc627
Add '#include <config.h>' to C++ files in libgui/src
Rik <rik@octave.org>
parents:
15274
diff
changeset
|
26 #endif |
ae9079bbc627
Add '#include <config.h>' to C++ files in libgui/src
Rik <rik@octave.org>
parents:
15274
diff
changeset
|
27 |
16648
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
28 #include <QKeySequence> |
15257
7ee62f559a73
Fix compilation under Windows with GUI and LLVM enabled.
Michael Goffioul <michael.goffioul@gmail.com>
parents:
15204
diff
changeset
|
29 #include <QApplication> |
23385
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
30 #include <QInputDialog> |
15257
7ee62f559a73
Fix compilation under Windows with GUI and LLVM enabled.
Michael Goffioul <michael.goffioul@gmail.com>
parents:
15204
diff
changeset
|
31 #include <QLabel> |
13501 | 32 #include <QMenuBar> |
33 #include <QMenu> | |
34 #include <QAction> | |
35 #include <QSettings> | |
14670
7fbea449737d
Restructured menus, added toolbar and current directory line edit.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14669
diff
changeset
|
36 #include <QStyle> |
7fbea449737d
Restructured menus, added toolbar and current directory line edit.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14669
diff
changeset
|
37 #include <QToolBar> |
13501 | 38 #include <QDesktopServices> |
16391
a695ee2dc17e
* main-window.cc: Include <QDesktopWidget>
John W. Eaton <jwe@octave.org>
parents:
16386
diff
changeset
|
39 #include <QDesktopWidget> |
13501 | 40 #include <QFileDialog> |
13626
cc90c62ada21
Removed terminal, instead now using QPlainTextEdit, which looks much nicer and is not that error-prone...
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13620
diff
changeset
|
41 #include <QMessageBox> |
14670
7fbea449737d
Restructured menus, added toolbar and current directory line edit.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14669
diff
changeset
|
42 #include <QIcon> |
17764
811b5a562680
Format release notes as preformatted text in the GUI (bug #40367)
Mike Miller <mtmiller@ieee.org>
parents:
17744
diff
changeset
|
43 #include <QTextStream> |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
44 #include <QThread> |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
45 #include <QDateTime> |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
46 #include <QDebug> |
21439
912b8828193b
* main-window.cc: include QTimer header file
Mike Miller <mtmiller@octave.org>
parents:
21428
diff
changeset
|
47 #include <QTimer> |
14670
7fbea449737d
Restructured menus, added toolbar and current directory line edit.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14669
diff
changeset
|
48 |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
49 #include <utility> |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
50 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
51 #if defined (HAVE_QSCINTILLA) |
21203
710e700cdd7f
maint: Clean up naming and indentation of #ifdef blocks in libgui
Rik <rik@octave.org>
parents:
21158
diff
changeset
|
52 # include "file-editor.h" |
16290
d07aeecb2d22
build: Add more #ifdefs to build GUI when Qscintilla is not present.
Rik <rik@octave.org>
parents:
16176
diff
changeset
|
53 #endif |
14707
674740c44c09
Changed various files to matche file naming conventions.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14703
diff
changeset
|
54 #include "main-window.h" |
674740c44c09
Changed various files to matche file naming conventions.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14703
diff
changeset
|
55 #include "settings-dialog.h" |
18611
086093fbdc1a
first implementation of a shortcut manager (bug #41217)
Torsten <ttl@justmail.de>
parents:
18575
diff
changeset
|
56 #include "shortcut-manager.h" |
13501 | 57 |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
58 #include "Array.h" |
16468
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
59 #include "cmd-edit.h" |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
60 #include "url-transfer.h" |
16468
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
61 |
19893
67cb2f421255
restore include statement removed in changeset c7c50030e76c
John W. Eaton <jwe@octave.org>
parents:
19882
diff
changeset
|
62 #include "builtin-defun-decls.h" |
15404
f52a62a6db3a
eliminate copy and paste copyright info in GUI about info box
John W. Eaton <jwe@octave.org>
parents:
15402
diff
changeset
|
63 #include "defaults.h" |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23497
diff
changeset
|
64 #if defined (HAVE_QT_GRAPHICS) |
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23497
diff
changeset
|
65 # include "__init_qt__.h" |
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23497
diff
changeset
|
66 #endif |
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23497
diff
changeset
|
67 #include "interpreter-private.h" |
23773
5ff24576b783
defer installing qt graphics toolkit until interpreter is ready
John W. Eaton <jwe@octave.org>
parents:
23721
diff
changeset
|
68 #include "interpreter.h" |
23479
06bf3a0b08bf
maint: Use "" instead of <> for our own include files.
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
69 #include "oct-map.h" |
22089
c2c668b3051b
use classes for octave application and interpreter
John W. Eaton <jwe@octave.org>
parents:
22022
diff
changeset
|
70 #include "octave.h" |
24362
3fc24b792a24
avoid including symtab.h, symscope.h, or symrec.h unnecessarily
John W. Eaton <jwe@octave.org>
parents:
24361
diff
changeset
|
71 #include "symscope.h" |
23479
06bf3a0b08bf
maint: Use "" instead of <> for our own include files.
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
72 #include "utils.h" |
15404
f52a62a6db3a
eliminate copy and paste copyright info in GUI about info box
John W. Eaton <jwe@octave.org>
parents:
15402
diff
changeset
|
73 #include "version.h" |
23380
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
74 |
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
75 static file_editor_interface * |
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
76 create_default_editor (QWidget *p) |
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
77 { |
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
78 #if defined (HAVE_QSCINTILLA) |
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
79 return new file_editor (p); |
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
80 #else |
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
81 octave_unused_parameter (p); |
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
82 |
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
83 return 0; |
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
84 #endif |
c319e6d737f2
Backed out changeset 7332287221a9
Torsten <mttl@mailbox.org>
parents:
23379
diff
changeset
|
85 } |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
86 |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
87 octave_interpreter::octave_interpreter (octave::application *app_context) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
88 : QObject (), m_thread_manager (), m_app_context (app_context) |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
89 { } |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
90 |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
91 void |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
92 octave_interpreter::execute (void) |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
93 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
94 m_thread_manager.register_current_thread (); |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
95 |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
96 // The application context owns the interpreter. |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
97 |
23773
5ff24576b783
defer installing qt graphics toolkit until interpreter is ready
John W. Eaton <jwe@octave.org>
parents:
23721
diff
changeset
|
98 octave::interpreter& interp = m_app_context->create_interpreter (); |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23497
diff
changeset
|
99 |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
100 int exit_status = 0; |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
101 |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
102 try |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
103 { |
23819
5d8ef9b859f8
defer execution of user code to interpreter::execute (bug #51631)
John W. Eaton <jwe@octave.org>
parents:
23810
diff
changeset
|
104 // Final initialization. |
5d8ef9b859f8
defer execution of user code to interpreter::execute (bug #51631)
John W. Eaton <jwe@octave.org>
parents:
23810
diff
changeset
|
105 |
5d8ef9b859f8
defer execution of user code to interpreter::execute (bug #51631)
John W. Eaton <jwe@octave.org>
parents:
23810
diff
changeset
|
106 interp.initialize (); |
23773
5ff24576b783
defer installing qt graphics toolkit until interpreter is ready
John W. Eaton <jwe@octave.org>
parents:
23721
diff
changeset
|
107 |
5ff24576b783
defer installing qt graphics toolkit until interpreter is ready
John W. Eaton <jwe@octave.org>
parents:
23721
diff
changeset
|
108 if (interp.initialized ()) |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
109 { |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
110 // The interpreter should be completely ready at this point so let |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
111 // the GUI know. |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
112 |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
113 emit octave_ready_signal (); |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
114 |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
115 // Start executing commands in the command window. |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
116 |
23773
5ff24576b783
defer installing qt graphics toolkit until interpreter is ready
John W. Eaton <jwe@octave.org>
parents:
23721
diff
changeset
|
117 #if defined (HAVE_QT_GRAPHICS) |
23819
5d8ef9b859f8
defer execution of user code to interpreter::execute (bug #51631)
John W. Eaton <jwe@octave.org>
parents:
23810
diff
changeset
|
118 // The qt graphics toolkit must be initialized before startup |
5d8ef9b859f8
defer execution of user code to interpreter::execute (bug #51631)
John W. Eaton <jwe@octave.org>
parents:
23810
diff
changeset
|
119 // files are executed. |
5d8ef9b859f8
defer execution of user code to interpreter::execute (bug #51631)
John W. Eaton <jwe@octave.org>
parents:
23810
diff
changeset
|
120 |
23773
5ff24576b783
defer installing qt graphics toolkit until interpreter is ready
John W. Eaton <jwe@octave.org>
parents:
23721
diff
changeset
|
121 install___init_qt___functions (); |
5ff24576b783
defer installing qt graphics toolkit until interpreter is ready
John W. Eaton <jwe@octave.org>
parents:
23721
diff
changeset
|
122 |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
23773
diff
changeset
|
123 Fregister_graphics_toolkit (interp, ovl ("qt")); |
23773
5ff24576b783
defer installing qt graphics toolkit until interpreter is ready
John W. Eaton <jwe@octave.org>
parents:
23721
diff
changeset
|
124 #endif |
5ff24576b783
defer installing qt graphics toolkit until interpreter is ready
John W. Eaton <jwe@octave.org>
parents:
23721
diff
changeset
|
125 |
5ff24576b783
defer installing qt graphics toolkit until interpreter is ready
John W. Eaton <jwe@octave.org>
parents:
23721
diff
changeset
|
126 exit_status = interp.execute (); |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
127 } |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
128 } |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
129 catch (const octave::exit_exception& ex) |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
130 { |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
131 exit_status = ex.exit_status (); |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
132 } |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
133 |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
134 // Whether or not initialization succeeds we need to clean up the |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
135 // interpreter once we are done with it. |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
136 |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
137 m_app_context->delete_interpreter (); |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
138 |
23979
fb9b024a6041
avoid SIGABRT on exit from the GUI (bug #50210)
John W. Eaton <jwe@octave.org>
parents:
23953
diff
changeset
|
139 emit octave_finished_signal (exit_status); |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
140 } |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
141 |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
142 void |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
143 octave_interpreter::interrupt (void) |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
144 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
145 m_thread_manager.interrupt (); |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
146 } |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
147 |
22089
c2c668b3051b
use classes for octave application and interpreter
John W. Eaton <jwe@octave.org>
parents:
22022
diff
changeset
|
148 main_window::main_window (QWidget *p, octave::gui_application *app_context) |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
149 : QMainWindow (p), m_app_context (app_context), |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
150 m_interpreter (new octave_interpreter (app_context)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
151 m_main_thread (new QThread ()), m_workspace_model (nullptr), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
152 m_status_bar (nullptr), m_command_window (nullptr), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
153 m_history_window (nullptr), m_file_browser_window (nullptr), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
154 m_doc_browser_window (nullptr), m_editor_window (nullptr), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
155 m_workspace_window (nullptr), m_variable_editor_window (nullptr), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
156 m_settings_dlg (nullptr), m_find_files_dlg (nullptr), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
157 m_release_notes_window (nullptr), m_community_news_window (nullptr), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
158 m_octave_qt_link (nullptr), m_clipboard (QApplication::clipboard ()), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
159 m_prevent_readline_conflicts (true), m_suppress_dbg_location (true), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
160 m_start_gui (app_context && app_context->start_gui_p ()), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
161 m_file_encoding (QString ()) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
162 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
163 if (m_start_gui) |
22089
c2c668b3051b
use classes for octave application and interpreter
John W. Eaton <jwe@octave.org>
parents:
22022
diff
changeset
|
164 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
165 m_workspace_model = new workspace_model (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
166 m_status_bar = new QStatusBar (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
167 m_command_window = new terminal_dock_widget (this); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
168 m_history_window = new history_dock_widget (this); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
169 m_file_browser_window = new files_dock_widget (this); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
170 m_doc_browser_window = new documentation_dock_widget (this); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
171 m_editor_window = create_default_editor (this); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
172 m_variable_editor_window = new variable_editor (this); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
173 m_workspace_window = new workspace_view (this); |
22089
c2c668b3051b
use classes for octave application and interpreter
John W. Eaton <jwe@octave.org>
parents:
22022
diff
changeset
|
174 } |
c2c668b3051b
use classes for octave application and interpreter
John W. Eaton <jwe@octave.org>
parents:
22022
diff
changeset
|
175 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
176 m_external_editor = new external_editor_interface (this); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
177 m_active_editor = m_editor_window; // for connecting signals |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
178 if (! m_editor_window) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
179 m_active_editor = m_external_editor; |
23385
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
180 |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
181 QSettings *settings = resource_manager::get_settings (); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
182 |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
183 bool connect_to_web = true; |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
184 QDateTime last_checked; |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
185 int serial = 0; |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
186 m_active_dock = nullptr; |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
187 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
188 if (settings) |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
189 { |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
190 connect_to_web |
24094
1265c7f0119a
consistent defaults values for all preferences (bug #52090)
Torsten <mttl@mailbox.org>
parents:
24082
diff
changeset
|
191 = settings->value ("news/allow_web_connection", false).toBool (); |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
192 |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
193 last_checked |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
194 = settings->value ("news/last_time_checked", QDateTime ()).toDateTime (); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
195 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
196 serial = settings->value ("news/last_news_item", 0).toInt (); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
197 } |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
198 |
17982
7c48493d98e1
Use currentDateTime instead of currentDateTimeUtc for Qt compatibility
Mike Miller <mtmiller@ieee.org>
parents:
17954
diff
changeset
|
199 QDateTime current = QDateTime::currentDateTime (); |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
200 QDateTime one_day_ago = current.addDays (-1); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
201 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
202 if (m_start_gui && connect_to_web |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
203 && (! last_checked.isValid () || one_day_ago > last_checked)) |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
204 load_and_display_community_news (serial); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
205 |
14599
97cb9286919c
Cleaned up code.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14588
diff
changeset
|
206 // We have to set up all our windows, before we finally launch octave. |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
207 construct (); |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
208 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
209 connect (m_interpreter, SIGNAL (octave_ready_signal (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
210 this, SLOT (handle_octave_ready (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
211 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
212 connect (m_interpreter, SIGNAL (octave_ready_signal (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
213 m_doc_browser_window, SLOT (load_info_file (void))); |
23721
b2d55b52ee51
new class to manage help system and associated variables
John W. Eaton <jwe@octave.org>
parents:
23717
diff
changeset
|
214 |
23979
fb9b024a6041
avoid SIGABRT on exit from the GUI (bug #50210)
John W. Eaton <jwe@octave.org>
parents:
23953
diff
changeset
|
215 connect (m_interpreter, SIGNAL (octave_finished_signal (int)), |
fb9b024a6041
avoid SIGABRT on exit from the GUI (bug #50210)
John W. Eaton <jwe@octave.org>
parents:
23953
diff
changeset
|
216 this, SLOT (handle_octave_finished (int))); |
fb9b024a6041
avoid SIGABRT on exit from the GUI (bug #50210)
John W. Eaton <jwe@octave.org>
parents:
23953
diff
changeset
|
217 |
24001
8e4abfaadd97
attempt better cleanup of Octave interpreter thread in GUI
John W. Eaton <jwe@octave.org>
parents:
23979
diff
changeset
|
218 connect (m_interpreter, SIGNAL (octave_finished_signal (int)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
219 m_main_thread, SLOT (quit (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
220 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
221 connect (m_main_thread, SIGNAL (finished (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
222 m_main_thread, SLOT (deleteLater (void))); |
24001
8e4abfaadd97
attempt better cleanup of Octave interpreter thread in GUI
John W. Eaton <jwe@octave.org>
parents:
23979
diff
changeset
|
223 |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
224 m_interpreter->moveToThread (m_main_thread); |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
225 |
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
226 m_main_thread->start (); |
13501 | 227 } |
228 | |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
229 main_window::~main_window (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
230 { |
24001
8e4abfaadd97
attempt better cleanup of Octave interpreter thread in GUI
John W. Eaton <jwe@octave.org>
parents:
23979
diff
changeset
|
231 // Note that we don't delete m_main_thread here. That is handled by |
8e4abfaadd97
attempt better cleanup of Octave interpreter thread in GUI
John W. Eaton <jwe@octave.org>
parents:
23979
diff
changeset
|
232 // deleteLater slot that is called when the m_main_thread issues a |
8e4abfaadd97
attempt better cleanup of Octave interpreter thread in GUI
John W. Eaton <jwe@octave.org>
parents:
23979
diff
changeset
|
233 // finished signal. |
8e4abfaadd97
attempt better cleanup of Octave interpreter thread in GUI
John W. Eaton <jwe@octave.org>
parents:
23979
diff
changeset
|
234 |
16485
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
235 // Destroy the terminal first so that STDERR stream is redirected back |
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
236 // to its original pipe to capture error messages at exit. |
16484
fa842e78f491
Restore STDERR stream pipe before exit to capture error messages.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16479
diff
changeset
|
237 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
238 delete m_editor_window; // first one for dialogs of modified editor-tabs |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
239 delete m_external_editor; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
240 delete m_command_window; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
241 delete m_workspace_window; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
242 delete m_doc_browser_window; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
243 delete m_file_browser_window; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
244 delete m_history_window; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
245 delete m_status_bar; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
246 delete m_workspace_model; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
247 delete m_variable_editor_window; |
23119
3107d3717cc2
refactor and simplify interpreter startup in GUI
John W. Eaton <jwe@octave.org>
parents:
23092
diff
changeset
|
248 delete m_interpreter; |
23979
fb9b024a6041
avoid SIGABRT on exit from the GUI (bug #50210)
John W. Eaton <jwe@octave.org>
parents:
23953
diff
changeset
|
249 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
250 if (m_find_files_dlg) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
251 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
252 delete m_find_files_dlg; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
253 m_find_files_dlg = nullptr; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
254 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
255 if (m_release_notes_window) |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
256 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
257 delete m_release_notes_window; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
258 m_release_notes_window = nullptr; |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
259 } |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
260 if (m_settings_dlg) |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
261 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
262 delete m_settings_dlg; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
263 m_settings_dlg = nullptr; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
264 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
265 if (m_community_news_window) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
266 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
267 delete m_community_news_window; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
268 m_community_news_window = nullptr; |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
269 } |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
270 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
271 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
272 bool |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
273 main_window::command_window_has_focus (void) const |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
274 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
275 return m_command_window->has_focus (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
276 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
277 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
278 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
279 main_window::focus_command_window (void) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
280 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
281 m_command_window->focus (); |
13501 | 282 } |
283 | |
19422
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
284 // catch focus changes and determine the active dock widget |
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
285 void |
19425
5e93d228ff6b
fix regression from 476032040df9 (endless loop while looking for active widget)
Torsten <ttl@justmail.de>
parents:
19422
diff
changeset
|
286 main_window::focus_changed (QWidget *, QWidget *new_widget) |
19422
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
287 { |
23457
21baad6b35c4
maint: Use C++11 nullptr rather than 0 or NULL when possible.
Rik <rik@octave.org>
parents:
23450
diff
changeset
|
288 octave_dock_widget *dock = nullptr; |
19425
5e93d228ff6b
fix regression from 476032040df9 (endless loop while looking for active widget)
Torsten <ttl@justmail.de>
parents:
19422
diff
changeset
|
289 QWidget *w_new = new_widget; // get a copy of new focus widget |
5e93d228ff6b
fix regression from 476032040df9 (endless loop while looking for active widget)
Torsten <ttl@justmail.de>
parents:
19422
diff
changeset
|
290 QWidget *start = w_new; // Save it as start of our search |
5e93d228ff6b
fix regression from 476032040df9 (endless loop while looking for active widget)
Torsten <ttl@justmail.de>
parents:
19422
diff
changeset
|
291 int count = 0; // fallback to prevent endless loop |
5e93d228ff6b
fix regression from 476032040df9 (endless loop while looking for active widget)
Torsten <ttl@justmail.de>
parents:
19422
diff
changeset
|
292 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
293 while (w_new && w_new != m_main_tool_bar && count < 100) |
19422
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
294 { |
21661
1b9a36a66b01
maint: Octave coding convention cleanups.
Rik <rik@octave.org>
parents:
21568
diff
changeset
|
295 dock = qobject_cast<octave_dock_widget *> (w_new); |
19422
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
296 if (dock) |
19425
5e93d228ff6b
fix regression from 476032040df9 (endless loop while looking for active widget)
Torsten <ttl@justmail.de>
parents:
19422
diff
changeset
|
297 break; // it is a QDockWidget ==> exit loop |
5e93d228ff6b
fix regression from 476032040df9 (endless loop while looking for active widget)
Torsten <ttl@justmail.de>
parents:
19422
diff
changeset
|
298 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
299 #if defined (HAVE_QSCINTILLA) |
21661
1b9a36a66b01
maint: Octave coding convention cleanups.
Rik <rik@octave.org>
parents:
21568
diff
changeset
|
300 if (qobject_cast<octave_qscintilla *> (w_new)) |
19533
52c51472b6b9
improved search for active dock-widget after focus has changed
Torsten <ttl@justmail.de>
parents:
19437
diff
changeset
|
301 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
302 dock = static_cast<octave_dock_widget *> (m_editor_window); |
19533
52c51472b6b9
improved search for active dock-widget after focus has changed
Torsten <ttl@justmail.de>
parents:
19437
diff
changeset
|
303 break; // it is the editor window ==> exit loop |
52c51472b6b9
improved search for active dock-widget after focus has changed
Torsten <ttl@justmail.de>
parents:
19437
diff
changeset
|
304 } |
19589
4fe86a372f10
Fix compilation error when building without QScintilla
Mike Miller <mtmiller@ieee.org>
parents:
19585
diff
changeset
|
305 #endif |
19533
52c51472b6b9
improved search for active dock-widget after focus has changed
Torsten <ttl@justmail.de>
parents:
19437
diff
changeset
|
306 |
21661
1b9a36a66b01
maint: Octave coding convention cleanups.
Rik <rik@octave.org>
parents:
21568
diff
changeset
|
307 w_new = qobject_cast<QWidget *> (w_new->previousInFocusChain ()); |
19425
5e93d228ff6b
fix regression from 476032040df9 (endless loop while looking for active widget)
Torsten <ttl@justmail.de>
parents:
19422
diff
changeset
|
308 if (w_new == start) |
5e93d228ff6b
fix regression from 476032040df9 (endless loop while looking for active widget)
Torsten <ttl@justmail.de>
parents:
19422
diff
changeset
|
309 break; // we have arrived where we began ==> exit loop |
5e93d228ff6b
fix regression from 476032040df9 (endless loop while looking for active widget)
Torsten <ttl@justmail.de>
parents:
19422
diff
changeset
|
310 |
5e93d228ff6b
fix regression from 476032040df9 (endless loop while looking for active widget)
Torsten <ttl@justmail.de>
parents:
19422
diff
changeset
|
311 count++; |
19422
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
312 } |
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
313 |
19533
52c51472b6b9
improved search for active dock-widget after focus has changed
Torsten <ttl@justmail.de>
parents:
19437
diff
changeset
|
314 // editor needs extra handling |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
315 octave_dock_widget *edit_dock_widget |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
316 = static_cast<octave_dock_widget *> (m_editor_window); |
19422
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
317 // if new dock has focus, emit signal and store active focus |
19533
52c51472b6b9
improved search for active dock-widget after focus has changed
Torsten <ttl@justmail.de>
parents:
19437
diff
changeset
|
318 // except editor changes to a dialog (dock=0) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
319 if ((dock || m_active_dock != edit_dock_widget) && (dock != m_active_dock)) |
19422
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
320 { |
19426
f90bb1e30de2
switching between edit and main shortcuts depending on active dock widget now
Torsten <ttl@justmail.de>
parents:
19425
diff
changeset
|
321 // signal to all dock widgets for updating the style |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
322 emit active_dock_changed (m_active_dock, dock); |
19426
f90bb1e30de2
switching between edit and main shortcuts depending on active dock widget now
Torsten <ttl@justmail.de>
parents:
19425
diff
changeset
|
323 |
19983
643de08e524c
save and restore previously active widget in a tabbed stack (bug #42980)
Torsten <ttl@justmail.de>
parents:
19970
diff
changeset
|
324 QList<QDockWidget *> tabbed = tabifiedDockWidgets (dock); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
325 if (tabbed.contains (m_active_dock)) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
326 dock->set_predecessor_widget (m_active_dock); |
19983
643de08e524c
save and restore previously active widget in a tabbed stack (bug #42980)
Torsten <ttl@justmail.de>
parents:
19970
diff
changeset
|
327 |
19426
f90bb1e30de2
switching between edit and main shortcuts depending on active dock widget now
Torsten <ttl@justmail.de>
parents:
19425
diff
changeset
|
328 if (edit_dock_widget == dock) |
19429
be53bf420464
fix access to already removed editor window at exit
Torsten <ttl@justmail.de>
parents:
19426
diff
changeset
|
329 emit editor_focus_changed (true); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
330 else if (edit_dock_widget == m_active_dock) |
19429
be53bf420464
fix access to already removed editor window at exit
Torsten <ttl@justmail.de>
parents:
19426
diff
changeset
|
331 emit editor_focus_changed (false); |
19426
f90bb1e30de2
switching between edit and main shortcuts depending on active dock widget now
Torsten <ttl@justmail.de>
parents:
19425
diff
changeset
|
332 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
333 m_active_dock = dock; |
19422
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
334 } |
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
335 } |
476032040df9
determining the active dock from focus changes in the gui
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
336 |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
337 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
338 main_window::request_reload_settings (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
339 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
340 QSettings *settings = resource_manager::get_settings (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
341 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
342 if (settings) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
343 emit settings_changed (settings); |
20995
aab7a3c7168e
edit a file from an error message in the terminal (bug #35619)
Torsten <ttl@justmail.de>
parents:
20989
diff
changeset
|
344 } |
13558
248b897d9f36
editor: custom lexer, syntax highlighting, auto completion
ttl <ttl@justmail.de>
parents:
13550
diff
changeset
|
345 |
248b897d9f36
editor: custom lexer, syntax highlighting, auto completion
ttl <ttl@justmail.de>
parents:
13550
diff
changeset
|
346 void |
15300
fd27e10b9b05
pass QString by const reference instead of value
John W. Eaton <jwe@octave.org>
parents:
15286
diff
changeset
|
347 main_window::report_status_message (const QString& statusMessage) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
348 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
349 m_status_bar->showMessage (statusMessage, 1000); |
13501 | 350 } |
351 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
352 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
353 main_window::handle_save_workspace_request (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
354 { |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
355 QString file |
23795
980f39c3ab90
Use C++11 nullptr rather than 0 in code (bug #51565).
Rik <rik@octave.org>
parents:
23774
diff
changeset
|
356 = QFileDialog::getSaveFileName (this, tr ("Save Workspace As"), ".", |
980f39c3ab90
Use C++11 nullptr rather than 0 in code (bug #51565).
Rik <rik@octave.org>
parents:
23774
diff
changeset
|
357 nullptr, nullptr, |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
358 QFileDialog::DontUseNativeDialog); |
16532
67d4111d078d
look for save/load files starting in current directory
John W. Eaton <jwe@octave.org>
parents:
16526
diff
changeset
|
359 |
67d4111d078d
look for save/load files starting in current directory
John W. Eaton <jwe@octave.org>
parents:
16526
diff
changeset
|
360 if (! file.isEmpty ()) |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
361 octave_link::post_event (this, &main_window::save_workspace_callback, |
16532
67d4111d078d
look for save/load files starting in current directory
John W. Eaton <jwe@octave.org>
parents:
16526
diff
changeset
|
362 file.toStdString ()); |
13501 | 363 } |
364 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
365 void |
16504
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
366 main_window::handle_load_workspace_request (const QString& file_arg) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
367 { |
16504
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
368 QString file = file_arg; |
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
369 |
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
370 if (file.isEmpty ()) |
23795
980f39c3ab90
Use C++11 nullptr rather than 0 in code (bug #51565).
Rik <rik@octave.org>
parents:
23774
diff
changeset
|
371 file = QFileDialog::getOpenFileName (this, tr ("Load Workspace"), ".", |
980f39c3ab90
Use C++11 nullptr rather than 0 in code (bug #51565).
Rik <rik@octave.org>
parents:
23774
diff
changeset
|
372 nullptr, nullptr, |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
373 QFileDialog::DontUseNativeDialog); |
16532
67d4111d078d
look for save/load files starting in current directory
John W. Eaton <jwe@octave.org>
parents:
16526
diff
changeset
|
374 |
16504
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
375 if (! file.isEmpty ()) |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
376 octave_link::post_event (this, &main_window::load_workspace_callback, |
16504
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
377 file.toStdString ()); |
13501 | 378 } |
379 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
380 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
381 main_window::handle_clear_workspace_request (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
382 { |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
383 octave_link::post_event (this, &main_window::clear_workspace_callback); |
13501 | 384 } |
385 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
386 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
387 main_window::handle_clear_command_window_request (void) |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
388 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
389 octave_link::post_event (this, &main_window::clear_command_window_callback); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
390 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
391 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
392 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
393 main_window::handle_clear_history_request (void) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
394 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
395 octave_link::post_event (this, &main_window::clear_history_callback); |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
396 } |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
397 |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
398 void |
16539
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
399 main_window::handle_undo_request (void) |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
400 { |
19945
f7a805f02723
link undo in main window to editor if the latter has focus (bug #44402)
Torsten <ttl@justmail.de>
parents:
19938
diff
changeset
|
401 if (command_window_has_focus ()) |
f7a805f02723
link undo in main window to editor if the latter has focus (bug #44402)
Torsten <ttl@justmail.de>
parents:
19938
diff
changeset
|
402 octave_link::post_event (this, &main_window::command_window_undo_callback); |
f7a805f02723
link undo in main window to editor if the latter has focus (bug #44402)
Torsten <ttl@justmail.de>
parents:
19938
diff
changeset
|
403 else |
f7a805f02723
link undo in main window to editor if the latter has focus (bug #44402)
Torsten <ttl@justmail.de>
parents:
19938
diff
changeset
|
404 emit undo_signal (); |
16539
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
405 } |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
406 |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
407 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
408 main_window::handle_rename_variable_request (const QString& old_name, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
409 const QString& new_name) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
410 |
14814
61c80e9326a8
Clearing the command history works.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14813
diff
changeset
|
411 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
412 name_pair names (old_name.toStdString (), new_name.toStdString ()); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
413 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
414 octave_link::post_event (this, &main_window::rename_variable_callback, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
415 names); |
18156
14acb08d75fa
gui: optionally set focus to console when a command is run from another widget
Torsten <ttl@justmail.de>
parents:
18117
diff
changeset
|
416 } |
14acb08d75fa
gui: optionally set focus to console when a command is run from another widget
Torsten <ttl@justmail.de>
parents:
18117
diff
changeset
|
417 |
14814
61c80e9326a8
Clearing the command history works.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14813
diff
changeset
|
418 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
419 main_window::new_file (const QString& commands) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
420 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
421 emit new_file_signal (commands); |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
422 } |
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
423 |
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
424 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
425 main_window::open_file (const QString& file_name, int line) |
16635
25e418d23a4b
fix running files from file browser's context menu
Torsten <ttl@justmail.de>
parents:
16593
diff
changeset
|
426 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
427 if (line < 0) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
428 emit open_file_signal (file_name); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
429 else |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
430 emit open_file_signal (file_name, QString (), line); |
17331
636d75a58cd9
fix running file from editor that is not in the search path (bug #39870)
Torsten <ttl@justmail.de>
parents:
17329
diff
changeset
|
431 } |
636d75a58cd9
fix running file from editor that is not in the search path (bug #39870)
Torsten <ttl@justmail.de>
parents:
17329
diff
changeset
|
432 |
636d75a58cd9
fix running file from editor that is not in the search path (bug #39870)
Torsten <ttl@justmail.de>
parents:
17329
diff
changeset
|
433 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
434 main_window::edit_mfile (const QString& name, int line) |
17331
636d75a58cd9
fix running file from editor that is not in the search path (bug #39870)
Torsten <ttl@justmail.de>
parents:
17329
diff
changeset
|
435 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
436 handle_edit_mfile_request (name, QString (), QString (), line); |
16566 | 437 } |
438 | |
439 void | |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
440 main_window::open_online_documentation_page (void) |
15989
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
441 { |
21669
7cb63f3994b0
Use correct URL for Online Documentation (bug #47835).
Rik <rik@octave.org>
parents:
20243
diff
changeset
|
442 QDesktopServices::openUrl ( |
7cb63f3994b0
Use correct URL for Online Documentation (bug #47835).
Rik <rik@octave.org>
parents:
20243
diff
changeset
|
443 QUrl ("http://octave.org/doc/interpreter/index.html")); |
15989
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
444 } |
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
445 |
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
446 void |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
447 main_window::display_release_notes (void) |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
448 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
449 if (! m_release_notes_window) |
17764
811b5a562680
Format release notes as preformatted text in the GUI (bug #40367)
Mike Miller <mtmiller@ieee.org>
parents:
17744
diff
changeset
|
450 { |
23717
06579337237b
move configuration variables inside octave::config namespace
John W. Eaton <jwe@octave.org>
parents:
23693
diff
changeset
|
451 std::string news_file = octave::config::oct_etc_dir () + "/NEWS"; |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
452 |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
453 QString news; |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
454 |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
455 QFile *file = new QFile (QString::fromStdString (news_file)); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
456 if (file->open (QFile::ReadOnly)) |
17764
811b5a562680
Format release notes as preformatted text in the GUI (bug #40367)
Mike Miller <mtmiller@ieee.org>
parents:
17744
diff
changeset
|
457 { |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
458 QTextStream *stream = new QTextStream (file); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
459 news = stream->readAll (); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
460 if (! news.isEmpty ()) |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
461 { |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
462 news.prepend ("<pre>"); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
463 news.append ("</pre>"); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
464 } |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
465 else |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
466 news = (tr ("The release notes file '%1' is empty.") |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
467 . arg (QString::fromStdString (news_file))); |
17764
811b5a562680
Format release notes as preformatted text in the GUI (bug #40367)
Mike Miller <mtmiller@ieee.org>
parents:
17744
diff
changeset
|
468 } |
811b5a562680
Format release notes as preformatted text in the GUI (bug #40367)
Mike Miller <mtmiller@ieee.org>
parents:
17744
diff
changeset
|
469 else |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
470 news = (tr ("The release notes file '%1' cannot be read.") |
17771
7690c3477da1
if NEWS file is missing, include expected file name in release notes message
John W. Eaton <jwe@octave.org>
parents:
17764
diff
changeset
|
471 . arg (QString::fromStdString (news_file))); |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
472 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
473 m_release_notes_window = new QWidget; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
474 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
475 QTextBrowser *browser = new QTextBrowser (m_release_notes_window); |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
476 browser->setText (news); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
477 |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
478 QVBoxLayout *vlayout = new QVBoxLayout; |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
479 vlayout->addWidget (browser); |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
480 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
481 m_release_notes_window->setLayout (vlayout); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
482 m_release_notes_window->setWindowTitle (tr ("Octave Release Notes")); |
17936
8c23f844bd30
set maximum size for release notes window from screen size
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
483 |
23070
bef714f45999
maint: Use space after function name/before parenthesis in libgui.
Rik <rik@octave.org>
parents:
22755
diff
changeset
|
484 browser->document ()->adjustSize (); |
18840
e7b5be5a7f80
improve size of the release notes window
Torsten <ttl@justmail.de>
parents:
18839
diff
changeset
|
485 |
e7b5be5a7f80
improve size of the release notes window
Torsten <ttl@justmail.de>
parents:
18839
diff
changeset
|
486 // center the window on the screen where octave is running |
e7b5be5a7f80
improve size of the release notes window
Torsten <ttl@justmail.de>
parents:
18839
diff
changeset
|
487 QDesktopWidget *m_desktop = QApplication::desktop (); |
e7b5be5a7f80
improve size of the release notes window
Torsten <ttl@justmail.de>
parents:
18839
diff
changeset
|
488 int screen = m_desktop->screenNumber (this); // screen of the main window |
e7b5be5a7f80
improve size of the release notes window
Torsten <ttl@justmail.de>
parents:
18839
diff
changeset
|
489 QRect screen_geo = m_desktop->availableGeometry (screen); |
e7b5be5a7f80
improve size of the release notes window
Torsten <ttl@justmail.de>
parents:
18839
diff
changeset
|
490 int win_x = screen_geo.width (); // width of the screen |
e7b5be5a7f80
improve size of the release notes window
Torsten <ttl@justmail.de>
parents:
18839
diff
changeset
|
491 int win_y = screen_geo.height (); // height of the screen |
21396
309bba07a4f6
Change size of Release Notes window so it displays without hz scrollbar.
Rik <rik@octave.org>
parents:
21310
diff
changeset
|
492 int reln_x = std::min (720, win_x-80); // desired width of release notes |
309bba07a4f6
Change size of Release Notes window so it displays without hz scrollbar.
Rik <rik@octave.org>
parents:
21310
diff
changeset
|
493 int reln_y = std::min (740, win_y-80); // desired height of release notes |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
494 m_release_notes_window->resize (reln_x, reln_y); // set size |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
495 m_release_notes_window->move (20, 0); // move to the top left corner |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
496 } |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
497 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
498 if (! m_release_notes_window->isVisible ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
499 m_release_notes_window->show (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
500 else if (m_release_notes_window->isMinimized ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
501 m_release_notes_window->showNormal (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
502 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
503 m_release_notes_window->setWindowIcon (QIcon (m_release_notes_icon)); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
504 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
505 m_release_notes_window->raise (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
506 m_release_notes_window->activateWindow (); |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
507 } |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
508 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
509 void |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
510 main_window::load_and_display_community_news (int serial) |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
511 { |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
512 QSettings *settings = resource_manager::get_settings (); |
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
513 |
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
514 bool connect_to_web |
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
515 = (settings |
24094
1265c7f0119a
consistent defaults values for all preferences (bug #52090)
Torsten <mttl@mailbox.org>
parents:
24082
diff
changeset
|
516 ? settings->value ("news/allow_web_connection", false).toBool () |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
517 : true); |
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
518 |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
519 QString base_url = "http://octave.org"; |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
520 QString page = "community-news.html"; |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
521 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
522 QThread *worker_thread = new QThread; |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
523 |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
524 news_reader *reader = new news_reader (base_url, page, serial, |
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17939
diff
changeset
|
525 connect_to_web); |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
526 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
527 reader->moveToThread (worker_thread); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
528 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
529 connect (reader, SIGNAL (display_news_signal (const QString&)), |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
530 this, SLOT (display_community_news (const QString&))); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
531 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
532 connect (worker_thread, SIGNAL (started (void)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
533 reader, SLOT (process (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
534 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
535 connect (reader, SIGNAL (finished (void)), worker_thread, SLOT (quit (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
536 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
537 connect (reader, SIGNAL (finished (void)), reader, SLOT (deleteLater (void))); |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
538 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
539 connect (worker_thread, SIGNAL (finished (void)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
540 worker_thread, SLOT (deleteLater (void))); |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
541 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
542 worker_thread->start (); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
543 } |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
544 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
545 void |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
546 main_window::display_community_news (const QString& news) |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
547 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
548 if (! m_community_news_window) |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
549 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
550 m_community_news_window = new QWidget; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
551 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
552 QTextBrowser *browser = new QTextBrowser (m_community_news_window); |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
553 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
554 browser->setHtml (news); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
555 browser->setObjectName ("OctaveNews"); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
556 browser->setOpenExternalLinks (true); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
557 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
558 QVBoxLayout *vlayout = new QVBoxLayout; |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
559 |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
560 vlayout->addWidget (browser); |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
561 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
562 m_community_news_window->setLayout (vlayout); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
563 m_community_news_window->setWindowTitle (tr ("Octave Community News")); |
18839
41980d0a5fd2
center the community news window on the screen not on the desktop (bug #42567)
Torsten <ttl@justmail.de>
parents:
18833
diff
changeset
|
564 |
41980d0a5fd2
center the community news window on the screen not on the desktop (bug #42567)
Torsten <ttl@justmail.de>
parents:
18833
diff
changeset
|
565 // center the window on the screen where octave is running |
41980d0a5fd2
center the community news window on the screen not on the desktop (bug #42567)
Torsten <ttl@justmail.de>
parents:
18833
diff
changeset
|
566 QDesktopWidget *m_desktop = QApplication::desktop (); |
41980d0a5fd2
center the community news window on the screen not on the desktop (bug #42567)
Torsten <ttl@justmail.de>
parents:
18833
diff
changeset
|
567 int screen = m_desktop->screenNumber (this); // screen of the main window |
41980d0a5fd2
center the community news window on the screen not on the desktop (bug #42567)
Torsten <ttl@justmail.de>
parents:
18833
diff
changeset
|
568 QRect screen_geo = m_desktop->availableGeometry (screen); |
41980d0a5fd2
center the community news window on the screen not on the desktop (bug #42567)
Torsten <ttl@justmail.de>
parents:
18833
diff
changeset
|
569 int win_x = screen_geo.width (); // width of the screen |
41980d0a5fd2
center the community news window on the screen not on the desktop (bug #42567)
Torsten <ttl@justmail.de>
parents:
18833
diff
changeset
|
570 int win_y = screen_geo.height (); // height of the screen |
41980d0a5fd2
center the community news window on the screen not on the desktop (bug #42567)
Torsten <ttl@justmail.de>
parents:
18833
diff
changeset
|
571 int news_x = std::min (640, win_x-80); // desired width of news window |
41980d0a5fd2
center the community news window on the screen not on the desktop (bug #42567)
Torsten <ttl@justmail.de>
parents:
18833
diff
changeset
|
572 int news_y = std::min (480, win_y-80); // desired height of news window |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
573 m_community_news_window->resize (news_x, news_y); // set size and center |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
574 m_community_news_window->move ((win_x - m_community_news_window->width ())/2, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
575 (win_y - m_community_news_window->height ())/2); |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
576 } |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
577 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
578 if (! m_community_news_window->isVisible ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
579 m_community_news_window->show (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
580 else if (m_community_news_window->isMinimized ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
581 m_community_news_window->showNormal (); |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
582 |
18002
67978cb5d269
fix icons for the release and community windows
Torsten <ttl@justmail.de>
parents:
18001
diff
changeset
|
583 // same icon as release notes |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
584 m_community_news_window->setWindowIcon (QIcon (m_release_notes_icon)); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
585 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
586 m_community_news_window->raise (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
587 m_community_news_window->activateWindow (); |
17939
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
588 } |
16cf38c39915
display community news in simple window; check timestamp and serial number
John W. Eaton <jwe@octave.org>
parents:
17936
diff
changeset
|
589 |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
590 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
591 main_window::open_bug_tracker_page (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
592 { |
17509 | 593 QDesktopServices::openUrl (QUrl ("http://octave.org/bugs.html")); |
13501 | 594 } |
595 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
596 void |
17509 | 597 main_window::open_octave_packages_page (void) |
15989
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
598 { |
17509 | 599 QDesktopServices::openUrl (QUrl ("http://octave.org/packages.html")); |
15989
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
600 } |
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
601 |
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
602 void |
17509 | 603 main_window::open_contribute_page (void) |
604 { | |
22211
6065bd58db2b
use contribute/donate consistently in GUI (bug #44335)
Sahil Badyal <sbadyals@gmail.com>
parents:
22177
diff
changeset
|
605 QDesktopServices::openUrl (QUrl ("http://octave.org/contribute.html")); |
17509 | 606 } |
607 | |
608 void | |
22211
6065bd58db2b
use contribute/donate consistently in GUI (bug #44335)
Sahil Badyal <sbadyals@gmail.com>
parents:
22177
diff
changeset
|
609 main_window::open_donate_page (void) |
17509 | 610 { |
22211
6065bd58db2b
use contribute/donate consistently in GUI (bug #44335)
Sahil Badyal <sbadyals@gmail.com>
parents:
22177
diff
changeset
|
611 QDesktopServices::openUrl (QUrl ("http://octave.org/donate.html")); |
13533
edaf8e72070e
Added urls for Agora and Octave Forge in Community Window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13532
diff
changeset
|
612 } |
edaf8e72070e
Added urls for Agora and Octave Forge in Community Window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13532
diff
changeset
|
613 |
edaf8e72070e
Added urls for Agora and Octave Forge in Community Window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13532
diff
changeset
|
614 void |
17676
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17674
diff
changeset
|
615 main_window::process_settings_dialog_request (const QString& desired_tab) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
616 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
617 if (m_settings_dlg) // m_settings_dlg is a guarded pointer! |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
618 { |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
619 // here the dialog is still open and called once again |
19632
101ce4eaa56c
prevent opening the settings dialog multiple times
Torsten <ttl@justmail.de>
parents:
19631
diff
changeset
|
620 if (! desired_tab.isEmpty ()) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
621 m_settings_dlg->show_tab (desired_tab); |
19632
101ce4eaa56c
prevent opening the settings dialog multiple times
Torsten <ttl@justmail.de>
parents:
19631
diff
changeset
|
622 return; |
101ce4eaa56c
prevent opening the settings dialog multiple times
Torsten <ttl@justmail.de>
parents:
19631
diff
changeset
|
623 } |
101ce4eaa56c
prevent opening the settings dialog multiple times
Torsten <ttl@justmail.de>
parents:
19631
diff
changeset
|
624 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
625 m_settings_dlg = new settings_dialog (this, desired_tab); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
626 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
627 connect (m_settings_dlg, SIGNAL (apply_new_settings (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
628 this, SLOT (request_reload_settings (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
629 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
630 m_settings_dlg->setModal (false); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
631 m_settings_dlg->setAttribute (Qt::WA_DeleteOnClose); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
632 m_settings_dlg->show (); |
14588
fa52c6e84ae0
Added controls and settings for changing the terminal font.
"Israel Herraiz <israel.herraiz@upm.es>"
parents:
14586
diff
changeset
|
633 } |
fa52c6e84ae0
Added controls and settings for changing the terminal font.
"Israel Herraiz <israel.herraiz@upm.es>"
parents:
14586
diff
changeset
|
634 |
19631
4e85ca0b4887
add apply button to the settings dialog (bug #44081)
Torsten <ttl@justmail.de>
parents:
19589
diff
changeset
|
635 void |
20113
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
636 main_window::copy_image_to_clipboard (const QString& file, bool remove_file) |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
637 { |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
638 QClipboard *clipboard = QApplication::clipboard (); |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
639 |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
640 QImage img (file); |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
641 |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
642 if (img.isNull ()) |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
643 { |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
644 // Report error? |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
645 return; |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
646 } |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
647 |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
648 clipboard->setImage (img); |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
649 |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
650 if (remove_file) |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
651 QFile::remove (file); |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
652 } |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
653 |
c36f2b083613
make copying figures to clipboard work (bug #44866)
John W. Eaton <jwe@octave.org>
parents:
20091
diff
changeset
|
654 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
655 main_window::show_about_octave (void) |
19631
4e85ca0b4887
add apply button to the settings dialog (bug #44081)
Torsten <ttl@justmail.de>
parents:
19589
diff
changeset
|
656 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
657 std::string message |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
658 = octave_name_version_copyright_copying_warranty_and_bugs (true); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
659 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
660 QMessageBox::about (this, tr ("About Octave"), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
661 QString::fromStdString (message)); |
19631
4e85ca0b4887
add apply button to the settings dialog (bug #44081)
Torsten <ttl@justmail.de>
parents:
19589
diff
changeset
|
662 } |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
663 |
14588
fa52c6e84ae0
Added controls and settings for changing the terminal font.
"Israel Herraiz <israel.herraiz@upm.es>"
parents:
14586
diff
changeset
|
664 void |
16413
28136851099a
remove _terminal pointer from main_window, it is contained by other Qt object
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16399
diff
changeset
|
665 main_window::notice_settings (const QSettings *settings) |
14588
fa52c6e84ae0
Added controls and settings for changing the terminal font.
"Israel Herraiz <israel.herraiz@upm.es>"
parents:
14586
diff
changeset
|
666 { |
16413
28136851099a
remove _terminal pointer from main_window, it is contained by other Qt object
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16399
diff
changeset
|
667 // QSettings pointer is checked before emitting. |
14998
de3a318128f2
Added support for changing the terminal cursor and the cursor blinking.
Jacob Dawid <jacob.dawid@gmail.com>
parents:
14996
diff
changeset
|
668 |
15787
b081fbe80174
provide separate icons for gui's floating widgets
Torsten <ttl@justmail.de>
parents:
15758
diff
changeset
|
669 // the widget's icons (when floating) |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
670 QString icon_set |
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
671 = settings->value ("DockWidgets/widget_icon_set", "NONE").toString (); |
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
672 |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
673 static struct |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
674 { |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
675 QString name; |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
676 QString path; |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
677 } |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
678 |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
679 widget_icon_data[] = |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
680 { |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
681 // array of possible icon sets (name, path (complete for NONE)) |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
682 // the first entry here is the default! |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
683 {"NONE", ":/actions/icons/logo.png"}, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
684 {"GRAPHIC", ":/actions/icons/graphic_logo_"}, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
685 {"LETTER", ":/actions/icons/letter_logo_"}, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
686 {"", ""} // end marker has empty name |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
687 }; |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
688 |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
689 int count = 0; |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
690 int icon_set_found = 0; // default |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
691 |
20955
77f5591878bf
maint: Use '! expr' rather than '!expr' to conform to coding guidelines.
Rik <rik@octave.org>
parents:
20278
diff
changeset
|
692 while (! widget_icon_data[count].name.isEmpty ()) |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
693 { |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
694 // while not end of data |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
695 if (widget_icon_data[count].name == icon_set) |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
696 { |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
697 // data of desired icon set found |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
698 icon_set_found = count; |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
699 break; |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
700 } |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
701 count++; |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
702 } |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
703 |
15787
b081fbe80174
provide separate icons for gui's floating widgets
Torsten <ttl@justmail.de>
parents:
15758
diff
changeset
|
704 QString icon; |
16798
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
705 foreach (octave_dock_widget *widget, dock_widget_list ()) |
15787
b081fbe80174
provide separate icons for gui's floating widgets
Torsten <ttl@justmail.de>
parents:
15758
diff
changeset
|
706 { |
16798
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
707 QString name = widget->objectName (); |
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
708 if (! name.isEmpty ()) |
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
709 { // if children has a name |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
710 icon = widget_icon_data[icon_set_found].path; // prefix | octave-logo |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
711 if (widget_icon_data[icon_set_found].name != "NONE") |
20230
e914b5399c67
Use in-place operators in C++ code where possible.
Rik <rik@octave.org>
parents:
20186
diff
changeset
|
712 icon += name + ".png"; // add widget name and ext. |
15787
b081fbe80174
provide separate icons for gui's floating widgets
Torsten <ttl@justmail.de>
parents:
15758
diff
changeset
|
713 widget->setWindowIcon (QIcon (icon)); |
b081fbe80174
provide separate icons for gui's floating widgets
Torsten <ttl@justmail.de>
parents:
15758
diff
changeset
|
714 } |
b081fbe80174
provide separate icons for gui's floating widgets
Torsten <ttl@justmail.de>
parents:
15758
diff
changeset
|
715 } |
17619
4288b90f18c4
icons for news and release notes widgets
Torsten <ttl@justmail.de>
parents:
17617
diff
changeset
|
716 if (widget_icon_data[icon_set_found].name != "NONE") |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
717 m_release_notes_icon = widget_icon_data[icon_set_found].path |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
718 + "ReleaseWidget.png"; |
17619
4288b90f18c4
icons for news and release notes widgets
Torsten <ttl@justmail.de>
parents:
17617
diff
changeset
|
719 else |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
720 m_release_notes_icon = ":/actions/icons/logo.png"; |
15787
b081fbe80174
provide separate icons for gui's floating widgets
Torsten <ttl@justmail.de>
parents:
15758
diff
changeset
|
721 |
19847
597fc0fd8e54
make size of toolbar icons depending on scaling of display
Torsten <ttl@justmail.de>
parents:
19846
diff
changeset
|
722 int icon_size_settings = settings->value ("toolbar_icon_size",0).toInt (); |
597fc0fd8e54
make size of toolbar icons depending on scaling of display
Torsten <ttl@justmail.de>
parents:
19846
diff
changeset
|
723 QStyle *st = style (); |
597fc0fd8e54
make size of toolbar icons depending on scaling of display
Torsten <ttl@justmail.de>
parents:
19846
diff
changeset
|
724 int icon_size = st->pixelMetric (QStyle::PM_ToolBarIconSize); |
597fc0fd8e54
make size of toolbar icons depending on scaling of display
Torsten <ttl@justmail.de>
parents:
19846
diff
changeset
|
725 |
597fc0fd8e54
make size of toolbar icons depending on scaling of display
Torsten <ttl@justmail.de>
parents:
19846
diff
changeset
|
726 if (icon_size_settings == 1) |
597fc0fd8e54
make size of toolbar icons depending on scaling of display
Torsten <ttl@justmail.de>
parents:
19846
diff
changeset
|
727 icon_size = st->pixelMetric (QStyle::PM_LargeIconSize); |
597fc0fd8e54
make size of toolbar icons depending on scaling of display
Torsten <ttl@justmail.de>
parents:
19846
diff
changeset
|
728 else if (icon_size_settings == -1) |
597fc0fd8e54
make size of toolbar icons depending on scaling of display
Torsten <ttl@justmail.de>
parents:
19846
diff
changeset
|
729 icon_size = st->pixelMetric (QStyle::PM_SmallIconSize); |
597fc0fd8e54
make size of toolbar icons depending on scaling of display
Torsten <ttl@justmail.de>
parents:
19846
diff
changeset
|
730 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
731 m_main_tool_bar->setIconSize (QSize (icon_size,icon_size)); |
16525
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
732 |
18733
f6f1f27026bb
status bars and code folding a user preference (bug #42306)
Torsten <ttl@justmail.de>
parents:
18717
diff
changeset
|
733 if (settings->value ("show_status_bar",true).toBool ()) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
734 m_status_bar->show (); |
18733
f6f1f27026bb
status bars and code folding a user preference (bug #42306)
Torsten <ttl@justmail.de>
parents:
18717
diff
changeset
|
735 else |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
736 m_status_bar->hide (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
737 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
738 m_prevent_readline_conflicts |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
739 = settings->value ("shortcuts/prevent_readline_conflicts", true).toBool (); |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
740 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
741 m_suppress_dbg_location |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
742 = ! settings->value ("terminal/print_debug_location", false).toBool (); |
19585
f9a944b9e1cb
provide a user preference for printing the debug location in the terminal
Torsten <ttl@justmail.de>
parents:
19572
diff
changeset
|
743 |
15164
bc801a44bb1f
follow Octave pattern for resource_manager singleton
John W. Eaton <jwe@octave.org>
parents:
15106
diff
changeset
|
744 resource_manager::update_network_settings (); |
19882
b403780efe90
make sure shortcuts are active in editor after settings dialog (bug #44397)
Torsten <ttl@justmail.de>
parents:
19868
diff
changeset
|
745 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
746 emit active_dock_changed (nullptr, m_active_dock); // update dock widget styles |
19907 | 747 |
748 configure_shortcuts (); | |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
749 set_global_shortcuts (m_active_dock == m_command_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
750 disable_menu_shortcuts (m_active_dock == m_editor_window); |
23810
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
751 |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
752 |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
753 // Set cursor blinking depending on the settings |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
754 // Cursor blinking: consider old terminal related setting if not yet set |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
755 // TODO: This pref. can be deprecated / removed if Qt adds support for |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
756 // getting the cursor blink preferences from all OS environments |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
757 bool cursor_blinking; |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
758 |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
759 if (settings->contains ("cursor_blinking")) |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
760 cursor_blinking = settings->value ("cursor_blinking",true).toBool (); |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
761 else |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
762 cursor_blinking = settings->value ("terminal/cursorBlinking",true).toBool (); |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
763 |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
764 if (cursor_blinking) |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
765 QApplication::setCursorFlashTime (1000); // 1000 ms flash time |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
766 else |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
767 QApplication::setCursorFlashTime (0); // no flashing |
9c24aae7515f
allow cursor flashing to be configured globally in gui (bug #51460)
Torsten <mttl@mailbox.org>
parents:
23807
diff
changeset
|
768 |
13501 | 769 } |
770 | |
19714
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19702
diff
changeset
|
771 void |
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19702
diff
changeset
|
772 main_window::confirm_shutdown_octave (void) |
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19702
diff
changeset
|
773 { |
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19702
diff
changeset
|
774 bool closenow = true; |
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19702
diff
changeset
|
775 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
776 if (m_start_gui) |
19714
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19702
diff
changeset
|
777 { |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
778 QSettings *settings = resource_manager::get_settings (); |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
779 |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
780 if (settings->value ("prompt_to_exit", false).toBool ()) |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
781 { |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
782 int ans = QMessageBox::question (this, tr ("Octave"), |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
783 tr ("Are you sure you want to exit Octave?"), |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
784 (QMessageBox::Ok |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
785 | QMessageBox::Cancel), |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
786 QMessageBox::Ok); |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
787 |
21568
3d60ed163b70
maint: Eliminate bad spacing around '='.
Rik <rik@octave.org>
parents:
21439
diff
changeset
|
788 if (ans != QMessageBox::Ok) |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
789 closenow = false; |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
790 } |
19714
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19702
diff
changeset
|
791 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
792 #if defined (HAVE_QSCINTILLA) |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
793 if (closenow) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
794 closenow = m_editor_window->check_closing (); |
19714
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19702
diff
changeset
|
795 #endif |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
796 } |
19714
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19702
diff
changeset
|
797 |
20091
89d843d6de14
Add mutex lock to shutdown confirmation for proper thread timing (bug #44751).
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20039
diff
changeset
|
798 // Wait for link thread to go to sleep state. |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
799 m_octave_qt_link->lock (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
800 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
801 m_octave_qt_link->shutdown_confirmation (closenow); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
802 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
803 m_octave_qt_link->unlock (); |
20091
89d843d6de14
Add mutex lock to shutdown confirmation for proper thread timing (bug #44751).
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20039
diff
changeset
|
804 |
19714
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19702
diff
changeset
|
805 // Awake the worker thread so that it continues shutting down (or not). |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
806 m_octave_qt_link->wake_all (); |
19714
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19702
diff
changeset
|
807 } |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
808 |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
809 void |
16468
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
810 main_window::prepare_to_exit (void) |
14693
c952f1e35e50
Added patch from Marco Atzeri for QTerminal to build with cygwin. Removed some compiler warnings.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14692
diff
changeset
|
811 { |
22177
6e9f5408c0db
Save settings in Qt convention, delete all children in destructors (bug #45366)
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
22089
diff
changeset
|
812 // Find files dialog is constructed dynamically, not at time of main_window |
6e9f5408c0db
Save settings in Qt convention, delete all children in destructors (bug #45366)
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
22089
diff
changeset
|
813 // construction. Connecting it to qApp aboutToQuit signal would have |
6e9f5408c0db
Save settings in Qt convention, delete all children in destructors (bug #45366)
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
22089
diff
changeset
|
814 // caused it to run after QSettings deleted. |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
815 if (m_find_files_dlg) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
816 m_find_files_dlg->save_settings (); |
22177
6e9f5408c0db
Save settings in Qt convention, delete all children in destructors (bug #45366)
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
22089
diff
changeset
|
817 |
14712
5cb54cca8a06
Completion of code reformatting.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14709
diff
changeset
|
818 write_settings (); |
14693
c952f1e35e50
Added patch from Marco Atzeri for QTerminal to build with cygwin. Removed some compiler warnings.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14692
diff
changeset
|
819 } |
c952f1e35e50
Added patch from Marco Atzeri for QTerminal to build with cygwin. Removed some compiler warnings.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14692
diff
changeset
|
820 |
c952f1e35e50
Added patch from Marco Atzeri for QTerminal to build with cygwin. Removed some compiler warnings.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14692
diff
changeset
|
821 void |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
822 main_window::reset_windows (void) |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
823 { |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
824 QSettings *settings = resource_manager::get_default_settings (); |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
825 |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
826 set_window_layout (settings); |
18117
a829f40933a8
fix minimized main window after resetting window layout (bug #40832)
Torsten <ttl@justmail.de>
parents:
18034
diff
changeset
|
827 showNormal (); // make sure main window is not minimized |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
828 } |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
829 |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
830 void |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
831 main_window::change_directory (const QString& dir) |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
832 { |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
833 // Remove existing entry, if any, then add new directory at top and |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
834 // mark it as the current directory. Finally, update the file list |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
835 // widget. |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
836 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
837 int index = m_current_directory_combo_box->findText (dir); |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
838 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
839 if (index >= 0) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
840 m_current_directory_combo_box->removeItem (index); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
841 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
842 m_current_directory_combo_box->insertItem (0, dir); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
843 m_current_directory_combo_box->setCurrentIndex (0); |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
844 } |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
845 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
846 void |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
847 main_window::browse_for_directory (void) |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
848 { |
16578
0eca6c5657c9
force focus to command window after browsing for directory
John W. Eaton <jwe@octave.org>
parents:
16576
diff
changeset
|
849 QString dir |
23795
980f39c3ab90
Use C++11 nullptr rather than 0 in code (bug #51565).
Rik <rik@octave.org>
parents:
23774
diff
changeset
|
850 = QFileDialog::getExistingDirectory (this, tr ("Browse directories"), nullptr, |
18778
6e2b1de8348e
only show directories in dialog box for setting new octave directory
Torsten <ttl@justmail.de>
parents:
18572
diff
changeset
|
851 QFileDialog::ShowDirsOnly | |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
852 QFileDialog::DontUseNativeDialog); |
16578
0eca6c5657c9
force focus to command window after browsing for directory
John W. Eaton <jwe@octave.org>
parents:
16576
diff
changeset
|
853 |
0eca6c5657c9
force focus to command window after browsing for directory
John W. Eaton <jwe@octave.org>
parents:
16576
diff
changeset
|
854 set_current_working_directory (dir); |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
855 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
856 // FIXME: on Windows systems, the command window freezes after the |
16578
0eca6c5657c9
force focus to command window after browsing for directory
John W. Eaton <jwe@octave.org>
parents:
16576
diff
changeset
|
857 // previous actions. Forcing the focus appears to unstick it. |
0eca6c5657c9
force focus to command window after browsing for directory
John W. Eaton <jwe@octave.org>
parents:
16576
diff
changeset
|
858 |
0eca6c5657c9
force focus to command window after browsing for directory
John W. Eaton <jwe@octave.org>
parents:
16576
diff
changeset
|
859 focus_command_window (); |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
860 } |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
861 |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
862 void |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
863 main_window::set_current_working_directory (const QString& dir) |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
864 { |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
865 // Change to dir if it is an existing directory. |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
866 |
23450
855122b993da
maint: Wrap tertiary operator in parentheses "(COND ? x : y)".
Rik <rik@octave.org>
parents:
23449
diff
changeset
|
867 QString xdir = (dir.isEmpty () ? "." : dir); |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
868 |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
869 QFileInfo fileInfo (xdir); |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
870 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
871 if (fileInfo.exists () && fileInfo.isDir ()) |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
872 octave_link::post_event (this, &main_window::change_directory_callback, |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
873 xdir.toStdString ()); |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
874 } |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
875 |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
876 void |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
877 main_window::change_directory_up (void) |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
878 { |
16526
01541f7321f7
correctly track directory for cd ..
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
879 set_current_working_directory (".."); |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
880 } |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
881 |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
882 // Slot that is called if return is pressed in the line edit of the |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
883 // combobox to change to a new directory or a directory that is already |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
884 // in the drop down list. |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
885 |
15626
1cc10ce368ea
enable entering a new directory in the current directory combobox
Torsten <ttl@justmail.de>
parents:
15607
diff
changeset
|
886 void |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
887 main_window::accept_directory_line_edit (void) |
15626
1cc10ce368ea
enable entering a new directory in the current directory combobox
Torsten <ttl@justmail.de>
parents:
15607
diff
changeset
|
888 { |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
889 // Get new directory name, and change to it if it is new. Otherwise, |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
890 // the combo box will triggers the "activated" signal to change to the |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
891 // directory. |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
892 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
893 QString dir = m_current_directory_combo_box->currentText (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
894 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
895 int index = m_current_directory_combo_box->findText (dir); |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
896 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
897 if (index < 0) |
15626
1cc10ce368ea
enable entering a new directory in the current directory combobox
Torsten <ttl@justmail.de>
parents:
15607
diff
changeset
|
898 set_current_working_directory (dir); |
1cc10ce368ea
enable entering a new directory in the current directory combobox
Torsten <ttl@justmail.de>
parents:
15607
diff
changeset
|
899 } |
1cc10ce368ea
enable entering a new directory in the current directory combobox
Torsten <ttl@justmail.de>
parents:
15607
diff
changeset
|
900 |
14726
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
901 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
902 main_window::execute_command_in_terminal (const QString& command) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
903 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
904 octave_cmd_exec *cmd = new octave_cmd_exec (command); |
24629
57f36275e605
handle run file and execute command in terminal in the same way
John W. Eaton <jwe@octave.org>
parents:
24628
diff
changeset
|
905 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
906 m_cmd_queue.add_cmd (cmd); |
24629
57f36275e605
handle run file and execute command in terminal in the same way
John W. Eaton <jwe@octave.org>
parents:
24628
diff
changeset
|
907 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
908 if (focus_console_after_command ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
909 focus_command_window (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
910 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
911 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
912 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
913 main_window::run_file_in_terminal (const QFileInfo& info) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
914 { |
24629
57f36275e605
handle run file and execute command in terminal in the same way
John W. Eaton <jwe@octave.org>
parents:
24628
diff
changeset
|
915 octave_cmd_eval *cmd = new octave_cmd_eval (info); |
57f36275e605
handle run file and execute command in terminal in the same way
John W. Eaton <jwe@octave.org>
parents:
24628
diff
changeset
|
916 |
57f36275e605
handle run file and execute command in terminal in the same way
John W. Eaton <jwe@octave.org>
parents:
24628
diff
changeset
|
917 m_cmd_queue.add_cmd (cmd); |
57f36275e605
handle run file and execute command in terminal in the same way
John W. Eaton <jwe@octave.org>
parents:
24628
diff
changeset
|
918 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
919 if (focus_console_after_command ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
920 focus_command_window (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
921 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
922 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
923 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
924 main_window::handle_new_figure_request (void) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
925 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
926 octave_link::post_event (this, &main_window::new_figure_callback); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
927 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
928 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
929 void |
16438
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
930 main_window::handle_enter_debugger (void) |
14726
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
931 { |
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
932 setWindowTitle ("Octave (Debugging)"); |
16438
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
933 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
934 m_debug_continue->setEnabled (true); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
935 m_debug_step_into->setEnabled (true); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
936 m_debug_step_over->setEnabled (true); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
937 m_debug_step_out->setEnabled (true); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
938 m_debug_quit->setEnabled (true); |
16438
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
939 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
940 #if defined (HAVE_QSCINTILLA) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
941 m_editor_window->handle_enter_debug_mode (); |
15873
7d300b85ee25
allow build to proceed if either Qt or QScintilla is missing
John W. Eaton <jwe@octave.org>
parents:
15848
diff
changeset
|
942 #endif |
14726
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
943 } |
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
944 |
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
945 void |
16438
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
946 main_window::handle_exit_debugger (void) |
14726
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
947 { |
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
948 setWindowTitle ("Octave"); |
16438
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
949 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
950 m_debug_continue->setEnabled (false); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
951 m_debug_step_into->setEnabled (false); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
952 m_debug_step_over->setEnabled (false); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
953 m_debug_step_out->setEnabled (false); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
954 m_debug_quit->setEnabled (false); |
16438
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
955 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
956 #if defined (HAVE_QSCINTILLA) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
957 m_editor_window->handle_exit_debug_mode (); |
15873
7d300b85ee25
allow build to proceed if either Qt or QScintilla is missing
John W. Eaton <jwe@octave.org>
parents:
15848
diff
changeset
|
958 #endif |
14752
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
959 } |
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
960 |
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
961 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
962 main_window::debug_continue (void) |
14752
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
963 { |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
964 octave_cmd_debug *cmd |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
965 = new octave_cmd_debug ("cont", m_suppress_dbg_location); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
966 m_cmd_queue.add_cmd (cmd); |
14752
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
967 } |
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
968 |
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
969 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
970 main_window::debug_step_into (void) |
14752
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
971 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
972 octave_cmd_debug *cmd = new octave_cmd_debug ("in", m_suppress_dbg_location); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
973 m_cmd_queue.add_cmd (cmd); |
14752
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
974 } |
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
975 |
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
976 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
977 main_window::debug_step_over (void) |
14752
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
978 { |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
979 octave_cmd_debug *cmd |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
980 = new octave_cmd_debug ("step", m_suppress_dbg_location); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
981 m_cmd_queue.add_cmd (cmd); |
14752
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
982 } |
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
983 |
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
984 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
985 main_window::debug_step_out (void) |
14752
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
986 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
987 octave_cmd_debug *cmd = new octave_cmd_debug ("out", m_suppress_dbg_location); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
988 m_cmd_queue.add_cmd (cmd); |
14752
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
989 } |
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
990 |
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
991 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
992 main_window::debug_quit (void) |
14752
564cc673bcc5
Added menu for debugging. Now sending debug control events, but these seem to not work flawlessly
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14727
diff
changeset
|
993 { |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
994 octave_cmd_debug *cmd |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
995 = new octave_cmd_debug ("quit", m_suppress_dbg_location); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
996 m_cmd_queue.add_cmd (cmd); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
997 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
998 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
999 // |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1000 // Functions related to file editing |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1001 // |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1002 // These are moved from editor to here for also using them when octave |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1003 // is built without qscintilla |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1004 // |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1005 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1006 main_window::request_open_file (void) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1007 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1008 // Open file isn't a file_editor_tab or editor function since the file |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1009 // might be opened in an external editor. Hence, functionality is here. |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1010 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1011 QSettings *settings = resource_manager::get_settings (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1012 bool is_internal = m_editor_window |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1013 && ! settings->value ("useCustomFileEditor",false).toBool (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1014 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1015 // Create a NonModal message. |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1016 QWidget *p = this; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1017 if (is_internal) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1018 p = m_editor_window; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1019 QFileDialog *fileDialog = new QFileDialog (p); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1020 fileDialog->setNameFilter (tr ("Octave Files (*.m);;All Files (*)")); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1021 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1022 // Giving trouble under KDE (problem is related to Qt signal handling on unix, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1023 // see https://bugs.kde.org/show_bug.cgi?id=260719 , |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1024 // it had/has no effect on Windows, though) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1025 fileDialog->setOption (QFileDialog::DontUseNativeDialog, true); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1026 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1027 // define a new grid layout with the extra elements |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1028 QGridLayout *extra = new QGridLayout (fileDialog); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1029 QFrame *separator = new QFrame (fileDialog); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1030 separator->setFrameShape (QFrame::HLine); // horizontal line as separator |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1031 separator->setFrameStyle (QFrame::Sunken); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1032 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1033 if (is_internal) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1034 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1035 // combo box for encoding, only when using the internal editor |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1036 QLabel *label_enc = new QLabel (tr ("File Encoding:")); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1037 QComboBox *combo_enc = new QComboBox (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1038 resource_manager::combo_encoding (combo_enc); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1039 m_file_encoding = QString (); // default |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1040 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1041 // track changes in the combo boxes |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1042 connect (combo_enc, SIGNAL (currentIndexChanged (QString)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1043 this, SLOT (set_file_encoding (QString))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1044 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1045 // build the extra grid layout |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1046 extra->addWidget (separator,0,0,1,3); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1047 extra->addWidget (label_enc,1,0); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1048 extra->addWidget (combo_enc,1,1); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1049 extra->addItem (new QSpacerItem (1,20,QSizePolicy::Expanding, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1050 QSizePolicy::Fixed), 1,2); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1051 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1052 // and add the extra grid layout to the dialog's layout |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1053 QGridLayout *dialog_layout = dynamic_cast<QGridLayout *> ( |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1054 fileDialog->layout ()); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1055 dialog_layout->addLayout (extra,dialog_layout->rowCount (),0, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1056 1,dialog_layout->columnCount ()); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1057 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1058 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1059 fileDialog->setAcceptMode (QFileDialog::AcceptOpen); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1060 fileDialog->setViewMode (QFileDialog::Detail); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1061 fileDialog->setFileMode (QFileDialog::ExistingFiles); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1062 fileDialog->setDirectory (m_current_directory_combo_box->itemText (0)); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1063 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1064 connect (fileDialog, SIGNAL (filesSelected (const QStringList&)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1065 this, SLOT (request_open_files (const QStringList&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1066 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1067 fileDialog->setWindowModality (Qt::NonModal); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1068 fileDialog->setAttribute (Qt::WA_DeleteOnClose); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1069 fileDialog->show (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1070 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1071 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1072 // Create a new script |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1073 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1074 main_window::request_new_script (const QString& commands) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1075 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1076 emit new_file_signal (commands); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1077 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1078 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1079 // Create a new function and open it |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1080 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1081 main_window::request_new_function (bool) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1082 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1083 bool ok; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1084 // Get the name of the new function: Parent of the input dialog is the |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1085 // editor window or the main window. The latter is chosen, if a custom |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1086 // editor is used or qscintilla is not available |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1087 QWidget *p = m_editor_window; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1088 QSettings *settings = resource_manager::get_settings (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1089 if (! p || settings->value ("useCustomFileEditor",false).toBool ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1090 p = this; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1091 QString new_name = QInputDialog::getText (p, tr ("New Function"), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1092 tr ("New function name:\n"), QLineEdit::Normal, "", &ok); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1093 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1094 if (ok && new_name.length () > 0) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1095 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1096 // append suffix if it not already exists |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1097 if (new_name.rightRef (2) != ".m") |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1098 new_name.append (".m"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1099 // check whether new files are created without prompt |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1100 if (! settings->value ("editor/create_new_file",false).toBool ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1101 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1102 // no, so enable this settings and wait for end of new file loading |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1103 settings->setValue ("editor/create_new_file",true); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1104 connect (m_editor_window, SIGNAL (file_loaded_signal (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1105 this, SLOT (restore_create_file_setting (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1106 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1107 // start the edit command |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1108 execute_command_in_terminal ("edit " + new_name); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1109 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1110 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1111 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1112 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1113 main_window::handle_edit_mfile_request (const QString& fname, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1114 const QString& ffile, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1115 const QString& curr_dir, int line) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1116 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1117 octave::interpreter& interp |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1118 = octave::__get_interpreter__ ("main_window::clear_workspace_callback"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1119 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1120 // Is it a regular function within the search path? (Call __which__) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1121 octave_value_list fct = F__which__ (interp, ovl (fname.toStdString ()),0); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1122 octave_map map = fct(0).map_value (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1123 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1124 QString type = QString::fromStdString ( |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1125 map.contents ("type").data ()[0].string_value ()); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1126 QString name = QString::fromStdString ( |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1127 map.contents ("name").data ()[0].string_value ()); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1128 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1129 QString message = QString (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1130 QString filename = QString (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1131 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1132 if (type == QString ("built-in function")) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1133 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1134 // built in function: can't edit |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1135 message = tr ("%1 is a built-in function"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1136 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1137 else if (type.isEmpty ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1138 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1139 // function not known to octave -> try directory of edited file |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1140 // get directory |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1141 QDir dir; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1142 if (ffile.isEmpty ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1143 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1144 if (curr_dir.isEmpty ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1145 dir = QDir (m_current_directory_combo_box->itemText (0)); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1146 else |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1147 dir = QDir (curr_dir); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1148 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1149 else |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1150 dir = QDir (QFileInfo (ffile).canonicalPath ()); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1151 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1152 // function not known to octave -> try directory of edited file |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1153 QFileInfo file = QFileInfo (dir, fname + ".m"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1154 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1155 if (file.exists ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1156 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1157 filename = file.canonicalFilePath (); // local file exists |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1158 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1159 else |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1160 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1161 // local file does not exist -> try private directory |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1162 file = QFileInfo (ffile); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1163 file = QFileInfo (QDir (file.canonicalPath () + "/private"), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1164 fname + ".m"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1165 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1166 if (file.exists ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1167 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1168 filename = file.canonicalFilePath (); // private function exists |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1169 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1170 else |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1171 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1172 message = tr ("Can not find function %1"); // no file found |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1173 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1174 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1175 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1176 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1177 if (! message.isEmpty ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1178 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1179 QMessageBox *msgBox |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1180 = new QMessageBox (QMessageBox::Critical, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1181 tr ("Octave Editor"), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1182 message.arg (name), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1183 QMessageBox::Ok, this); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1184 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1185 msgBox->setWindowModality (Qt::NonModal); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1186 msgBox->setAttribute (Qt::WA_DeleteOnClose); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1187 msgBox->show (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1188 return; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1189 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1190 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1191 if (filename.isEmpty ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1192 filename = QString::fromStdString ( |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1193 map.contents ("file").data ()[0].string_value ()); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1194 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1195 if (! filename.endsWith (".m")) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1196 filename.append (".m"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1197 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1198 emit open_file_signal (filename, QString (), line); // default encoding |
14726
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
1199 } |
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
1200 |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
1201 void |
16576
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1202 main_window::handle_insert_debugger_pointer_request (const QString& file, |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1203 int line) |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1204 { |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1205 bool cmd_focus = command_window_has_focus (); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1206 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1207 emit insert_debugger_pointer_signal (file, line); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1208 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1209 if (cmd_focus) |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1210 focus_command_window (); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1211 } |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1212 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1213 void |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1214 main_window::handle_delete_debugger_pointer_request (const QString& file, |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1215 int line) |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1216 { |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1217 bool cmd_focus = command_window_has_focus (); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1218 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1219 emit delete_debugger_pointer_signal (file, line); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1220 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1221 if (cmd_focus) |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1222 focus_command_window (); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1223 } |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1224 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1225 void |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1226 main_window::handle_update_breakpoint_marker_request (bool insert, |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1227 const QString& file, |
21158
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
1228 int line, |
22599
51b395d24782
maint: strip tabs and trailing whitespace from C++ sources.
John W. Eaton <jwe@octave.org>
parents:
22587
diff
changeset
|
1229 const QString& cond) |
16576
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1230 { |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1231 bool cmd_focus = command_window_has_focus (); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1232 |
21158
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
1233 emit update_breakpoint_marker_signal (insert, file, line, cond); |
16576
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1234 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1235 if (cmd_focus) |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1236 focus_command_window (); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1237 } |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1238 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1239 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
1240 main_window::read_settings (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
1241 { |
15164
bc801a44bb1f
follow Octave pattern for resource_manager singleton
John W. Eaton <jwe@octave.org>
parents:
15106
diff
changeset
|
1242 QSettings *settings = resource_manager::get_settings (); |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1243 |
20955
77f5591878bf
maint: Use '! expr' rather than '!expr' to conform to coding guidelines.
Rik <rik@octave.org>
parents:
20278
diff
changeset
|
1244 if (! settings) |
16413
28136851099a
remove _terminal pointer from main_window, it is contained by other Qt object
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16399
diff
changeset
|
1245 { |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1246 qDebug ("Error: QSettings pointer from resource manager is NULL."); |
16413
28136851099a
remove _terminal pointer from main_window, it is contained by other Qt object
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16399
diff
changeset
|
1247 return; |
28136851099a
remove _terminal pointer from main_window, it is contained by other Qt object
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16399
diff
changeset
|
1248 } |
15164
bc801a44bb1f
follow Octave pattern for resource_manager singleton
John W. Eaton <jwe@octave.org>
parents:
15106
diff
changeset
|
1249 |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1250 set_window_layout (settings); |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1251 |
15465
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
1252 // restore the list of the last directories |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1253 QStringList curr_dirs |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1254 = settings->value ("MainWindow/current_directory_list").toStringList (); |
15465
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
1255 for (int i=0; i < curr_dirs.size (); i++) |
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
1256 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1257 m_current_directory_combo_box->addItem (curr_dirs.at (i)); |
15465
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
1258 } |
16413
28136851099a
remove _terminal pointer from main_window, it is contained by other Qt object
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16399
diff
changeset
|
1259 emit settings_changed (settings); |
13501 | 1260 } |
1261 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
1262 void |
19303
c6615ca0a11d
horizontal scrollbar for GUI terminal on Windows systems
John W. Eaton <jwe@octave.org>
parents:
19302
diff
changeset
|
1263 main_window::init_terminal_size (void) |
c6615ca0a11d
horizontal scrollbar for GUI terminal on Windows systems
John W. Eaton <jwe@octave.org>
parents:
19302
diff
changeset
|
1264 { |
c6615ca0a11d
horizontal scrollbar for GUI terminal on Windows systems
John W. Eaton <jwe@octave.org>
parents:
19302
diff
changeset
|
1265 emit init_terminal_size_signal (); |
c6615ca0a11d
horizontal scrollbar for GUI terminal on Windows systems
John W. Eaton <jwe@octave.org>
parents:
19302
diff
changeset
|
1266 } |
c6615ca0a11d
horizontal scrollbar for GUI terminal on Windows systems
John W. Eaton <jwe@octave.org>
parents:
19302
diff
changeset
|
1267 |
c6615ca0a11d
horizontal scrollbar for GUI terminal on Windows systems
John W. Eaton <jwe@octave.org>
parents:
19302
diff
changeset
|
1268 void |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1269 main_window::set_window_layout (QSettings *settings) |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1270 { |
18435
4e49bc41f899
fix problems with gui startup (bug #41452) and focus issues (bug #40823)
Torsten <ttl@justmail.de>
parents:
18287
diff
changeset
|
1271 restoreState (settings->value ("MainWindow/windowState").toByteArray ()); |
4e49bc41f899
fix problems with gui startup (bug #41452) and focus issues (bug #40823)
Torsten <ttl@justmail.de>
parents:
18287
diff
changeset
|
1272 restoreGeometry (settings->value ("MainWindow/geometry").toByteArray ()); |
17083
ceca3e65a8fe
make sure a central menu bar does not show a widgets title but "Octave"
Torsten <ttl@justmail.de>
parents:
17029
diff
changeset
|
1273 |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1274 // Restore the geometry of all dock-widgets |
16811
81344ade678f
fix resetting the window layout when some widgets are floating
Torsten <ttl@justmail.de>
parents:
16798
diff
changeset
|
1275 foreach (octave_dock_widget *widget, dock_widget_list ()) |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1276 { |
16811
81344ade678f
fix resetting the window layout when some widgets are floating
Torsten <ttl@justmail.de>
parents:
16798
diff
changeset
|
1277 QString name = widget->objectName (); |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1278 |
16811
81344ade678f
fix resetting the window layout when some widgets are floating
Torsten <ttl@justmail.de>
parents:
16798
diff
changeset
|
1279 if (! name.isEmpty ()) |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1280 { |
16798
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
1281 bool floating = settings->value |
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
1282 ("DockWidgets/" + name + "Floating", false).toBool (); |
17899
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
1283 bool visible = settings->value |
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
1284 ("DockWidgets/" + name + "Visible", true).toBool (); |
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
1285 |
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
1286 // If floating, make window from widget. |
16811
81344ade678f
fix resetting the window layout when some widgets are floating
Torsten <ttl@justmail.de>
parents:
16798
diff
changeset
|
1287 if (floating) |
18435
4e49bc41f899
fix problems with gui startup (bug #41452) and focus issues (bug #40823)
Torsten <ttl@justmail.de>
parents:
18287
diff
changeset
|
1288 { |
24318
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1289 widget->make_window (); |
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1290 |
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1291 if (visible) |
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1292 { |
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1293 if (settings->value ("DockWidgets/" + widget->objectName () |
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1294 + "_minimized").toBool ()) |
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1295 widget->showMinimized (); |
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1296 else |
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1297 widget->setVisible (true); |
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1298 } |
18435
4e49bc41f899
fix problems with gui startup (bug #41452) and focus issues (bug #40823)
Torsten <ttl@justmail.de>
parents:
18287
diff
changeset
|
1299 } |
24318
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1300 else // not floating |
17090
1d544ac39369
show correct undock-button of widgets when window layout is resetted
Torsten <ttl@justmail.de>
parents:
17083
diff
changeset
|
1301 { |
24318
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1302 if (! widget->parent ()) // should not be floating but is |
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1303 widget->make_widget (false); // no docking, just reparent |
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1304 |
17090
1d544ac39369
show correct undock-button of widgets when window layout is resetted
Torsten <ttl@justmail.de>
parents:
17083
diff
changeset
|
1305 widget->make_widget (); |
24318
a17862b28f0d
handle floating widgets on all platforms as done on windows (bug #52378)
Torsten <mttl@mailbox.org>
parents:
24275
diff
changeset
|
1306 widget->setVisible (visible); // not floating -> show |
17090
1d544ac39369
show correct undock-button of widgets when window layout is resetted
Torsten <ttl@justmail.de>
parents:
17083
diff
changeset
|
1307 } |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1308 } |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1309 } |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1310 |
17995
ea1db0ede4ce
make sure Octave is displayed in a global menu bar, not another widget name
Torsten <ttl@justmail.de>
parents:
17988
diff
changeset
|
1311 show (); |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1312 } |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1313 |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1314 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
1315 main_window::write_settings (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
1316 { |
15164
bc801a44bb1f
follow Octave pattern for resource_manager singleton
John W. Eaton <jwe@octave.org>
parents:
15106
diff
changeset
|
1317 QSettings *settings = resource_manager::get_settings (); |
20955
77f5591878bf
maint: Use '! expr' rather than '!expr' to conform to coding guidelines.
Rik <rik@octave.org>
parents:
20278
diff
changeset
|
1318 if (! settings) |
16413
28136851099a
remove _terminal pointer from main_window, it is contained by other Qt object
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16399
diff
changeset
|
1319 { |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1320 qDebug ("Error: QSettings pointer from resource manager is NULL."); |
16413
28136851099a
remove _terminal pointer from main_window, it is contained by other Qt object
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16399
diff
changeset
|
1321 return; |
28136851099a
remove _terminal pointer from main_window, it is contained by other Qt object
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16399
diff
changeset
|
1322 } |
15164
bc801a44bb1f
follow Octave pattern for resource_manager singleton
John W. Eaton <jwe@octave.org>
parents:
15106
diff
changeset
|
1323 |
13537
a43ecce77eec
Introduced a central ResourceManager class.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13536
diff
changeset
|
1324 settings->setValue ("MainWindow/geometry", saveGeometry ()); |
15552
bbbb89cc338f
make a floating widget behave like a normal window (bug #37190)
Torsten <ttl@justmail.de>
parents:
15465
diff
changeset
|
1325 settings->setValue ("MainWindow/windowState", saveState ()); |
15465
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
1326 // write the list of recent used directories |
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
1327 QStringList curr_dirs; |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1328 for (int i=0; i<m_current_directory_combo_box->count (); i++) |
15465
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
1329 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1330 curr_dirs.append (m_current_directory_combo_box->itemText (i)); |
15465
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
1331 } |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
1332 settings->setValue ("MainWindow/current_directory_list", curr_dirs); |
14694
ea11c9d8aa47
Calling qApp->quit () via QMetaObject::invoke caused a segfault, now exits cleanly.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14693
diff
changeset
|
1333 settings->sync (); |
13501 | 1334 } |
1335 | |
15987
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
1336 // Connecting the signals emitted when the visibility of a widget changes. |
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
1337 // This has to be done after the window is shown (see octave-gui.cc) |
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
1338 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
1339 main_window::connect_visibility_changed (void) |
15987
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
1340 { |
17617
9abb1422d60b
correct indication of news-windows visibility in the window menu
Torsten <ttl@justmail.de>
parents:
17599
diff
changeset
|
1341 foreach (octave_dock_widget *widget, dock_widget_list ()) |
9abb1422d60b
correct indication of news-windows visibility in the window menu
Torsten <ttl@justmail.de>
parents:
17599
diff
changeset
|
1342 widget->connect_visibility_changed (); |
18944
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18840
diff
changeset
|
1343 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
1344 #if defined (HAVE_QSCINTILLA) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1345 m_editor_window->enable_menu_shortcuts (false); |
19589
4fe86a372f10
Fix compilation error when building without QScintilla
Mike Miller <mtmiller@ieee.org>
parents:
19585
diff
changeset
|
1346 #endif |
15987
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
1347 } |
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
1348 |
16648
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1349 void |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1350 main_window::copyClipboard (void) |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1351 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1352 if (m_current_directory_combo_box->hasFocus ()) |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1353 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1354 QLineEdit *edit = m_current_directory_combo_box->lineEdit (); |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1355 if (edit && edit->hasSelectedText ()) |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1356 { |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1357 QClipboard *clipboard = QApplication::clipboard (); |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1358 clipboard->setText (edit->selectedText ()); |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1359 } |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1360 } |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1361 else |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1362 emit copyClipboard_signal (); |
16648
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1363 } |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1364 |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1365 void |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1366 main_window::pasteClipboard (void) |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1367 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1368 if (m_current_directory_combo_box->hasFocus ()) |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1369 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1370 QLineEdit *edit = m_current_directory_combo_box->lineEdit (); |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1371 QClipboard *clipboard = QApplication::clipboard (); |
21568
3d60ed163b70
maint: Eliminate bad spacing around '='.
Rik <rik@octave.org>
parents:
21439
diff
changeset
|
1372 QString str = clipboard->text (); |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1373 if (edit && str.length () > 0) |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1374 { |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1375 edit->insert (str); |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1376 } |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1377 } |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1378 else |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
1379 emit pasteClipboard_signal (); |
16648
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1380 } |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1381 |
18555
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1382 void |
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1383 main_window::selectAll (void) |
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1384 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1385 if (m_current_directory_combo_box->hasFocus ()) |
18555
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1386 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1387 QLineEdit *edit = m_current_directory_combo_box->lineEdit (); |
18555
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1388 if (edit) |
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1389 { |
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1390 edit->selectAll (); |
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1391 } |
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1392 } |
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1393 else |
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1394 emit selectAll_signal (); |
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1395 } |
2d5d0d86432e
gui: Add select all menu (Bug #41797)
John Donoghue <john.donoghue@ieee.org>
parents:
18498
diff
changeset
|
1396 |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1397 // Connect the signals emitted when the Octave thread wants to create |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1398 // a dialog box of some sort. Perhaps a better place for this would be |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1399 // as part of the QUIWidgetCreator class. However, mainWindow currently |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1400 // is not a global variable and not accessible for connecting. |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1401 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1402 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1403 main_window::connect_uiwidget_links (void) |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1404 { |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1405 connect (&uiwidget_creator, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1406 SIGNAL (create_dialog (const QString&, const QString&, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1407 const QString&, const QStringList&, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1408 const QString&, const QStringList&)), |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1409 this, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1410 SLOT (handle_create_dialog (const QString&, const QString&, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1411 const QString&, const QStringList&, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1412 const QString&, const QStringList&))); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1413 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1414 // Register QIntList so that list of ints may be part of a signal. |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1415 qRegisterMetaType<QIntList> ("QIntList"); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1416 connect (&uiwidget_creator, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1417 SIGNAL (create_listview (const QStringList&, const QString&, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1418 int, int, const QIntList&, |
16551
6ae555fc8c43
Add questdlg dialog function and fix variety of dialog bugs.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16547
diff
changeset
|
1419 const QString&, const QStringList&, |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1420 const QString&, const QString&)), |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1421 this, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1422 SLOT (handle_create_listview (const QStringList&, const QString&, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1423 int, int, const QIntList&, |
16551
6ae555fc8c43
Add questdlg dialog function and fix variety of dialog bugs.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16547
diff
changeset
|
1424 const QString&, const QStringList&, |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1425 const QString&, const QString&))); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1426 |
16551
6ae555fc8c43
Add questdlg dialog function and fix variety of dialog bugs.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16547
diff
changeset
|
1427 // Register QFloatList so that list of floats may be part of a signal. |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1428 qRegisterMetaType<QFloatList> ("QFloatList"); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1429 connect (&uiwidget_creator, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1430 SIGNAL (create_inputlayout (const QStringList&, const QString&, |
16551
6ae555fc8c43
Add questdlg dialog function and fix variety of dialog bugs.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16547
diff
changeset
|
1431 const QFloatList&, const QFloatList&, |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1432 const QStringList&)), |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1433 this, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1434 SLOT (handle_create_inputlayout (const QStringList&, const QString&, |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1435 const QFloatList&, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1436 const QFloatList&, |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1437 const QStringList&))); |
16579
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
1438 |
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
1439 connect (&uiwidget_creator, |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
1440 SIGNAL (create_filedialog (const QStringList &,const QString&, |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1441 const QString&, const QString&, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1442 const QString&)), |
16579
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
1443 this, |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
1444 SLOT (handle_create_filedialog (const QStringList &, const QString&, |
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
1445 const QString&, const QString&, |
16581
fa4a035e0cf4
Add octave_link uiputfile implementation
John Donoghue <john.donoghue@ieee.org>
parents:
16580
diff
changeset
|
1446 const QString&))); |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1447 } |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1448 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1449 // Create a message dialog with specified string, buttons and decorative |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1450 // text. |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1451 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1452 void |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1453 main_window::handle_create_dialog (const QString& message, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1454 const QString& title, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1455 const QString& icon, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1456 const QStringList& button, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1457 const QString& defbutton, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1458 const QStringList& role) |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1459 { |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1460 MessageDialog *message_dialog = new MessageDialog (message, title, icon, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1461 button, defbutton, role); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1462 message_dialog->setAttribute (Qt::WA_DeleteOnClose); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1463 message_dialog->show (); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1464 } |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1465 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1466 // Create a list dialog with specified list, initially selected, mode, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1467 // view size and decorative text. |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1468 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1469 void |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1470 main_window::handle_create_listview (const QStringList& list, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1471 const QString& mode, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1472 int wd, int ht, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1473 const QIntList& initial, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1474 const QString& name, |
16551
6ae555fc8c43
Add questdlg dialog function and fix variety of dialog bugs.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16547
diff
changeset
|
1475 const QStringList& prompt, |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1476 const QString& ok_string, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1477 const QString& cancel_string) |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1478 { |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1479 ListDialog *list_dialog = new ListDialog (list, mode, wd, ht, |
16551
6ae555fc8c43
Add questdlg dialog function and fix variety of dialog bugs.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16547
diff
changeset
|
1480 initial, name, prompt, |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1481 ok_string, cancel_string); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1482 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1483 list_dialog->setAttribute (Qt::WA_DeleteOnClose); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1484 list_dialog->show (); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1485 } |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1486 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1487 // Create an input dialog with specified prompts and defaults, title and |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1488 // row/column size specifications. |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1489 void |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1490 main_window::handle_create_inputlayout (const QStringList& prompt, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1491 const QString& title, |
16551
6ae555fc8c43
Add questdlg dialog function and fix variety of dialog bugs.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16547
diff
changeset
|
1492 const QFloatList& nr, |
6ae555fc8c43
Add questdlg dialog function and fix variety of dialog bugs.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16547
diff
changeset
|
1493 const QFloatList& nc, |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1494 const QStringList& defaults) |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1495 { |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1496 InputDialog *input_dialog = new InputDialog (prompt, title, nr, nc, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1497 defaults); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1498 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1499 input_dialog->setAttribute (Qt::WA_DeleteOnClose); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1500 input_dialog->show (); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
1501 } |
15987
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
1502 |
16579
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
1503 void |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
1504 main_window::handle_create_filedialog (const QStringList& filters, |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1505 const QString& title, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1506 const QString& filename, |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
1507 const QString& dirname, |
16581
fa4a035e0cf4
Add octave_link uiputfile implementation
John Donoghue <john.donoghue@ieee.org>
parents:
16580
diff
changeset
|
1508 const QString& multimode) |
16579
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
1509 { |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
1510 FileDialog *file_dialog = new FileDialog (filters, title, filename, |
16581
fa4a035e0cf4
Add octave_link uiputfile implementation
John Donoghue <john.donoghue@ieee.org>
parents:
16580
diff
changeset
|
1511 dirname, multimode); |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
1512 |
16579
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
1513 file_dialog->setAttribute (Qt::WA_DeleteOnClose); |
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
1514 file_dialog->show (); |
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
1515 } |
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
1516 |
23385
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
1517 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1518 main_window::handle_show_doc (const QString& file) |
23385
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
1519 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1520 m_doc_browser_window->setVisible (true); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1521 emit show_doc_signal (file); |
23385
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
1522 } |
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
1523 |
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
1524 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1525 main_window::handle_octave_ready (void) |
18309
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1526 { |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1527 // actions after the startup files are executed |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1528 QSettings *settings = resource_manager::get_settings (); |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1529 |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1530 QDir startup_dir = QDir (); // current octave dir after startup |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1531 |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1532 if (settings) |
18309
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1533 { |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1534 if (settings->value ("restore_octave_dir").toBool ()) |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1535 { |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1536 // restore last dir from previous session |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1537 QStringList curr_dirs |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1538 = settings->value ("MainWindow/current_directory_list").toStringList (); |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
1539 startup_dir |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
1540 = QDir (curr_dirs.at (0)); // last dir in previous session |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1541 } |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1542 else if (! settings->value ("octave_startup_dir").toString ().isEmpty ()) |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1543 { |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1544 // do not restore but there is a startup dir configured |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
1545 startup_dir |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
1546 = QDir (settings->value ("octave_startup_dir").toString ()); |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1547 } |
18309
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1548 } |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1549 |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1550 if (! startup_dir.exists ()) |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1551 { |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1552 // the configured startup dir does not exist, take actual one |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1553 startup_dir = QDir (); |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1554 } |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1555 |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1556 set_current_working_directory (startup_dir.absolutePath ()); |
18833
6504a1932637
auto completion offers builtins and file functions for octave (bug #41371)
Torsten <ttl@justmail.de>
parents:
18823
diff
changeset
|
1557 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1558 if (m_editor_window) |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1559 { |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
1560 #if defined (HAVE_QSCINTILLA) |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1561 // Octave ready, determine whether to create an empty script. |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1562 // This can not be done when the editor is created because all functions |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1563 // must be known for the lexer's auto completion informations |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1564 m_editor_window->empty_script (true, false); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1565 m_editor_window->restore_session (settings); |
18833
6504a1932637
auto completion offers builtins and file functions for octave (bug #41371)
Torsten <ttl@justmail.de>
parents:
18823
diff
changeset
|
1566 #endif |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1567 } |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1568 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1569 if (m_start_gui) |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1570 focus_command_window (); // make sure that the command window has focus |
23979
fb9b024a6041
avoid SIGABRT on exit from the GUI (bug #50210)
John W. Eaton <jwe@octave.org>
parents:
23953
diff
changeset
|
1571 } |
fb9b024a6041
avoid SIGABRT on exit from the GUI (bug #50210)
John W. Eaton <jwe@octave.org>
parents:
23953
diff
changeset
|
1572 |
fb9b024a6041
avoid SIGABRT on exit from the GUI (bug #50210)
John W. Eaton <jwe@octave.org>
parents:
23953
diff
changeset
|
1573 void |
fb9b024a6041
avoid SIGABRT on exit from the GUI (bug #50210)
John W. Eaton <jwe@octave.org>
parents:
23953
diff
changeset
|
1574 main_window::handle_octave_finished (int exit_status) |
fb9b024a6041
avoid SIGABRT on exit from the GUI (bug #50210)
John W. Eaton <jwe@octave.org>
parents:
23953
diff
changeset
|
1575 { |
fb9b024a6041
avoid SIGABRT on exit from the GUI (bug #50210)
John W. Eaton <jwe@octave.org>
parents:
23953
diff
changeset
|
1576 qApp->exit (exit_status); |
18309
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1577 } |
024940bd5b77
gui: provide prefernces for the octave directory at startup
Torsten <ttl@justmail.de>
parents:
18288
diff
changeset
|
1578 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1579 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1580 main_window::find_files (const QString& start_dir) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1581 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1582 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1583 if (! m_find_files_dlg) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1584 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1585 m_find_files_dlg = new find_files_dialog (this); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1586 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1587 connect (m_find_files_dlg, SIGNAL (finished (int)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1588 this, SLOT (find_files_finished (int))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1589 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1590 connect (m_find_files_dlg, SIGNAL (dir_selected (const QString &)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1591 m_file_browser_window, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1592 SLOT (set_current_directory (const QString&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1593 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1594 connect (m_find_files_dlg, SIGNAL (file_selected (const QString &)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1595 this, SLOT (open_file (const QString &))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1596 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1597 m_find_files_dlg->setWindowModality (Qt::NonModal); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1598 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1599 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1600 if (! m_find_files_dlg->isVisible ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1601 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1602 m_find_files_dlg->show (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1603 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1604 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1605 m_find_files_dlg->set_search_dir (start_dir); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1606 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1607 m_find_files_dlg->activateWindow (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1608 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1609 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1610 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1611 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1612 main_window::set_global_shortcuts (bool set_shortcuts) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1613 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1614 // this slot is called when the terminal gets/loses focus |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1615 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1616 // return if the user don't want to use readline shortcuts |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1617 if (! m_prevent_readline_conflicts) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1618 return; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1619 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1620 if (set_shortcuts) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1621 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1622 // terminal loses focus: set the global shortcuts |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1623 configure_shortcuts (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1624 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1625 else |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1626 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1627 // terminal gets focus: disable some shortcuts |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1628 QKeySequence no_key = QKeySequence (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1629 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1630 // file menu |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1631 m_open_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1632 m_new_script_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1633 m_new_function_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1634 m_new_function_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1635 m_load_workspace_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1636 m_save_workspace_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1637 m_preferences_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1638 m_exit_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1639 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1640 // edit menu |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1641 m_select_all_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1642 m_clear_clipboard_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1643 m_find_files_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1644 m_clear_command_history_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1645 m_clear_command_window_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1646 m_clear_workspace_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1647 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1648 // window menu |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1649 m_reset_windows_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1650 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1651 // help menu |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1652 m_ondisk_doc_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1653 m_online_doc_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1654 m_report_bug_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1655 m_octave_packages_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1656 m_contribute_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1657 m_developer_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1658 m_about_octave_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1659 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1660 // news menu |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1661 m_release_notes_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1662 m_current_news_action->setShortcut (no_key); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1663 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1664 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1665 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1666 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1667 main_window::set_screen_size (int ht, int wd) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1668 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1669 octave_link::post_event (this, &main_window::set_screen_size_callback, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1670 int_pair (ht, wd)); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1671 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1672 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1673 void |
24625
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1674 main_window::clipboard_has_changed (void) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1675 { |
24625
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1676 if (m_clipboard->text ().isEmpty ()) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1677 { |
24625
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1678 m_paste_action->setEnabled (false); |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1679 m_clear_clipboard_action->setEnabled (false); |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1680 } |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1681 else |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1682 { |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1683 m_paste_action->setEnabled (true); |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1684 m_clear_clipboard_action->setEnabled (true); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1685 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1686 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1687 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1688 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1689 main_window::clear_clipboard (void) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1690 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1691 m_clipboard->clear (QClipboard::Clipboard); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1692 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1693 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1694 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1695 main_window::interrupt_interpreter (void) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1696 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1697 m_interpreter->interrupt (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1698 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1699 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1700 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1701 main_window::disable_menu_shortcuts (bool disable) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1702 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1703 QHash<QMenu*, QStringList>::const_iterator i = m_hash_menu_text.constBegin (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1704 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1705 while (i != m_hash_menu_text.constEnd ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1706 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1707 i.key ()->setTitle (i.value ().at (disable)); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1708 ++i; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1709 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1710 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1711 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1712 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1713 main_window::restore_create_file_setting (void) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1714 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1715 // restore the new files creation setting |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1716 QSettings *settings = resource_manager::get_settings (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1717 settings->setValue ("editor/create_new_file",false); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1718 disconnect (m_editor_window, SIGNAL (file_loaded_signal (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1719 this, SLOT (restore_create_file_setting (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1720 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1721 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1722 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1723 main_window::set_file_encoding (const QString& new_encoding) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1724 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1725 m_file_encoding = new_encoding; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1726 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1727 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1728 // The following slot is called after files have been selected in the |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1729 // open file dialog., possibly with a new selected encoding stored in |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1730 // m_file_encoding |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1731 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1732 main_window::request_open_files (const QStringList& open_file_names) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1733 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1734 for (int i = 0; i < open_file_names.count (); i++) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1735 emit open_file_signal (open_file_names.at (i), m_file_encoding, -1); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1736 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1737 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1738 void |
24641
7d177be54c37
pass variable value to variable editor in addition to variable name
John W. Eaton <jwe@octave.org>
parents:
24633
diff
changeset
|
1739 main_window::edit_variable (const QString &expr, const octave_value& val) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1740 { |
24641
7d177be54c37
pass variable value to variable editor in addition to variable name
John W. Eaton <jwe@octave.org>
parents:
24633
diff
changeset
|
1741 m_variable_editor_window->edit_variable (expr, val); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1742 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1743 if (! m_variable_editor_window->isVisible ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1744 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1745 m_variable_editor_window->show (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1746 m_variable_editor_window->raise (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1747 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1748 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1749 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1750 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1751 void |
24632
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
1752 main_window::refresh_variable_editor (void) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1753 { |
24633
428780eec08a
improve behavior of variable editor
John W. Eaton <jwe@octave.org>
parents:
24632
diff
changeset
|
1754 m_variable_editor_window->refresh (); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1755 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1756 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1757 void |
24632
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
1758 main_window::handle_variable_editor_update (void) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1759 { |
24632
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
1760 // Called when the variable editor emits the updated signal. The size |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
1761 // of a variable may have changed, so we refresh the workspace in the |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
1762 // interpreter. That will eventually cause the workspace view in the |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
1763 // GUI to be updated. |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
1764 |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
1765 octave_link::post_event (this, &main_window::refresh_workspace_callback); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1766 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1767 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1768 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1769 main_window::closeEvent (QCloseEvent *e) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1770 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1771 e->ignore (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1772 octave_cmd_exec *cmd = new octave_cmd_exec ("exit"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1773 m_cmd_queue.add_cmd (cmd); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1774 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1775 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1776 // Main subroutine of the constructor |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1777 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1778 void |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1779 main_window::construct (void) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1780 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1781 m_closing = false; // flag for editor files when closed |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1782 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1783 // Create and set the central widget. QMainWindow takes ownership of |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1784 // the widget (pointer) so there is no need to delete the object upon |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1785 // destroying this main_window. |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1786 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1787 QWidget *dummyWidget = new QWidget (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1788 dummyWidget->setObjectName ("CentralDummyWidget"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1789 dummyWidget->resize (10, 10); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1790 dummyWidget->setSizePolicy (QSizePolicy::Minimum, QSizePolicy::Minimum); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1791 dummyWidget->hide (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1792 setCentralWidget (dummyWidget); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1793 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1794 connect_uiwidget_links (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1795 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1796 construct_octave_qt_link (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1797 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1798 if (m_start_gui) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1799 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1800 setWindowIcon (QIcon (":/actions/icons/logo.png")); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1801 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1802 m_workspace_window->setModel (m_workspace_model); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1803 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1804 connect (m_workspace_model, SIGNAL (model_changed (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1805 m_workspace_window, SLOT (handle_model_changed (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1806 |
24641
7d177be54c37
pass variable value to variable editor in addition to variable name
John W. Eaton <jwe@octave.org>
parents:
24633
diff
changeset
|
1807 connect (m_octave_qt_link, |
7d177be54c37
pass variable value to variable editor in addition to variable name
John W. Eaton <jwe@octave.org>
parents:
24633
diff
changeset
|
1808 SIGNAL (edit_variable_signal (const QString&, |
7d177be54c37
pass variable value to variable editor in addition to variable name
John W. Eaton <jwe@octave.org>
parents:
24633
diff
changeset
|
1809 const octave_value&)), |
7d177be54c37
pass variable value to variable editor in addition to variable name
John W. Eaton <jwe@octave.org>
parents:
24633
diff
changeset
|
1810 this, |
7d177be54c37
pass variable value to variable editor in addition to variable name
John W. Eaton <jwe@octave.org>
parents:
24633
diff
changeset
|
1811 SLOT (edit_variable (const QString&, const octave_value&))); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1812 |
24632
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
1813 connect (m_octave_qt_link, SIGNAL (refresh_variable_editor_signal (void)), |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
1814 this, SLOT (refresh_variable_editor (void))); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1815 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1816 connect (m_workspace_model, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1817 SIGNAL (rename_variable (const QString&, const QString&)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1818 this, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1819 SLOT (handle_rename_variable_request (const QString&, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1820 const QString&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1821 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1822 connect (m_variable_editor_window, SIGNAL (updated (void)), |
24632
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
1823 this, SLOT (handle_variable_editor_update (void))); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1824 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1825 connect (m_command_window, SIGNAL (interrupt_signal (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1826 this, SLOT (interrupt_interpreter (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1827 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1828 construct_menu_bar (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1829 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1830 construct_tool_bar (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1831 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1832 // Order is important. Deleting QSettings must be last. |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1833 connect (qApp, SIGNAL (aboutToQuit (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1834 m_command_window, SLOT (save_settings (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1835 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1836 connect (qApp, SIGNAL (aboutToQuit (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1837 m_history_window, SLOT (save_settings (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1838 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1839 connect (qApp, SIGNAL (aboutToQuit (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1840 m_file_browser_window, SLOT (save_settings (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1841 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1842 connect (qApp, SIGNAL (aboutToQuit (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1843 m_doc_browser_window, SLOT (save_settings (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1844 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1845 connect (qApp, SIGNAL (aboutToQuit (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1846 m_workspace_window, SLOT (save_settings (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1847 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1848 connect (qApp, SIGNAL (aboutToQuit (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1849 m_editor_window, SLOT (save_settings (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1850 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1851 connect (qApp, SIGNAL (aboutToQuit (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1852 m_variable_editor_window, SLOT (save_settings (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1853 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1854 connect (qApp, SIGNAL (aboutToQuit (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1855 this, SLOT (prepare_to_exit (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1856 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1857 connect (qApp, SIGNAL (aboutToQuit (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1858 shortcut_manager::instance, SLOT (cleanup_instance (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1859 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1860 // QSettings are saved upon deletion (i.e., cleanup_instance) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1861 connect (qApp, SIGNAL (aboutToQuit (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1862 resource_manager::instance, SLOT (cleanup_instance (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1863 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1864 connect (qApp, SIGNAL (focusChanged (QWidget*, QWidget*)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1865 this, SLOT (focus_changed (QWidget*, QWidget*))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1866 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1867 connect (this, SIGNAL (settings_changed (const QSettings *)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1868 this, SLOT (notice_settings (const QSettings *))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1869 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1870 connect (this, SIGNAL (editor_focus_changed (bool)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1871 this, SLOT (disable_menu_shortcuts (bool))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1872 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1873 connect (this, SIGNAL (editor_focus_changed (bool)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1874 m_editor_window, SLOT (enable_menu_shortcuts (bool))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1875 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1876 connect (m_editor_window, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1877 SIGNAL (request_open_file_external (const QString&, int)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1878 m_external_editor, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1879 SLOT (call_custom_editor (const QString&, int))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1880 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1881 connect (m_external_editor, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1882 SIGNAL (request_settings_dialog (const QString&)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1883 this, SLOT (process_settings_dialog_request (const QString&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1884 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1885 connect (m_file_browser_window, SIGNAL (load_file_signal (const QString&)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1886 this, SLOT (handle_load_workspace_request (const QString&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1887 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1888 connect (m_file_browser_window, SIGNAL (find_files_signal (const QString&)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1889 this, SLOT (find_files (const QString&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1890 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1891 setWindowTitle ("Octave"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1892 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1893 setDockOptions (QMainWindow::AnimatedDocks |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1894 | QMainWindow::AllowNestedDocks |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1895 | QMainWindow::AllowTabbedDocks); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1896 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1897 addDockWidget (Qt::RightDockWidgetArea, m_command_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1898 addDockWidget (Qt::RightDockWidgetArea, m_doc_browser_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1899 tabifyDockWidget (m_command_window, m_doc_browser_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1900 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1901 #if defined (HAVE_QSCINTILLA) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1902 addDockWidget (Qt::RightDockWidgetArea, m_editor_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1903 tabifyDockWidget (m_command_window, m_editor_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1904 #endif |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1905 addDockWidget (Qt::RightDockWidgetArea, m_variable_editor_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1906 tabifyDockWidget (m_command_window, m_variable_editor_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1907 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1908 addDockWidget (Qt::LeftDockWidgetArea, m_file_browser_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1909 addDockWidget (Qt::LeftDockWidgetArea, m_workspace_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1910 addDockWidget (Qt::LeftDockWidgetArea, m_history_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1911 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1912 int win_x = QApplication::desktop ()->width (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1913 int win_y = QApplication::desktop ()->height (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1914 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1915 if (win_x > 960) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1916 win_x = 960; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1917 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1918 if (win_y > 720) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1919 win_y = 720; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1920 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1921 setGeometry (0, 0, win_x, win_y); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1922 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1923 setStatusBar (m_status_bar); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1924 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1925 #if defined (HAVE_QSCINTILLA) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1926 connect (this, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1927 SIGNAL (insert_debugger_pointer_signal (const QString&, int)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1928 m_editor_window, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1929 SLOT (handle_insert_debugger_pointer_request (const QString&, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1930 int))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1931 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1932 connect (this, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1933 SIGNAL (delete_debugger_pointer_signal (const QString&, int)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1934 m_editor_window, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1935 SLOT (handle_delete_debugger_pointer_request (const QString&, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1936 int))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1937 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1938 connect (this, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1939 SIGNAL (update_breakpoint_marker_signal (bool, const QString&, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1940 int, const QString&)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1941 m_editor_window, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1942 SLOT (handle_update_breakpoint_marker_request (bool, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1943 const QString&, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1944 int, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1945 const QString&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1946 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1947 connect (m_file_browser_window, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1948 SIGNAL (file_remove_signal (const QString&, const QString&)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1949 m_editor_window, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1950 SLOT (handle_file_remove (const QString&, const QString&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1951 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1952 connect (m_file_browser_window, SIGNAL (file_renamed_signal (bool)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1953 m_editor_window, SLOT (handle_file_renamed (bool))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1954 #endif |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1955 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1956 octave_link::post_event (this, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1957 &main_window::resize_command_window_callback); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1958 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1959 configure_shortcuts (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1960 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1961 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1962 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1963 void |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1964 main_window::construct_octave_qt_link (void) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1965 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1966 m_octave_qt_link = new octave_qt_link (this, m_app_context); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1967 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1968 octave_link::connect_link (m_octave_qt_link); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1969 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1970 connect (m_octave_qt_link, SIGNAL (confirm_shutdown_signal (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1971 this, SLOT (confirm_shutdown_octave (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1972 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1973 connect (m_octave_qt_link, |
20243
ede7224d062f
Allow copying a figure to clipboard even in --no-gui mode (bug #44886)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
20186
diff
changeset
|
1974 SIGNAL (copy_image_to_clipboard_signal (const QString&, bool)), |
ede7224d062f
Allow copying a figure to clipboard even in --no-gui mode (bug #44886)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
20186
diff
changeset
|
1975 this, SLOT (copy_image_to_clipboard (const QString&, bool))); |
ede7224d062f
Allow copying a figure to clipboard even in --no-gui mode (bug #44886)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
20186
diff
changeset
|
1976 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1977 if (m_start_gui) |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1978 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1979 connect (m_octave_qt_link, |
24645
f61502510d08
restore ability to select variables for editing from workspace widget
John W. Eaton <jwe@octave.org>
parents:
24641
diff
changeset
|
1980 SIGNAL (set_workspace_signal (bool, bool, |
f61502510d08
restore ability to select variables for editing from workspace widget
John W. Eaton <jwe@octave.org>
parents:
24641
diff
changeset
|
1981 const octave::symbol_scope&)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1982 m_workspace_model, |
24645
f61502510d08
restore ability to select variables for editing from workspace widget
John W. Eaton <jwe@octave.org>
parents:
24641
diff
changeset
|
1983 SLOT (set_workspace (bool, bool, const octave::symbol_scope&))); |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1984 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1985 connect (m_octave_qt_link, SIGNAL (clear_workspace_signal (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1986 m_workspace_model, SLOT (clear_workspace (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1987 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1988 connect (m_octave_qt_link, SIGNAL (change_directory_signal (QString)), |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1989 this, SLOT (change_directory (QString))); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1990 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1991 connect (m_octave_qt_link, SIGNAL (change_directory_signal (QString)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1992 m_file_browser_window, SLOT (update_octave_directory (QString))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1993 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1994 connect (m_octave_qt_link, SIGNAL (change_directory_signal (QString)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1995 m_editor_window, SLOT (update_octave_directory (QString))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1996 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
1997 connect (m_octave_qt_link, |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1998 SIGNAL (execute_command_in_terminal_signal (QString)), |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
1999 this, SLOT (execute_command_in_terminal (QString))); |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2000 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2001 connect (m_octave_qt_link, |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2002 SIGNAL (set_history_signal (const QStringList&)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2003 m_history_window, SLOT (set_history (const QStringList&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2004 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2005 connect (m_octave_qt_link, |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2006 SIGNAL (append_history_signal (const QString&)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2007 m_history_window, SLOT (append_history (const QString&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2008 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2009 connect (m_octave_qt_link, |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2010 SIGNAL (clear_history_signal (void)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2011 m_history_window, SLOT (clear_history (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2012 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2013 connect (m_octave_qt_link, SIGNAL (enter_debugger_signal (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2014 this, SLOT (handle_enter_debugger (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2015 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2016 connect (m_octave_qt_link, SIGNAL (exit_debugger_signal (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2017 this, SLOT (handle_exit_debugger (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2018 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2019 connect (m_octave_qt_link, |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2020 SIGNAL (show_preferences_signal (void)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2021 this, SLOT (process_settings_dialog_request (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2022 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2023 connect (m_octave_qt_link, |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2024 SIGNAL (edit_file_signal (const QString&)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2025 m_active_editor, |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2026 SLOT (handle_edit_file_request (const QString&))); |
16424
ad052cdc89ad
use signal for octave_link::edit_file
John W. Eaton <jwe@octave.org>
parents:
16423
diff
changeset
|
2027 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2028 connect (m_octave_qt_link, |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2029 SIGNAL (insert_debugger_pointer_signal (const QString&, int)), |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2030 this, |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2031 SLOT (handle_insert_debugger_pointer_request (const QString&, |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2032 int))); |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2033 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2034 connect (m_octave_qt_link, |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2035 SIGNAL (delete_debugger_pointer_signal (const QString&, int)), |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2036 this, |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2037 SLOT (handle_delete_debugger_pointer_request (const QString&, |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2038 int))); |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2039 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2040 connect (m_octave_qt_link, |
21158
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
2041 SIGNAL (update_breakpoint_marker_signal (bool, const QString&, |
22599
51b395d24782
maint: strip tabs and trailing whitespace from C++ sources.
John W. Eaton <jwe@octave.org>
parents:
22587
diff
changeset
|
2042 int, const QString&)), |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2043 this, |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2044 SLOT (handle_update_breakpoint_marker_request (bool, const QString&, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2045 int, const QString&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2046 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2047 connect (m_octave_qt_link, |
19949
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2048 SIGNAL (show_doc_signal (const QString &)), |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2049 this, SLOT (handle_show_doc (const QString &))); |
857a8f018f53
set up octave_link when running with --no-gui option (bug #44116)
John W. Eaton <jwe@octave.org>
parents:
19945
diff
changeset
|
2050 } |
17920
5c3f22dd0bbb
raise SIGINT in octave_interpreter instead of in QTerminal
John W. Eaton <jwe@octave.org>
parents:
17918
diff
changeset
|
2051 |
21428
217e6e97085b
Prevent race conditions in GUI and interpreter initialization (bug #47326)
Mike Miller <mtmiller@octave.org>
parents:
21396
diff
changeset
|
2052 // Defer initializing and executing the interpreter until after the main |
217e6e97085b
Prevent race conditions in GUI and interpreter initialization (bug #47326)
Mike Miller <mtmiller@octave.org>
parents:
21396
diff
changeset
|
2053 // window and QApplication are running to prevent race conditions |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2054 QTimer::singleShot (0, m_interpreter, SLOT (execute (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2055 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2056 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2057 QAction* |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2058 main_window::add_action (QMenu *menu, const QIcon& icon, const QString& text, |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2059 const char *member, const QWidget *receiver) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2060 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2061 QAction *a; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2062 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2063 if (receiver) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2064 a = menu->addAction (icon, text, receiver, member); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2065 else |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2066 a = menu->addAction (icon, text, this, member); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2067 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2068 addAction (a); // important for shortcut context |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2069 a->setShortcutContext (Qt::ApplicationShortcut); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2070 return a; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2071 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2072 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2073 QMenu* |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2074 main_window::m_add_menu (QMenuBar *p, QString name) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2075 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2076 QMenu *menu = p->addMenu (name); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2077 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2078 QString base_name = name; // get a copy |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2079 // replace intended '&' ("&&") by a temp. string |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2080 base_name.replace ("&&", "___octave_amp_replacement___"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2081 // remove single '&' (shortcut) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2082 base_name.remove ("&"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2083 // restore intended '&' |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2084 base_name.replace ("___octave_amp_replacement___", "&&"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2085 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2086 // remember names with and without shortcut |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2087 m_hash_menu_text[menu] = QStringList () << name << base_name; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2088 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2089 return menu; |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2090 } |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
2091 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2092 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2093 main_window::construct_menu_bar (void) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2094 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2095 QMenuBar *menu_bar = menuBar (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2096 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2097 construct_file_menu (menu_bar); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2098 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2099 construct_edit_menu (menu_bar); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2100 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2101 construct_debug_menu (menu_bar); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2102 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2103 construct_window_menu (menu_bar); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2104 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2105 construct_help_menu (menu_bar); |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
2106 |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
2107 construct_news_menu (menu_bar); |
20986
00835323fb44
prevent shortcut ambiguity between main and editor window
Torsten <ttl@justmail.de>
parents:
20955
diff
changeset
|
2108 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
2109 #if defined (HAVE_QSCINTILLA) |
20989
98e75f952a36
add find files action also to the editor menu
Torsten <ttl@justmail.de>
parents:
20986
diff
changeset
|
2110 // call the editor to add actions which should also be available in the |
98e75f952a36
add find files action also to the editor menu
Torsten <ttl@justmail.de>
parents:
20986
diff
changeset
|
2111 // editor's menu and tool bar |
98e75f952a36
add find files action also to the editor menu
Torsten <ttl@justmail.de>
parents:
20986
diff
changeset
|
2112 QList<QAction*> shared_actions; |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2113 shared_actions << m_new_script_action |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2114 << m_new_function_action |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2115 << m_open_action |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2116 << m_find_files_action |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2117 << m_undo_action |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2118 << m_copy_action |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2119 << m_paste_action |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2120 <<m_select_all_action; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2121 m_editor_window->insert_global_actions (shared_actions); |
20986
00835323fb44
prevent shortcut ambiguity between main and editor window
Torsten <ttl@justmail.de>
parents:
20955
diff
changeset
|
2122 #endif |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2123 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2124 |
18944
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18840
diff
changeset
|
2125 void |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2126 main_window::construct_file_menu (QMenuBar *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2127 { |
18944
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18840
diff
changeset
|
2128 QMenu *file_menu = m_add_menu (p, tr ("&File")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2129 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2130 construct_new_menu (file_menu); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2131 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2132 m_open_action |
19899 | 2133 = file_menu->addAction (resource_manager::icon ("document-open"), |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2134 tr ("Open...")); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2135 m_open_action->setShortcutContext (Qt::ApplicationShortcut); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2136 m_open_action->setToolTip (tr ("Open an existing file in editor")); |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
2137 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
2138 #if defined (HAVE_QSCINTILLA) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2139 file_menu->addMenu (m_editor_window->get_mru_menu ()); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2140 #endif |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2141 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2142 file_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2143 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2144 m_load_workspace_action |
18257
cae24b7cfaf4
minor fix of text strings and related translations (part of bug #41201)
Torsten <ttl@justmail.de>
parents:
18251
diff
changeset
|
2145 = file_menu->addAction (tr ("Load Workspace...")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2146 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2147 m_save_workspace_action |
18257
cae24b7cfaf4
minor fix of text strings and related translations (part of bug #41201)
Torsten <ttl@justmail.de>
parents:
18251
diff
changeset
|
2148 = file_menu->addAction (tr ("Save Workspace As...")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2149 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2150 file_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2151 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2152 m_exit_action = file_menu->addAction (tr ("Exit")); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2153 m_exit_action->setShortcutContext (Qt::ApplicationShortcut); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2154 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2155 connect (m_open_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2156 this, SLOT (request_open_file (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2157 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2158 connect (m_load_workspace_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2159 this, SLOT (handle_load_workspace_request (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2160 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2161 connect (m_save_workspace_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2162 this, SLOT (handle_save_workspace_request (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2163 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2164 connect (m_exit_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2165 this, SLOT (close (void))); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2166 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2167 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2168 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2169 main_window::construct_new_menu (QMenu *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2170 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2171 QMenu *new_menu = p->addMenu (tr ("New")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2172 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2173 m_new_script_action |
19899 | 2174 = new_menu->addAction (resource_manager::icon ("document-new"), |
18345
dfc6ef6ac455
some text improvements in the gui (#bug 41201)
Torsten <ttl@justmail.de>
parents:
18318
diff
changeset
|
2175 tr ("New Script")); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2176 m_new_script_action->setShortcutContext (Qt::ApplicationShortcut); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2177 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2178 m_new_function_action = new_menu->addAction (tr ("New Function...")); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2179 m_new_function_action->setEnabled (true); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2180 m_new_function_action->setShortcutContext (Qt::ApplicationShortcut); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2181 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2182 m_new_figure_action = new_menu->addAction (tr ("New Figure")); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2183 m_new_figure_action->setEnabled (true); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2184 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2185 connect (m_new_script_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2186 this, SLOT (request_new_script (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2187 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2188 connect (m_new_function_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2189 this, SLOT (request_new_function (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2190 |
23385
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
2191 connect (this, SIGNAL (new_file_signal (const QString&)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2192 m_active_editor, SLOT (request_new_file (const QString&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2193 |
23385
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
2194 connect (this, SIGNAL (open_file_signal (const QString&)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2195 m_active_editor, SLOT (request_open_file (const QString&))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2196 |
23385
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
2197 connect (this, |
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
2198 SIGNAL (open_file_signal (const QString&, const QString&, int)), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2199 m_active_editor, |
23385
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
2200 SLOT (request_open_file (const QString&, const QString&, int))); |
16566 | 2201 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2202 connect (m_new_figure_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2203 this, SLOT (handle_new_figure_request (void))); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2204 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2205 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2206 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2207 main_window::construct_edit_menu (QMenuBar *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2208 { |
18944
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18840
diff
changeset
|
2209 QMenu *edit_menu = m_add_menu (p, tr ("&Edit")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2210 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2211 QKeySequence ctrl_shift = Qt::ControlModifier + Qt::ShiftModifier; |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2212 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2213 m_undo_action |
19899 | 2214 = edit_menu->addAction (resource_manager::icon ("edit-undo"), tr ("Undo")); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2215 m_undo_action->setShortcutContext (Qt::ApplicationShortcut); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2216 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2217 edit_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2218 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2219 m_copy_action |
19899 | 2220 = edit_menu->addAction (resource_manager::icon ("edit-copy"), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2221 tr ("Copy"), this, SLOT (copyClipboard (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2222 m_copy_action->setShortcutContext (Qt::ApplicationShortcut); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2223 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2224 m_paste_action |
19899 | 2225 = edit_menu->addAction (resource_manager::icon ("edit-paste"), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2226 tr ("Paste"), this, SLOT (pasteClipboard (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2227 m_paste_action->setShortcutContext (Qt::ApplicationShortcut); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2228 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2229 m_select_all_action |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2230 = edit_menu->addAction (tr ("Select All"), this, SLOT (selectAll (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2231 m_select_all_action->setShortcutContext (Qt::ApplicationShortcut); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2232 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2233 m_clear_clipboard_action |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
2234 = edit_menu->addAction (tr ("Clear Clipboard"), this, |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2235 SLOT (clear_clipboard (void))); |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
2236 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2237 edit_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2238 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2239 m_find_files_action |
19908
4e15e8cb16ae
gui: added icons menu items that have icons used elsewhere
John Donoghue
parents:
19907
diff
changeset
|
2240 = edit_menu->addAction (resource_manager::icon ("edit-find"), |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2241 tr ("Find Files...")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2242 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2243 edit_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2244 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2245 m_clear_command_window_action |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2246 = edit_menu->addAction (tr ("Clear Command Window")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2247 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2248 m_clear_command_history_action |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
2249 = edit_menu->addAction (tr ("Clear Command History")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2250 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2251 m_clear_workspace_action |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2252 = edit_menu->addAction (tr ("Clear Workspace")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2253 |
20039
3538c2824dd8
GUI: Move preferences to edit menu (Bug #44725)
John Donoghue
parents:
19985
diff
changeset
|
2254 edit_menu->addSeparator (); |
3538c2824dd8
GUI: Move preferences to edit menu (Bug #44725)
John Donoghue
parents:
19985
diff
changeset
|
2255 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2256 m_preferences_action |
20039
3538c2824dd8
GUI: Move preferences to edit menu (Bug #44725)
John Donoghue
parents:
19985
diff
changeset
|
2257 = edit_menu->addAction (resource_manager::icon ("preferences-system"), |
3538c2824dd8
GUI: Move preferences to edit menu (Bug #44725)
John Donoghue
parents:
19985
diff
changeset
|
2258 tr ("Preferences...")); |
3538c2824dd8
GUI: Move preferences to edit menu (Bug #44725)
John Donoghue
parents:
19985
diff
changeset
|
2259 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2260 connect (m_find_files_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2261 this, SLOT (find_files (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2262 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2263 connect (m_clear_command_window_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2264 this, SLOT (handle_clear_command_window_request (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2265 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2266 connect (m_clear_command_history_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2267 this, SLOT (handle_clear_history_request (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2268 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2269 connect (m_clear_workspace_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2270 this, SLOT (handle_clear_workspace_request (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2271 |
24625
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
2272 connect (m_clipboard, SIGNAL (dataChanged (void)), |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
2273 this, SLOT (clipboard_has_changed (void))); |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
2274 clipboard_has_changed (); |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
2275 #if defined (Q_OS_WIN32) |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
2276 // Always enable paste action (unreliable clipboard signals in windows) |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
2277 // FIXME: This has to be removed, when the clipboards signals in windows |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
2278 // are working again |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
2279 m_paste_action->setEnabled (true); |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
2280 m_clear_clipboard_action->setEnabled (true); |
be37df6e1fb4
always enable paste action in windows (bug #52361)
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
2281 #endif |
20039
3538c2824dd8
GUI: Move preferences to edit menu (Bug #44725)
John Donoghue
parents:
19985
diff
changeset
|
2282 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2283 connect (m_preferences_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2284 this, SLOT (process_settings_dialog_request (void))); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2285 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2286 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2287 QAction * |
18697
908523bd79b4
use shortcut manager for the debug menu
Torsten <ttl@justmail.de>
parents:
18684
diff
changeset
|
2288 main_window::construct_debug_menu_item (const char *icon, const QString& item, |
908523bd79b4
use shortcut manager for the debug menu
Torsten <ttl@justmail.de>
parents:
18684
diff
changeset
|
2289 const char *member) |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2290 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2291 QAction *action = add_action (m_debug_menu, |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2292 resource_manager::icon (QString (icon)), |
19899 | 2293 item, member); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2294 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2295 action->setEnabled (false); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2296 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
2297 #if defined (HAVE_QSCINTILLA) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2298 m_editor_window->debug_menu ()->addAction (action); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2299 m_editor_window->toolbar ()->addAction (action); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2300 #endif |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2301 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2302 return action; |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2303 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2304 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2305 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2306 main_window::construct_debug_menu (QMenuBar *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2307 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2308 m_debug_menu = m_add_menu (p, tr ("De&bug")); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2309 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2310 m_debug_step_over = construct_debug_menu_item ( |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2311 "db-step", tr ("Step"), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2312 SLOT (debug_step_over (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2313 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2314 m_debug_step_into = construct_debug_menu_item ( |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2315 "db-step-in", tr ("Step In"), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2316 SLOT (debug_step_into (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2317 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2318 m_debug_step_out = construct_debug_menu_item ( |
19899 | 2319 "db-step-out", tr ("Step Out"), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2320 SLOT (debug_step_out (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2321 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2322 m_debug_continue = construct_debug_menu_item ( |
19899 | 2323 "db-cont", tr ("Continue"), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2324 SLOT (debug_continue (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2325 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2326 m_debug_menu->addSeparator (); |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
2327 #if defined (HAVE_QSCINTILLA) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2328 m_editor_window->debug_menu ()->addSeparator (); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2329 #endif |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2330 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2331 m_debug_quit = construct_debug_menu_item ( |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2332 "db-stop", tr ("Quit Debug Mode"), |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2333 SLOT (debug_quit (void))); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2334 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2335 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2336 QAction * |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2337 main_window::construct_window_menu_item (QMenu *p, const QString& item, |
18707
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2338 bool checkable, QWidget *widget) |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2339 { |
18707
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2340 QAction *action = p->addAction (QIcon (), item); |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2341 |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2342 addAction (action); // important for shortcut context |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2343 action->setCheckable (checkable); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2344 action->setShortcutContext (Qt::ApplicationShortcut); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2345 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2346 if (widget) // might be zero for m_editor_window |
18707
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2347 { |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2348 if (checkable) |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2349 { |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2350 // action for visibilty of dock widget |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2351 connect (action, SIGNAL (toggled (bool)), |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2352 widget, SLOT (setVisible (bool))); |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2353 |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2354 connect (widget, SIGNAL (active_changed (bool)), |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2355 action, SLOT (setChecked (bool))); |
18707
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2356 } |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2357 else |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2358 { |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2359 // action for focus of dock widget |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2360 connect (action, SIGNAL (triggered (void)), widget, SLOT (focus (void))); |
18707
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2361 } |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2362 } |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2363 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2364 return action; |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2365 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2366 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2367 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2368 main_window::construct_window_menu (QMenuBar *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2369 { |
18944
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18840
diff
changeset
|
2370 QMenu *window_menu = m_add_menu (p, tr ("&Window")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2371 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2372 m_show_command_window_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2373 (window_menu, tr ("Show Command Window"), true, m_command_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2374 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2375 m_show_history_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2376 (window_menu, tr ("Show Command History"), true, m_history_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2377 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2378 m_show_file_browser_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2379 (window_menu, tr ("Show File Browser"), true, m_file_browser_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2380 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2381 m_show_workspace_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2382 (window_menu, tr ("Show Workspace"), true, m_workspace_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2383 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2384 m_show_editor_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2385 (window_menu, tr ("Show Editor"), true, m_editor_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2386 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2387 m_show_documentation_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2388 (window_menu, tr ("Show Documentation"), true, m_doc_browser_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2389 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2390 m_show_variable_editor_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2391 (window_menu, tr ("Show Variable Editor"), true, m_variable_editor_window); |
23927
e3a36f84d01d
provide variable-editor widget for the GUI
Michael Barnes <mjbcode@runbox.com>
parents:
23920
diff
changeset
|
2392 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2393 window_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2394 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2395 m_command_window_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2396 (window_menu, tr ("Command Window"), false, m_command_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2397 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2398 m_history_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2399 (window_menu, tr ("Command History"), false, m_history_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2400 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2401 m_file_browser_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2402 (window_menu, tr ("File Browser"), false, m_file_browser_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2403 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2404 m_workspace_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2405 (window_menu, tr ("Workspace"), false, m_workspace_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2406 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2407 m_editor_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2408 (window_menu, tr ("Editor"), false, m_editor_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2409 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2410 m_documentation_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2411 (window_menu, tr ("Documentation"), false, m_doc_browser_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2412 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2413 m_variable_editor_action = construct_window_menu_item |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2414 (window_menu, tr ("Variable Editor"), false, m_variable_editor_window); |
23927
e3a36f84d01d
provide variable-editor widget for the GUI
Michael Barnes <mjbcode@runbox.com>
parents:
23920
diff
changeset
|
2415 |
18707
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2416 window_menu->addSeparator (); |
f31fde98c872
use shortcut manager for the window menu
Torsten <ttl@justmail.de>
parents:
18697
diff
changeset
|
2417 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2418 m_reset_windows_action = add_action (window_menu, QIcon (), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2419 tr ("Reset Default Window Layout"), SLOT (reset_windows (void))); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2420 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2421 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2422 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2423 main_window::construct_help_menu (QMenuBar *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2424 { |
18944
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18840
diff
changeset
|
2425 QMenu *help_menu = m_add_menu (p, tr ("&Help")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2426 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2427 construct_documentation_menu (help_menu); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2428 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2429 help_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2430 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2431 m_report_bug_action = add_action (help_menu, QIcon (), |
18710
584b20e9112c
use shortcut manager for the main help menu
Torsten <ttl@justmail.de>
parents:
18708
diff
changeset
|
2432 tr ("Report Bug"), SLOT (open_bug_tracker_page ())); |
584b20e9112c
use shortcut manager for the main help menu
Torsten <ttl@justmail.de>
parents:
18708
diff
changeset
|
2433 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2434 m_octave_packages_action = add_action (help_menu, QIcon (), |
18710
584b20e9112c
use shortcut manager for the main help menu
Torsten <ttl@justmail.de>
parents:
18708
diff
changeset
|
2435 tr ("Octave Packages"), SLOT (open_octave_packages_page ())); |
584b20e9112c
use shortcut manager for the main help menu
Torsten <ttl@justmail.de>
parents:
18708
diff
changeset
|
2436 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2437 m_contribute_action = add_action (help_menu, QIcon (), |
22211
6065bd58db2b
use contribute/donate consistently in GUI (bug #44335)
Sahil Badyal <sbadyals@gmail.com>
parents:
22177
diff
changeset
|
2438 tr ("Contribute"), SLOT (open_contribute_page ())); |
18710
584b20e9112c
use shortcut manager for the main help menu
Torsten <ttl@justmail.de>
parents:
18708
diff
changeset
|
2439 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2440 m_developer_action = add_action (help_menu, QIcon (), |
22211
6065bd58db2b
use contribute/donate consistently in GUI (bug #44335)
Sahil Badyal <sbadyals@gmail.com>
parents:
22177
diff
changeset
|
2441 tr ("Donate to Octave"), SLOT (open_donate_page ())); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2442 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2443 help_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2444 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2445 m_about_octave_action = add_action (help_menu, QIcon (), |
18710
584b20e9112c
use shortcut manager for the main help menu
Torsten <ttl@justmail.de>
parents:
18708
diff
changeset
|
2446 tr ("About Octave"), SLOT (show_about_octave ())); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2447 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2448 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2449 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2450 main_window::construct_documentation_menu (QMenu *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2451 { |
18710
584b20e9112c
use shortcut manager for the main help menu
Torsten <ttl@justmail.de>
parents:
18708
diff
changeset
|
2452 QMenu *doc_menu = p->addMenu (tr ("Documentation")); |
584b20e9112c
use shortcut manager for the main help menu
Torsten <ttl@justmail.de>
parents:
18708
diff
changeset
|
2453 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2454 m_ondisk_doc_action = add_action (doc_menu, QIcon (), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2455 tr ("On Disk"), SLOT (focus ()), m_doc_browser_window); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2456 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2457 m_online_doc_action = add_action (doc_menu, QIcon (), |
18710
584b20e9112c
use shortcut manager for the main help menu
Torsten <ttl@justmail.de>
parents:
18708
diff
changeset
|
2458 tr ("Online"), SLOT (open_online_documentation_page ())); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2459 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2460 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2461 void |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
2462 main_window::construct_news_menu (QMenuBar *p) |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
2463 { |
18944
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18840
diff
changeset
|
2464 QMenu *news_menu = m_add_menu (p, tr ("&News")); |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
2465 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2466 m_release_notes_action = add_action (news_menu, QIcon (), |
18711
9ef65c422f53
use shortcut manager for the main news menu
Torsten <ttl@justmail.de>
parents:
18710
diff
changeset
|
2467 tr ("Release Notes"), SLOT (display_release_notes ())); |
9ef65c422f53
use shortcut manager for the main news menu
Torsten <ttl@justmail.de>
parents:
18710
diff
changeset
|
2468 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2469 m_current_news_action = add_action (news_menu, QIcon (), |
18711
9ef65c422f53
use shortcut manager for the main news menu
Torsten <ttl@justmail.de>
parents:
18710
diff
changeset
|
2470 tr ("Community News"), SLOT (load_and_display_community_news ())); |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
2471 } |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
2472 |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
2473 void |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2474 main_window::construct_tool_bar (void) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2475 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2476 m_main_tool_bar = addToolBar (tr ("Toolbar")); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2477 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2478 m_main_tool_bar->setObjectName ("MainToolBar"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2479 m_main_tool_bar->addAction (m_new_script_action); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2480 m_main_tool_bar->addAction (m_open_action); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2481 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2482 m_main_tool_bar->addSeparator (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2483 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2484 m_main_tool_bar->addAction (m_copy_action); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2485 m_main_tool_bar->addAction (m_paste_action); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2486 m_main_tool_bar->addAction (m_undo_action); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2487 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2488 m_main_tool_bar->addSeparator (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2489 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2490 m_current_directory_combo_box = new QComboBox (this); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2491 QFontMetrics fm = m_current_directory_combo_box->fontMetrics (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2492 m_current_directory_combo_box->setFixedWidth (48*fm.averageCharWidth ()); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2493 m_current_directory_combo_box->setEditable (true); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2494 m_current_directory_combo_box->setInsertPolicy (QComboBox::NoInsert); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2495 m_current_directory_combo_box->setToolTip (tr ("Enter directory name")); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2496 m_current_directory_combo_box->setMaxVisibleItems ( |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
2497 current_directory_max_visible); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2498 m_current_directory_combo_box->setMaxCount (current_directory_max_count); |
19846
72fe9df87fe8
improve scalability of gui objects (as discussed in bug #41938)
Torsten <ttl@justmail.de>
parents:
19803
diff
changeset
|
2499 QSizePolicy sizePol (QSizePolicy::Preferred, QSizePolicy::Preferred); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2500 m_current_directory_combo_box->setSizePolicy (sizePol); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2501 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2502 // addWidget takes ownership of the objects so there is no |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2503 // need to delete these upon destroying this main_window. |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2504 m_main_tool_bar->addWidget (new QLabel (tr ("Current Directory: "))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2505 m_main_tool_bar->addWidget (m_current_directory_combo_box); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2506 QAction *current_dir_up = m_main_tool_bar->addAction ( |
19899 | 2507 resource_manager::icon ("go-up"), |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
2508 tr ("One directory up")); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2509 QAction *current_dir_search = m_main_tool_bar->addAction ( |
19899 | 2510 resource_manager::icon ("folder"), |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
2511 tr ("Browse directories")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2512 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2513 connect (m_current_directory_combo_box, SIGNAL (activated (QString)), |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2514 this, SLOT (set_current_working_directory (QString))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
2515 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2516 connect (m_current_directory_combo_box->lineEdit (), SIGNAL (returnPressed (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2517 this, SLOT (accept_directory_line_edit (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2518 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2519 connect (current_dir_search, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2520 this, SLOT (browse_for_directory (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2521 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2522 connect (current_dir_up, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2523 this, SLOT (change_directory_up (void))); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2524 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2525 connect (m_undo_action, SIGNAL (triggered (void)), |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2526 this, SLOT (handle_undo_request (void))); |
23927
e3a36f84d01d
provide variable-editor widget for the GUI
Michael Barnes <mjbcode@runbox.com>
parents:
23920
diff
changeset
|
2527 } |
e3a36f84d01d
provide variable-editor widget for the GUI
Michael Barnes <mjbcode@runbox.com>
parents:
23920
diff
changeset
|
2528 |
e3a36f84d01d
provide variable-editor widget for the GUI
Michael Barnes <mjbcode@runbox.com>
parents:
23920
diff
changeset
|
2529 void |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2530 main_window::save_workspace_callback (const std::string& file) |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2531 { |
24630
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2532 // INTERPRETER THREAD |
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2533 |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
2534 Fsave (ovl (file)); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2535 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2536 |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2537 void |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2538 main_window::load_workspace_callback (const std::string& file) |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2539 { |
24630
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2540 // INTERPRETER THREAD |
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2541 |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
2542 Fload (ovl (file)); |
16504
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
2543 |
24361
8bcfddad15ec
use shared_ptr to manage symbol_scope objects
John W. Eaton <jwe@octave.org>
parents:
24347
diff
changeset
|
2544 octave::symbol_scope scope |
23611
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23599
diff
changeset
|
2545 = octave::__get_current_scope__ ("main_window::load_workspace_callback"); |
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23599
diff
changeset
|
2546 |
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23599
diff
changeset
|
2547 if (scope) |
24645
f61502510d08
restore ability to select variables for editing from workspace widget
John W. Eaton <jwe@octave.org>
parents:
24641
diff
changeset
|
2548 octave_link::set_workspace (true, scope); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2549 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2550 |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2551 void |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
2552 main_window::rename_variable_callback (const main_window::name_pair& names) |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
2553 { |
24630
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2554 // INTERPRETER THREAD |
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2555 |
24361
8bcfddad15ec
use shared_ptr to manage symbol_scope objects
John W. Eaton <jwe@octave.org>
parents:
24347
diff
changeset
|
2556 octave::symbol_scope scope |
23611
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23599
diff
changeset
|
2557 = octave::__get_current_scope__ ("main_window::rename_variable_callback"); |
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23599
diff
changeset
|
2558 |
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23599
diff
changeset
|
2559 if (scope) |
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23599
diff
changeset
|
2560 { |
24361
8bcfddad15ec
use shared_ptr to manage symbol_scope objects
John W. Eaton <jwe@octave.org>
parents:
24347
diff
changeset
|
2561 scope.rename (names.first, names.second); |
8bcfddad15ec
use shared_ptr to manage symbol_scope objects
John W. Eaton <jwe@octave.org>
parents:
24347
diff
changeset
|
2562 |
24645
f61502510d08
restore ability to select variables for editing from workspace widget
John W. Eaton <jwe@octave.org>
parents:
24641
diff
changeset
|
2563 octave_link::set_workspace (true, scope); |
23611
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23599
diff
changeset
|
2564 } |
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23599
diff
changeset
|
2565 |
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23599
diff
changeset
|
2566 // FIXME: if this action fails, do we need a way to display that info |
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23599
diff
changeset
|
2567 // in the GUI? |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
2568 } |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
2569 |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
2570 void |
16539
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
2571 main_window::command_window_undo_callback (void) |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
2572 { |
24630
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2573 // INTERPRETER THREAD |
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2574 |
21748
176536b15d68
use namespace for command_editor and command_history classes
John W. Eaton <jwe@octave.org>
parents:
21744
diff
changeset
|
2575 octave::command_editor::undo (); |
176536b15d68
use namespace for command_editor and command_history classes
John W. Eaton <jwe@octave.org>
parents:
21744
diff
changeset
|
2576 octave::command_editor::redisplay (); |
16539
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
2577 } |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
2578 |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
2579 void |
16514
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
2580 main_window::clear_command_window_callback (void) |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
2581 { |
24630
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2582 // INTERPRETER THREAD |
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2583 |
21748
176536b15d68
use namespace for command_editor and command_history classes
John W. Eaton <jwe@octave.org>
parents:
21744
diff
changeset
|
2584 octave::command_editor::kill_full_line (); |
176536b15d68
use namespace for command_editor and command_history classes
John W. Eaton <jwe@octave.org>
parents:
21744
diff
changeset
|
2585 octave::command_editor::clear_screen (); |
16514
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
2586 } |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
2587 |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
2588 void |
16541
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
2589 main_window::resize_command_window_callback (void) |
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
2590 { |
24630
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2591 // INTERPRETER THREAD |
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2592 |
21748
176536b15d68
use namespace for command_editor and command_history classes
John W. Eaton <jwe@octave.org>
parents:
21744
diff
changeset
|
2593 octave::command_editor::resize_terminal (); |
16541
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
2594 } |
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
2595 |
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
2596 void |
19302
37159a873c96
preserve text on Windows terminal resize (bug #41893; patch #8532)
John W. Eaton <jwe@octave.org>
parents:
19180
diff
changeset
|
2597 main_window::set_screen_size_callback (const int_pair& sz) |
37159a873c96
preserve text on Windows terminal resize (bug #41893; patch #8532)
John W. Eaton <jwe@octave.org>
parents:
19180
diff
changeset
|
2598 { |
24630
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2599 // INTERPRETER THREAD |
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2600 |
21748
176536b15d68
use namespace for command_editor and command_history classes
John W. Eaton <jwe@octave.org>
parents:
21744
diff
changeset
|
2601 octave::command_editor::set_screen_size (sz.first, sz.second); |
19302
37159a873c96
preserve text on Windows terminal resize (bug #41893; patch #8532)
John W. Eaton <jwe@octave.org>
parents:
19180
diff
changeset
|
2602 } |
37159a873c96
preserve text on Windows terminal resize (bug #41893; patch #8532)
John W. Eaton <jwe@octave.org>
parents:
19180
diff
changeset
|
2603 |
37159a873c96
preserve text on Windows terminal resize (bug #41893; patch #8532)
John W. Eaton <jwe@octave.org>
parents:
19180
diff
changeset
|
2604 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2605 main_window::clear_workspace_callback (void) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2606 { |
24630
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2607 // INTERPRETER THREAD |
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2608 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2609 octave::interpreter& interp |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2610 = octave::__get_interpreter__ ("main_window::clear_workspace_callback"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2611 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2612 Fclear (interp); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2613 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2614 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2615 void |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2616 main_window::clear_history_callback (void) |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2617 { |
24630
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2618 // INTERPRETER THREAD |
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2619 |
16431
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
2620 Fhistory (ovl ("-c")); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2621 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2622 |
24632
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
2623 void |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
2624 main_window::refresh_workspace_callback (void) |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
2625 { |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
2626 // INTERPRETER THREAD |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
2627 |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
2628 octave::symbol_scope scope |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
2629 = octave::__get_current_scope__ ("main_window::force_refresh_workspace"); |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
2630 |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
2631 if (scope) |
24645
f61502510d08
restore ability to select variables for editing from workspace widget
John W. Eaton <jwe@octave.org>
parents:
24641
diff
changeset
|
2632 octave_link::set_workspace (true, scope, false); |
24632
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
2633 } |
e9f7cfd40f85
rename some signals and slots for consistency and clarity
John W. Eaton <jwe@octave.org>
parents:
24630
diff
changeset
|
2634 |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2635 bool |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2636 main_window::focus_console_after_command (void) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2637 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2638 QSettings *settings = resource_manager::get_settings (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2639 return settings->value ("terminal/focus_after_command",false).toBool (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2640 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2641 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2642 void |
16566 | 2643 main_window::new_figure_callback (void) |
2644 { | |
24630
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2645 // INTERPRETER THREAD |
81c84fd1ae57
identify functions that are intended to execute in interpreter thread
John W. Eaton <jwe@octave.org>
parents:
24629
diff
changeset
|
2646 |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23497
diff
changeset
|
2647 octave::interpreter& interp |
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23497
diff
changeset
|
2648 = octave::__get_interpreter__ ("main_window::new_figure_callback"); |
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23497
diff
changeset
|
2649 |
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23497
diff
changeset
|
2650 Fbuiltin (interp, ovl ("figure")); |
16566 | 2651 Fdrawnow (); |
2652 } | |
2653 | |
2654 void | |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2655 main_window::change_directory_callback (const std::string& directory) |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
2656 { |
24628
55da6c4f1382
update chdir handling in GUI
John W. Eaton <jwe@octave.org>
parents:
24625
diff
changeset
|
2657 // INTERPRETER THREAD |
55da6c4f1382
update chdir handling in GUI
John W. Eaton <jwe@octave.org>
parents:
24625
diff
changeset
|
2658 |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
2659 Fcd (ovl (directory)); |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
2660 } |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
2661 |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
2662 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2663 main_window::configure_shortcuts (void) |
18717
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2664 { |
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2665 // file menu |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2666 shortcut_manager::set_shortcut (m_open_action, "main_file:open_file"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2667 shortcut_manager::set_shortcut (m_new_script_action, "main_file:new_file"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2668 shortcut_manager::set_shortcut (m_new_function_action, "main_file:new_function"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2669 shortcut_manager::set_shortcut (m_new_function_action, "main_file:new_figure"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2670 shortcut_manager::set_shortcut (m_load_workspace_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2671 "main_file:load_workspace"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2672 shortcut_manager::set_shortcut (m_save_workspace_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2673 "main_file:save_workspace"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2674 shortcut_manager::set_shortcut (m_preferences_action, "main_file:preferences"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2675 shortcut_manager::set_shortcut (m_exit_action,"main_file:exit"); |
18717
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2676 |
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2677 // edit menu |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2678 shortcut_manager::set_shortcut (m_copy_action, "main_edit:copy"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2679 shortcut_manager::set_shortcut (m_paste_action, "main_edit:paste"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2680 shortcut_manager::set_shortcut (m_undo_action, "main_edit:undo"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2681 shortcut_manager::set_shortcut (m_select_all_action, "main_edit:select_all"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2682 shortcut_manager::set_shortcut (m_clear_clipboard_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2683 "main_edit:clear_clipboard"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2684 shortcut_manager::set_shortcut (m_find_files_action, "main_edit:find_in_files"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2685 shortcut_manager::set_shortcut (m_clear_command_history_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2686 "main_edit:clear_history"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2687 shortcut_manager::set_shortcut (m_clear_command_window_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2688 "main_edit:clear_command_window"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2689 shortcut_manager::set_shortcut (m_clear_workspace_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2690 "main_edit:clear_workspace"); |
18717
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2691 |
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2692 // debug menu |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2693 shortcut_manager::set_shortcut (m_debug_step_over, "main_debug:step_over"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2694 shortcut_manager::set_shortcut (m_debug_step_into, "main_debug:step_into"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2695 shortcut_manager::set_shortcut (m_debug_step_out, "main_debug:step_out"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2696 shortcut_manager::set_shortcut (m_debug_continue, "main_debug:continue"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2697 shortcut_manager::set_shortcut (m_debug_quit, "main_debug:quit"); |
18717
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2698 |
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2699 // window menu |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2700 shortcut_manager::set_shortcut (m_show_command_window_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2701 "main_window:show_command"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2702 shortcut_manager::set_shortcut (m_show_history_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2703 "main_window:show_history"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2704 shortcut_manager::set_shortcut (m_show_workspace_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2705 "main_window:show_workspace"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2706 shortcut_manager::set_shortcut (m_show_file_browser_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2707 "main_window:show_file_browser"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2708 shortcut_manager::set_shortcut (m_show_editor_action, "main_window:show_editor"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2709 shortcut_manager::set_shortcut (m_show_documentation_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2710 "main_window:show_doc"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2711 shortcut_manager::set_shortcut (m_show_variable_editor_action, |
23941
804d60784340
fix shortcuts for showing and giving focus to the variable editor
Torsten <mttl@mailbox.org>
parents:
23927
diff
changeset
|
2712 "main_window:show_variable_editor"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2713 shortcut_manager::set_shortcut (m_command_window_action, "main_window:command"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2714 shortcut_manager::set_shortcut (m_history_action, "main_window:history"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2715 shortcut_manager::set_shortcut (m_workspace_action, "main_window:workspace"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2716 shortcut_manager::set_shortcut (m_file_browser_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2717 "main_window:file_browser"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2718 shortcut_manager::set_shortcut (m_editor_action, "main_window:editor"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2719 shortcut_manager::set_shortcut (m_documentation_action, "main_window:doc"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2720 shortcut_manager::set_shortcut (m_variable_editor_action, "main_window:variable_editor"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2721 shortcut_manager::set_shortcut (m_reset_windows_action, "main_window:reset"); |
18717
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2722 |
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2723 // help menu |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2724 shortcut_manager::set_shortcut (m_ondisk_doc_action, "main_help:ondisk_doc"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2725 shortcut_manager::set_shortcut (m_online_doc_action, "main_help:online_doc"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2726 shortcut_manager::set_shortcut (m_report_bug_action, "main_help:report_bug"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2727 shortcut_manager::set_shortcut (m_octave_packages_action, "main_help:packages"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2728 shortcut_manager::set_shortcut (m_contribute_action, "main_help:contribute"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2729 shortcut_manager::set_shortcut (m_developer_action, "main_help:developer"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2730 shortcut_manager::set_shortcut (m_about_octave_action, "main_help:about"); |
18717
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2731 |
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2732 // news menu |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2733 shortcut_manager::set_shortcut (m_release_notes_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2734 "main_news:release_notes"); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2735 shortcut_manager::set_shortcut (m_current_news_action, |
19861
19755f4fc851
maint: Cleanup C++ code to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19855
diff
changeset
|
2736 "main_news:community_news"); |
18717
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2737 } |
f017240310fb
disabling global shortcuts when terminal has focus as user preference
Torsten <ttl@justmail.de>
parents:
18711
diff
changeset
|
2738 |
20278
3b25741a9927
Avoid HAVE_ macro in header file.
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
2739 QList<octave_dock_widget *> |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2740 main_window::dock_widget_list (void) |
20278
3b25741a9927
Avoid HAVE_ macro in header file.
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
2741 { |
3b25741a9927
Avoid HAVE_ macro in header file.
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
2742 QList<octave_dock_widget *> list = QList<octave_dock_widget *> (); |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2743 list.append (static_cast<octave_dock_widget *> (m_command_window)); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2744 list.append (static_cast<octave_dock_widget *> (m_history_window)); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2745 list.append (static_cast<octave_dock_widget *> (m_file_browser_window)); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2746 list.append (static_cast<octave_dock_widget *> (m_doc_browser_window)); |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21670
diff
changeset
|
2747 #if defined (HAVE_QSCINTILLA) |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2748 list.append (static_cast<octave_dock_widget *> (m_editor_window)); |
20278
3b25741a9927
Avoid HAVE_ macro in header file.
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
2749 #endif |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2750 list.append (static_cast<octave_dock_widget *> (m_workspace_window)); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2751 list.append (static_cast<octave_dock_widget *> (m_variable_editor_window)); |
20278
3b25741a9927
Avoid HAVE_ macro in header file.
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
2752 return list; |
3b25741a9927
Avoid HAVE_ macro in header file.
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
2753 } |
3b25741a9927
Avoid HAVE_ macro in header file.
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
2754 |
17029
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
2755 void |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2756 news_reader::process (void) |
17029
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
2757 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2758 QString html_text; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2759 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2760 if (m_connect_to_web) |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
2761 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2762 // Run this part in a separate thread so Octave can continue to |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2763 // run while we wait for the page to load. Then emit the signal |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2764 // to display it when we have the page contents. |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2765 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2766 QString url = m_base_url + '/' + m_page; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2767 std::ostringstream buf; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2768 octave::url_transfer octave_dot_org (url.toStdString (), buf); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2769 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2770 if (octave_dot_org.is_valid ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2771 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2772 Array<std::string> param; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2773 octave_dot_org.http_get (param); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2774 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2775 if (octave_dot_org.good ()) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2776 html_text = QString::fromStdString (buf.str ()); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2777 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2778 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2779 if (html_text.contains ("this-is-the-gnu-octave-community-news-page")) |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
2780 { |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2781 if (m_serial >= 0) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2782 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2783 QSettings *settings = resource_manager::get_settings (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2784 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2785 if (settings) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2786 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2787 settings->setValue ("news/last_time_checked", |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2788 QDateTime::currentDateTime ()); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2789 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2790 settings->sync (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2791 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2792 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2793 QString tag ("community-news-page-serial="); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2794 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2795 int b = html_text.indexOf (tag); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2796 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2797 if (b) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2798 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2799 b += tag.length (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2800 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2801 int e = html_text.indexOf ("\n", b); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2802 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2803 QString tmp = html_text.mid (b, e-b); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2804 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2805 int curr_page_serial = tmp.toInt (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2806 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2807 if (curr_page_serial > m_serial) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2808 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2809 if (settings) |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2810 { |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2811 settings->setValue ("news/last_news_item", |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2812 curr_page_serial); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2813 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2814 settings->sync (); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2815 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2816 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2817 else |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2818 return; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2819 } |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2820 else |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2821 return; |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2822 } |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
2823 } |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
2824 else |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2825 html_text = QString |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2826 (tr ("<html>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2827 "<body>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2828 "<p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2829 "Octave's community news source seems to be unavailable.\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2830 "</p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2831 "<p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2832 "For the latest news, please check\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2833 "<a href=\"http://octave.org/community-news.html\">http://octave.org/community-news.html</a>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2834 "when you have a connection to the web (link opens in an external browser).\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2835 "</p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2836 "<p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2837 "<small><em>— The Octave Developers, ") + OCTAVE_RELEASE_DATE + "</em></small>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2838 "</p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2839 "</body>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2840 "</html>\n"); |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
2841 } |
24019
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2842 else |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2843 html_text = QString |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2844 (tr ("<html>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2845 "<body>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2846 "<p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2847 "Connecting to the web to display the latest Octave Community news has been disabled.\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2848 "</p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2849 "<p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2850 "For the latest news, please check\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2851 "<a href=\"http://octave.org/community-news.html\">http://octave.org/community-news.html</a>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2852 "when you have a connection to the web (link opens in an external browser)\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2853 "or enable web connections for news in Octave's network settings dialog.\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2854 "</p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2855 "<p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2856 "<small><em>— The Octave Developers, ") + OCTAVE_RELEASE_DATE + "</em></small>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2857 "</p>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2858 "</body>\n" |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2859 "</html>\n"); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2860 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2861 emit display_news_signal (html_text); |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2862 |
fc4ba8b1ff87
style fixes for GUI main window
John W. Eaton <jwe@octave.org>
parents:
24016
diff
changeset
|
2863 emit finished (); |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
2864 } |