Mercurial > octave-libgccjit
annotate libgui/src/main-window.cc @ 17936:8c23f844bd30
set maximum size for release notes window from screen size
* main-window.cc (main_window::display_release_notes): Use screen size
to set height of release notes window, up to a maximum of 800 px.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 15 Nov 2013 22:21:05 -0500 |
parents | 752f6b358754 |
children | 16cf38c39915 |
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 |
16447
e3b33a7530bc
improve encapsulation of history window object
John W. Eaton <jwe@octave.org>
parents:
16446
diff
changeset
|
3 Copyright (C) 2013 John W. Eaton |
17744
d63878346099
maint: Update copyright notices for release.
John W. Eaton <jwe@octave.org>
parents:
17686
diff
changeset
|
4 Copyright (C) 2011-2013 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 |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
8 Octave is free software; you can redistribute it and/or modify it |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
9 under the terms of the GNU General Public License as published by the |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
10 Free Software Foundation; either version 3 of the License, or (at your |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
11 option) any later version. |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
12 |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
13 Octave is distributed in the hope that it will be useful, but WITHOUT |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
15 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
16 for more details. |
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 |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
20 <http://www.gnu.org/licenses/>. |
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 |
15286
ae9079bbc627
Add '#include <config.h>' to C++ files in libgui/src
Rik <rik@octave.org>
parents:
15274
diff
changeset
|
24 #ifdef HAVE_CONFIG_H |
ae9079bbc627
Add '#include <config.h>' to C++ files in libgui/src
Rik <rik@octave.org>
parents:
15274
diff
changeset
|
25 #include <config.h> |
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> |
7ee62f559a73
Fix compilation under Windows with GUI and LLVM enabled.
Michael Goffioul <michael.goffioul@gmail.com>
parents:
15204
diff
changeset
|
30 #include <QLabel> |
13501 | 31 #include <QMenuBar> |
32 #include <QMenu> | |
33 #include <QAction> | |
34 #include <QSettings> | |
14670
7fbea449737d
Restructured menus, added toolbar and current directory line edit.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14669
diff
changeset
|
35 #include <QStyle> |
7fbea449737d
Restructured menus, added toolbar and current directory line edit.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14669
diff
changeset
|
36 #include <QToolBar> |
13501 | 37 #include <QDesktopServices> |
16391
a695ee2dc17e
* main-window.cc: Include <QDesktopWidget>
John W. Eaton <jwe@octave.org>
parents:
16386
diff
changeset
|
38 #include <QDesktopWidget> |
13501 | 39 #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
|
40 #include <QMessageBox> |
14670
7fbea449737d
Restructured menus, added toolbar and current directory line edit.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14669
diff
changeset
|
41 #include <QIcon> |
17764
811b5a562680
Format release notes as preformatted text in the GUI (bug #40367)
Mike Miller <mtmiller@ieee.org>
parents:
17744
diff
changeset
|
42 #include <QTextStream> |
14670
7fbea449737d
Restructured menus, added toolbar and current directory line edit.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14669
diff
changeset
|
43 |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
44 #include <utility> |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
45 |
16290
d07aeecb2d22
build: Add more #ifdefs to build GUI when Qscintilla is not present.
Rik <rik@octave.org>
parents:
16176
diff
changeset
|
46 #ifdef HAVE_QSCINTILLA |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
47 #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
|
48 #endif |
14707
674740c44c09
Changed various files to matche file naming conventions.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14703
diff
changeset
|
49 #include "main-window.h" |
674740c44c09
Changed various files to matche file naming conventions.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14703
diff
changeset
|
50 #include "settings-dialog.h" |
13501 | 51 |
16468
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
52 #include "cmd-edit.h" |
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
53 |
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
54 #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
|
55 #include "defaults.h" |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
56 #include "symtab.h" |
15404
f52a62a6db3a
eliminate copy and paste copyright info in GUI about info box
John W. Eaton <jwe@octave.org>
parents:
15402
diff
changeset
|
57 #include "version.h" |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
58 |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
59 static file_editor_interface * |
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
60 create_default_editor (QWidget *p) |
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
61 { |
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
62 #ifdef HAVE_QSCINTILLA |
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
63 return new file_editor (p); |
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
64 #else |
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
65 return 0; |
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
66 #endif |
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
67 } |
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
68 |
15368
36ececf69385
avoid some GCC warnings in the libgui code
John W. Eaton <jwe@octave.org>
parents:
15367
diff
changeset
|
69 main_window::main_window (QWidget *p) |
16451
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
70 : QMainWindow (p), |
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
71 _workspace_model (new workspace_model ()), |
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
72 status_bar (new QStatusBar ()), |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
73 news_window (new news_dock_widget (this)), |
16451
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
74 command_window (new terminal_dock_widget (this)), |
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
75 history_window (new history_dock_widget (this)), |
16453
2e3c652c89d1
improve encapsulation of documentation browser window object
John W. Eaton <jwe@octave.org>
parents:
16452
diff
changeset
|
76 file_browser_window (new files_dock_widget (this)), |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
77 doc_browser_window (new documentation_dock_widget (this)), |
16459
cbc39a3d0c42
improve encapsulation of workspace window object
John W. Eaton <jwe@octave.org>
parents:
16458
diff
changeset
|
78 editor_window (create_default_editor (this)), |
16485
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
79 workspace_window (new workspace_view (this)), |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
80 find_files_dlg (0), |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
81 release_notes_window (0), |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
82 _octave_qt_link (0), |
17329
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
83 _clipboard (QApplication::clipboard ()), |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
84 _cmd_queue (new QStringList ()), // no command pending |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
85 _cmd_processing (1), |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
86 _cmd_queue_mutex () |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
87 { |
14599
97cb9286919c
Cleaned up code.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14588
diff
changeset
|
88 // 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
|
89 construct (); |
13501 | 90 } |
91 | |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
92 main_window::~main_window (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
93 { |
16485
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
94 // 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
|
95 // 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
|
96 |
16638
3c2e457eeb72
ask for saving modified editor files if octave is closed (bug #38689)
Torsten <ttl@justmail.de>
parents:
16635
diff
changeset
|
97 delete editor_window; // first one for dialogs of modified editor-tabs |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
98 delete news_window; |
16484
fa842e78f491
Restore STDERR stream pipe before exit to capture error messages.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16479
diff
changeset
|
99 delete command_window; |
16485
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
100 delete workspace_window; |
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
101 delete doc_browser_window; |
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
102 delete file_browser_window; |
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
103 delete history_window; |
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
104 delete status_bar; |
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
105 delete _workspace_model; |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
106 if (find_files_dlg) |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
107 { |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
108 delete find_files_dlg; |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
109 find_files_dlg = 0; |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
110 } |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
111 if (release_notes_window) |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
112 { |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
113 delete release_notes_window; |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
114 release_notes_window = 0; |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
115 } |
16421
40d1ddca4db5
improve use of octave_link
John W. Eaton <jwe@octave.org>
parents:
16415
diff
changeset
|
116 delete _octave_qt_link; |
17329
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
117 delete _cmd_queue; |
13501 | 118 } |
119 | |
16576
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
120 bool |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
121 main_window::command_window_has_focus (void) const |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
122 { |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
123 return 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
|
124 } |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
125 |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
126 void |
16449
c129a8b73d25
avoid unneeded signals for window focus
John W. Eaton <jwe@octave.org>
parents:
16448
diff
changeset
|
127 main_window::focus_command_window (void) |
c129a8b73d25
avoid unneeded signals for window focus
John W. Eaton <jwe@octave.org>
parents:
16448
diff
changeset
|
128 { |
16451
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
129 command_window->focus (); |
16449
c129a8b73d25
avoid unneeded signals for window focus
John W. Eaton <jwe@octave.org>
parents:
16448
diff
changeset
|
130 } |
c129a8b73d25
avoid unneeded signals for window focus
John W. Eaton <jwe@octave.org>
parents:
16448
diff
changeset
|
131 |
c129a8b73d25
avoid unneeded signals for window focus
John W. Eaton <jwe@octave.org>
parents:
16448
diff
changeset
|
132 void |
16452
744ff2fe11ce
add create script context menu to history window
John Donoghue <john.donoghue@ieee.org>
parents:
16451
diff
changeset
|
133 main_window::new_file (const QString& commands) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
134 { |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
135 emit new_file_signal (commands); |
14875
3fd857c284fe
Editor now gets focussed when opening a file.
Jacob Dawid <jacob.dawid@gmail.com>
parents:
14831
diff
changeset
|
136 } |
3fd857c284fe
Editor now gets focussed when opening a file.
Jacob Dawid <jacob.dawid@gmail.com>
parents:
14831
diff
changeset
|
137 |
3fd857c284fe
Editor now gets focussed when opening a file.
Jacob Dawid <jacob.dawid@gmail.com>
parents:
14831
diff
changeset
|
138 void |
15300
fd27e10b9b05
pass QString by const reference instead of value
John W. Eaton <jwe@octave.org>
parents:
15286
diff
changeset
|
139 main_window::open_file (const QString& file_name) |
14875
3fd857c284fe
Editor now gets focussed when opening a file.
Jacob Dawid <jacob.dawid@gmail.com>
parents:
14831
diff
changeset
|
140 { |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
141 emit open_file_signal (file_name); |
13558
248b897d9f36
editor: custom lexer, syntax highlighting, auto completion
ttl <ttl@justmail.de>
parents:
13550
diff
changeset
|
142 } |
248b897d9f36
editor: custom lexer, syntax highlighting, auto completion
ttl <ttl@justmail.de>
parents:
13550
diff
changeset
|
143 |
248b897d9f36
editor: custom lexer, syntax highlighting, auto completion
ttl <ttl@justmail.de>
parents:
13550
diff
changeset
|
144 void |
15300
fd27e10b9b05
pass QString by const reference instead of value
John W. Eaton <jwe@octave.org>
parents:
15286
diff
changeset
|
145 main_window::report_status_message (const QString& statusMessage) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
146 { |
16451
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
147 status_bar->showMessage (statusMessage, 1000); |
13501 | 148 } |
149 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
150 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
151 main_window::handle_save_workspace_request (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
152 { |
16532
67d4111d078d
look for save/load files starting in current directory
John W. Eaton <jwe@octave.org>
parents:
16526
diff
changeset
|
153 QString file = |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
154 QFileDialog::getSaveFileName (this, tr ("Save Workspace As"), ".", 0, 0, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
155 QFileDialog::DontUseNativeDialog); |
16532
67d4111d078d
look for save/load files starting in current directory
John W. Eaton <jwe@octave.org>
parents:
16526
diff
changeset
|
156 |
67d4111d078d
look for save/load files starting in current directory
John W. Eaton <jwe@octave.org>
parents:
16526
diff
changeset
|
157 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
|
158 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
|
159 file.toStdString ()); |
13501 | 160 } |
161 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
162 void |
16504
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
163 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
|
164 { |
16504
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
165 QString file = file_arg; |
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
166 |
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
167 if (file.isEmpty ()) |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
168 file = QFileDialog::getOpenFileName (this, tr ("Load Workspace"), ".", 0, 0, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
169 QFileDialog::DontUseNativeDialog); |
16532
67d4111d078d
look for save/load files starting in current directory
John W. Eaton <jwe@octave.org>
parents:
16526
diff
changeset
|
170 |
16504
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
171 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
|
172 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
|
173 file.toStdString ()); |
13501 | 174 } |
175 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
176 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
177 main_window::handle_clear_workspace_request (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
178 { |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
179 octave_link::post_event (this, &main_window::clear_workspace_callback); |
13501 | 180 } |
181 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
182 void |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
183 main_window::handle_rename_variable_request (const QString& old_name, |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
184 const QString& new_name) |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
185 |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
186 { |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
187 name_pair names (old_name.toStdString (), new_name.toStdString ()); |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
188 |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
189 octave_link::post_event (this, &main_window::rename_variable_callback, |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
190 names); |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
191 } |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
192 |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
193 void |
16539
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
194 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
|
195 { |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
196 octave_link::post_event (this, &main_window::command_window_undo_callback); |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
197 } |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
198 |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
199 void |
16514
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
200 main_window::handle_clear_command_window_request (void) |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
201 { |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
202 octave_link::post_event (this, &main_window::clear_command_window_callback); |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
203 } |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
204 |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
205 void |
16431
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
206 main_window::handle_clear_history_request (void) |
14814
61c80e9326a8
Clearing the command history works.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14813
diff
changeset
|
207 { |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
208 octave_link::post_event (this, &main_window::clear_history_callback); |
14814
61c80e9326a8
Clearing the command history works.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14813
diff
changeset
|
209 } |
61c80e9326a8
Clearing the command history works.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14813
diff
changeset
|
210 |
61c80e9326a8
Clearing the command history works.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14813
diff
changeset
|
211 void |
16570
d5ae5aa80d42
preserve pending command line input when running commands from GUI actions
John W. Eaton <jwe@octave.org>
parents:
16566
diff
changeset
|
212 main_window::execute_command_in_terminal (const QString& command) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
213 { |
17329
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
214 queue_command (command); |
16570
d5ae5aa80d42
preserve pending command line input when running commands from GUI actions
John W. Eaton <jwe@octave.org>
parents:
16566
diff
changeset
|
215 focus_command_window (); |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
216 } |
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
217 |
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
218 void |
16635
25e418d23a4b
fix running files from file browser's context menu
Torsten <ttl@justmail.de>
parents:
16593
diff
changeset
|
219 main_window::run_file_in_terminal (const QFileInfo& info) |
25e418d23a4b
fix running files from file browser's context menu
Torsten <ttl@justmail.de>
parents:
16593
diff
changeset
|
220 { |
17331
636d75a58cd9
fix running file from editor that is not in the search path (bug #39870)
Torsten <ttl@justmail.de>
parents:
17329
diff
changeset
|
221 octave_link::post_event (this, &main_window::run_file_callback, info); |
636d75a58cd9
fix running file from editor that is not in the search path (bug #39870)
Torsten <ttl@justmail.de>
parents:
17329
diff
changeset
|
222 } |
636d75a58cd9
fix running file from editor that is not in the search path (bug #39870)
Torsten <ttl@justmail.de>
parents:
17329
diff
changeset
|
223 |
636d75a58cd9
fix running file from editor that is not in the search path (bug #39870)
Torsten <ttl@justmail.de>
parents:
17329
diff
changeset
|
224 void |
636d75a58cd9
fix running file from editor that is not in the search path (bug #39870)
Torsten <ttl@justmail.de>
parents:
17329
diff
changeset
|
225 main_window::run_file_callback (const QFileInfo& info) |
636d75a58cd9
fix running file from editor that is not in the search path (bug #39870)
Torsten <ttl@justmail.de>
parents:
17329
diff
changeset
|
226 { |
17329
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
227 QString dir = info.absolutePath (); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
228 QString function_name = info.fileName (); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
229 function_name.chop (info.suffix ().length () + 1); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
230 if (octave_qt_link::file_in_path (info.absoluteFilePath ().toStdString (), |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
231 dir.toStdString ())) |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
232 queue_command (function_name); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
233 } |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
234 |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
235 void |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
236 main_window::queue_command (QString command) |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
237 { |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
238 _cmd_queue_mutex.lock (); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
239 _cmd_queue->append (command); // queue command |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
240 _cmd_queue_mutex.unlock (); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
241 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
242 if (_cmd_processing.tryAcquire ()) // if callback not processing, post event |
17329
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
243 octave_link::post_event (this, &main_window::execute_command_callback); |
16635
25e418d23a4b
fix running files from file browser's context menu
Torsten <ttl@justmail.de>
parents:
16593
diff
changeset
|
244 } |
25e418d23a4b
fix running files from file browser's context menu
Torsten <ttl@justmail.de>
parents:
16593
diff
changeset
|
245 |
25e418d23a4b
fix running files from file browser's context menu
Torsten <ttl@justmail.de>
parents:
16593
diff
changeset
|
246 void |
16566 | 247 main_window::handle_new_figure_request (void) |
248 { | |
249 octave_link::post_event (this, &main_window::new_figure_callback); | |
250 } | |
251 | |
252 void | |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
253 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
|
254 { |
17509 | 255 QDesktopServices::openUrl (QUrl ("http://octave.org/doc/interpreter")); |
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
|
256 } |
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
257 |
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
258 void |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
259 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
|
260 { |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
261 if (! 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
|
262 { |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
263 std::string news_file = Voct_etc_dir + "/NEWS"; |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
264 |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
265 QString news; |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
266 |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
267 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
|
268 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
|
269 { |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
270 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
|
271 news = stream->readAll (); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
272 if (! news.isEmpty ()) |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
273 { |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
274 news.prepend ("<pre>"); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
275 news.append ("</pre>"); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
276 } |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
277 else |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
278 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
|
279 . 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
|
280 } |
811b5a562680
Format release notes as preformatted text in the GUI (bug #40367)
Mike Miller <mtmiller@ieee.org>
parents:
17744
diff
changeset
|
281 else |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
282 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
|
283 . 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
|
284 |
17764
811b5a562680
Format release notes as preformatted text in the GUI (bug #40367)
Mike Miller <mtmiller@ieee.org>
parents:
17744
diff
changeset
|
285 |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
286 release_notes_window = new QWidget; |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
287 |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
288 QTextBrowser *browser = new QTextBrowser (release_notes_window); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
289 browser->setText (news); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
290 |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
291 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
|
292 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
|
293 |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
294 release_notes_window->setLayout (vlayout); |
17936
8c23f844bd30
set maximum size for release notes window from screen size
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
295 release_notes_window->setWindowTitle (tr ("Octave Release Notes")); |
8c23f844bd30
set maximum size for release notes window from screen size
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
296 release_notes_window->setWindowIcon (QIcon (_release_notes_icon)); |
8c23f844bd30
set maximum size for release notes window from screen size
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
297 |
17890
e0495a8c1b5d
Set initial size of GUI Release Notes window to something reasonable.
Rik <rik@octave.org>
parents:
17883
diff
changeset
|
298 browser->document()->adjustSize (); |
e0495a8c1b5d
Set initial size of GUI Release Notes window to something reasonable.
Rik <rik@octave.org>
parents:
17883
diff
changeset
|
299 QSize doc_size = browser->document()->size().toSize (); |
e0495a8c1b5d
Set initial size of GUI Release Notes window to something reasonable.
Rik <rik@octave.org>
parents:
17883
diff
changeset
|
300 doc_size.rwidth () += 45; |
17936
8c23f844bd30
set maximum size for release notes window from screen size
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
301 int h = QApplication::desktop ()->height (); |
8c23f844bd30
set maximum size for release notes window from screen size
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
302 if (h > 800) |
8c23f844bd30
set maximum size for release notes window from screen size
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
303 h = 800; |
8c23f844bd30
set maximum size for release notes window from screen size
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
304 doc_size.rheight () = h; |
8c23f844bd30
set maximum size for release notes window from screen size
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
305 |
17890
e0495a8c1b5d
Set initial size of GUI Release Notes window to something reasonable.
Rik <rik@octave.org>
parents:
17883
diff
changeset
|
306 release_notes_window->resize (doc_size); |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
307 } |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
308 |
17883
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
309 if (! release_notes_window->isVisible ()) |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
310 release_notes_window->show (); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
311 else if (release_notes_window->isMinimized ()) |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
312 release_notes_window->showNormal (); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
313 |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
314 release_notes_window->raise (); |
3851e5fde76d
GUI: allow only one release notes windows to be open
John Donoghue <john.donoghue@ieee.org>
parents:
17824
diff
changeset
|
315 release_notes_window->activateWindow (); |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
316 } |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
317 |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
318 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
319 main_window::open_bug_tracker_page (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
320 { |
17509 | 321 QDesktopServices::openUrl (QUrl ("http://octave.org/bugs.html")); |
13501 | 322 } |
323 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
324 void |
17509 | 325 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
|
326 { |
17509 | 327 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
|
328 } |
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
329 |
afc4e08f2143
Add access to documentation and to online html page via Help menu
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15987
diff
changeset
|
330 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
331 main_window::open_agora_page (void) |
13533
edaf8e72070e
Added urls for Agora and Octave Forge in Community Window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13532
diff
changeset
|
332 { |
17509 | 333 QDesktopServices::openUrl (QUrl ("http://agora.octave.org")); |
334 } | |
335 | |
336 void | |
337 main_window::open_contribute_page (void) | |
338 { | |
339 QDesktopServices::openUrl (QUrl ("http://octave.org/donate.html")); | |
340 } | |
341 | |
342 void | |
343 main_window::open_developer_page (void) | |
344 { | |
17576
387ecd448b30
main-windows.cc: Fixed typo in open_developer_page URL
Andreas Weber <andy.weber.aw@gmail.com>
parents:
17510
diff
changeset
|
345 QDesktopServices::openUrl (QUrl ("http://octave.org/get-involved.html")); |
13533
edaf8e72070e
Added urls for Agora and Octave Forge in Community Window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13532
diff
changeset
|
346 } |
edaf8e72070e
Added urls for Agora and Octave Forge in Community Window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13532
diff
changeset
|
347 |
edaf8e72070e
Added urls for Agora and Octave Forge in Community Window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13532
diff
changeset
|
348 void |
17676
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17674
diff
changeset
|
349 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
|
350 { |
17676
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17674
diff
changeset
|
351 settings_dialog *settingsDialog = new settings_dialog (this, desired_tab); |
15274
c5d09a57ceb2
provide buttons for the settings dialog (bug #36981)
Torsten <ttl@justmail.de>
parents:
15257
diff
changeset
|
352 int change_settings = settingsDialog->exec (); |
c5d09a57ceb2
provide buttons for the settings dialog (bug #36981)
Torsten <ttl@justmail.de>
parents:
15257
diff
changeset
|
353 if (change_settings == QDialog::Accepted) |
c5d09a57ceb2
provide buttons for the settings dialog (bug #36981)
Torsten <ttl@justmail.de>
parents:
15257
diff
changeset
|
354 { |
c5d09a57ceb2
provide buttons for the settings dialog (bug #36981)
Torsten <ttl@justmail.de>
parents:
15257
diff
changeset
|
355 settingsDialog->write_changed_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
|
356 QSettings *settings = resource_manager::get_settings (); |
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
|
357 if (settings) |
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
|
358 emit settings_changed (settings); |
15274
c5d09a57ceb2
provide buttons for the settings dialog (bug #36981)
Torsten <ttl@justmail.de>
parents:
15257
diff
changeset
|
359 } |
14586
8e9823066dad
Fixed bug with not correctly syncing settings.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14308
diff
changeset
|
360 delete settingsDialog; |
14588
fa52c6e84ae0
Added controls and settings for changing the terminal font.
"Israel Herraiz <israel.herraiz@upm.es>"
parents:
14586
diff
changeset
|
361 } |
fa52c6e84ae0
Added controls and settings for changing the terminal font.
"Israel Herraiz <israel.herraiz@upm.es>"
parents:
14586
diff
changeset
|
362 |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
363 |
14588
fa52c6e84ae0
Added controls and settings for changing the terminal font.
"Israel Herraiz <israel.herraiz@upm.es>"
parents:
14586
diff
changeset
|
364 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
|
365 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
|
366 { |
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
|
367 // 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
|
368 |
15787
b081fbe80174
provide separate icons for gui's floating widgets
Torsten <ttl@justmail.de>
parents:
15758
diff
changeset
|
369 // 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
|
370 QString icon_set |
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
371 = 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
|
372 |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
373 static struct |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
374 { |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
375 QString name; |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
376 QString path; |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
377 } |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
378 |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
379 widget_icon_data[] = |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
380 { |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
381 // 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
|
382 // 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
|
383 {"NONE", ":/actions/icons/logo.png"}, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
384 {"GRAPHIC", ":/actions/icons/graphic_logo_"}, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
385 {"LETTER", ":/actions/icons/letter_logo_"}, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
386 {"", ""} // end marker has empty name |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
387 }; |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
388 |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
389 int count = 0; |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
390 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
|
391 |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
392 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
|
393 { |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
394 // while not end of data |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
395 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
|
396 { |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
397 // 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
|
398 icon_set_found = count; |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
399 break; |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
400 } |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
401 count++; |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
402 } |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
403 |
15787
b081fbe80174
provide separate icons for gui's floating widgets
Torsten <ttl@justmail.de>
parents:
15758
diff
changeset
|
404 QString icon; |
16798
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
405 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
|
406 { |
16798
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
407 QString name = widget->objectName (); |
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
408 if (! name.isEmpty ()) |
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
409 { // if children has a name |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
410 icon = widget_icon_data[icon_set_found].path; // prefix or octave-logo |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
411 if (widget_icon_data[icon_set_found].name != "NONE") |
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
412 icon = 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
|
413 widget->setWindowIcon (QIcon (icon)); |
b081fbe80174
provide separate icons for gui's floating widgets
Torsten <ttl@justmail.de>
parents:
15758
diff
changeset
|
414 } |
b081fbe80174
provide separate icons for gui's floating widgets
Torsten <ttl@justmail.de>
parents:
15758
diff
changeset
|
415 } |
17619
4288b90f18c4
icons for news and release notes widgets
Torsten <ttl@justmail.de>
parents:
17617
diff
changeset
|
416 if (widget_icon_data[icon_set_found].name != "NONE") |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
417 _release_notes_icon = widget_icon_data[icon_set_found].path |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
418 + "ReleaseWidget.png"; |
17619
4288b90f18c4
icons for news and release notes widgets
Torsten <ttl@justmail.de>
parents:
17617
diff
changeset
|
419 else |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
420 _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
|
421 |
16525
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
422 int icon_size = settings->value ("toolbar_icon_size",24).toInt (); |
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
423 _main_tool_bar->setIconSize (QSize (icon_size,icon_size)); |
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
424 |
15164
bc801a44bb1f
follow Octave pattern for resource_manager singleton
John W. Eaton <jwe@octave.org>
parents:
15106
diff
changeset
|
425 resource_manager::update_network_settings (); |
13501 | 426 } |
427 | |
15914
85f9aca30c76
gui: reorganized handling of different icons for dock widgets
Torsten <ttl@justmail.de>
parents:
15900
diff
changeset
|
428 |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
429 void |
16468
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
430 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
|
431 { |
14712
5cb54cca8a06
Completion of code reformatting.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14709
diff
changeset
|
432 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
|
433 } |
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
|
434 |
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
|
435 void |
16485
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
436 main_window::exit (int status) |
16479
7a71ea0b7ae9
eliminate event listener class
John W. Eaton <jwe@octave.org>
parents:
16478
diff
changeset
|
437 { |
16485
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
438 qApp->exit (status); |
16479
7a71ea0b7ae9
eliminate event listener class
John W. Eaton <jwe@octave.org>
parents:
16478
diff
changeset
|
439 } |
7a71ea0b7ae9
eliminate event listener class
John W. Eaton <jwe@octave.org>
parents:
16478
diff
changeset
|
440 |
7a71ea0b7ae9
eliminate event listener class
John W. Eaton <jwe@octave.org>
parents:
16478
diff
changeset
|
441 void |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
442 main_window::reset_windows (void) |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
443 { |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
444 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
|
445 |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
446 set_window_layout (settings); |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
447 } |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
448 |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
449 void |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
450 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
|
451 { |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
452 // 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
|
453 // 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
|
454 // widget. |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
455 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
456 int index = _current_directory_combo_box->findText (dir); |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
457 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
458 if (index >= 0) |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
459 _current_directory_combo_box->removeItem (index); |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
460 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
461 _current_directory_combo_box->insertItem (0, dir); |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
462 _current_directory_combo_box->setCurrentIndex (0); |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
463 |
16499
facf00ce97d3
gui: configurable synchronization between file browser and octave directory
Torsten <ttl@justmail.de>
parents:
16497
diff
changeset
|
464 file_browser_window->update_octave_directory (dir); |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
465 } |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
466 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
467 void |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
468 main_window::browse_for_directory (void) |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
469 { |
16578
0eca6c5657c9
force focus to command window after browsing for directory
John W. Eaton <jwe@octave.org>
parents:
16576
diff
changeset
|
470 QString dir |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
471 = QFileDialog::getExistingDirectory (this, tr ("Set working directory"), 0, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
472 QFileDialog::DontUseNativeDialog); |
16578
0eca6c5657c9
force focus to command window after browsing for directory
John W. Eaton <jwe@octave.org>
parents:
16576
diff
changeset
|
473 |
0eca6c5657c9
force focus to command window after browsing for directory
John W. Eaton <jwe@octave.org>
parents:
16576
diff
changeset
|
474 set_current_working_directory (dir); |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
475 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
476 // 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
|
477 // 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
|
478 |
0eca6c5657c9
force focus to command window after browsing for directory
John W. Eaton <jwe@octave.org>
parents:
16576
diff
changeset
|
479 focus_command_window (); |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
480 } |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
481 |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
482 void |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
483 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
|
484 { |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
485 // 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
|
486 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
487 QString xdir = dir.isEmpty () ? "." : dir; |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
488 |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
489 QFileInfo fileInfo (xdir); |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
490 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
491 if (fileInfo.exists () && fileInfo.isDir ()) |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
492 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
|
493 xdir.toStdString ()); |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
494 } |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
495 |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
496 void |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
497 main_window::change_directory_up (void) |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
498 { |
16526
01541f7321f7
correctly track directory for cd ..
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
499 set_current_working_directory (".."); |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
500 } |
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
501 |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
502 // 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
|
503 // 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
|
504 // in the drop down list. |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
505 |
15626
1cc10ce368ea
enable entering a new directory in the current directory combobox
Torsten <ttl@justmail.de>
parents:
15607
diff
changeset
|
506 void |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
507 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
|
508 { |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
509 // 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
|
510 // 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
|
511 // directory. |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
512 |
16518
59dbdaeeea40
* main_window.cc(construct_tool_bar): code cleanup and tool tips for combo box
Torsten <ttl@justmail.de>
parents:
16514
diff
changeset
|
513 QString dir = _current_directory_combo_box->currentText (); |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
514 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
515 int index = _current_directory_combo_box->findText (dir); |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
516 |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
517 if (index < 0) |
15626
1cc10ce368ea
enable entering a new directory in the current directory combobox
Torsten <ttl@justmail.de>
parents:
15607
diff
changeset
|
518 set_current_working_directory (dir); |
1cc10ce368ea
enable entering a new directory in the current directory combobox
Torsten <ttl@justmail.de>
parents:
15607
diff
changeset
|
519 } |
1cc10ce368ea
enable entering a new directory in the current directory combobox
Torsten <ttl@justmail.de>
parents:
15607
diff
changeset
|
520 |
14726
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
521 void |
16438
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
522 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
|
523 { |
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
524 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
|
525 |
14795
e3ae0850b105
Fixed integrating debug menu in the editor window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14784
diff
changeset
|
526 _debug_continue->setEnabled (true); |
e3ae0850b105
Fixed integrating debug menu in the editor window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14784
diff
changeset
|
527 _debug_step_into->setEnabled (true); |
e3ae0850b105
Fixed integrating debug menu in the editor window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14784
diff
changeset
|
528 _debug_step_over->setEnabled (true); |
e3ae0850b105
Fixed integrating debug menu in the editor window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14784
diff
changeset
|
529 _debug_step_out->setEnabled (true); |
e3ae0850b105
Fixed integrating debug menu in the editor window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14784
diff
changeset
|
530 _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
|
531 |
15873
7d300b85ee25
allow build to proceed if either Qt or QScintilla is missing
John W. Eaton <jwe@octave.org>
parents:
15848
diff
changeset
|
532 #ifdef HAVE_QSCINTILLA |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
533 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
|
534 #endif |
14726
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
535 } |
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
536 |
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
537 void |
16438
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
538 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
|
539 { |
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
540 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
|
541 |
14795
e3ae0850b105
Fixed integrating debug menu in the editor window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14784
diff
changeset
|
542 _debug_continue->setEnabled (false); |
e3ae0850b105
Fixed integrating debug menu in the editor window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14784
diff
changeset
|
543 _debug_step_into->setEnabled (false); |
e3ae0850b105
Fixed integrating debug menu in the editor window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14784
diff
changeset
|
544 _debug_step_over->setEnabled (false); |
e3ae0850b105
Fixed integrating debug menu in the editor window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14784
diff
changeset
|
545 _debug_step_out->setEnabled (false); |
e3ae0850b105
Fixed integrating debug menu in the editor window.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14784
diff
changeset
|
546 _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
|
547 |
15873
7d300b85ee25
allow build to proceed if either Qt or QScintilla is missing
John W. Eaton <jwe@octave.org>
parents:
15848
diff
changeset
|
548 #ifdef HAVE_QSCINTILLA |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
549 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
|
550 #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
|
551 } |
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
|
552 |
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
|
553 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
554 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
|
555 { |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
556 octave_link::post_event (this, &main_window::debug_continue_callback); |
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
|
557 } |
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
|
558 |
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
|
559 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
560 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
|
561 { |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
562 octave_link::post_event (this, &main_window::debug_step_into_callback); |
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
|
563 } |
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
|
564 |
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
|
565 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
566 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
|
567 { |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
568 octave_link::post_event (this, &main_window::debug_step_over_callback); |
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
|
569 } |
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
|
570 |
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
|
571 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
572 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
|
573 { |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
574 octave_link::post_event (this, &main_window::debug_step_out_callback); |
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
|
575 } |
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
|
576 |
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
|
577 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
578 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
|
579 { |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
580 octave_link::post_event (this, &main_window::debug_quit_callback); |
14726
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
581 } |
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
582 |
14700
7623bece76df
Implemented logic for current directory bar.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14698
diff
changeset
|
583 void |
16576
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
584 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
|
585 int line) |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
586 { |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
587 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
|
588 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
589 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
|
590 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
591 if (cmd_focus) |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
592 focus_command_window (); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
593 } |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
594 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
595 void |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
596 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
|
597 int line) |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
598 { |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
599 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
|
600 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
601 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
|
602 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
603 if (cmd_focus) |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
604 focus_command_window (); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
605 } |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
606 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
607 void |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
608 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
|
609 const QString& file, |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
610 int line) |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
611 { |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
612 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
|
613 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
614 emit update_breakpoint_marker_signal (insert, file, line); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
615 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
616 if (cmd_focus) |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
617 focus_command_window (); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
618 } |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
619 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
620 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
621 main_window::show_about_octave (void) |
13548
5c2ea445e100
Added about boxes.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13546
diff
changeset
|
622 { |
17510
7542f4496974
eliminate some macros in version.h
John W. Eaton <jwe@octave.org>
parents:
17509
diff
changeset
|
623 std::string message |
7542f4496974
eliminate some macros in version.h
John W. Eaton <jwe@octave.org>
parents:
17509
diff
changeset
|
624 = octave_name_version_copyright_copying_warranty_and_bugs (true); |
13548
5c2ea445e100
Added about boxes.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13546
diff
changeset
|
625 |
17510
7542f4496974
eliminate some macros in version.h
John W. Eaton <jwe@octave.org>
parents:
17509
diff
changeset
|
626 QMessageBox::about (this, tr ("About Octave"), |
7542f4496974
eliminate some macros in version.h
John W. Eaton <jwe@octave.org>
parents:
17509
diff
changeset
|
627 QString::fromStdString (message)); |
13548
5c2ea445e100
Added about boxes.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13546
diff
changeset
|
628 } |
5c2ea445e100
Added about boxes.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13546
diff
changeset
|
629 |
5c2ea445e100
Added about boxes.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13546
diff
changeset
|
630 void |
15368
36ececf69385
avoid some GCC warnings in the libgui code
John W. Eaton <jwe@octave.org>
parents:
15367
diff
changeset
|
631 main_window::closeEvent (QCloseEvent *e) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
632 { |
15368
36ececf69385
avoid some GCC warnings in the libgui code
John W. Eaton <jwe@octave.org>
parents:
15367
diff
changeset
|
633 e->ignore (); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
634 octave_link::post_event (this, &main_window::exit_callback); |
15367
501a9cc2c68f
maint: whitespace cleanup in GUI code
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
15365
diff
changeset
|
635 } |
13501 | 636 |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
637 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
638 main_window::read_settings (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
639 { |
15164
bc801a44bb1f
follow Octave pattern for resource_manager singleton
John W. Eaton <jwe@octave.org>
parents:
15106
diff
changeset
|
640 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
|
641 |
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
|
642 if (!settings) |
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
|
643 { |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
644 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
|
645 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
|
646 } |
15164
bc801a44bb1f
follow Octave pattern for resource_manager singleton
John W. Eaton <jwe@octave.org>
parents:
15106
diff
changeset
|
647 |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
648 set_window_layout (settings); |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
649 |
15465
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
650 // 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
|
651 QStringList curr_dirs |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
652 = 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
|
653 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
|
654 { |
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
655 _current_directory_combo_box->addItem (curr_dirs.at (i)); |
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
656 } |
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
|
657 emit settings_changed (settings); |
13501 | 658 } |
659 | |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
660 void |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
661 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
|
662 { |
17083
ceca3e65a8fe
make sure a central menu bar does not show a widgets title but "Octave"
Torsten <ttl@justmail.de>
parents:
17029
diff
changeset
|
663 QList<octave_dock_widget *> float_and_visible; |
ceca3e65a8fe
make sure a central menu bar does not show a widgets title but "Octave"
Torsten <ttl@justmail.de>
parents:
17029
diff
changeset
|
664 |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
665 // 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
|
666 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
|
667 { |
16811
81344ade678f
fix resetting the window layout when some widgets are floating
Torsten <ttl@justmail.de>
parents:
16798
diff
changeset
|
668 QString name = widget->objectName (); |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
669 |
16811
81344ade678f
fix resetting the window layout when some widgets are floating
Torsten <ttl@justmail.de>
parents:
16798
diff
changeset
|
670 if (! name.isEmpty ()) |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
671 { |
16798
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
672 bool floating = settings->value |
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16699
diff
changeset
|
673 ("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
|
674 bool visible = settings->value |
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
675 ("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
|
676 |
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
677 #if defined (Q_OS_WIN32) |
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
678 // 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
|
679 if (floating) |
16818
caf3d2a45da0
clean up some code for undocking and docking widgets
Torsten <ttl@justmail.de>
parents:
16811
diff
changeset
|
680 widget->make_window (); |
16811
81344ade678f
fix resetting the window layout when some widgets are floating
Torsten <ttl@justmail.de>
parents:
16798
diff
changeset
|
681 else if (! widget->parent ()) // should not be floating but is |
17090
1d544ac39369
show correct undock-button of widgets when window layout is resetted
Torsten <ttl@justmail.de>
parents:
17083
diff
changeset
|
682 widget->make_widget (false); // no docking, just reparent |
17899
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
683 #else |
16811
81344ade678f
fix resetting the window layout when some widgets are floating
Torsten <ttl@justmail.de>
parents:
16798
diff
changeset
|
684 // restore geometry |
17686
65544374c1cf
restore (un)docking of widgets without reparenting on non-windows systems
Torsten <ttl@justmail.de>
parents:
17676
diff
changeset
|
685 QVariant val = settings->value ("DockWidgets/" + name); |
16811
81344ade678f
fix resetting the window layout when some widgets are floating
Torsten <ttl@justmail.de>
parents:
16798
diff
changeset
|
686 widget->restoreGeometry (val.toByteArray ()); |
17899
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
687 #endif |
16811
81344ade678f
fix resetting the window layout when some widgets are floating
Torsten <ttl@justmail.de>
parents:
16798
diff
changeset
|
688 // make widget visible if desired |
17083
ceca3e65a8fe
make sure a central menu bar does not show a widgets title but "Octave"
Torsten <ttl@justmail.de>
parents:
17029
diff
changeset
|
689 if (floating && visible) // floating and visible |
ceca3e65a8fe
make sure a central menu bar does not show a widgets title but "Octave"
Torsten <ttl@justmail.de>
parents:
17029
diff
changeset
|
690 float_and_visible.append (widget); // not show before main win |
ceca3e65a8fe
make sure a central menu bar does not show a widgets title but "Octave"
Torsten <ttl@justmail.de>
parents:
17029
diff
changeset
|
691 else |
17090
1d544ac39369
show correct undock-button of widgets when window layout is resetted
Torsten <ttl@justmail.de>
parents:
17083
diff
changeset
|
692 { |
1d544ac39369
show correct undock-button of widgets when window layout is resetted
Torsten <ttl@justmail.de>
parents:
17083
diff
changeset
|
693 widget->make_widget (); |
1d544ac39369
show correct undock-button of widgets when window layout is resetted
Torsten <ttl@justmail.de>
parents:
17083
diff
changeset
|
694 widget->setVisible (visible); // not floating -> show |
1d544ac39369
show correct undock-button of widgets when window layout is resetted
Torsten <ttl@justmail.de>
parents:
17083
diff
changeset
|
695 } |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
696 } |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
697 } |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
698 |
16811
81344ade678f
fix resetting the window layout when some widgets are floating
Torsten <ttl@justmail.de>
parents:
16798
diff
changeset
|
699 restoreState (settings->value ("MainWindow/windowState").toByteArray ()); |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
700 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
|
701 show (); // main window is ready and can be shown (as first window) |
ceca3e65a8fe
make sure a central menu bar does not show a widgets title but "Octave"
Torsten <ttl@justmail.de>
parents:
17029
diff
changeset
|
702 |
ceca3e65a8fe
make sure a central menu bar does not show a widgets title but "Octave"
Torsten <ttl@justmail.de>
parents:
17029
diff
changeset
|
703 // show floating widgets after main win to ensure "Octave" in central menu |
ceca3e65a8fe
make sure a central menu bar does not show a widgets title but "Octave"
Torsten <ttl@justmail.de>
parents:
17029
diff
changeset
|
704 foreach (octave_dock_widget *widget, float_and_visible) |
17899
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
705 { |
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
706 #if not defined (Q_OS_WIN32) |
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
707 widget->make_window (); |
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
708 #endif |
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
709 widget->setVisible (true); |
17929
97bde75d4119
save and restore minimized state of floating dock-widgets (bug #40485)
Torsten <ttl@justmail.de>
parents:
17920
diff
changeset
|
710 if (settings->value ("DockWidgets/" + widget->objectName () + "_minimized").toBool ()) |
97bde75d4119
save and restore minimized state of floating dock-widgets (bug #40485)
Torsten <ttl@justmail.de>
parents:
17920
diff
changeset
|
711 widget->showMinimized (); |
97bde75d4119
save and restore minimized state of floating dock-widgets (bug #40485)
Torsten <ttl@justmail.de>
parents:
17920
diff
changeset
|
712 else |
97bde75d4119
save and restore minimized state of floating dock-widgets (bug #40485)
Torsten <ttl@justmail.de>
parents:
17920
diff
changeset
|
713 widget->setVisible (true); |
17899
14c427b5c5c1
Restore geometry of floating widgets after restart in windows (bug #40485)
Torsten <ttl@justmail.de>
parents:
17890
diff
changeset
|
714 } |
17083
ceca3e65a8fe
make sure a central menu bar does not show a widgets title but "Octave"
Torsten <ttl@justmail.de>
parents:
17029
diff
changeset
|
715 |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
716 } |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
717 |
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
718 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
719 main_window::write_settings (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
720 { |
15164
bc801a44bb1f
follow Octave pattern for resource_manager singleton
John W. Eaton <jwe@octave.org>
parents:
15106
diff
changeset
|
721 QSettings *settings = resource_manager::get_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
|
722 if (!settings) |
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
|
723 { |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
724 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
|
725 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
|
726 } |
15164
bc801a44bb1f
follow Octave pattern for resource_manager singleton
John W. Eaton <jwe@octave.org>
parents:
15106
diff
changeset
|
727 |
13537
a43ecce77eec
Introduced a central ResourceManager class.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13536
diff
changeset
|
728 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
|
729 settings->setValue ("MainWindow/windowState", saveState ()); |
15465
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
730 // 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
|
731 QStringList curr_dirs; |
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
732 for (int i=0; i<_current_directory_combo_box->count (); i++) |
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
733 { |
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
734 curr_dirs.append (_current_directory_combo_box->itemText (i)); |
ded4ce76ee7a
save and restore the list of recently visited directories
Torsten <ttl@justmail.de>
parents:
15426
diff
changeset
|
735 } |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
736 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
|
737 settings->sync (); |
13501 | 738 } |
739 | |
15987
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
740 |
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
741 // 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
|
742 // 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
|
743 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
744 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
|
745 { |
17617
9abb1422d60b
correct indication of news-windows visibility in the window menu
Torsten <ttl@justmail.de>
parents:
17599
diff
changeset
|
746 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
|
747 widget->connect_visibility_changed (); |
15987
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
748 } |
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
749 |
16648
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
750 void |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
751 main_window::copyClipboard (void) |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
752 { |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
753 if (_current_directory_combo_box->hasFocus ()) |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
754 { |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
755 QLineEdit * edit = _current_directory_combo_box->lineEdit (); |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
756 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
|
757 { |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
758 QClipboard *clipboard = QApplication::clipboard (); |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
759 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
|
760 } |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
761 } |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
762 else |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
763 emit copyClipboard_signal (); |
16648
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
764 } |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
765 |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
766 void |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
767 main_window::pasteClipboard (void) |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
768 { |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
769 if (_current_directory_combo_box->hasFocus ()) |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
770 { |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
771 QLineEdit * edit = _current_directory_combo_box->lineEdit (); |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
772 QClipboard *clipboard = QApplication::clipboard (); |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
773 QString str = clipboard->text (); |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
774 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
|
775 { |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
776 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
|
777 } |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
778 } |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
779 else |
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16818
diff
changeset
|
780 emit pasteClipboard_signal (); |
16648
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
781 } |
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
782 |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
783 // 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
|
784 // 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
|
785 // 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
|
786 // 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
|
787 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
788 void |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
789 main_window::connect_uiwidget_links () |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
790 { |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
791 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
|
792 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
|
793 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
|
794 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
|
795 this, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
796 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
|
797 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
|
798 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
|
799 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
800 // 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
|
801 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
|
802 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
|
803 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
|
804 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
|
805 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
|
806 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
|
807 this, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
808 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
|
809 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
|
810 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
|
811 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
|
812 |
16551
6ae555fc8c43
Add questdlg dialog function and fix variety of dialog bugs.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16547
diff
changeset
|
813 // 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
|
814 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
|
815 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
|
816 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
|
817 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
|
818 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
|
819 this, |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
820 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
|
821 const QFloatList&, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
822 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
|
823 const QStringList&))); |
16579
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
824 |
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
825 connect (&uiwidget_creator, |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
826 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
|
827 const QString&, const QString&, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
828 const QString&)), |
16579
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
829 this, |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
830 SLOT (handle_create_filedialog (const QStringList &, const QString&, |
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
831 const QString&, const QString&, |
16581
fa4a035e0cf4
Add octave_link uiputfile implementation
John Donoghue <john.donoghue@ieee.org>
parents:
16580
diff
changeset
|
832 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
|
833 } |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
834 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
835 // 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
|
836 // text. |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
837 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
838 void |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
839 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
|
840 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
|
841 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
|
842 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
|
843 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
|
844 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
|
845 { |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
846 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
|
847 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
|
848 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
|
849 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
|
850 } |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
851 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
852 // 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
|
853 // 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
|
854 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
855 void |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
856 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
|
857 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
|
858 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
|
859 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
|
860 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
|
861 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
|
862 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
|
863 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
|
864 { |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
865 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
|
866 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
|
867 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
|
868 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
869 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
|
870 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
|
871 } |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
872 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
873 // 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
|
874 // 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
|
875 void |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
876 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
|
877 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
|
878 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
|
879 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
|
880 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
|
881 { |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
882 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
|
883 defaults); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
884 |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
885 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
|
886 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
|
887 } |
15987
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
888 |
16579
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
889 void |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
890 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
|
891 const QString& title, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
892 const QString& filename, |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
893 const QString& dirname, |
16581
fa4a035e0cf4
Add octave_link uiputfile implementation
John Donoghue <john.donoghue@ieee.org>
parents:
16580
diff
changeset
|
894 const QString& multimode) |
16579
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
895 { |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
896 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
|
897 dirname, multimode); |
16580
adc150db1809
style fixes for uigetfile changes
John W. Eaton <jwe@octave.org>
parents:
16579
diff
changeset
|
898 |
16579
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
899 file_dialog->setAttribute (Qt::WA_DeleteOnClose); |
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
900 file_dialog->show (); |
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
901 } |
7f8db1942dc0
Add Qt link uigetfile dialog implementation.
John Donoghue <john.donoghue@ieee.org>
parents:
16578
diff
changeset
|
902 |
15987
47a4c92924a7
gui: prevent error messages at start-up (regression from changeset 6c0fce0632a4)
Torsten <ttl@justmail.de>
parents:
15983
diff
changeset
|
903 // Main subroutine of the constructor |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
904 void |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
905 main_window::construct (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
906 { |
14712
5cb54cca8a06
Completion of code reformatting.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14709
diff
changeset
|
907 _closing = false; // flag for editor files when closed |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
908 setWindowIcon (QIcon (":/actions/icons/logo.png")); |
13501 | 909 |
16459
cbc39a3d0c42
improve encapsulation of workspace window object
John W. Eaton <jwe@octave.org>
parents:
16458
diff
changeset
|
910 workspace_window->setModel (_workspace_model); |
16572
17941fedd4ce
Change workspace row height to font height.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16570
diff
changeset
|
911 connect (_workspace_model, SIGNAL (model_changed (void)), |
17941fedd4ce
Change workspace row height to font height.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16570
diff
changeset
|
912 workspace_window, SLOT (handle_model_changed (void))); |
16445
3f8d3fc907af
store workspace model in main_window, not in workspace view
John W. Eaton <jwe@octave.org>
parents:
16443
diff
changeset
|
913 |
15607
c9c79d4a0a00
Delete dynamic objects in the main_window destructor for proper cleanup. (bug #37234)
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15591
diff
changeset
|
914 // Create and set the central widget. QMainWindow takes ownership of |
c9c79d4a0a00
Delete dynamic objects in the main_window destructor for proper cleanup. (bug #37234)
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15591
diff
changeset
|
915 // the widget (pointer) so there is no need to delete the object upon |
c9c79d4a0a00
Delete dynamic objects in the main_window destructor for proper cleanup. (bug #37234)
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15591
diff
changeset
|
916 // destroying this main_window. |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
917 |
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
|
918 QWidget *dummyWidget = new QWidget (); |
14698
79c9a6d06590
Wrote SymbolInformation struct and refactored code that updates the symbol table.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14695
diff
changeset
|
919 dummyWidget->setObjectName ("CentralDummyWidget"); |
79c9a6d06590
Wrote SymbolInformation struct and refactored code that updates the symbol table.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14695
diff
changeset
|
920 dummyWidget->resize (10, 10); |
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
|
921 dummyWidget->setSizePolicy (QSizePolicy::Minimum, QSizePolicy::Minimum); |
14698
79c9a6d06590
Wrote SymbolInformation struct and refactored code that updates the symbol table.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14695
diff
changeset
|
922 dummyWidget->hide (); |
79c9a6d06590
Wrote SymbolInformation struct and refactored code that updates the symbol table.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14695
diff
changeset
|
923 setCentralWidget (dummyWidget); |
14692
d6d250812c01
Made the terminal window dockable, too. Now the whole interface is fully dockable.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14690
diff
changeset
|
924 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
925 construct_menu_bar (); |
14812
9d9eb9bac65e
Improved menu structure of file, edit and window menu. Removed ambiguous shortcuts, improved focus handling for operating the GUI with the keyboard. Added new shortcuts to focus subwindows directly.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14804
diff
changeset
|
926 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
927 construct_tool_bar (); |
14812
9d9eb9bac65e
Improved menu structure of file, edit and window menu. Removed ambiguous shortcuts, improved focus handling for operating the GUI with the keyboard. Added new shortcuts to focus subwindows directly.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14804
diff
changeset
|
928 |
16497
9ff3181e671c
Reconnect aboutToQuit signal and prepare_to_exit (write_settings) slot.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16485
diff
changeset
|
929 connect (qApp, SIGNAL (aboutToQuit ()), |
9ff3181e671c
Reconnect aboutToQuit signal and prepare_to_exit (write_settings) slot.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16485
diff
changeset
|
930 this, SLOT (prepare_to_exit ())); |
9ff3181e671c
Reconnect aboutToQuit signal and prepare_to_exit (write_settings) slot.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16485
diff
changeset
|
931 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
932 connect (this, SIGNAL (settings_changed (const QSettings *)), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
933 this, SLOT (notice_settings (const QSettings *))); |
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
|
934 |
16504
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
935 connect (file_browser_window, SIGNAL (load_file_signal (const QString&)), |
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
936 this, SLOT (handle_load_workspace_request (const QString&))); |
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
937 |
16699
d4bcb38ad056
Added find files context menu to files-dock-widget
John Donoghue <john.donoghue@ieee.org>
parents:
16672
diff
changeset
|
938 connect (file_browser_window, SIGNAL (find_files_signal (const QString&)), |
d4bcb38ad056
Added find files context menu to files-dock-widget
John Donoghue <john.donoghue@ieee.org>
parents:
16672
diff
changeset
|
939 this, SLOT (find_files (const QString&))); |
d4bcb38ad056
Added find files context menu to files-dock-widget
John Donoghue <john.donoghue@ieee.org>
parents:
16672
diff
changeset
|
940 |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
941 connect (this, SIGNAL (set_widget_shortcuts_signal (bool)), |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
942 editor_window, SLOT (set_shortcuts (bool))); |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
943 |
16512
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
944 connect_uiwidget_links (); |
7f2395651a1c
dialog boxes with Qt widgets
Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org>
parents:
16504
diff
changeset
|
945 |
14601
772ce0204b3f
Removed version number and "Octave GUI"-labelling.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14599
diff
changeset
|
946 setWindowTitle ("Octave"); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
947 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
948 setDockOptions (QMainWindow::AnimatedDocks |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
949 | QMainWindow::AllowNestedDocks |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
950 | QMainWindow::AllowTabbedDocks); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
951 |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
952 addDockWidget (Qt::RightDockWidgetArea, news_window); |
16451
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
953 addDockWidget (Qt::RightDockWidgetArea, command_window); |
16453
2e3c652c89d1
improve encapsulation of documentation browser window object
John W. Eaton <jwe@octave.org>
parents:
16452
diff
changeset
|
954 addDockWidget (Qt::RightDockWidgetArea, doc_browser_window); |
2e3c652c89d1
improve encapsulation of documentation browser window object
John W. Eaton <jwe@octave.org>
parents:
16452
diff
changeset
|
955 tabifyDockWidget (command_window, doc_browser_window); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
956 |
16379
4bb1b82076e5
gui: provide defaults for all values read from the settings file
Torsten <ttl@justmail.de>
parents:
16377
diff
changeset
|
957 #ifdef HAVE_QSCINTILLA |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
958 addDockWidget (Qt::RightDockWidgetArea, editor_window); |
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
959 tabifyDockWidget (command_window, editor_window); |
16379
4bb1b82076e5
gui: provide defaults for all values read from the settings file
Torsten <ttl@justmail.de>
parents:
16377
diff
changeset
|
960 #endif |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
961 |
16450
3207f1d62e74
improve encapsulation of file browser window object
John W. Eaton <jwe@octave.org>
parents:
16449
diff
changeset
|
962 addDockWidget (Qt::LeftDockWidgetArea, file_browser_window); |
16459
cbc39a3d0c42
improve encapsulation of workspace window object
John W. Eaton <jwe@octave.org>
parents:
16458
diff
changeset
|
963 addDockWidget (Qt::LeftDockWidgetArea, workspace_window); |
16451
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
964 addDockWidget (Qt::LeftDockWidgetArea, history_window); |
16379
4bb1b82076e5
gui: provide defaults for all values read from the settings file
Torsten <ttl@justmail.de>
parents:
16377
diff
changeset
|
965 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
966 int win_x = QApplication::desktop ()->width (); |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
967 int win_y = QApplication::desktop ()->height (); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
968 |
16379
4bb1b82076e5
gui: provide defaults for all values read from the settings file
Torsten <ttl@justmail.de>
parents:
16377
diff
changeset
|
969 if (win_x > 960) |
4bb1b82076e5
gui: provide defaults for all values read from the settings file
Torsten <ttl@justmail.de>
parents:
16377
diff
changeset
|
970 win_x = 960; |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
971 |
16379
4bb1b82076e5
gui: provide defaults for all values read from the settings file
Torsten <ttl@justmail.de>
parents:
16377
diff
changeset
|
972 if (win_y > 720) |
4bb1b82076e5
gui: provide defaults for all values read from the settings file
Torsten <ttl@justmail.de>
parents:
16377
diff
changeset
|
973 win_y = 720; |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
974 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
975 setGeometry (0, 0, win_x, win_y); |
16379
4bb1b82076e5
gui: provide defaults for all values read from the settings file
Torsten <ttl@justmail.de>
parents:
16377
diff
changeset
|
976 |
16451
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
977 setStatusBar (status_bar); |
14726
e94a54ee0f46
Added debug events, debug mode detection and fixed compiling error.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14721
diff
changeset
|
978 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
979 construct_octave_qt_link (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
980 |
16672
fd43631f09c2
Fix Qt error messages w/o QScintilla-dev installed (Bug #38878)
John Donoghue <john.donoghue@ieee.org>
parents:
16649
diff
changeset
|
981 #ifdef HAVE_QSCINTILLA |
16576
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
982 connect (this, |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
983 SIGNAL (insert_debugger_pointer_signal (const QString&, int)), |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
984 editor_window, |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
985 SLOT (handle_insert_debugger_pointer_request (const QString&, int))); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
986 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
987 connect (this, |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
988 SIGNAL (delete_debugger_pointer_signal (const QString&, int)), |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
989 editor_window, |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
990 SLOT (handle_delete_debugger_pointer_request (const QString&, int))); |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
991 |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
992 connect (this, |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
993 SIGNAL (update_breakpoint_marker_signal (bool, const QString&, int)), |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
994 editor_window, |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
995 SLOT (handle_update_breakpoint_marker_request (bool, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
996 const QString&, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
997 int))); |
16672
fd43631f09c2
Fix Qt error messages w/o QScintilla-dev installed (Bug #38878)
John Donoghue <john.donoghue@ieee.org>
parents:
16649
diff
changeset
|
998 #endif |
16576
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
999 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1000 QDir curr_dir; |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1001 set_current_working_directory (curr_dir.absolutePath ()); |
16541
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
1002 |
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
1003 octave_link::post_event (this, &main_window::resize_command_window_callback); |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1004 |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1005 set_global_shortcuts (true); |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1006 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1007 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1008 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1009 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1010 main_window::construct_octave_qt_link (void) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1011 { |
17918
a38cee8f0a9b
derive octave_main_thread from QObject, not QThread
John W. Eaton <jwe@octave.org>
parents:
17901
diff
changeset
|
1012 _octave_qt_link = new octave_qt_link (); |
16485
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
1013 |
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
1014 connect (_octave_qt_link, SIGNAL (exit_signal (int)), |
8b783661e03f
improve exit sequence for GUI
John W. Eaton <jwe@octave.org>
parents:
16484
diff
changeset
|
1015 this, SLOT (exit (int))); |
16479
7a71ea0b7ae9
eliminate event listener class
John W. Eaton <jwe@octave.org>
parents:
16478
diff
changeset
|
1016 |
16468
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
1017 connect (_octave_qt_link, |
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
1018 SIGNAL (set_workspace_signal |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1019 (bool, const QString&, const QStringList&, |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1020 const QStringList&, const QStringList&, |
17824
86e8dbccf7c7
show when variables are complex in workspace view (bug #40445)
John W. Eaton <jwe@octave.org>
parents:
17790
diff
changeset
|
1021 const QStringList&, const QIntList&)), |
16468
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
1022 _workspace_model, |
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
1023 SLOT (set_workspace |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1024 (bool, const QString&, const QStringList&, |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1025 const QStringList&, const QStringList&, |
17824
86e8dbccf7c7
show when variables are complex in workspace view (bug #40445)
John W. Eaton <jwe@octave.org>
parents:
17790
diff
changeset
|
1026 const QStringList&, const QIntList&))); |
16468
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
1027 |
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
1028 connect (_octave_qt_link, SIGNAL (clear_workspace_signal ()), |
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
1029 _workspace_model, SLOT (clear_workspace ())); |
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
16460
diff
changeset
|
1030 |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
1031 connect (_octave_qt_link, SIGNAL (change_directory_signal (QString)), |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
1032 this, SLOT (change_directory (QString))); |
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
1033 |
16423
04c4dd7fd3ce
use signal for octave_link::update_dbstop_marker
John W. Eaton <jwe@octave.org>
parents:
16421
diff
changeset
|
1034 connect (_octave_qt_link, |
16570
d5ae5aa80d42
preserve pending command line input when running commands from GUI actions
John W. Eaton <jwe@octave.org>
parents:
16566
diff
changeset
|
1035 SIGNAL (execute_command_in_terminal_signal (QString)), |
d5ae5aa80d42
preserve pending command line input when running commands from GUI actions
John W. Eaton <jwe@octave.org>
parents:
16566
diff
changeset
|
1036 this, SLOT (execute_command_in_terminal (QString))); |
d5ae5aa80d42
preserve pending command line input when running commands from GUI actions
John W. Eaton <jwe@octave.org>
parents:
16566
diff
changeset
|
1037 |
d5ae5aa80d42
preserve pending command line input when running commands from GUI actions
John W. Eaton <jwe@octave.org>
parents:
16566
diff
changeset
|
1038 connect (_octave_qt_link, |
16431
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
1039 SIGNAL (set_history_signal (const QStringList&)), |
16451
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
1040 history_window, SLOT (set_history (const QStringList&))); |
16431
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
1041 |
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
1042 connect (_octave_qt_link, |
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
1043 SIGNAL (append_history_signal (const QString&)), |
16451
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
1044 history_window, SLOT (append_history (const QString&))); |
16431
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
1045 |
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
1046 connect (_octave_qt_link, |
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
1047 SIGNAL (clear_history_signal (void)), |
16451
d4c3736e1e28
dynamically allocate Qt widgets
John W. Eaton <jwe@octave.org>
parents:
16450
diff
changeset
|
1048 history_window, SLOT (clear_history (void))); |
16431
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
1049 |
16438
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
1050 connect (_octave_qt_link, SIGNAL (enter_debugger_signal ()), |
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
1051 this, SLOT (handle_enter_debugger ())); |
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
1052 |
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
1053 connect (_octave_qt_link, SIGNAL (exit_debugger_signal ()), |
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
1054 this, SLOT (handle_exit_debugger ())); |
a971d8bdaadc
use signals instead of event queue for entering/leaving debug mode
John W. Eaton <jwe@octave.org>
parents:
16437
diff
changeset
|
1055 |
17010
c50ee84842a9
Add preferences and prefdir functions
John Donoghue <john.donoghue@ieee.org>
parents:
16970
diff
changeset
|
1056 connect (_octave_qt_link, |
c50ee84842a9
Add preferences and prefdir functions
John Donoghue <john.donoghue@ieee.org>
parents:
16970
diff
changeset
|
1057 SIGNAL (show_preferences_signal (void)), |
c50ee84842a9
Add preferences and prefdir functions
John Donoghue <john.donoghue@ieee.org>
parents:
16970
diff
changeset
|
1058 this, SLOT (process_settings_dialog_request ())); |
c50ee84842a9
Add preferences and prefdir functions
John Donoghue <john.donoghue@ieee.org>
parents:
16970
diff
changeset
|
1059 |
16672
fd43631f09c2
Fix Qt error messages w/o QScintilla-dev installed (Bug #38878)
John Donoghue <john.donoghue@ieee.org>
parents:
16649
diff
changeset
|
1060 #ifdef HAVE_QSCINTILLA |
16431
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
1061 connect (_octave_qt_link, |
16424
ad052cdc89ad
use signal for octave_link::edit_file
John W. Eaton <jwe@octave.org>
parents:
16423
diff
changeset
|
1062 SIGNAL (edit_file_signal (const QString&)), |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
1063 editor_window, |
16424
ad052cdc89ad
use signal for octave_link::edit_file
John W. Eaton <jwe@octave.org>
parents:
16423
diff
changeset
|
1064 SLOT (handle_edit_file_request (const QString&))); |
16672
fd43631f09c2
Fix Qt error messages w/o QScintilla-dev installed (Bug #38878)
John Donoghue <john.donoghue@ieee.org>
parents:
16649
diff
changeset
|
1065 #endif |
16424
ad052cdc89ad
use signal for octave_link::edit_file
John W. Eaton <jwe@octave.org>
parents:
16423
diff
changeset
|
1066 |
16426
203976ae18d1
use signals for octave_link::enter_debugger_event and octave_link::exit_debugger_event
John W. Eaton <jwe@octave.org>
parents:
16425
diff
changeset
|
1067 connect (_octave_qt_link, |
203976ae18d1
use signals for octave_link::enter_debugger_event and octave_link::exit_debugger_event
John W. Eaton <jwe@octave.org>
parents:
16425
diff
changeset
|
1068 SIGNAL (insert_debugger_pointer_signal (const QString&, int)), |
16576
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1069 this, |
16426
203976ae18d1
use signals for octave_link::enter_debugger_event and octave_link::exit_debugger_event
John W. Eaton <jwe@octave.org>
parents:
16425
diff
changeset
|
1070 SLOT (handle_insert_debugger_pointer_request (const QString&, int))); |
203976ae18d1
use signals for octave_link::enter_debugger_event and octave_link::exit_debugger_event
John W. Eaton <jwe@octave.org>
parents:
16425
diff
changeset
|
1071 |
203976ae18d1
use signals for octave_link::enter_debugger_event and octave_link::exit_debugger_event
John W. Eaton <jwe@octave.org>
parents:
16425
diff
changeset
|
1072 connect (_octave_qt_link, |
203976ae18d1
use signals for octave_link::enter_debugger_event and octave_link::exit_debugger_event
John W. Eaton <jwe@octave.org>
parents:
16425
diff
changeset
|
1073 SIGNAL (delete_debugger_pointer_signal (const QString&, int)), |
16576
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1074 this, |
16426
203976ae18d1
use signals for octave_link::enter_debugger_event and octave_link::exit_debugger_event
John W. Eaton <jwe@octave.org>
parents:
16425
diff
changeset
|
1075 SLOT (handle_delete_debugger_pointer_request (const QString&, int))); |
203976ae18d1
use signals for octave_link::enter_debugger_event and octave_link::exit_debugger_event
John W. Eaton <jwe@octave.org>
parents:
16425
diff
changeset
|
1076 |
16576
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1077 connect (_octave_qt_link, |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1078 SIGNAL (update_breakpoint_marker_signal (bool, const QString&, int)), |
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1079 this, |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1080 SLOT (handle_update_breakpoint_marker_request (bool, const QString&, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1081 int))); |
16576
2754c5fd6ae0
keep focus in the command window after dbstop, dbstep, etc.
John W. Eaton <jwe@octave.org>
parents:
16572
diff
changeset
|
1082 |
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
|
1083 connect (_octave_qt_link, |
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
1084 SIGNAL (show_doc_signal (const QString &)), |
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
1085 this, SLOT (handle_show_doc (const QString &))); |
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
1086 |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1087 connect (_workspace_model, |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1088 SIGNAL (rename_variable (const QString&, const QString&)), |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1089 this, |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1090 SLOT (handle_rename_variable_request (const QString&, |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1091 const QString&))); |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1092 |
17920
5c3f22dd0bbb
raise SIGINT in octave_interpreter instead of in QTerminal
John W. Eaton <jwe@octave.org>
parents:
17918
diff
changeset
|
1093 connect (command_window, SIGNAL (interrupt_signal (void)), |
5c3f22dd0bbb
raise SIGINT in octave_interpreter instead of in QTerminal
John W. Eaton <jwe@octave.org>
parents:
17918
diff
changeset
|
1094 _octave_qt_link, SLOT (terminal_interrupt (void))); |
5c3f22dd0bbb
raise SIGINT in octave_interpreter instead of in QTerminal
John W. Eaton <jwe@octave.org>
parents:
17918
diff
changeset
|
1095 |
16432
fe4cd846c3e7
separate octave interpreter thread creation from execution
John W. Eaton <jwe@octave.org>
parents:
16431
diff
changeset
|
1096 _octave_qt_link->execute_interpreter (); |
fe4cd846c3e7
separate octave interpreter thread creation from execution
John W. Eaton <jwe@octave.org>
parents:
16431
diff
changeset
|
1097 |
16421
40d1ddca4db5
improve use of octave_link
John W. Eaton <jwe@octave.org>
parents:
16415
diff
changeset
|
1098 octave_link::connect_link (_octave_qt_link); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1099 } |
16437
919796a440c6
use signal for changing directory
John W. Eaton <jwe@octave.org>
parents:
16432
diff
changeset
|
1100 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1101 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1102 main_window::construct_menu_bar (void) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1103 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1104 QMenuBar *menu_bar = menuBar (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1105 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1106 construct_file_menu (menu_bar); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1107 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1108 construct_edit_menu (menu_bar); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1109 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1110 construct_debug_menu (menu_bar); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1111 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1112 construct_window_menu (menu_bar); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1113 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1114 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
|
1115 |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1116 construct_news_menu (menu_bar); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1117 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1118 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1119 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1120 main_window::construct_file_menu (QMenuBar *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1121 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1122 QMenu *file_menu = p->addMenu (tr ("&File")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1123 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1124 construct_new_menu (file_menu); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1125 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1126 _open_action |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
1127 = file_menu->addAction (QIcon (":/actions/icons/fileopen.png"), |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1128 tr ("Open...")); |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1129 _open_action->setShortcutContext (Qt::ApplicationShortcut); |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1130 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1131 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1132 #ifdef HAVE_QSCINTILLA |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
1133 file_menu->addMenu (editor_window->get_mru_menu ()); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1134 #endif |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1135 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1136 file_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1137 |
16566 | 1138 QAction *load_workspace_action |
17935 | 1139 = file_menu->addAction (tr ("Load Workspace")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1140 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1141 QAction *save_workspace_action |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1142 = file_menu->addAction (tr ("Save Workspace As")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1143 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1144 file_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1145 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1146 QAction *preferences_action |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
1147 = file_menu->addAction (QIcon (":/actions/icons/configure.png"), |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1148 tr ("Preferences...")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1149 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1150 file_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1151 |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1152 _exit_action = file_menu->addAction (tr ("Exit")); |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1153 _exit_action->setShortcutContext (Qt::ApplicationShortcut); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1154 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1155 connect (preferences_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1156 this, SLOT (process_settings_dialog_request ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1157 |
16672
fd43631f09c2
Fix Qt error messages w/o QScintilla-dev installed (Bug #38878)
John Donoghue <john.donoghue@ieee.org>
parents:
16649
diff
changeset
|
1158 #ifdef HAVE_QSCINTILLA |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1159 connect (_open_action, SIGNAL (triggered ()), |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
1160 editor_window, SLOT (request_open_file ())); |
16672
fd43631f09c2
Fix Qt error messages w/o QScintilla-dev installed (Bug #38878)
John Donoghue <john.donoghue@ieee.org>
parents:
16649
diff
changeset
|
1161 #endif |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1162 |
16566 | 1163 connect (load_workspace_action, SIGNAL (triggered ()), |
1164 this, SLOT (handle_load_workspace_request ())); | |
1165 | |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1166 connect (save_workspace_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1167 this, SLOT (handle_save_workspace_request ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1168 |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1169 connect (_exit_action, SIGNAL (triggered ()), |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1170 this, SLOT (close ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1171 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1172 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1173 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1174 main_window::construct_new_menu (QMenu *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1175 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1176 QMenu *new_menu = p->addMenu (tr ("New")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1177 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1178 _new_script_action |
16566 | 1179 = new_menu->addAction (QIcon (":/actions/icons/filenew.png"), |
1180 tr ("Script")); | |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1181 _new_script_action->setShortcutContext (Qt::ApplicationShortcut); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1182 |
17901
2c241092b47b
use edit.m for creating a new function with the gui (bug #40502)
Torsten <ttl@justmail.de>
parents:
17899
diff
changeset
|
1183 _new_function_action = new_menu->addAction (tr ("Function")); |
2c241092b47b
use edit.m for creating a new function with the gui (bug #40502)
Torsten <ttl@justmail.de>
parents:
17899
diff
changeset
|
1184 _new_function_action->setEnabled (true); |
2c241092b47b
use edit.m for creating a new function with the gui (bug #40502)
Torsten <ttl@justmail.de>
parents:
17899
diff
changeset
|
1185 _new_function_action->setShortcutContext (Qt::ApplicationShortcut); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1186 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1187 QAction *new_figure_action = new_menu->addAction (tr ("Figure")); |
16566 | 1188 new_figure_action->setEnabled (true); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1189 |
16672
fd43631f09c2
Fix Qt error messages w/o QScintilla-dev installed (Bug #38878)
John Donoghue <john.donoghue@ieee.org>
parents:
16649
diff
changeset
|
1190 #ifdef HAVE_QSCINTILLA |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1191 connect (_new_script_action, SIGNAL (triggered ()), |
16566 | 1192 editor_window, SLOT (request_new_script ())); |
1193 | |
17901
2c241092b47b
use edit.m for creating a new function with the gui (bug #40502)
Torsten <ttl@justmail.de>
parents:
17899
diff
changeset
|
1194 connect (_new_function_action, SIGNAL (triggered ()), |
16566 | 1195 editor_window, SLOT (request_new_function ())); |
16672
fd43631f09c2
Fix Qt error messages w/o QScintilla-dev installed (Bug #38878)
John Donoghue <john.donoghue@ieee.org>
parents:
16649
diff
changeset
|
1196 #endif |
16566 | 1197 |
1198 connect (new_figure_action, SIGNAL (triggered ()), | |
1199 this, SLOT (handle_new_figure_request ())); | |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1200 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1201 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1202 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1203 main_window::construct_edit_menu (QMenuBar *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1204 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1205 QMenu *edit_menu = p->addMenu (tr ("&Edit")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1206 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1207 QKeySequence ctrl_shift = Qt::ControlModifier + Qt::ShiftModifier; |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1208 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1209 _undo_action |
16456
203efbbcea63
* main-window.h, main-window.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
1210 = edit_menu->addAction (QIcon (":/actions/icons/undo.png"), tr ("Undo")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1211 _undo_action->setShortcut (QKeySequence::Undo); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1212 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1213 edit_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1214 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1215 _copy_action |
16648
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1216 = edit_menu->addAction (QIcon (":/actions/icons/editcopy.png"), |
16649 | 1217 tr ("Copy"), this, SLOT (copyClipboard ())); |
16956
eefcfeb37446
make ctrl-c abort the actual octave command in linux (bug #37672)
Torsten <ttl@justmail.de>
parents:
16912
diff
changeset
|
1218 _copy_action->setShortcut (QKeySequence::Copy); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1219 |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1220 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1221 _paste_action |
16648
b04413e5a811
improve handling of interrupts, copy and paste shortcuts
John W. Eaton <jwe@octave.org>
parents:
16642
diff
changeset
|
1222 = edit_menu->addAction (QIcon (":/actions/icons/editpaste.png"), |
16649 | 1223 tr ("Paste"), this, SLOT (pasteClipboard ())); |
16956
eefcfeb37446
make ctrl-c abort the actual octave command in linux (bug #37672)
Torsten <ttl@justmail.de>
parents:
16912
diff
changeset
|
1224 _paste_action->setShortcut (QKeySequence::Paste); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1225 |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1226 _clear_clipboard_action |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1227 = edit_menu->addAction (tr ("Clear Clipboard"), this, |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1228 SLOT (clear_clipboard ())); |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1229 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1230 edit_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1231 |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1232 _find_files_action = edit_menu->addAction (tr ("Find Files...")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1233 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1234 edit_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1235 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1236 QAction *clear_command_window_action |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1237 = edit_menu->addAction (tr ("Clear Command Window")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1238 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1239 QAction *clear_command_history |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1240 = 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
|
1241 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1242 QAction *clear_workspace_action |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1243 = edit_menu->addAction (tr ("Clear Workspace")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1244 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1245 connect (_find_files_action, SIGNAL (triggered ()), |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1246 this, SLOT (find_files ())); |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1247 |
16514
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
1248 connect (clear_command_window_action, SIGNAL (triggered ()), |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
1249 this, SLOT (handle_clear_command_window_request ())); |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
1250 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1251 connect (clear_command_history, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1252 this, SLOT (handle_clear_history_request ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1253 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1254 connect (clear_workspace_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1255 this, SLOT (handle_clear_workspace_request ())); |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1256 |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1257 connect (_clipboard, SIGNAL (changed (QClipboard::Mode)), |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1258 this, SLOT (clipboard_has_changed (QClipboard::Mode))); |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1259 clipboard_has_changed (QClipboard::Clipboard); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1260 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1261 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1262 QAction * |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1263 main_window::construct_debug_menu_item (const char *icon_file, |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1264 const QString& item, |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1265 const QKeySequence& key) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1266 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1267 QAction *action = _debug_menu->addAction (QIcon (icon_file), item); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1268 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1269 action->setEnabled (false); |
16458
a3513fc13cdb
fix cut and paste error in changeset 246d25c8761b
John W. Eaton <jwe@octave.org>
parents:
16457
diff
changeset
|
1270 action->setShortcut (key); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1271 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1272 #ifdef HAVE_QSCINTILLA |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
1273 editor_window->debug_menu ()->addAction (action); |
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
1274 editor_window->toolbar ()->addAction (action); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1275 #endif |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1276 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1277 return action; |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1278 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1279 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1280 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1281 main_window::construct_debug_menu (QMenuBar *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1282 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1283 _debug_menu = p->addMenu (tr ("De&bug")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1284 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1285 _debug_step_over = construct_debug_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1286 (":/actions/icons/db_step.png", tr ("Step"), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1287 Qt::Key_F10); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1288 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1289 _debug_step_into = construct_debug_menu_item |
17935 | 1290 (":/actions/icons/db_step_in.png", tr ("Step In"), |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1291 Qt::Key_F11); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1292 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1293 _debug_step_out = construct_debug_menu_item |
17935 | 1294 (":/actions/icons/db_step_out.png", tr ("Step Out"), |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1295 Qt::ShiftModifier + Qt::Key_F11); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1296 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1297 _debug_continue = construct_debug_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1298 (":/actions/icons/db_cont.png", tr ("Continue"), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1299 Qt::Key_F5); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1300 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1301 _debug_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1302 #ifdef HAVE_QSCINTILLA |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
1303 editor_window->debug_menu ()->addSeparator (); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1304 #endif |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1305 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1306 _debug_quit = construct_debug_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1307 (":/actions/icons/db_stop.png", tr ("Exit Debug Mode"), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1308 Qt::ShiftModifier + Qt::Key_F5); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1309 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1310 connect (_debug_step_over, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1311 this, SLOT (debug_step_over ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1312 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1313 connect (_debug_step_into, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1314 this, SLOT (debug_step_into ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1315 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1316 connect (_debug_step_out, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1317 this, SLOT (debug_step_out ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1318 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1319 connect (_debug_continue, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1320 this, SLOT (debug_continue ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1321 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1322 connect (_debug_quit, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1323 this, SLOT (debug_quit ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1324 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1325 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1326 QAction * |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1327 main_window::construct_window_menu_item (QMenu *p, const QString& item, |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1328 bool checkable, |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1329 const QKeySequence& key) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1330 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1331 QAction *action = p->addAction (item); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1332 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1333 action->setCheckable (checkable); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1334 action->setShortcut (key); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1335 action->setShortcutContext (Qt::ApplicationShortcut); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1336 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1337 return action; |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1338 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1339 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1340 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1341 main_window::construct_window_menu (QMenuBar *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1342 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1343 QMenu *window_menu = p->addMenu (tr ("&Window")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1344 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1345 QKeySequence ctrl = Qt::ControlModifier; |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1346 QKeySequence ctrl_shift = Qt::ControlModifier + Qt::ShiftModifier; |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1347 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1348 QAction *show_command_window_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1349 (window_menu, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1350 tr ("Show Command Window"), true, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1351 ctrl_shift + Qt::Key_0); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1352 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1353 QAction *show_history_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1354 (window_menu, tr ("Show Command History"), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1355 true, ctrl_shift + Qt::Key_1); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1356 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1357 QAction *show_file_browser_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1358 (window_menu, tr ("Show File Browser"), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1359 true, ctrl_shift + Qt::Key_2); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1360 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1361 QAction *show_workspace_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1362 (window_menu, tr ("Show Workspace"), true, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1363 ctrl_shift + Qt::Key_3); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1364 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1365 QAction *show_editor_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1366 (window_menu, tr ("Show Editor"), true, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1367 ctrl_shift + Qt::Key_4); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1368 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1369 QAction *show_documentation_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1370 (window_menu, tr ("Show Documentation"), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1371 true, ctrl_shift + Qt::Key_5); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1372 |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1373 QAction *show_news_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1374 (window_menu, tr ("Show News Window"), true, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1375 ctrl_shift + Qt::Key_6); |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1376 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1377 window_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1378 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1379 QAction *command_window_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1380 (window_menu, tr ("Command Window"), false, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1381 ctrl + Qt::Key_0); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1382 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1383 QAction *history_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1384 (window_menu, tr ("Command History"), false, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1385 ctrl + Qt::Key_1); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1386 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1387 QAction *file_browser_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1388 (window_menu, tr ("File Browser"), false, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1389 ctrl + Qt::Key_2); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1390 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1391 QAction *workspace_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1392 (window_menu, tr ("Workspace"), false, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1393 ctrl + Qt::Key_3); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1394 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1395 QAction *editor_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1396 (window_menu, tr ("Editor"), false, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1397 ctrl + Qt::Key_4); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1398 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1399 QAction *documentation_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1400 (window_menu, tr ("Documentation"), false, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1401 ctrl + Qt::Key_5); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1402 |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1403 QAction *news_action = construct_window_menu_item |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1404 (window_menu, tr ("News"), false, ctrl + Qt::Key_6); |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1405 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1406 window_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1407 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1408 QAction *reset_windows_action |
16593
e13051d7a472
allow GUI window layout to be restored
John W. Eaton <jwe@octave.org>
parents:
16581
diff
changeset
|
1409 = window_menu->addAction (tr ("Reset Default Window Layout")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1410 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1411 connect (show_command_window_action, SIGNAL (toggled (bool)), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1412 command_window, SLOT (setVisible (bool))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1413 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1414 connect (command_window, SIGNAL (active_changed (bool)), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1415 show_command_window_action, SLOT (setChecked (bool))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1416 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1417 connect (show_workspace_action, SIGNAL (toggled (bool)), |
16459
cbc39a3d0c42
improve encapsulation of workspace window object
John W. Eaton <jwe@octave.org>
parents:
16458
diff
changeset
|
1418 workspace_window, SLOT (setVisible (bool))); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1419 |
16459
cbc39a3d0c42
improve encapsulation of workspace window object
John W. Eaton <jwe@octave.org>
parents:
16458
diff
changeset
|
1420 connect (workspace_window, SIGNAL (active_changed (bool)), |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1421 show_workspace_action, SLOT (setChecked (bool))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1422 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1423 connect (show_history_action, SIGNAL (toggled (bool)), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1424 history_window, SLOT (setVisible (bool))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1425 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1426 connect (history_window, SIGNAL (active_changed (bool)), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1427 show_history_action, SLOT (setChecked (bool))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1428 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1429 connect (show_file_browser_action, SIGNAL (toggled (bool)), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1430 file_browser_window, SLOT (setVisible (bool))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1431 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1432 connect (file_browser_window, SIGNAL (active_changed (bool)), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1433 show_file_browser_action, SLOT (setChecked (bool))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1434 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1435 #ifdef HAVE_QSCINTILLA |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1436 connect (show_editor_action, SIGNAL (toggled (bool)), |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
1437 editor_window, SLOT (setVisible (bool))); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1438 |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
1439 connect (editor_window, SIGNAL (active_changed (bool)), |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1440 show_editor_action, SLOT (setChecked (bool))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1441 #endif |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1442 |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1443 connect (show_news_action, SIGNAL (toggled (bool)), |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1444 news_window, SLOT (setVisible (bool))); |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1445 |
17617
9abb1422d60b
correct indication of news-windows visibility in the window menu
Torsten <ttl@justmail.de>
parents:
17599
diff
changeset
|
1446 connect (news_window, SIGNAL (active_changed (bool)), |
9abb1422d60b
correct indication of news-windows visibility in the window menu
Torsten <ttl@justmail.de>
parents:
17599
diff
changeset
|
1447 show_news_action, SLOT (setChecked (bool))); |
9abb1422d60b
correct indication of news-windows visibility in the window menu
Torsten <ttl@justmail.de>
parents:
17599
diff
changeset
|
1448 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1449 connect (show_documentation_action, SIGNAL (toggled (bool)), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1450 doc_browser_window, SLOT (setVisible (bool))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1451 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1452 connect (doc_browser_window, SIGNAL (active_changed (bool)), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1453 show_documentation_action, SLOT (setChecked (bool))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1454 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1455 connect (command_window_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1456 command_window, SLOT (focus ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1457 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1458 connect (workspace_action, SIGNAL (triggered ()), |
16459
cbc39a3d0c42
improve encapsulation of workspace window object
John W. Eaton <jwe@octave.org>
parents:
16458
diff
changeset
|
1459 workspace_window, SLOT (focus ())); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1460 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1461 connect (history_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1462 history_window, SLOT (focus ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1463 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1464 connect (file_browser_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1465 file_browser_window, SLOT (focus ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1466 |
16672
fd43631f09c2
Fix Qt error messages w/o QScintilla-dev installed (Bug #38878)
John Donoghue <john.donoghue@ieee.org>
parents:
16649
diff
changeset
|
1467 #ifdef HAVE_QSCINTILLA |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1468 connect (editor_action, SIGNAL (triggered ()), |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16456
diff
changeset
|
1469 editor_window, SLOT (focus ())); |
16672
fd43631f09c2
Fix Qt error messages w/o QScintilla-dev installed (Bug #38878)
John Donoghue <john.donoghue@ieee.org>
parents:
16649
diff
changeset
|
1470 #endif |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1471 |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1472 connect (news_action, SIGNAL (triggered ()), |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1473 news_window, SLOT (focus ())); |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1474 |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1475 connect (documentation_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1476 doc_browser_window, SLOT (focus ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1477 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1478 connect (reset_windows_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1479 this, SLOT (reset_windows ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1480 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1481 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1482 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1483 main_window::construct_help_menu (QMenuBar *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1484 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1485 QMenu *help_menu = p->addMenu (tr ("&Help")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1486 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1487 construct_documentation_menu (help_menu); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1488 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1489 help_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1490 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1491 QAction *report_bug_action |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1492 = help_menu->addAction (tr ("Report Bug")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1493 |
17509 | 1494 QAction *octave_packages_action |
1495 = help_menu->addAction (tr ("Octave Packages")); | |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1496 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1497 QAction *agora_action |
17509 | 1498 = help_menu->addAction (tr ("Share Code")); |
1499 | |
1500 QAction *contribute_action | |
1501 = help_menu->addAction (tr ("Contribute to Octave")); | |
1502 | |
1503 QAction *developer_action | |
1504 = help_menu->addAction (tr ("Octave Developer Resources")); | |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1505 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1506 help_menu->addSeparator (); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1507 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1508 QAction *about_octave_action |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1509 = help_menu->addAction (tr ("About Octave")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1510 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1511 connect (report_bug_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1512 this, SLOT (open_bug_tracker_page ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1513 |
17509 | 1514 connect (octave_packages_action, SIGNAL (triggered ()), |
1515 this, SLOT (open_octave_packages_page ())); | |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1516 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1517 connect (agora_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1518 this, SLOT (open_agora_page ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1519 |
17509 | 1520 connect (contribute_action, SIGNAL (triggered ()), |
1521 this, SLOT (open_contribute_page ())); | |
1522 | |
1523 connect (developer_action, SIGNAL (triggered ()), | |
1524 this, SLOT (open_developer_page ())); | |
1525 | |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1526 connect (about_octave_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1527 this, SLOT (show_about_octave ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1528 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1529 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1530 void |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1531 main_window::construct_documentation_menu (QMenu *p) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1532 { |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1533 QMenu *documentation_menu = p->addMenu (tr ("Documentation")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1534 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1535 QAction *ondisk_documentation_action |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1536 = documentation_menu->addAction (tr ("On Disk")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1537 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1538 QAction *online_documentation_action |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1539 = documentation_menu->addAction (tr ("Online")); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1540 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1541 connect (ondisk_documentation_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1542 doc_browser_window, SLOT (focus ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1543 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1544 connect (online_documentation_action, SIGNAL (triggered ()), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1545 this, SLOT (open_online_documentation_page ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1546 } |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1547 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1548 void |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1549 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
|
1550 { |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1551 QMenu *news_menu = p->addMenu (tr ("&News")); |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1552 |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1553 QAction *release_notes_action |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1554 = news_menu->addAction (tr ("Release Notes")); |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1555 |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1556 QAction *current_news_action |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1557 = news_menu->addAction (tr ("Community News")); |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1558 |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1559 connect (release_notes_action, SIGNAL (triggered ()), |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1560 this, SLOT (display_release_notes ())); |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1561 |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1562 connect (current_news_action, SIGNAL (triggered ()), |
17660
516e1fa636ee
Update news menu selection to display news window (current tab) and update windows menus correctly
John Donoghue <john.donoghue@ieee.org>
parents:
17640
diff
changeset
|
1563 news_window, SLOT (focus ())); |
17599
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1564 } |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1565 |
f5950975a172
community news dock widget and other user info in GUI
John W. Eaton <jwe@octave.org>
parents:
17576
diff
changeset
|
1566 void |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1567 main_window::construct_tool_bar (void) |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1568 { |
16525
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1569 _main_tool_bar = addToolBar ("Main"); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1570 |
16525
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1571 _main_tool_bar->setObjectName ("MainToolBar"); |
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1572 _main_tool_bar->addAction (_new_script_action); |
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1573 _main_tool_bar->addAction (_open_action); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1574 |
16525
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1575 _main_tool_bar->addSeparator (); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1576 |
16525
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1577 _main_tool_bar->addAction (_copy_action); |
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1578 _main_tool_bar->addAction (_paste_action); |
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1579 _main_tool_bar->addAction (_undo_action); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1580 |
16525
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1581 _main_tool_bar->addSeparator (); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1582 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1583 _current_directory_combo_box = new QComboBox (this); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1584 _current_directory_combo_box->setFixedWidth (current_directory_width); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1585 _current_directory_combo_box->setEditable (true); |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1586 _current_directory_combo_box->setInsertPolicy (QComboBox::NoInsert); |
16518
59dbdaeeea40
* main_window.cc(construct_tool_bar): code cleanup and tool tips for combo box
Torsten <ttl@justmail.de>
parents:
16514
diff
changeset
|
1587 _current_directory_combo_box->setToolTip (tr ("Enter directory name")); |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1588 _current_directory_combo_box->setMaxVisibleItems ( |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1589 current_directory_max_visible); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1590 _current_directory_combo_box->setMaxCount (current_directory_max_count); |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1591 QSizePolicy sizePol (QSizePolicy::Expanding, QSizePolicy::Preferred); |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1592 _current_directory_combo_box->setSizePolicy (sizePol); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1593 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1594 // 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
|
1595 // need to delete these upon destroying this main_window. |
16525
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1596 _main_tool_bar->addWidget (new QLabel (tr ("Current Directory: "))); |
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1597 _main_tool_bar->addWidget (_current_directory_combo_box); |
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1598 QAction *current_dir_up = _main_tool_bar->addAction ( |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1599 QIcon (":/actions/icons/up.png"), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1600 tr ("One directory up")); |
16525
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1601 QAction *current_dir_search = _main_tool_bar->addAction ( |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1602 QIcon (":/actions/icons/search.png"), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1603 tr ("Browse directories")); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1604 |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1605 connect (_current_directory_combo_box, SIGNAL (activated (QString)), |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1606 this, SLOT (set_current_working_directory (QString))); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1607 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1608 connect (_current_directory_combo_box->lineEdit (), SIGNAL (returnPressed ()), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1609 this, SLOT (accept_directory_line_edit ())); |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1610 |
16525
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1611 connect (current_dir_search, SIGNAL (triggered ()), |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1612 this, SLOT (browse_for_directory ())); |
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1613 |
16525
e192525236ad
configurable size of toolbar icons
Torsten <ttl@justmail.de>
parents:
16519
diff
changeset
|
1614 connect (current_dir_up, SIGNAL (triggered ()), |
16454
246d25c8761b
split main_window::construct for clarity
John W. Eaton <jwe@octave.org>
parents:
16453
diff
changeset
|
1615 this, SLOT (change_directory_up ())); |
16539
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
1616 |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
1617 connect (_undo_action, SIGNAL (triggered ()), |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
1618 this, SLOT (handle_undo_request ())); |
13501 | 1619 } |
1620 | |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1621 void |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1622 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
|
1623 { |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
1624 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
|
1625 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1626 |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1627 void |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1628 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
|
1629 { |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
1630 Fload (ovl (file)); |
16504
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
1631 |
49b059bf27c7
allow loading files from file browser
John W. Eaton <jwe@octave.org>
parents:
16502
diff
changeset
|
1632 octave_link::set_workspace (true, symbol_table::workspace_info ()); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1633 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1634 |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1635 void |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1636 main_window::clear_workspace_callback (void) |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1637 { |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
1638 Fclear (); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1639 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1640 |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1641 void |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1642 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
|
1643 { |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1644 /* bool status = */ symbol_table::rename (names.first, names.second); |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1645 |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1646 // if (status) |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1647 octave_link::set_workspace (true, symbol_table::workspace_info ()); |
16502
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1648 |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1649 // else |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1650 // ; // we need an octave_link action that runs a GUI error option. |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1651 } |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1652 |
45ae1038ee89
allow renaming of variables in workspace viewer
John W. Eaton <jwe@octave.org>
parents:
16499
diff
changeset
|
1653 void |
16539
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
1654 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
|
1655 { |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
1656 command_editor::undo (); |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
1657 command_editor::redisplay (); |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
1658 } |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
1659 |
8ea8df0747e9
make undo button and menu item work for command window
John W. Eaton <jwe@octave.org>
parents:
16532
diff
changeset
|
1660 void |
16514
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
1661 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
|
1662 { |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
1663 Fclc (); |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
1664 command_editor::interrupt (true); |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
1665 } |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
1666 |
db045633405c
Added clear command window implementation to MainWindow Clear COmmand Window menu.
John Donoghue <john.donoghue@ieee.org>
parents:
16512
diff
changeset
|
1667 void |
16541
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
1668 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
|
1669 { |
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
1670 command_editor::resize_terminal (); |
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
1671 } |
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
1672 |
6afb29359968
set size of command window terminal at GUI startup
John W. Eaton <jwe@octave.org>
parents:
16539
diff
changeset
|
1673 void |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1674 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
|
1675 { |
16431
5982d469f79b
use signal for setting, appending to, and clearing history widget
John W. Eaton <jwe@octave.org>
parents:
16426
diff
changeset
|
1676 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
|
1677 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1678 |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1679 void |
17329
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1680 main_window::execute_command_callback () |
16570
d5ae5aa80d42
preserve pending command line input when running commands from GUI actions
John W. Eaton <jwe@octave.org>
parents:
16566
diff
changeset
|
1681 { |
17329
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1682 bool repost = false; // flag for reposting event for this callback |
16570
d5ae5aa80d42
preserve pending command line input when running commands from GUI actions
John W. Eaton <jwe@octave.org>
parents:
16566
diff
changeset
|
1683 |
17329
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1684 if (!_cmd_queue->isEmpty ()) // list can not be empty here, just to make sure |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1685 { |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1686 std::string pending_input = command_editor::get_current_line (); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1687 command_editor::set_initial_input (pending_input); |
16570
d5ae5aa80d42
preserve pending command line input when running commands from GUI actions
John W. Eaton <jwe@octave.org>
parents:
16566
diff
changeset
|
1688 |
17329
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1689 _cmd_queue_mutex.lock (); // critical path |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1690 std::string command = _cmd_queue->takeFirst ().toStdString (); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1691 if (_cmd_queue->isEmpty ()) |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1692 _cmd_processing.release (); // cmd queue empty, processing will stop |
17329
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1693 else |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1694 repost = true; // not empty, repost at end |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1695 _cmd_queue_mutex.unlock (); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1696 |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1697 command_editor::replace_line (command); |
16570
d5ae5aa80d42
preserve pending command line input when running commands from GUI actions
John W. Eaton <jwe@octave.org>
parents:
16566
diff
changeset
|
1698 |
17329
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1699 command_editor::redisplay (); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1700 // We are executing inside the command editor event loop. Force |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1701 // the current line to be returned for processing. |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1702 command_editor::interrupt (); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1703 } |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1704 |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1705 if (repost) // queue not empty, so repost event for further processing |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1706 octave_link::post_event (this, &main_window::execute_command_callback); |
352b442a72a5
queue and synchronize mutliple commands executed fro history (bug #39723)
Torsten <ttl@justmail.de>
parents:
17117
diff
changeset
|
1707 |
16635
25e418d23a4b
fix running files from file browser's context menu
Torsten <ttl@justmail.de>
parents:
16593
diff
changeset
|
1708 } |
25e418d23a4b
fix running files from file browser's context menu
Torsten <ttl@justmail.de>
parents:
16593
diff
changeset
|
1709 |
25e418d23a4b
fix running files from file browser's context menu
Torsten <ttl@justmail.de>
parents:
16593
diff
changeset
|
1710 void |
16566 | 1711 main_window::new_figure_callback (void) |
1712 { | |
1713 Fbuiltin (ovl ("figure")); | |
1714 Fdrawnow (); | |
1715 } | |
1716 | |
1717 void | |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1718 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
|
1719 { |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
1720 Fcd (ovl (directory)); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1721 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1722 |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1723 void |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1724 main_window::debug_continue_callback (void) |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1725 { |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
1726 Fdbcont (); |
16397
649d0b75ec06
allow continue and quit debug buttons to work
John W. Eaton <jwe@octave.org>
parents:
16395
diff
changeset
|
1727 |
649d0b75ec06
allow continue and quit debug buttons to work
John W. Eaton <jwe@octave.org>
parents:
16395
diff
changeset
|
1728 command_editor::interrupt (true); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1729 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1730 |
16382
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1731 // The next three callbacks are invoked by GUI buttons. Those buttons |
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1732 // should only be active when we are doing debugging, which means that |
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1733 // Octave is waiting for input in get_debug_input. Calling |
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1734 // command_editor::interrupt will force readline to return even if it |
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1735 // has not read any input, and then get_debug_input will return, |
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1736 // allowing the evaluator to continue and execute the next statement. |
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1737 |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1738 void |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1739 main_window::debug_step_into_callback (void) |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1740 { |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
1741 Fdbstep (ovl ("in")); |
16382
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1742 |
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1743 command_editor::interrupt (true); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1744 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1745 |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1746 void |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1747 main_window::debug_step_over_callback (void) |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1748 { |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
1749 Fdbstep (); |
16382
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1750 |
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1751 command_editor::interrupt (true); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1752 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1753 |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1754 void |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1755 main_window::debug_step_out_callback (void) |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1756 { |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
1757 Fdbstep (ovl ("out")); |
16382
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1758 |
389b09a914e2
allow gui to force readline to return from its idle/read loop
John W. Eaton <jwe@octave.org>
parents:
16380
diff
changeset
|
1759 command_editor::interrupt (true); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1760 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1761 |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1762 void |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1763 main_window::debug_quit_callback (void) |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1764 { |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
1765 Fdbquit (); |
16397
649d0b75ec06
allow continue and quit debug buttons to work
John W. Eaton <jwe@octave.org>
parents:
16395
diff
changeset
|
1766 |
649d0b75ec06
allow continue and quit debug buttons to work
John W. Eaton <jwe@octave.org>
parents:
16395
diff
changeset
|
1767 command_editor::interrupt (true); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1768 } |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1769 |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1770 void |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1771 main_window::exit_callback (void) |
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1772 { |
15420
1249a615c91b
call built-in functions directly in GUI callbacks
John W. Eaton <jwe@octave.org>
parents:
15404
diff
changeset
|
1773 Fquit (); |
15402
7f423c6111c6
refactor GUI event handling to use new event_queue class
John W. Eaton <jwe@octave.org>
parents:
15388
diff
changeset
|
1774 } |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1775 |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1776 void |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1777 main_window::find_files (const QString &start_dir) |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1778 { |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1779 |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1780 if (! find_files_dlg) |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1781 { |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1782 find_files_dlg = new find_files_dialog (this); |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1783 |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1784 connect (find_files_dlg, SIGNAL (finished (int)), |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1785 this, SLOT (find_files_finished (int))); |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1786 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1787 connect (find_files_dlg, SIGNAL (dir_selected (const QString &)), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1788 file_browser_window, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1789 SLOT (set_current_directory (const QString&))); |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1790 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1791 connect (find_files_dlg, SIGNAL (file_selected (const QString &)), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1792 this, SLOT (open_file (const QString &))); |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1793 |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1794 find_files_dlg->setWindowModality (Qt::NonModal); |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1795 } |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1796 |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1797 if (! find_files_dlg->isVisible ()) |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1798 { |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1799 find_files_dlg->show (); |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1800 } |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1801 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1802 find_files_dlg->set_search_dir (start_dir); |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1803 |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1804 find_files_dlg->activateWindow (); |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1805 |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1806 } |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1807 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1808 void |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1809 main_window::find_files_finished (int) |
16519
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1810 { |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1811 |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1812 } |
3e8fd0c479b4
Add find files implemtation to main window menu
John Donoghue <john.donoghue@ieee.org>
parents:
16518
diff
changeset
|
1813 |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1814 void |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1815 main_window::set_global_shortcuts (bool set_shortcuts) |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1816 { |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1817 if (set_shortcuts) |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1818 { |
16635
25e418d23a4b
fix running files from file browser's context menu
Torsten <ttl@justmail.de>
parents:
16593
diff
changeset
|
1819 |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1820 _open_action->setShortcut (QKeySequence::Open); |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1821 _new_script_action->setShortcut (QKeySequence::New); |
17901
2c241092b47b
use edit.m for creating a new function with the gui (bug #40502)
Torsten <ttl@justmail.de>
parents:
17899
diff
changeset
|
1822 _new_function_action->setShortcut (Qt::ControlModifier |
2c241092b47b
use edit.m for creating a new function with the gui (bug #40502)
Torsten <ttl@justmail.de>
parents:
17899
diff
changeset
|
1823 + Qt::ShiftModifier |
2c241092b47b
use edit.m for creating a new function with the gui (bug #40502)
Torsten <ttl@justmail.de>
parents:
17899
diff
changeset
|
1824 + Qt::Key_N); |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1825 |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1826 _exit_action->setShortcut (QKeySequence::Quit); |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1827 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1828 _find_files_action->setShortcut (Qt::ControlModifier |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1829 + Qt::ShiftModifier |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17771
diff
changeset
|
1830 + Qt::Key_F); |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1831 |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1832 } |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1833 else |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1834 { |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1835 |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1836 QKeySequence no_key = QKeySequence (); |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1837 |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1838 _open_action->setShortcut (no_key); |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1839 _new_script_action->setShortcut (no_key); |
17901
2c241092b47b
use edit.m for creating a new function with the gui (bug #40502)
Torsten <ttl@justmail.de>
parents:
17899
diff
changeset
|
1840 _new_function_action->setShortcut (no_key); |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1841 |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1842 _exit_action->setShortcut (no_key); |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1843 |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1844 _find_files_action->setShortcut (no_key); |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1845 |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1846 } |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1847 |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1848 emit set_widget_shortcuts_signal (set_shortcuts); |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16956
diff
changeset
|
1849 } |
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
|
1850 |
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
1851 void |
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
1852 main_window::handle_show_doc (const QString& file) |
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
1853 { |
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
1854 doc_browser_window->setVisible (true); |
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
1855 emit show_doc_signal (file); |
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
1856 } |
359c5ca795cd
Display doc info pages using documentation browser when in GUI mode (Bug #39451)
John Donoghue <john.donoghue@ieee.org>
parents:
17010
diff
changeset
|
1857 |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1858 void |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1859 main_window::clipboard_has_changed (QClipboard::Mode cp_mode) |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1860 { |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1861 if (cp_mode == QClipboard::Clipboard) |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1862 { |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1863 if (_clipboard->text ().isEmpty ()) |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1864 { |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1865 _paste_action->setEnabled (false); |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1866 _clear_clipboard_action->setEnabled (false); |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1867 } |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1868 else |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1869 { |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1870 _paste_action->setEnabled (true); |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1871 _clear_clipboard_action->setEnabled (true); |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1872 } |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1873 } |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1874 } |
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
|
1875 |
17117
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1876 void |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1877 main_window::clear_clipboard () |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1878 { |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1879 _clipboard->clear (QClipboard::Clipboard); |
47b504503a3f
disable global paste action when clipboard is empty
Torsten <ttl@justmail.de>
parents:
17090
diff
changeset
|
1880 } |