Mercurial > octave
annotate libgui/src/m-editor/file-editor.cc @ 24679:a3e67a9e7be5
move derived tab bar from editor and doc viewer into separate file
* file-editor.cc (file_editor_tab_bar::file_editor_tab_bar),
(file_editor_tab_bar::create_context_menu),
(file_editor_tab_bar::mousePressEvent): remove all functions related to the
derived file_editor_tab_bar class;
(file_editor_tab_widget::file_editor_tab_widget): use the new tab_bar;
(file_editor::construct): add the close actions to the context menu
provided by tab_bar
* file-editor.h: derived tab bar removed
* module.mk: new files tab_bar.cc and tab_bar.h
* webinfo.cc (webinfo) use new tab_bar instead of special webinfo_tab_bar,
connect tab bar signal for closing tab;
(webinfo_tab_bar::webinfo_tab_bar),
(webinfo_tab_bar::mousePressEvent): removed
* webinfo.h: removed webinfo_tab_bar
* tab-bar.cc: new tab bar for editor and doc viewer derived from QTabBar;
(tab_bar): constructor, create context menu;
(mousePressEvent): reimplemented mouse press event for detecting mouse
actions for closing a tab, in case, emitting related signal
* tab-bar.h: new tab bar for editor and doc viewer derived from QTabBar
author | Torsten <mttl@mailbox.org> |
---|---|
date | Sat, 03 Feb 2018 09:51:34 +0100 |
parents | 194eb4bd202b |
children | 36cd70fc2d63 |
rev | line source |
---|---|
15204
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
1 /* |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
2 |
23219
3ac9f9ecfae5
maint: Update copyright dates.
John W. Eaton <jwe@octave.org>
parents:
23178
diff
changeset
|
3 Copyright (C) 2011-2017 Jacob Dawid |
15204
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
4 |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
5 This file is part of Octave. |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
6 |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
24484
diff
changeset
|
7 Octave is free software: you can redistribute it and/or modify it |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
8 under the terms of the GNU General Public License as published by |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
24484
diff
changeset
|
9 the Free Software Foundation, either version 3 of the License, or |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
10 (at your option) any later version. |
15204
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
11 |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
12 Octave is distributed in the hope that it will be useful, but |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
13 WITHOUT ANY WARRANTY; without even the implied warranty of |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
15 GNU General Public License for more details. |
15204
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
16 |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
17 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
|
18 along with Octave; see the file COPYING. If not, see |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
24484
diff
changeset
|
19 <https://www.gnu.org/licenses/>. |
15204
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
20 |
359098ad343e
update copyright notices in libgui directory
John W. Eaton <jwe@octave.org>
parents:
15196
diff
changeset
|
21 */ |
13501 | 22 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21650
diff
changeset
|
23 #if defined (HAVE_CONFIG_H) |
21301
40de9f8f23a6
Use '#include "config.h"' rather than <config.h>.
Rik <rik@octave.org>
parents:
21203
diff
changeset
|
24 # include "config.h" |
15286
ae9079bbc627
Add '#include <config.h>' to C++ files in libgui/src
Rik <rik@octave.org>
parents:
15204
diff
changeset
|
25 #endif |
ae9079bbc627
Add '#include <config.h>' to C++ files in libgui/src
Rik <rik@octave.org>
parents:
15204
diff
changeset
|
26 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21650
diff
changeset
|
27 #if defined (HAVE_QSCINTILLA) |
15873
7d300b85ee25
allow build to proceed if either Qt or QScintilla is missing
John W. Eaton <jwe@octave.org>
parents:
15861
diff
changeset
|
28 |
14707
674740c44c09
Changed various files to matche file naming conventions.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14703
diff
changeset
|
29 #include "file-editor.h" |
15356
842ab161c10a
GUI: new setting to restore tabs from previous session; allow silent load file
Thorsten Liebig <Thorsten.Liebig@gmx.de>
parents:
15321
diff
changeset
|
30 #include "resource-manager.h" |
18611
086093fbdc1a
first implementation of a shortcut manager (bug #41217)
Torsten <ttl@justmail.de>
parents:
18575
diff
changeset
|
31 #include "shortcut-manager.h" |
24679
a3e67a9e7be5
move derived tab bar from editor and doc viewer into separate file
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
32 #include "tab-bar.h" |
18611
086093fbdc1a
first implementation of a shortcut manager (bug #41217)
Torsten <ttl@justmail.de>
parents:
18575
diff
changeset
|
33 |
13501 | 34 #include <QApplication> |
35 #include <QFile> | |
22250
2fd4f1a3f4a8
allow building with Qt5 (bug #40252)
John W. Eaton <jwe@octave.org>
parents:
22179
diff
changeset
|
36 #include <QFileDialog> |
13584 | 37 #include <QFont> |
13501 | 38 #include <QMessageBox> |
22250
2fd4f1a3f4a8
allow building with Qt5 (bug #40252)
John W. Eaton <jwe@octave.org>
parents:
22179
diff
changeset
|
39 #include <QMimeData> |
2fd4f1a3f4a8
allow building with Qt5 (bug #40252)
John W. Eaton <jwe@octave.org>
parents:
22179
diff
changeset
|
40 #include <QProcess> |
13501 | 41 #include <QStyle> |
22250
2fd4f1a3f4a8
allow building with Qt5 (bug #40252)
John W. Eaton <jwe@octave.org>
parents:
22179
diff
changeset
|
42 #include <QTabBar> |
13501 | 43 #include <QTextStream> |
22250
2fd4f1a3f4a8
allow building with Qt5 (bug #40252)
John W. Eaton <jwe@octave.org>
parents:
22179
diff
changeset
|
44 #include <QVBoxLayout> |
18656
1b289f45187f
add some qscintilla actions to the menu and to the shortcut manager
Torsten <ttl@justmail.de>
parents:
18651
diff
changeset
|
45 #include <Qsci/qscicommandset.h> |
13501 | 46 |
23479
06bf3a0b08bf
maint: Use "" instead of <> for our own include files.
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
47 #include "main-window.h" |
06bf3a0b08bf
maint: Use "" instead of <> for our own include files.
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
48 #include "oct-map.h" |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
49 #include "octave-link.h" |
16546
c1e90c7cfd30
try harder to find editor tab widgets for files with multiple names
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
50 #include "utils.h" |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
51 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
52 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
53 // Functions of the the reimplemented tab widget |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
54 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
55 file_editor_tab_widget::file_editor_tab_widget (QWidget *p) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
56 : QTabWidget (p) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
57 { |
24679
a3e67a9e7be5
move derived tab bar from editor and doc viewer into separate file
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
58 tab_bar *bar; |
a3e67a9e7be5
move derived tab bar from editor and doc viewer into separate file
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
59 bar = new tab_bar (this); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
60 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
61 connect (bar, SIGNAL (close_current_tab_signal (bool)), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
62 p->parent (), SLOT (request_close_file (bool))); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
63 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
64 this->setTabBar (bar); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
65 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
66 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
67 QTabBar* |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
68 file_editor_tab_widget::tabBar (void) const |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
69 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
70 return (QTabWidget::tabBar ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
71 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
72 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
73 file_editor::file_editor (QWidget *p) |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
74 : file_editor_interface (p) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
75 { |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
76 // Set current editing directory before construct because loaded |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
77 // files will change ced accordingly. |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
78 m_ced = QDir::currentPath (); |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
79 |
20986
00835323fb44
prevent shortcut ambiguity between main and editor window
Torsten <ttl@justmail.de>
parents:
20955
diff
changeset
|
80 // set action that are later added by the main window to null, |
00835323fb44
prevent shortcut ambiguity between main and editor window
Torsten <ttl@justmail.de>
parents:
20955
diff
changeset
|
81 // preventing access to them when they are still undefined |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
82 m_undo_action = nullptr; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
83 m_copy_action = nullptr; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
84 m_paste_action = nullptr; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
85 m_selectall_action = nullptr; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
86 m_closed = false; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
87 m_no_focus = false; |
20986
00835323fb44
prevent shortcut ambiguity between main and editor window
Torsten <ttl@justmail.de>
parents:
20955
diff
changeset
|
88 |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
89 construct (); |
14676
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
90 |
22169
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
91 // actions that should also be available in the find dialog |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
92 m_fetab_actions << m_find_next_action; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
93 m_fetab_actions << m_find_previous_action; |
22169
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
94 |
14676
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
95 setVisible (false); |
23070
bef714f45999
maint: Use space after function name/before parenthesis in libgui.
Rik <rik@octave.org>
parents:
22755
diff
changeset
|
96 setAcceptDrops (true); |
13501 | 97 } |
98 | |
16558 | 99 file_editor::~file_editor (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
100 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
101 delete m_mru_file_menu; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
102 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
103 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
104 // insert global actions, that should also be displayed in the editor window, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
105 // into the editor's menu and/or toolbar |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
106 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
107 file_editor::insert_global_actions (QList<QAction*> shared_actions) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
108 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
109 // actions/menus that have to be added to the toolbar or the menu |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
110 QAction *open_action = shared_actions.at (OPEN_ACTION); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
111 QAction *new_action = shared_actions.at (NEW_SCRIPT_ACTION); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
112 QAction *new_fcn_action = shared_actions.at (NEW_FUNCTION_ACTION); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
113 m_fileMenu->insertAction (m_mru_file_menu->menuAction (), open_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
114 m_fileMenu->insertAction (open_action, new_fcn_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
115 m_fileMenu->insertAction (new_fcn_action, new_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
116 m_tool_bar->insertAction (m_popdown_mru_action, open_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
117 m_tool_bar->insertAction (open_action, new_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
118 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
119 // actions that are additionally enabled/disabled later by the editor |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
120 // undo |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
121 m_undo_action = shared_actions.at (UNDO_ACTION); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
122 m_tool_bar->insertAction (m_redo_action,m_undo_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
123 m_edit_menu->insertAction (m_redo_action,m_undo_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
124 // copy |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
125 m_copy_action = shared_actions.at (COPY_ACTION); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
126 m_tool_bar->insertAction (m_cut_action,m_copy_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
127 m_edit_menu->insertAction (m_cut_action,m_copy_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
128 // select all |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
129 m_selectall_action = shared_actions.at (SELECTALL_ACTION); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
130 m_edit_menu->insertAction (m_find_action,m_selectall_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
131 m_edit_menu->insertSeparator (m_find_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
132 // paste |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
133 m_paste_action = shared_actions.at (PASTE_ACTION); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
134 m_tool_bar->insertAction (m_find_action,m_paste_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
135 m_edit_menu->insertAction (m_selectall_action,m_paste_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
136 m_edit_menu->insertSeparator (m_selectall_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
137 // find files |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
138 m_find_files_action = shared_actions.at (FIND_FILES_ACTION); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
139 m_edit_menu->insertAction (m_find_action, m_find_files_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
140 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
141 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
142 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
143 file_editor::handle_enter_debug_mode (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
144 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
145 m_run_action->setEnabled (false); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
146 m_run_action->setShortcut (QKeySequence ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
147 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
148 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
149 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
150 file_editor::handle_exit_debug_mode (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
151 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
152 m_run_action->setEnabled (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
153 shortcut_manager::set_shortcut (m_run_action, "editor_run:run_file"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
154 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
155 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
156 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
157 file_editor::check_actions (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
158 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
159 bool have_tabs = m_tab_widget->count () > 0; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
160 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
161 m_edit_cmd_menu->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
162 m_edit_fmt_menu->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
163 m_edit_nav_menu->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
164 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
165 m_comment_selection_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
166 m_uncomment_selection_action->setEnabled (have_tabs); |
24484
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
167 m_comment_var_selection_action->setEnabled (have_tabs); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
168 m_indent_selection_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
169 m_unindent_selection_action->setEnabled (have_tabs); |
24232
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
170 m_smart_indent_line_or_selection_action->setEnabled (have_tabs); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
171 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
172 m_context_help_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
173 m_context_doc_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
174 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
175 m_view_editor_menu->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
176 m_zoom_in_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
177 m_zoom_out_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
178 m_zoom_normal_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
179 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
180 m_find_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
181 m_find_next_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
182 m_find_previous_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
183 m_print_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
184 m_run_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
185 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
186 m_edit_function_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
187 m_save_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
188 m_save_as_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
189 m_close_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
190 m_close_all_action->setEnabled (have_tabs); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
191 m_close_others_action->setEnabled (have_tabs && m_tab_widget->count () > 1); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
192 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
193 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
194 // empty_script determines whether we have to create an empty script |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
195 // 1. At startup, when the editor has to be (really) visible |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
196 // (Here we can not use the visibility changed signal) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
197 // 2. When the editor becomes visible when octave is running |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
198 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
199 file_editor::empty_script (bool startup, bool visible) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
200 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
201 QSettings *settings = resource_manager::get_settings (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
202 if (settings->value ("useCustomFileEditor",false).toBool ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
203 return; // do not open an empty script in the external editor |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
204 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
205 bool real_visible; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
206 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
207 if (startup) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
208 real_visible = isVisible (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
209 else |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
210 real_visible = visible; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
211 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
212 if (! real_visible || m_tab_widget->count () > 0) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
213 return; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
214 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
215 if (startup && ! isFloating ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
216 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
217 // check is editor is really visible or hidden between tabbed widgets |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
218 QList<QTabBar *> tab_list = main_win ()->findChildren<QTabBar *>(); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
219 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
220 bool in_tab = false; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
221 int i = 0; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
222 while ((i < tab_list.count ()) && (! in_tab)) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
223 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
224 QTabBar *tab = tab_list.at (i); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
225 i++; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
226 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
227 int j = 0; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
228 while ((j < tab->count ()) && (! in_tab)) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
229 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
230 // check all tabs for the editor |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
231 if (tab->tabText (j) == windowTitle ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
232 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
233 // editor is in this tab widget |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
234 in_tab = true; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
235 int top = tab->currentIndex (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
236 if (top > -1 && tab->tabText (top) == windowTitle ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
237 real_visible = true; // and is the current tab |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
238 else |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
239 return; // not current tab -> not visible |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
240 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
241 j++; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
242 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
243 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
244 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
245 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
246 request_new_file (""); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
247 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
248 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
249 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
250 file_editor::restore_session (QSettings *settings) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
251 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
252 //restore previous session |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
253 if (! settings->value ("editor/restoreSession", true).toBool ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
254 return; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
255 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
256 // get the data from the settings file |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
257 QStringList sessionFileNames = settings->value ("editor/savedSessionTabs", |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
258 QStringList ()).toStringList (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
259 QStringList session_encodings = settings->value ("editor/saved_session_encodings", |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
260 QStringList ()).toStringList (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
261 QStringList session_index = settings->value ("editor/saved_session_tab_index", |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
262 QStringList ()).toStringList (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
263 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
264 // fill a list of the struct and sort it (depending on index) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
265 QList<session_data> s_data; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
266 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
267 bool do_encoding = (session_encodings.count () == sessionFileNames.count ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
268 bool do_index = (session_index.count () == sessionFileNames.count ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
269 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
270 for (int n = 0; n < sessionFileNames.count (); ++n) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
271 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
272 QFileInfo file = QFileInfo (sessionFileNames.at (n)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
273 if (! file.exists ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
274 continue; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
275 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
276 session_data item = { QString (), sessionFileNames.at (n), QString ()}; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
277 if (do_index) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
278 item.index = session_index.at (n); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
279 if (do_encoding) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
280 item.encoding = session_encodings.at (n); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
281 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
282 s_data << item; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
283 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
284 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
285 qSort (s_data); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
286 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
287 // finally open the file with the desired encoding in the desired order |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
288 for (int n = 0; n < s_data.count (); ++n) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
289 request_open_file (s_data.at (n).file_name, s_data.at (n).encoding); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
290 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
291 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
292 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
293 file_editor::focus (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
294 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
295 if (m_no_focus) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
296 return; // No focus for the editor if external open/close request |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
297 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
298 octave_dock_widget::focus (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
299 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
300 // set focus to current tab |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
301 QWidget *fileEditorTab = m_tab_widget->currentWidget (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
302 if (fileEditorTab) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
303 emit fetab_set_focus (fileEditorTab); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
304 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
305 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
306 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
307 file_editor::set_focus (QWidget *fet) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
308 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
309 octave_dock_widget::focus (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
310 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
311 // set focus to desired tab |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
312 if (fet) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
313 m_tab_widget->setCurrentWidget (fet); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
314 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
315 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
316 // function enabling/disabling the menu accelerators depending on the |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
317 // focus of the editor |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
318 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
319 file_editor::enable_menu_shortcuts (bool enable) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
320 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
321 QHash<QMenu*, QStringList>::const_iterator i = m_hash_menu_text.constBegin (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
322 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
323 while (i != m_hash_menu_text.constEnd ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
324 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
325 i.key ()->setTitle (i.value ().at (! enable)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
326 ++i; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
327 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
328 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
329 // when editor loses focus, enable the actions, which are always active |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
330 // in the main window due to missing info on selected text and undo actions |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
331 if (! enable && m_copy_action && m_undo_action) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
332 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
333 m_copy_action->setEnabled (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
334 m_undo_action->setEnabled (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
335 } |
19411
ed0df431631b
allow to cancel exiting if editor tabs are modified and exit is requested in gui
Torsten <ttl@justmail.de>
parents:
19314
diff
changeset
|
336 } |
ed0df431631b
allow to cancel exiting if editor tabs are modified and exit is requested in gui
Torsten <ttl@justmail.de>
parents:
19314
diff
changeset
|
337 |
ed0df431631b
allow to cancel exiting if editor tabs are modified and exit is requested in gui
Torsten <ttl@justmail.de>
parents:
19314
diff
changeset
|
338 bool |
19714
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19697
diff
changeset
|
339 file_editor::check_closing (void) |
19411
ed0df431631b
allow to cancel exiting if editor tabs are modified and exit is requested in gui
Torsten <ttl@justmail.de>
parents:
19314
diff
changeset
|
340 { |
23204
75515a7b1b4b
add preference for closing files when editor is closed/hidden (bug #50106)
Torsten <mttl@mailbox.org>
parents:
23199
diff
changeset
|
341 // When the application or the editor is closing and the user wants to close |
75515a7b1b4b
add preference for closing files when editor is closed/hidden (bug #50106)
Torsten <mttl@mailbox.org>
parents:
23199
diff
changeset
|
342 // all files in the latter case all editor tabs are checked whether |
21054
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
343 // they need to be saved. During these ckecked the tabs are not closed |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
344 // since the user might cancel closing octave during one of these saving |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
345 // dialogs. Therefore, saving the session for restoring at next start |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
346 // is not done before the application is definitely closing |
16558 | 347 |
20713
2469d78a1d8b
Consistently use 'filename' rather than 'file name' throughout code base.
Rik <rik@octave.org>
parents:
20705
diff
changeset
|
348 // Have all file editor tabs signal what their filenames are. |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
349 m_editor_tab_map.clear (); |
23795
980f39c3ab90
Use C++11 nullptr rather than 0 in code (bug #51565).
Rik <rik@octave.org>
parents:
23531
diff
changeset
|
350 emit fetab_file_name_query (nullptr); |
16558 | 351 |
21054
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
352 // Save all tabs with confirmation. |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
353 file_editor_tab::reset_cancel (); |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
354 emit fetab_check_modified_file (); |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
355 |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
356 // If there was a cancellation, make the already saved/discarded tabs |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
357 // recovering from the exit by removing the read-only state and by |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
358 // recovering the debugger breakpoints. Finally return false in order to |
23204
75515a7b1b4b
add preference for closing files when editor is closed/hidden (bug #50106)
Torsten <mttl@mailbox.org>
parents:
23199
diff
changeset
|
359 // cancel closing the application or the editor |
21054
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
360 if (file_editor_tab::was_cancelled ()) |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
361 { |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
362 emit fetab_recover_from_exit (); |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
363 return false; |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
364 } |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
365 |
23204
75515a7b1b4b
add preference for closing files when editor is closed/hidden (bug #50106)
Torsten <mttl@mailbox.org>
parents:
23199
diff
changeset
|
366 // Here, the application or the editor will be closed -> store the session |
21054
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
367 |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
368 // Save open files for restoring in next session; this only is possible |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
369 QSettings *settings = resource_manager::get_settings (); |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
370 |
20713
2469d78a1d8b
Consistently use 'filename' rather than 'file name' throughout code base.
Rik <rik@octave.org>
parents:
20705
diff
changeset
|
371 // save filenames (even if last session will not be restored next time) |
20796
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
372 // together with encoding and the tab index |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
373 QStringList fetFileNames; |
20796
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
374 QStringList fet_encodings; |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
375 QStringList fet_index; |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
376 |
21054
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
377 // save all open tabs before they are definitely closed |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
378 for (editor_tab_map_const_iterator p = m_editor_tab_map.begin (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
379 p != m_editor_tab_map.end (); p++) |
16740
cfefcc2a4dae
do not save unnamed files for restoring the editor session at next start up
Torsten <ttl@justmail.de>
parents:
16739
diff
changeset
|
380 { |
20796
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
381 QString file_name = p->first; // get file name of tab |
20955
77f5591878bf
maint: Use '! expr' rather than '!expr' to conform to coding guidelines.
Rik <rik@octave.org>
parents:
20814
diff
changeset
|
382 if (! file_name.isEmpty ()) // do not append unnamed files |
20796
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
383 { |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
384 fetFileNames.append (file_name); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
385 fet_encodings.append (m_editor_tab_map[file_name].encoding); |
20796
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
386 QString index; |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
387 fet_index.append (index.setNum |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
388 (m_tab_widget->indexOf (m_editor_tab_map[file_name].fet_ID))); |
20796
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
389 } |
16740
cfefcc2a4dae
do not save unnamed files for restoring the editor session at next start up
Torsten <ttl@justmail.de>
parents:
16739
diff
changeset
|
390 } |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
391 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
392 settings->setValue ("editor/savedSessionTabs", fetFileNames); |
20796
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
393 settings->setValue ("editor/saved_session_encodings", fet_encodings); |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
394 settings->setValue ("editor/saved_session_tab_index", fet_index); |
15356
842ab161c10a
GUI: new setting to restore tabs from previous session; allow silent load file
Thorsten Liebig <Thorsten.Liebig@gmx.de>
parents:
15321
diff
changeset
|
395 settings->sync (); |
15993
41471c02d51c
gui: show menu with recently used editor files also in file menu of main window
Torsten <ttl@justmail.de>
parents:
15984
diff
changeset
|
396 |
21054
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
397 // Finally close all the tabs and return indication that we can exit |
23204
75515a7b1b4b
add preference for closing files when editor is closed/hidden (bug #50106)
Torsten <mttl@mailbox.org>
parents:
23199
diff
changeset
|
398 // the application or close the editor |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
399 for (int i = m_tab_widget->count () - 1; i >= 0; i--) |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
400 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
401 // backwards loop since m_tab_widget->count () changes during the loop |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
402 delete m_tab_widget->widget (i); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
403 m_tab_widget->removeTab (i); |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
404 } |
16638
3c2e457eeb72
ask for saving modified editor files if octave is closed (bug #38689)
Torsten <ttl@justmail.de>
parents:
16637
diff
changeset
|
405 |
19411
ed0df431631b
allow to cancel exiting if editor tabs are modified and exit is requested in gui
Torsten <ttl@justmail.de>
parents:
19314
diff
changeset
|
406 return true; |
13524
8c143d6d0330
gui-editor: improved behaviour when closing a modified file
ttl (Torsten) <ttl@justmail.de>
parents:
13506
diff
changeset
|
407 } |
8c143d6d0330
gui-editor: improved behaviour when closing a modified file
ttl (Torsten) <ttl@justmail.de>
parents:
13506
diff
changeset
|
408 |
16457
10edb6f1ae98
improve encapsulation of file editor window object
John W. Eaton <jwe@octave.org>
parents:
16455
diff
changeset
|
409 void |
16452
744ff2fe11ce
add create script context menu to history window
John Donoghue <john.donoghue@ieee.org>
parents:
16443
diff
changeset
|
410 file_editor::request_new_file (const QString& commands) |
13524
8c143d6d0330
gui-editor: improved behaviour when closing a modified file
ttl (Torsten) <ttl@justmail.de>
parents:
13506
diff
changeset
|
411 { |
17903
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
412 // Custom editor? If yes, we can only call the editor without passing |
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
413 // some initial contents and even without being sure a new file is opened |
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
414 if (call_custom_editor ()) |
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
415 return; |
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
416 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
417 // New file isn't a file_editor_tab function since the file |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
418 // editor tab has yet to be created and there is no object to |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
419 // pass a signal to. Hence, functionality is here. |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
420 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
421 file_editor_tab *fileEditorTab = new file_editor_tab (m_ced); |
14676
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
422 if (fileEditorTab) |
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
423 { |
15982
131d40cd805b
gui: cleanup some string constants for translations
Torsten <ttl@justmail.de>
parents:
15980
diff
changeset
|
424 add_file_editor_tab (fileEditorTab, ""); // new tab with empty title |
16452
744ff2fe11ce
add create script context menu to history window
John Donoghue <john.donoghue@ieee.org>
parents:
16443
diff
changeset
|
425 fileEditorTab->new_file (commands); // title is updated here |
19427
3c038da18218
cleanup of focus function in gui editor
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
426 focus (); // focus editor and new tab |
14676
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
427 } |
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
428 } |
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
429 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
430 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
431 file_editor::request_close_file (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
432 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
433 file_editor_tab *editor_tab |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
434 = static_cast<file_editor_tab *> (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
435 editor_tab->conditional_close (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
436 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
437 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
438 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
439 file_editor::request_close_all_files (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
440 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
441 file_editor_tab *editor_tab; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
442 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
443 // loop over all tabs starting from last one otherwise deletion changes index |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
444 for (int index = m_tab_widget->count ()-1; index >= 0; index--) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
445 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
446 editor_tab = static_cast<file_editor_tab *> (m_tab_widget->widget (index)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
447 editor_tab->conditional_close (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
448 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
449 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
450 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
451 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
452 file_editor::request_close_other_files (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
453 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
454 file_editor_tab *editor_tab; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
455 QWidget *tabID = m_tab_widget->currentWidget (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
456 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
457 // loop over all tabs starting from last one otherwise deletion changes index |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
458 for (int index = m_tab_widget->count ()-1; index >= 0; index--) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
459 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
460 if (tabID != m_tab_widget->widget (index)) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
461 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
462 editor_tab |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
463 = static_cast<file_editor_tab *> (m_tab_widget->widget (index)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
464 editor_tab->conditional_close (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
465 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
466 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
467 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
468 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
469 // open a file from the mru list |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
470 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
471 file_editor::request_mru_open_file (QAction *action) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
472 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
473 if (action) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
474 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
475 request_open_file (action->data ().toStringList ().at (0), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
476 action->data ().toStringList ().at (1)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
477 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
478 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
479 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
480 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
481 file_editor::request_print_file (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
482 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
483 emit fetab_print_file (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
484 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
485 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
486 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
487 file_editor::request_redo (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
488 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
489 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
490 QsciScintillaBase::SCI_REDO); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
491 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
492 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
493 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
494 file_editor::request_cut (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
495 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
496 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
497 QsciScintillaBase::SCI_CUT); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
498 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
499 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
500 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
501 file_editor::request_context_help (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
502 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
503 emit fetab_context_help (m_tab_widget->currentWidget (), false); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
504 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
505 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
506 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
507 file_editor::request_context_doc (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
508 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
509 emit fetab_context_help (m_tab_widget->currentWidget (), true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
510 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
511 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
512 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
513 file_editor::request_context_edit (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
514 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
515 emit fetab_context_edit (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
516 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
517 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
518 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
519 file_editor::request_save_file (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
520 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
521 emit fetab_save_file (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
522 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
523 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
524 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
525 file_editor::request_save_file_as (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
526 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
527 emit fetab_save_file_as (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
528 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
529 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
530 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
531 file_editor::request_run_file (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
532 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
533 emit fetab_run_file (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
534 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
535 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
536 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
537 file_editor::request_context_run (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
538 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
539 emit fetab_context_run (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
540 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
541 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
542 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
543 file_editor::request_toggle_bookmark (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
544 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
545 emit fetab_toggle_bookmark (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
546 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
547 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
548 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
549 file_editor::request_next_bookmark (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
550 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
551 emit fetab_next_bookmark (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
552 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
553 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
554 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
555 file_editor::request_previous_bookmark (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
556 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
557 emit fetab_previous_bookmark (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
558 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
559 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
560 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
561 file_editor::request_remove_bookmark (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
562 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
563 emit fetab_remove_bookmark (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
564 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
565 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
566 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
567 file_editor::request_move_match_brace (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
568 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
569 emit fetab_move_match_brace (m_tab_widget->currentWidget (), false); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
570 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
571 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
572 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
573 file_editor::request_sel_match_brace (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
574 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
575 emit fetab_move_match_brace (m_tab_widget->currentWidget (), true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
576 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
577 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
578 // FIXME: What should this do with conditional breakpoints? |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
579 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
580 file_editor::request_toggle_breakpoint (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
581 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
582 emit fetab_toggle_breakpoint (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
583 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
584 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
585 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
586 file_editor::request_next_breakpoint (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
587 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
588 emit fetab_next_breakpoint (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
589 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
590 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
591 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
592 file_editor::request_previous_breakpoint (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
593 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
594 emit fetab_previous_breakpoint (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
595 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
596 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
597 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
598 file_editor::request_remove_breakpoint (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
599 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
600 emit fetab_remove_all_breakpoints (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
601 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
602 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
603 // slots for Edit->Commands actions |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
604 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
605 file_editor::request_delete_start_word (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
606 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
607 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
608 QsciScintillaBase::SCI_DELWORDLEFT); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
609 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
610 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
611 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
612 file_editor::request_delete_end_word (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
613 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
614 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
615 QsciScintillaBase::SCI_DELWORDRIGHT); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
616 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
617 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
618 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
619 file_editor::request_delete_start_line (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
620 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
621 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
622 QsciScintillaBase::SCI_DELLINELEFT); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
623 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
624 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
625 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
626 file_editor::request_delete_end_line (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
627 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
628 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
629 QsciScintillaBase::SCI_DELLINERIGHT); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
630 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
631 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
632 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
633 file_editor::request_delete_line (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
634 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
635 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
636 QsciScintillaBase::SCI_LINEDELETE); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
637 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
638 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
639 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
640 file_editor::request_copy_line (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
641 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
642 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
643 QsciScintillaBase::SCI_LINECOPY); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
644 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
645 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
646 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
647 file_editor::request_cut_line (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
648 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
649 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
650 QsciScintillaBase::SCI_LINECUT); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
651 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
652 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
653 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
654 file_editor::request_duplicate_selection (bool) |
16546
c1e90c7cfd30
try harder to find editor tab widgets for files with multiple names
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
655 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
656 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
657 QsciScintillaBase::SCI_SELECTIONDUPLICATE); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
658 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
659 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
660 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
661 file_editor::request_transpose_line (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
662 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
663 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
664 QsciScintillaBase::SCI_LINETRANSPOSE); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
665 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
666 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
667 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
668 file_editor::request_comment_selected_text (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
669 { |
24484
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
670 emit fetab_comment_selected_text (m_tab_widget->currentWidget (), false); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
671 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
672 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
673 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
674 file_editor::request_uncomment_selected_text (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
675 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
676 emit fetab_uncomment_selected_text (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
677 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
678 |
24484
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
679 void |
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
680 file_editor::request_comment_var_selected_text (bool) |
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
681 { |
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
682 emit fetab_comment_selected_text (m_tab_widget->currentWidget (), true); |
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
683 } |
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
684 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
685 // slots for Edit->Format actions |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
686 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
687 file_editor::request_upper_case (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
688 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
689 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
690 QsciScintillaBase::SCI_UPPERCASE); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
691 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
692 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
693 file_editor::request_lower_case (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
694 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
695 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
696 QsciScintillaBase::SCI_LOWERCASE); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
697 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
698 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
699 file_editor::request_indent_selected_text (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
700 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
701 emit fetab_indent_selected_text (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
702 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
703 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
704 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
705 file_editor::request_unindent_selected_text (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
706 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
707 emit fetab_unindent_selected_text (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
708 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
709 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
710 void |
24232
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
711 file_editor::request_smart_indent_line_or_selected_text () |
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
712 { |
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
713 emit fetab_smart_indent_line_or_selected_text (m_tab_widget->currentWidget ()); |
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
714 } |
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
715 |
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
716 void |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
717 file_editor::request_conv_eol_windows (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
718 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
719 emit fetab_convert_eol (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
720 QsciScintilla::EolWindows); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
721 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
722 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
723 file_editor::request_conv_eol_unix (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
724 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
725 emit fetab_convert_eol (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
726 QsciScintilla::EolUnix); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
727 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
728 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
729 file_editor::request_conv_eol_mac (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
730 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
731 emit fetab_convert_eol (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
732 QsciScintilla::EolMac); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
733 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
734 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
735 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
736 file_editor::request_find (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
737 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
738 emit fetab_find (m_tab_widget->currentWidget (), m_fetab_actions); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
739 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
740 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
741 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
742 file_editor::request_find_next (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
743 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
744 emit fetab_find_next (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
745 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
746 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
747 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
748 file_editor::request_find_previous (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
749 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
750 emit fetab_find_previous (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
751 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
752 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
753 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
754 file_editor::request_goto_line (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
755 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
756 emit fetab_goto_line (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
757 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
758 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
759 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
760 file_editor::request_completion (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
761 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
762 emit fetab_completion (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
763 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
764 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
765 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
766 file_editor::handle_file_name_changed (const QString& fname, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
767 const QString& tip) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
768 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
769 QObject *fileEditorTab = sender (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
770 if (fileEditorTab) |
16546
c1e90c7cfd30
try harder to find editor tab widgets for files with multiple names
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
771 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
772 for (int i = 0; i < m_tab_widget->count (); i++) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
773 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
774 if (m_tab_widget->widget (i) == fileEditorTab) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
775 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
776 m_tab_widget->setTabText (i, fname); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
777 m_tab_widget->setTabToolTip (i, tip); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
778 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
779 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
780 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
781 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
782 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
783 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
784 file_editor::handle_tab_close_request (int index) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
785 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
786 file_editor_tab *editor_tab |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
787 = static_cast<file_editor_tab *> (m_tab_widget->widget (index)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
788 editor_tab->conditional_close (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
789 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
790 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
791 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
792 file_editor::handle_tab_remove_request (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
793 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
794 QObject *fileEditorTab = sender (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
795 if (fileEditorTab) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
796 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
797 for (int i = 0; i < m_tab_widget->count (); i++) |
16546
c1e90c7cfd30
try harder to find editor tab widgets for files with multiple names
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
798 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
799 if (m_tab_widget->widget (i) == fileEditorTab) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
800 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
801 m_tab_widget->removeTab (i); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
802 // Deleting sender is dodgy, but works because the signal |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
803 // is the last item in the sender's routines. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
804 delete fileEditorTab; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
805 break; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
806 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
807 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
808 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
809 check_actions (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
810 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
811 focus (); // focus stays in editor when tab is closed |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
812 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
813 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
814 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
815 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
816 file_editor::handle_add_filename_to_list (const QString& fileName, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
817 const QString& encoding, QWidget *ID) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
818 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
819 // Should we allow multiple tabs for a single file? |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
820 m_editor_tab_map[fileName].fet_ID = ID; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
821 m_editor_tab_map[fileName].encoding = encoding; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
822 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
823 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
824 // context menu of edit area |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
825 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
826 file_editor::active_tab_changed (int index) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
827 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
828 emit fetab_change_request (m_tab_widget->widget (index)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
829 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
830 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
831 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
832 file_editor::handle_editor_state_changed (bool copy_available, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
833 bool is_octave_file) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
834 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
835 // In case there is some scenario where traffic could be coming from |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
836 // all the file editor tabs, just process info from the current active tab. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
837 if (sender () == m_tab_widget->currentWidget ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
838 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
839 if (m_copy_action) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
840 m_copy_action->setEnabled (copy_available); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
841 m_cut_action->setEnabled (copy_available); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
842 m_run_selection_action->setEnabled (copy_available); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
843 m_run_action->setEnabled (is_octave_file); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
844 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
845 setFocusProxy (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
846 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
847 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
848 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
849 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
850 file_editor::handle_mru_add_file (const QString& file_name, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
851 const QString& encoding) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
852 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
853 int index; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
854 while ((index = m_mru_files.indexOf (file_name)) >= 0) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
855 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
856 m_mru_files.removeAt (index); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
857 m_mru_files_encodings.removeAt (index); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
858 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
859 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
860 m_mru_files.prepend (file_name); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
861 m_mru_files_encodings.prepend (encoding); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
862 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
863 mru_menu_update (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
864 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
865 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
866 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
867 file_editor::check_conflict_save (const QString& saveFileName, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
868 bool remove_on_success) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
869 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
870 // Check whether this file is already open in the editor. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
871 QWidget *tab = find_tab_widget (saveFileName); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
872 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
873 if (tab) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
874 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
875 // Note: to overwrite the contents of some other file editor tab |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
876 // with the same name requires identifying which file editor tab |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
877 // that is (not too difficult) then close that tab. Of course, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
878 // that could trigger another dialog box if the file editor tab |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
879 // with the same name has modifications in it. This could become |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
880 // somewhat confusing to the user. For now, opt to do nothing. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
881 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
882 // Create a NonModal message about error. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
883 QMessageBox *msgBox |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
884 = new QMessageBox (QMessageBox::Critical, tr ("Octave Editor"), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
885 tr ("File not saved! A file with the selected name\n%1\n" |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
886 "is already open in the editor"). |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
887 arg (saveFileName), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
888 QMessageBox::Ok, nullptr); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
889 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
890 msgBox->setWindowModality (Qt::NonModal); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
891 msgBox->setAttribute (Qt::WA_DeleteOnClose); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
892 msgBox->show (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
893 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
894 return; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
895 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
896 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
897 QObject *saveFileObject = sender (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
898 QWidget *saveFileWidget = nullptr; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
899 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
900 for (int i = 0; i < m_tab_widget->count (); i++) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
901 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
902 if (m_tab_widget->widget (i) == saveFileObject) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
903 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
904 saveFileWidget = m_tab_widget->widget (i); |
16546
c1e90c7cfd30
try harder to find editor tab widgets for files with multiple names
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
905 break; |
c1e90c7cfd30
try harder to find editor tab widgets for files with multiple names
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
906 } |
c1e90c7cfd30
try harder to find editor tab widgets for files with multiple names
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
907 } |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
908 if (! saveFileWidget) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
909 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
910 // Create a NonModal message about error. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
911 QMessageBox *msgBox |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
912 = new QMessageBox (QMessageBox::Critical, tr ("Octave Editor"), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
913 tr ("The associated file editor tab has disappeared."), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
914 QMessageBox::Ok, nullptr); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
915 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
916 msgBox->setWindowModality (Qt::NonModal); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
917 msgBox->setAttribute (Qt::WA_DeleteOnClose); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
918 msgBox->show (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
919 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
920 return; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
921 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
922 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
923 // Can save without conflict, have the file editor tab do so. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
924 emit fetab_save_file (saveFileWidget, saveFileName, remove_on_success); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
925 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
926 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
927 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
928 file_editor::handle_insert_debugger_pointer_request (const QString& file, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
929 int line) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
930 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
931 request_open_file (file, QString (), line, true); // default encoding |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
932 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
933 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
934 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
935 file_editor::handle_delete_debugger_pointer_request (const QString& file, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
936 int line) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
937 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
938 if (! file.isEmpty ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
939 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
940 // Check whether this file is already open in the editor. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
941 QWidget *tab = find_tab_widget (file); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
942 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
943 if (tab) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
944 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
945 m_tab_widget->setCurrentWidget (tab); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
946 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
947 if (line > 0) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
948 emit fetab_delete_debugger_pointer (tab, line); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
949 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
950 emit fetab_set_focus (tab); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
951 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
952 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
953 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
954 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
955 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
956 file_editor::handle_update_breakpoint_marker_request (bool insert, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
957 const QString& file, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
958 int line, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
959 const QString& cond) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
960 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
961 request_open_file (file, QString (), line, false, true, insert, cond); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
962 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
963 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
964 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
965 file_editor::handle_edit_file_request (const QString& file) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
966 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
967 request_open_file (file); |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
968 } |
16546
c1e90c7cfd30
try harder to find editor tab widgets for files with multiple names
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
969 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
970 // Slot used for signals indicating that a file was changed/rename or |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
971 // is going to be deleted/renamed |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
972 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
973 file_editor::handle_file_remove (const QString& old_name, |
24082
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
974 const QString& new_name) |
17903
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
975 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
976 // Clear old lsit of files to reload |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
977 m_tmp_closed_files.clear (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
978 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
979 // Check if old name is a file or directory |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
980 QFileInfo old (old_name); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
981 if (old.isDir ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
982 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
983 // Call the function which handles directories and return |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
984 handle_dir_remove (old_name, new_name); |
24082
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
985 return; |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
986 } |
24082
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
987 |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
988 // Is old file open? |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
989 file_editor_tab *editor_tab |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
990 = static_cast<file_editor_tab *> (find_tab_widget (old_name)); |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
991 |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
992 if (editor_tab) |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
993 { |
24082
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
994 // Yes, close it silently |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
995 m_no_focus = true; // Remember for not focussing editor |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
996 editor_tab->file_has_changed (QString (), true); // Close the tab |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
997 m_no_focus = false; // Back to normal |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
998 |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
999 m_tmp_closed_files << old_name; // for reloading if error removing |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1000 |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1001 if (! new_name.isEmpty ()) |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1002 m_tmp_closed_files << new_name; // store new name |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1003 else |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1004 m_tmp_closed_files << ""; // no new name, just removing this file |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1005 |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1006 // Get and store the related encoding |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1007 for (editor_tab_map_const_iterator p = m_editor_tab_map.begin (); |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1008 p != m_editor_tab_map.end (); p++) |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1009 { |
24082
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1010 if (editor_tab == p->second.fet_ID) |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1011 { |
24082
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1012 m_tmp_closed_files << p->second.encoding; |
0052d47ddc3e
Backed out changeset ba164db1c4a4
Torsten <mttl@mailbox.org>
parents:
24048
diff
changeset
|
1013 break; |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1014 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1015 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1016 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1017 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1018 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1019 // Slot for signal indicating that a file was renamed |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1020 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1021 file_editor::handle_file_renamed (bool load_new) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1022 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1023 m_no_focus = true; // Remember for not focussing editor |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1024 for (int i = 0; i < m_tmp_closed_files.count (); i = i + 3) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1025 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1026 if (! m_tmp_closed_files.at (i + load_new).isEmpty ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1027 request_open_file (m_tmp_closed_files.at (i + load_new), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1028 m_tmp_closed_files.at (i+2)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1029 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1030 m_no_focus = false; // Back to normal focus |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1031 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1032 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1033 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1034 file_editor::notice_settings (const QSettings *settings) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1035 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1036 int icon_size_settings = settings->value ("toolbar_icon_size",0).toInt (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1037 QStyle *st = style (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1038 int icon_size = st->pixelMetric (QStyle::PM_ToolBarIconSize); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1039 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1040 if (icon_size_settings == 1) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1041 icon_size = st->pixelMetric (QStyle::PM_LargeIconSize); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1042 else if (icon_size_settings == -1) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1043 icon_size = st->pixelMetric (QStyle::PM_SmallIconSize); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1044 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1045 m_tool_bar->setIconSize (QSize (icon_size,icon_size)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1046 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1047 int tab_width_min = settings->value ("editor/notebook_tab_width_min", 160) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1048 .toInt (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1049 int tab_width_max = settings->value ("editor/notebook_tab_width_max", 300) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1050 .toInt (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1051 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1052 if (settings->value ("editor/longWindowTitle", false).toBool ()) |
17903
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
1053 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1054 QString style_sheet = QString ("QTabBar::tab " |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1055 "{min-width: %1px; max-width: %2px;}") |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1056 .arg (tab_width_min).arg (tab_width_max); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1057 m_tab_widget->setElideMode (Qt::ElideLeft); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1058 m_tab_widget->setStyleSheet (style_sheet); |
17903
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
1059 } |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1060 else |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1061 m_tab_widget->setElideMode (Qt::ElideNone); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1062 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1063 m_tab_widget->setUsesScrollButtons (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1064 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1065 bool show_it; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1066 show_it = settings->value ("editor/showLineNumbers",true).toBool (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1067 m_show_linenum_action->setChecked (show_it); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1068 show_it = settings->value ("editor/show_white_space",false).toBool (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1069 m_show_whitespace_action->setChecked (show_it); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1070 show_it = settings->value ("editor/show_eol_chars",false).toBool (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1071 m_show_eol_action->setChecked (show_it); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1072 show_it = settings->value ("editor/show_indent_guides",false).toBool (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1073 m_show_indguide_action->setChecked (show_it); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1074 show_it = settings->value ("editor/long_line_marker",true).toBool (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1075 m_show_longline_action->setChecked (show_it); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1076 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1077 show_it = settings->value ("editor/show_toolbar",true).toBool (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1078 m_show_toolbar_action->setChecked (show_it); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1079 m_tool_bar->setVisible (show_it); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1080 show_it = settings->value ("editor/show_edit_status_bar",true).toBool (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1081 m_show_statusbar_action->setChecked (show_it); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1082 show_it = settings->value ("editor/show_hscroll_bar",true).toBool (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1083 m_show_hscrollbar_action->setChecked (show_it); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1084 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1085 set_shortcuts (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1086 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1087 // Relay signal to file editor tabs. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1088 emit fetab_settings_changed (settings); |
17903
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
1089 } |
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
1090 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1091 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1092 file_editor::set_shortcuts (void) |
18545
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1093 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1094 // Shortcuts also available in the main window, as well as the realted |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1095 // ahotcuts, are defined in main_window and added to the editor |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1096 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1097 // File menu |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1098 shortcut_manager::set_shortcut (m_edit_function_action, "editor_file:edit_function"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1099 shortcut_manager::set_shortcut (m_save_action, "editor_file:save"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1100 shortcut_manager::set_shortcut (m_save_as_action, "editor_file:save_as"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1101 shortcut_manager::set_shortcut (m_close_action, "editor_file:close"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1102 shortcut_manager::set_shortcut (m_close_all_action, "editor_file:close_all"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1103 shortcut_manager::set_shortcut (m_close_others_action, "editor_file:close_other"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1104 shortcut_manager::set_shortcut (m_print_action, "editor_file:print"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1105 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1106 // Edit menu |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1107 shortcut_manager::set_shortcut (m_redo_action, "editor_edit:redo"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1108 shortcut_manager::set_shortcut (m_cut_action, "editor_edit:cut"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1109 shortcut_manager::set_shortcut (m_find_action, "editor_edit:find_replace"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1110 shortcut_manager::set_shortcut (m_find_next_action, "editor_edit:find_next"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1111 shortcut_manager::set_shortcut (m_find_previous_action, "editor_edit:find_previous"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1112 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1113 shortcut_manager::set_shortcut (m_delete_start_word_action, "editor_edit:delete_start_word"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1114 shortcut_manager::set_shortcut (m_delete_end_word_action, "editor_edit:delete_end_word"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1115 shortcut_manager::set_shortcut (m_delete_start_line_action, "editor_edit:delete_start_line"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1116 shortcut_manager::set_shortcut (m_delete_end_line_action, "editor_edit:delete_end_line"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1117 shortcut_manager::set_shortcut (m_delete_line_action, "editor_edit:delete_line"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1118 shortcut_manager::set_shortcut (m_copy_line_action, "editor_edit:copy_line"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1119 shortcut_manager::set_shortcut (m_cut_line_action, "editor_edit:cut_line"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1120 shortcut_manager::set_shortcut (m_duplicate_selection_action, "editor_edit:duplicate_selection"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1121 shortcut_manager::set_shortcut (m_transpose_line_action, "editor_edit:transpose_line"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1122 shortcut_manager::set_shortcut (m_comment_selection_action, "editor_edit:comment_selection"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1123 shortcut_manager::set_shortcut (m_uncomment_selection_action, "editor_edit:uncomment_selection"); |
24484
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
1124 shortcut_manager::set_shortcut (m_comment_var_selection_action, "editor_edit:comment_var_selection"); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1125 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1126 shortcut_manager::set_shortcut (m_upper_case_action, "editor_edit:upper_case"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1127 shortcut_manager::set_shortcut (m_lower_case_action, "editor_edit:lower_case"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1128 shortcut_manager::set_shortcut (m_indent_selection_action, "editor_edit:indent_selection"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1129 shortcut_manager::set_shortcut (m_unindent_selection_action, "editor_edit:unindent_selection"); |
24232
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
1130 shortcut_manager::set_shortcut (m_smart_indent_line_or_selection_action, "editor_edit:smart_indent_line_or_selection"); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1131 shortcut_manager::set_shortcut (m_completion_action, "editor_edit:completion_list"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1132 shortcut_manager::set_shortcut (m_goto_line_action, "editor_edit:goto_line"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1133 shortcut_manager::set_shortcut (m_move_to_matching_brace, "editor_edit:move_to_brace"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1134 shortcut_manager::set_shortcut (m_sel_to_matching_brace, "editor_edit:select_to_brace"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1135 shortcut_manager::set_shortcut (m_toggle_bookmark_action, "editor_edit:toggle_bookmark"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1136 shortcut_manager::set_shortcut (m_next_bookmark_action, "editor_edit:next_bookmark"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1137 shortcut_manager::set_shortcut (m_previous_bookmark_action, "editor_edit:previous_bookmark"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1138 shortcut_manager::set_shortcut (m_remove_bookmark_action, "editor_edit:remove_bookmark"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1139 shortcut_manager::set_shortcut (m_preferences_action, "editor_edit:preferences"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1140 shortcut_manager::set_shortcut (m_styles_preferences_action, "editor_edit:styles_preferences"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1141 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1142 shortcut_manager::set_shortcut (m_conv_eol_windows_action, "editor_edit:conv_eol_winows"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1143 shortcut_manager::set_shortcut (m_conv_eol_unix_action, "editor_edit:conv_eol_unix"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1144 shortcut_manager::set_shortcut (m_conv_eol_mac_action, "editor_edit:conv_eol_mac"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1145 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1146 // View menu |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1147 shortcut_manager::set_shortcut (m_show_linenum_action, "editor_view:show_line_numbers"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1148 shortcut_manager::set_shortcut (m_show_whitespace_action, "editor_view:show_white_spaces"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1149 shortcut_manager::set_shortcut (m_show_eol_action, "editor_view:show_eol_chars"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1150 shortcut_manager::set_shortcut (m_show_indguide_action, "editor_view:show_ind_guides"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1151 shortcut_manager::set_shortcut (m_show_longline_action, "editor_view:show_long_line"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1152 shortcut_manager::set_shortcut (m_show_toolbar_action, "editor_view:show_toolbar"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1153 shortcut_manager::set_shortcut (m_show_statusbar_action, "editor_view:show_statusbar"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1154 shortcut_manager::set_shortcut (m_show_hscrollbar_action, "editor_view:show_hscrollbar"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1155 shortcut_manager::set_shortcut (m_zoom_in_action, "editor_view:zoom_in"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1156 shortcut_manager::set_shortcut (m_zoom_out_action, "editor_view:zoom_out"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1157 shortcut_manager::set_shortcut (m_zoom_normal_action, "editor_view:zoom_normal"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1158 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1159 // Debug menu |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1160 shortcut_manager::set_shortcut (m_toggle_breakpoint_action, "editor_debug:toggle_breakpoint"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1161 shortcut_manager::set_shortcut (m_next_breakpoint_action, "editor_debug:next_breakpoint"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1162 shortcut_manager::set_shortcut (m_previous_breakpoint_action, "editor_debug:previous_breakpoint"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1163 shortcut_manager::set_shortcut (m_remove_all_breakpoints_action, "editor_debug:remove_breakpoints"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1164 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1165 // Run menu |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1166 shortcut_manager::set_shortcut (m_run_action, "editor_run:run_file"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1167 shortcut_manager::set_shortcut (m_run_selection_action, "editor_run:run_selection"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1168 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1169 // Help menu |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1170 shortcut_manager::set_shortcut (m_context_help_action, "editor_help:help_keyword"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1171 shortcut_manager::set_shortcut (m_context_doc_action, "editor_help:doc_keyword"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1172 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1173 // Tab navigation without menu entries |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1174 shortcut_manager::set_shortcut (m_switch_left_tab_action, "editor_tabs:switch_left_tab"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1175 shortcut_manager::set_shortcut (m_switch_right_tab_action, "editor_tabs:switch_right_tab"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1176 shortcut_manager::set_shortcut (m_move_tab_left_action, "editor_tabs:move_tab_left"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1177 shortcut_manager::set_shortcut (m_move_tab_right_action, "editor_tabs:move_tab_right"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1178 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1179 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1180 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1181 // This slot is a reimplementation of the virtual slot in octave_dock_widget. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1182 // We need this for creating an empty script when the editor has no open files |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1183 // and is made visible |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1184 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1185 file_editor::handle_visibility (bool visible) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1186 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1187 if (m_closed && visible) |
18545
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1188 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1189 m_closed = false; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1190 QSettings *settings = resource_manager::get_settings (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1191 restore_session (settings); |
18545
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1192 } |
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1193 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1194 empty_script (false, visible); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1195 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1196 if (visible && ! isFloating ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1197 focus (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1198 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1199 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1200 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1201 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1202 file_editor::update_octave_directory (const QString& dir) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1203 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1204 m_ced = dir; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1205 emit fetab_set_directory (m_ced); // for save dialog |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1206 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1207 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1208 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1209 file_editor::copyClipboard (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1210 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1211 if (editor_tab_has_focus ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1212 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1213 QsciScintillaBase::SCI_COPY); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1214 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1215 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1216 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1217 file_editor::pasteClipboard (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1218 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1219 if (editor_tab_has_focus ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1220 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1221 QsciScintillaBase::SCI_PASTE); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1222 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1223 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1224 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1225 file_editor::selectAll (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1226 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1227 if (editor_tab_has_focus ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1228 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1229 QsciScintillaBase::SCI_SELECTALL); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1230 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1231 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1232 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1233 file_editor::do_undo (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1234 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1235 if (editor_tab_has_focus ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1236 emit fetab_scintilla_command (m_tab_widget->currentWidget (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1237 QsciScintillaBase::SCI_UNDO); |
18545
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1238 } |
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1239 |
21158
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
1240 // Open a file, if not already open, and mark the current execution location |
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
1241 // and/or a breakpoint with condition cond. |
18521
713193ffc8c4
allow to select mutliple files in the editors open file dialog (bug #41664)
Torsten <ttl@justmail.de>
parents:
18486
diff
changeset
|
1242 void |
20796
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
1243 file_editor::request_open_file (const QString& openFileName, |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
1244 const QString& encoding, |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
1245 int line, bool debug_pointer, |
21158
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
1246 bool breakpoint_marker, bool insert, |
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
1247 const QString& cond) |
14676
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
1248 { |
17903
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
1249 if (call_custom_editor (openFileName, line)) |
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
1250 return; // custom editor called |
16407
4d438dffbfac
gui: call external editor when opening a file and custom editor is selected
Torsten <ttl@justmail.de>
parents:
16399
diff
changeset
|
1251 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
1252 if (openFileName.isEmpty ()) |
14690
ca733a66be7a
Fixed bug with not opening the editor when clicking a file from the file browser. Implemented watching the file on disk.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14681
diff
changeset
|
1253 { |
17941
9799a996b2c1
* file-editor.cc (request_open_file): new edit tab when file name is empty
Torsten <ttl@justmail.de>
parents:
17935
diff
changeset
|
1254 // This happens if edit is calles without an argument |
9799a996b2c1
* file-editor.cc (request_open_file): new edit tab when file name is empty
Torsten <ttl@justmail.de>
parents:
17935
diff
changeset
|
1255 // Open eitor with empty edit area instead (as new file would do) |
9799a996b2c1
* file-editor.cc (request_open_file): new edit tab when file name is empty
Torsten <ttl@justmail.de>
parents:
17935
diff
changeset
|
1256 request_new_file (""); |
14690
ca733a66be7a
Fixed bug with not opening the editor when clicking a file from the file browser. Implemented watching the file on disk.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14681
diff
changeset
|
1257 } |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
1258 else |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
1259 { |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
1260 // Check whether this file is already open in the editor. |
16546
c1e90c7cfd30
try harder to find editor tab widgets for files with multiple names
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
1261 QWidget *tab = find_tab_widget (openFileName); |
c1e90c7cfd30
try harder to find editor tab widgets for files with multiple names
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
1262 |
c1e90c7cfd30
try harder to find editor tab widgets for files with multiple names
John W. Eaton <jwe@octave.org>
parents:
16525
diff
changeset
|
1263 if (tab) |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1264 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1265 m_tab_widget->setCurrentWidget (tab); |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1266 |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1267 if (line > 0) |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1268 { |
24123
16c8ec7f0867
do not move the cursor when saving a file with breakpoints (bug #51793)
Torsten <mttl@mailbox.org>
parents:
24082
diff
changeset
|
1269 if (insert) |
16c8ec7f0867
do not move the cursor when saving a file with breakpoints (bug #51793)
Torsten <mttl@mailbox.org>
parents:
24082
diff
changeset
|
1270 emit fetab_goto_line (tab, line); |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1271 |
16386
4902484f9181
callbacks to set markers in editor using command line dbstop function
John W. Eaton <jwe@octave.org>
parents:
16383
diff
changeset
|
1272 if (debug_pointer) |
16547
3cd80afc3509
improve debugging with the GUI
John W. Eaton <jwe@octave.org>
parents:
16546
diff
changeset
|
1273 emit fetab_insert_debugger_pointer (tab, line); |
16386
4902484f9181
callbacks to set markers in editor using command line dbstop function
John W. Eaton <jwe@octave.org>
parents:
16383
diff
changeset
|
1274 |
16443
7a2ee6ea7800
rename dbstop -> breakpoint in GUI interface functions
John W. Eaton <jwe@octave.org>
parents:
16440
diff
changeset
|
1275 if (breakpoint_marker) |
21158
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
1276 emit fetab_do_breakpoint_marker (insert, tab, line, cond); |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1277 } |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1278 |
18545
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1279 if (! ((breakpoint_marker || debug_pointer) && is_editor_console_tabbed ())) |
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1280 { |
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1281 emit fetab_set_focus (tab); |
19427
3c038da18218
cleanup of focus function in gui editor
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
1282 focus (); |
18545
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1283 } |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1284 } |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1285 else |
15356
842ab161c10a
GUI: new setting to restore tabs from previous session; allow silent load file
Thorsten Liebig <Thorsten.Liebig@gmx.de>
parents:
15321
diff
changeset
|
1286 { |
23457
21baad6b35c4
maint: Use C++11 nullptr rather than 0 or NULL when possible.
Rik <rik@octave.org>
parents:
23449
diff
changeset
|
1287 file_editor_tab *fileEditorTab = nullptr; |
21565
08baf0ebc9a9
Reappropriate <unnamed> editor tab when opening a new file (bug #47529)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21562
diff
changeset
|
1288 // Reuse <unnamed> tab if it hasn't yet been modified. |
21650
7c0595c722ca
Remove duplicate menu actions after replacing <unnamed> edit tab (bug #47692).
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21578
diff
changeset
|
1289 bool reusing = false; |
21565
08baf0ebc9a9
Reappropriate <unnamed> editor tab when opening a new file (bug #47529)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21562
diff
changeset
|
1290 tab = find_tab_widget (""); |
08baf0ebc9a9
Reappropriate <unnamed> editor tab when opening a new file (bug #47529)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21562
diff
changeset
|
1291 if (tab) |
08baf0ebc9a9
Reappropriate <unnamed> editor tab when opening a new file (bug #47529)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21562
diff
changeset
|
1292 { |
08baf0ebc9a9
Reappropriate <unnamed> editor tab when opening a new file (bug #47529)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21562
diff
changeset
|
1293 fileEditorTab = static_cast<file_editor_tab *>(tab); |
08baf0ebc9a9
Reappropriate <unnamed> editor tab when opening a new file (bug #47529)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21562
diff
changeset
|
1294 if (fileEditorTab->qsci_edit_area ()->isModified ()) |
23795
980f39c3ab90
Use C++11 nullptr rather than 0 in code (bug #51565).
Rik <rik@octave.org>
parents:
23531
diff
changeset
|
1295 fileEditorTab = nullptr; |
21650
7c0595c722ca
Remove duplicate menu actions after replacing <unnamed> edit tab (bug #47692).
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21578
diff
changeset
|
1296 else |
7c0595c722ca
Remove duplicate menu actions after replacing <unnamed> edit tab (bug #47692).
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21578
diff
changeset
|
1297 reusing = true; |
21565
08baf0ebc9a9
Reappropriate <unnamed> editor tab when opening a new file (bug #47529)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21562
diff
changeset
|
1298 } |
08baf0ebc9a9
Reappropriate <unnamed> editor tab when opening a new file (bug #47529)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21562
diff
changeset
|
1299 |
08baf0ebc9a9
Reappropriate <unnamed> editor tab when opening a new file (bug #47529)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21562
diff
changeset
|
1300 // If <unnamed> was absent or modified, create a new tab. |
22737
7abc25e6206a
maint: Clean up code base to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
22411
diff
changeset
|
1301 if (! fileEditorTab) |
21565
08baf0ebc9a9
Reappropriate <unnamed> editor tab when opening a new file (bug #47529)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21562
diff
changeset
|
1302 fileEditorTab = new file_editor_tab (); |
08baf0ebc9a9
Reappropriate <unnamed> editor tab when opening a new file (bug #47529)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21562
diff
changeset
|
1303 |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1304 if (fileEditorTab) |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1305 { |
20796
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
1306 fileEditorTab->set_encoding (encoding); |
16558 | 1307 QString result = fileEditorTab->load_file (openFileName); |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1308 if (result == "") |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
1309 { |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1310 // Supply empty title then have the file_editor_tab update |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1311 // with full or short name. |
22737
7abc25e6206a
maint: Clean up code base to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
22411
diff
changeset
|
1312 if (! reusing) |
21650
7c0595c722ca
Remove duplicate menu actions after replacing <unnamed> edit tab (bug #47692).
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21578
diff
changeset
|
1313 add_file_editor_tab (fileEditorTab, ""); |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1314 fileEditorTab->update_window_title (false); |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1315 // file already loaded, add file to mru list here |
17706
97ed9dd479ab
make sure all entries in the editor's mru-menu have an absolute path
Torsten <ttl@justmail.de>
parents:
17676
diff
changeset
|
1316 QFileInfo file_info = QFileInfo (openFileName); |
20814
2da4058d65c7
store the encoding of recent editor files in the mru list
Torsten <ttl@justmail.de>
parents:
20796
diff
changeset
|
1317 handle_mru_add_file (file_info.canonicalFilePath (), |
2da4058d65c7
store the encoding of recent editor files in the mru list
Torsten <ttl@justmail.de>
parents:
20796
diff
changeset
|
1318 encoding); |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1319 |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1320 if (line > 0) |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1321 { |
24123
16c8ec7f0867
do not move the cursor when saving a file with breakpoints (bug #51793)
Torsten <mttl@mailbox.org>
parents:
24082
diff
changeset
|
1322 if (insert) |
16c8ec7f0867
do not move the cursor when saving a file with breakpoints (bug #51793)
Torsten <mttl@mailbox.org>
parents:
24082
diff
changeset
|
1323 emit fetab_goto_line (fileEditorTab, line); |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1324 |
16386
4902484f9181
callbacks to set markers in editor using command line dbstop function
John W. Eaton <jwe@octave.org>
parents:
16383
diff
changeset
|
1325 if (debug_pointer) |
16547
3cd80afc3509
improve debugging with the GUI
John W. Eaton <jwe@octave.org>
parents:
16546
diff
changeset
|
1326 emit fetab_insert_debugger_pointer (fileEditorTab, |
3cd80afc3509
improve debugging with the GUI
John W. Eaton <jwe@octave.org>
parents:
16546
diff
changeset
|
1327 line); |
16443
7a2ee6ea7800
rename dbstop -> breakpoint in GUI interface functions
John W. Eaton <jwe@octave.org>
parents:
16440
diff
changeset
|
1328 if (breakpoint_marker) |
16547
3cd80afc3509
improve debugging with the GUI
John W. Eaton <jwe@octave.org>
parents:
16546
diff
changeset
|
1329 emit fetab_do_breakpoint_marker (insert, fileEditorTab, |
21158
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
1330 line, cond); |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1331 } |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1332 } |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1333 else |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1334 { |
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1335 delete fileEditorTab; |
17736
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1336 |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1337 if (QFile::exists (openFileName)) |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1338 { |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1339 // File not readable: |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1340 // create a NonModal message about error. |
17736
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1341 QMessageBox *msgBox |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1342 = new QMessageBox (QMessageBox::Critical, |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1343 tr ("Octave Editor"), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1344 tr ("Could not open file\n%1\nfor read: %2."). |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1345 arg (openFileName).arg (result), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1346 QMessageBox::Ok, this); |
17736
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1347 |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1348 msgBox->setWindowModality (Qt::NonModal); |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1349 msgBox->setAttribute (Qt::WA_DeleteOnClose); |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1350 msgBox->show (); |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1351 } |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1352 else |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1353 { |
19714
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19697
diff
changeset
|
1354 // File does not exist, should it be created? |
19314
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1355 bool create_file = true; |
17740
e6ed77b75aec
new preference in settings: editor creates nonexisting files wihtout prompt
Torsten <ttl@justmail.de>
parents:
17736
diff
changeset
|
1356 QMessageBox *msgBox; |
17903
de8591a19bc6
check for custom editor when opening a new file from the gui (bug #40496)
Torsten <ttl@justmail.de>
parents:
17901
diff
changeset
|
1357 QSettings *settings = resource_manager::get_settings (); |
19314
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1358 |
20955
77f5591878bf
maint: Use '! expr' rather than '!expr' to conform to coding guidelines.
Rik <rik@octave.org>
parents:
20814
diff
changeset
|
1359 if (! settings->value ("editor/create_new_file", false).toBool ()) |
17740
e6ed77b75aec
new preference in settings: editor creates nonexisting files wihtout prompt
Torsten <ttl@justmail.de>
parents:
17736
diff
changeset
|
1360 { |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1361 msgBox = new QMessageBox (QMessageBox::Question, |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1362 tr ("Octave Editor"), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1363 tr ("File\n%1\ndoes not exist. " |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1364 "Do you want to create it?").arg (openFileName), |
23795
980f39c3ab90
Use C++11 nullptr rather than 0 in code (bug #51565).
Rik <rik@octave.org>
parents:
23531
diff
changeset
|
1365 QMessageBox::NoButton,nullptr); |
19314
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1366 QPushButton *create_button = |
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1367 msgBox->addButton (tr ("Create"), QMessageBox::YesRole); |
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1368 msgBox->addButton (tr ("Cancel"), QMessageBox::RejectRole); |
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1369 msgBox->setDefaultButton (create_button); |
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1370 msgBox->exec (); |
16558 | 1371 |
19314
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1372 QAbstractButton *clicked_button = msgBox->clickedButton (); |
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1373 if (clicked_button != create_button) |
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1374 create_file = false; |
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1375 |
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1376 delete msgBox; |
17740
e6ed77b75aec
new preference in settings: editor creates nonexisting files wihtout prompt
Torsten <ttl@justmail.de>
parents:
17736
diff
changeset
|
1377 } |
17736
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1378 |
19314
2b708273548d
button order in dialog for creating a non-existing file (bug #43537)
Torsten <ttl@justmail.de>
parents:
19247
diff
changeset
|
1379 if (create_file) |
17736
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1380 { |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1381 // create the file and call the editor again |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1382 QFile file (openFileName); |
20955
77f5591878bf
maint: Use '! expr' rather than '!expr' to conform to coding guidelines.
Rik <rik@octave.org>
parents:
20814
diff
changeset
|
1383 if (! file.open (QIODevice::WriteOnly)) |
17736
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1384 { |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1385 // error opening the file |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1386 msgBox = new QMessageBox (QMessageBox::Critical, |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1387 tr ("Octave Editor"), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1388 tr ("Could not open file\n%1\nfor write: %2."). |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1389 arg (openFileName).arg (file.errorString ()), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1390 QMessageBox::Ok, this); |
17736
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1391 |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1392 msgBox->setWindowModality (Qt::NonModal); |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1393 msgBox->setAttribute (Qt::WA_DeleteOnClose); |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1394 msgBox->show (); |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1395 } |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1396 else |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1397 { |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1398 file.close (); |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1399 request_open_file (openFileName); |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1400 } |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1401 } |
6a2e483125dd
editor asks if a new file should be created when called from edit (bug #40351)
Torsten <ttl@justmail.de>
parents:
17706
diff
changeset
|
1402 } |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
1403 } |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
1404 } |
16377
8430ea8c1594
open editor tab and insert marker for debugging with gui
John W. Eaton <jwe@octave.org>
parents:
16375
diff
changeset
|
1405 |
18545
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1406 if (! ((breakpoint_marker || debug_pointer) && is_editor_console_tabbed ())) |
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1407 { |
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1408 // really show editor and the current editor tab |
19427
3c038da18218
cleanup of focus function in gui editor
Torsten <ttl@justmail.de>
parents:
19411
diff
changeset
|
1409 focus (); |
18545
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1410 emit file_loaded_signal (); |
17baa684892c
fix flashing while debuggung and editor is tabbed behind console (bug #41757)
Torsten <ttl@justmail.de>
parents:
18472
diff
changeset
|
1411 } |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
1412 } |
13524
8c143d6d0330
gui-editor: improved behaviour when closing a modified file
ttl (Torsten) <ttl@justmail.de>
parents:
13506
diff
changeset
|
1413 } |
14676
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
1414 } |
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
1415 |
14690
ca733a66be7a
Fixed bug with not opening the editor when clicking a file from the file browser. Implemented watching the file on disk.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14681
diff
changeset
|
1416 void |
17676
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1417 file_editor::request_preferences (bool) |
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1418 { |
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1419 emit request_settings_dialog ("editor"); |
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1420 } |
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1421 |
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1422 void |
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1423 file_editor::request_styles_preferences (bool) |
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1424 { |
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1425 emit request_settings_dialog ("editor_styles"); |
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1426 } |
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1427 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1428 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1429 file_editor::show_line_numbers (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1430 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1431 toggle_preference ("editor/showLineNumbers",true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1432 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1433 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1434 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1435 file_editor::show_white_space (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1436 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1437 toggle_preference ("editor/show_white_space",false); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1438 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1439 |
17676
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1440 void |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1441 file_editor::show_eol_chars (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1442 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1443 toggle_preference ("editor/show_eol_chars",false); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1444 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1445 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1446 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1447 file_editor::show_indent_guides (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1448 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1449 toggle_preference ("editor/show_indent_guides",false); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1450 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1451 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1452 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1453 file_editor::show_long_line (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1454 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1455 toggle_preference ("editor/long_line_marker",true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1456 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1457 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1458 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1459 file_editor::show_toolbar (bool) |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1460 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1461 toggle_preference ("editor/show_toolbar",true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1462 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1463 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1464 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1465 file_editor::show_statusbar (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1466 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1467 toggle_preference ("editor/show_edit_status_bar",true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1468 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1469 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1470 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1471 file_editor::show_hscrollbar (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1472 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1473 toggle_preference ("editor/show_hscroll_bar",true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1474 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1475 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1476 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1477 file_editor::zoom_in (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1478 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1479 emit fetab_zoom_in (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1480 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1481 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1482 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1483 file_editor::zoom_out (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1484 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1485 emit fetab_zoom_out (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1486 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1487 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1488 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1489 file_editor::zoom_normal (bool) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1490 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1491 emit fetab_zoom_normal (m_tab_widget->currentWidget ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1492 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1493 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1494 // slots for tab navigation |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1495 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1496 file_editor::switch_left_tab (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1497 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1498 switch_tab (-1); |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1499 } |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1500 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1501 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1502 file_editor::switch_right_tab (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1503 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1504 switch_tab (1); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1505 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1506 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1507 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1508 file_editor::move_tab_left (void) |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1509 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1510 #if defined (HAVE_QTABWIDGET_SETMOVABLE) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1511 switch_tab (-1, true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1512 #endif |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1513 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1514 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1515 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1516 file_editor::move_tab_right (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1517 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1518 #if defined (HAVE_QTABWIDGET_SETMOVABLE) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1519 switch_tab (1, true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1520 #endif |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1521 } |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1522 |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1523 void |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1524 file_editor::create_context_menu (QMenu *menu) |
18944
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18767
diff
changeset
|
1525 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1526 // remove all standard actions from scintilla |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1527 QList<QAction *> all_actions = menu->actions (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1528 QAction *a; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1529 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1530 foreach (a, all_actions) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1531 menu->removeAction (a); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1532 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1533 // add editor's actions with icons and customized shortcuts |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1534 menu->addAction (m_undo_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1535 menu->addAction (m_redo_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1536 menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1537 menu->addAction (m_cut_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1538 menu->addAction (m_copy_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1539 menu->addAction (m_paste_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1540 menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1541 menu->addAction (m_selectall_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1542 menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1543 menu->addAction (m_run_selection_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1544 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1545 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1546 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1547 file_editor::edit_status_update (bool undo, bool redo) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1548 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1549 if (m_undo_action) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1550 m_undo_action->setEnabled (undo); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1551 m_redo_action->setEnabled (redo); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1552 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1553 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1554 // handler for the close event |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1555 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1556 file_editor::closeEvent (QCloseEvent *e) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1557 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1558 QSettings *settings = resource_manager::get_settings (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1559 if (settings->value ("editor/hiding_closes_files",false).toBool ()) |
20986
00835323fb44
prevent shortcut ambiguity between main and editor window
Torsten <ttl@justmail.de>
parents:
20955
diff
changeset
|
1560 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1561 if (check_closing ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1562 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1563 // all tabs are closed without cancelling, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1564 // store closing state for restoring session when shown again |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1565 m_closed = true; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1566 e->accept (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1567 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1568 else |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1569 e->ignore (); |
20986
00835323fb44
prevent shortcut ambiguity between main and editor window
Torsten <ttl@justmail.de>
parents:
20955
diff
changeset
|
1570 } |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1571 else |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1572 e->accept (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1573 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1574 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1575 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1576 file_editor::dragEnterEvent (QDragEnterEvent *e) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1577 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1578 if (e->mimeData ()->hasUrls ()) |
20986
00835323fb44
prevent shortcut ambiguity between main and editor window
Torsten <ttl@justmail.de>
parents:
20955
diff
changeset
|
1579 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1580 e->acceptProposedAction (); |
20986
00835323fb44
prevent shortcut ambiguity between main and editor window
Torsten <ttl@justmail.de>
parents:
20955
diff
changeset
|
1581 } |
18944
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18767
diff
changeset
|
1582 } |
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18767
diff
changeset
|
1583 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1584 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1585 file_editor::dropEvent (QDropEvent *e) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1586 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1587 if (e->mimeData ()->hasUrls ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1588 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1589 foreach (QUrl url, e->mimeData ()->urls ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1590 request_open_file (url.toLocalFile ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1591 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1592 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1593 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1594 bool |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1595 file_editor::is_editor_console_tabbed (void) |
18944
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18767
diff
changeset
|
1596 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1597 main_window *w = static_cast<main_window *>(main_win ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1598 QList<QDockWidget *> w_list = w->tabifiedDockWidgets (this); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1599 QDockWidget *console = |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1600 static_cast<QDockWidget *> (w->get_dock_widget_list ().at (0)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1601 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1602 for (int i = 0; i < w_list.count (); i++) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1603 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1604 if (w_list.at (i) == console) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1605 return true; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1606 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1607 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1608 return false; |
18944
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18767
diff
changeset
|
1609 } |
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18767
diff
changeset
|
1610 |
b2c4d6d461f0
fix conflict between main and editor menus when using alt keys (bug #42659)
Torsten <ttl@justmail.de>
parents:
18767
diff
changeset
|
1611 void |
16558 | 1612 file_editor::construct (void) |
13506
c70511cf64ee
Reformatted to GNU Style.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13504
diff
changeset
|
1613 { |
15368
36ececf69385
avoid some GCC warnings in the libgui code
John W. Eaton <jwe@octave.org>
parents:
15367
diff
changeset
|
1614 QWidget *editor_widget = new QWidget (this); |
15894
9cd14e53e906
eliminate some compiler warnings for GUI code
John W. Eaton <jwe@octave.org>
parents:
15873
diff
changeset
|
1615 |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1616 // FIXME: what was the intended purpose of this unused variable? |
15894
9cd14e53e906
eliminate some compiler warnings for GUI code
John W. Eaton <jwe@octave.org>
parents:
15873
diff
changeset
|
1617 // QStyle *editor_style = QApplication::style (); |
24130
6fdbdb66d7cb
set editor menu bar as non-native menu bar on all platforms
Torsten <mttl@mailbox.org>
parents:
24123
diff
changeset
|
1618 |
6fdbdb66d7cb
set editor menu bar as non-native menu bar on all platforms
Torsten <mttl@mailbox.org>
parents:
24123
diff
changeset
|
1619 // Menu bar: do not set it native, required in MacOS and Ubuntu Unity (Qt5) |
6fdbdb66d7cb
set editor menu bar as non-native menu bar on all platforms
Torsten <mttl@mailbox.org>
parents:
24123
diff
changeset
|
1620 // for a visible menu bar in the editor widget. This property is ignored |
6fdbdb66d7cb
set editor menu bar as non-native menu bar on all platforms
Torsten <mttl@mailbox.org>
parents:
24123
diff
changeset
|
1621 // on other platforms. |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1622 m_menu_bar = new QMenuBar (editor_widget); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1623 m_menu_bar->setNativeMenuBar (false); |
24130
6fdbdb66d7cb
set editor menu bar as non-native menu bar on all platforms
Torsten <mttl@mailbox.org>
parents:
24123
diff
changeset
|
1624 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1625 m_tool_bar = new QToolBar (editor_widget); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1626 m_tool_bar->setMovable (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1627 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1628 m_tab_widget = new file_editor_tab_widget (editor_widget); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1629 m_tab_widget->setTabsClosable (true); |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21650
diff
changeset
|
1630 #if defined (HAVE_QTABWIDGET_SETMOVABLE) |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1631 m_tab_widget->setMovable (true); |
18216
e54cfaae830b
Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents:
17988
diff
changeset
|
1632 #endif |
13562
a89aa9e05e19
editor: menu bar, run editor file in octave
ttl <ttl@justmail.de>
parents:
13558
diff
changeset
|
1633 |
15860
feba9ff6e6a8
editor: add list of recently used files to the file menu
Torsten <ttl@justmail.de>
parents:
15848
diff
changeset
|
1634 // the mru-list and an empty array of actions |
feba9ff6e6a8
editor: add list of recently used files to the file menu
Torsten <ttl@justmail.de>
parents:
15848
diff
changeset
|
1635 QSettings *settings = resource_manager::get_settings (); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1636 m_mru_files = settings->value ("editor/mru_file_list").toStringList (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1637 m_mru_files_encodings = settings->value ("editor/mru_file_encodings") |
20814
2da4058d65c7
store the encoding of recent editor files in the mru list
Torsten <ttl@justmail.de>
parents:
20796
diff
changeset
|
1638 .toStringList (); |
2da4058d65c7
store the encoding of recent editor files in the mru list
Torsten <ttl@justmail.de>
parents:
20796
diff
changeset
|
1639 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1640 if (m_mru_files_encodings.count () != m_mru_files.count ()) |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
1641 { |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
1642 // encodings don't have the same count -> do not use them! |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1643 m_mru_files_encodings = QStringList (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1644 for (int i = 0; i < m_mru_files.count (); i++) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1645 m_mru_files_encodings << QString (); |
20814
2da4058d65c7
store the encoding of recent editor files in the mru list
Torsten <ttl@justmail.de>
parents:
20796
diff
changeset
|
1646 } |
2da4058d65c7
store the encoding of recent editor files in the mru list
Torsten <ttl@justmail.de>
parents:
20796
diff
changeset
|
1647 |
15860
feba9ff6e6a8
editor: add list of recently used files to the file menu
Torsten <ttl@justmail.de>
parents:
15848
diff
changeset
|
1648 for (int i = 0; i < MaxMRUFiles; ++i) |
feba9ff6e6a8
editor: add list of recently used files to the file menu
Torsten <ttl@justmail.de>
parents:
15848
diff
changeset
|
1649 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1650 m_mru_file_actions[i] = new QAction (this); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1651 m_mru_file_actions[i]->setVisible (false); |
15860
feba9ff6e6a8
editor: add list of recently used files to the file menu
Torsten <ttl@justmail.de>
parents:
15848
diff
changeset
|
1652 } |
feba9ff6e6a8
editor: add list of recently used files to the file menu
Torsten <ttl@justmail.de>
parents:
15848
diff
changeset
|
1653 |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1654 // menu bar |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1655 |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1656 // file menu |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1657 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1658 m_fileMenu = add_menu (m_menu_bar, tr ("&File")); |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1659 |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1660 // new and open menus are inserted later by the main window |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1661 m_mru_file_menu = new QMenu (tr ("&Recent Editor Files"), m_fileMenu); |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1662 for (int i = 0; i < MaxMRUFiles; ++i) |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1663 m_mru_file_menu->addAction (m_mru_file_actions[i]); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1664 m_fileMenu->addMenu (m_mru_file_menu); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1665 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1666 m_fileMenu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1667 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1668 m_edit_function_action = add_action (m_fileMenu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1669 tr ("&Edit Function"), SLOT (request_context_edit (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1670 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1671 m_fileMenu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1672 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1673 m_save_action = add_action (m_fileMenu, resource_manager::icon ("document-save"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1674 tr ("&Save File"), SLOT (request_save_file (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1675 m_save_as_action = add_action (m_fileMenu, resource_manager::icon ("document-save-as"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1676 tr ("Save File &As..."), SLOT (request_save_file_as (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1677 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1678 m_fileMenu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1679 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1680 m_close_action = add_action (m_fileMenu, resource_manager::icon ("window-close",false), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1681 tr ("&Close"), SLOT (request_close_file (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1682 m_close_all_action = add_action (m_fileMenu, resource_manager::icon ("window-close",false), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1683 tr ("Close All"), SLOT (request_close_all_files (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1684 m_close_others_action = add_action (m_fileMenu, resource_manager::icon ("window-close",false), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1685 tr ("Close Other Files"), SLOT (request_close_other_files (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1686 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1687 m_fileMenu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1688 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1689 m_print_action = add_action (m_fileMenu, resource_manager::icon ("document-print"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1690 tr ("Print..."), SLOT (request_print_file (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1691 |
20986
00835323fb44
prevent shortcut ambiguity between main and editor window
Torsten <ttl@justmail.de>
parents:
20955
diff
changeset
|
1692 // edit menu (undo, copy, paste and select all later via main window) |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1693 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1694 m_edit_menu = add_menu (m_menu_bar, tr ("&Edit")); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1695 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1696 m_redo_action = add_action (m_edit_menu, resource_manager::icon ("edit-redo"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1697 tr ("&Redo"), SLOT (request_redo (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1698 m_redo_action->setEnabled (false); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1699 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1700 m_edit_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1701 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1702 m_cut_action = add_action (m_edit_menu, resource_manager::icon ("edit-cut"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1703 tr ("Cu&t"), SLOT (request_cut (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1704 m_cut_action->setEnabled (false); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1705 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1706 m_find_action = add_action (m_edit_menu, resource_manager::icon ("edit-find-replace"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1707 tr ("&Find and Replace..."), SLOT (request_find (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1708 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1709 m_find_next_action = add_action (m_edit_menu, QIcon (), |
22169
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
1710 tr ("Find &Next..."), SLOT (request_find_next (bool))); |
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
1711 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1712 m_find_previous_action = add_action (m_edit_menu, QIcon (), |
22169
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
1713 tr ("Find &Previous..."), SLOT (request_find_previous (bool))); |
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
1714 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1715 m_edit_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1716 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1717 m_edit_cmd_menu = m_edit_menu->addMenu (tr ("&Commands")); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1718 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1719 m_delete_line_action = add_action (m_edit_cmd_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1720 tr ("Delete Line"), SLOT (request_delete_line (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1721 m_copy_line_action = add_action (m_edit_cmd_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1722 tr ("Copy Line"), SLOT (request_copy_line (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1723 m_cut_line_action = add_action (m_edit_cmd_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1724 tr ("Cut Line"), SLOT (request_cut_line (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1725 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1726 m_edit_cmd_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1727 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1728 m_delete_start_word_action = add_action (m_edit_cmd_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1729 tr ("Delete to Start of Word"), SLOT (request_delete_start_word (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1730 m_delete_end_word_action = add_action (m_edit_cmd_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1731 tr ("Delete to End of Word"), SLOT (request_delete_end_word (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1732 m_delete_start_line_action = add_action (m_edit_cmd_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1733 tr ("Delete to Start of Line"), SLOT (request_delete_start_line (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1734 m_delete_end_line_action = add_action (m_edit_cmd_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1735 tr ("Delete to End of Line"), SLOT (request_delete_end_line (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1736 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1737 m_edit_cmd_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1738 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1739 m_duplicate_selection_action = add_action (m_edit_cmd_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1740 tr ("Duplicate Selection/Line"), SLOT (request_duplicate_selection (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1741 m_transpose_line_action = add_action (m_edit_cmd_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1742 tr ("Transpose Line"), SLOT (request_transpose_line (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1743 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1744 m_edit_cmd_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1745 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1746 m_completion_action = add_action (m_edit_cmd_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1747 tr ("&Show Completion List"), SLOT (request_completion (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1748 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1749 m_edit_fmt_menu = m_edit_menu->addMenu (tr ("&Format")); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1750 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1751 m_upper_case_action = add_action (m_edit_fmt_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1752 tr ("&Uppercase Selection"), SLOT (request_upper_case (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1753 m_lower_case_action = add_action (m_edit_fmt_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1754 tr ("&Lowercase Selection"), SLOT (request_lower_case (bool))); |
19247
9582fad68730
add actions for converting the eol characters of the editor file
Torsten <ttl@justmail.de>
parents:
19246
diff
changeset
|
1755 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1756 m_edit_fmt_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1757 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1758 m_comment_selection_action = add_action (m_edit_fmt_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1759 tr ("&Comment"), SLOT (request_comment_selected_text (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1760 m_uncomment_selection_action = add_action (m_edit_fmt_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1761 tr ("&Uncomment"), SLOT (request_uncomment_selected_text (bool))); |
24484
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
1762 m_comment_var_selection_action = add_action (m_edit_fmt_menu, QIcon (), |
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
1763 tr ("Comment (Choosing String)"), SLOT (request_comment_var_selected_text (bool))); |
19247
9582fad68730
add actions for converting the eol characters of the editor file
Torsten <ttl@justmail.de>
parents:
19246
diff
changeset
|
1764 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1765 m_edit_fmt_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1766 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1767 m_indent_selection_action = add_action (m_edit_fmt_menu, QIcon (), |
24232
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
1768 tr ("&Indent Selection Rigidly"), SLOT (request_indent_selected_text (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1769 m_unindent_selection_action = add_action (m_edit_fmt_menu, QIcon (), |
24232
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
1770 tr ("&Unindent Selection Rigidly"), SLOT (request_unindent_selected_text (bool))); |
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
1771 |
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
1772 m_smart_indent_line_or_selection_action |
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
1773 = add_action (m_edit_fmt_menu, QIcon (), |
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
1774 tr ("Indent Code"), SLOT (request_smart_indent_line_or_selected_text (void))); |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1775 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1776 m_edit_fmt_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1777 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1778 m_conv_eol_windows_action = add_action (m_edit_fmt_menu, QIcon (), |
19247
9582fad68730
add actions for converting the eol characters of the editor file
Torsten <ttl@justmail.de>
parents:
19246
diff
changeset
|
1779 tr ("Convert Line Endings to &Windows (CRLF)"), |
9582fad68730
add actions for converting the eol characters of the editor file
Torsten <ttl@justmail.de>
parents:
19246
diff
changeset
|
1780 SLOT (request_conv_eol_windows (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1781 m_conv_eol_unix_action = add_action (m_edit_fmt_menu, QIcon (), |
19247
9582fad68730
add actions for converting the eol characters of the editor file
Torsten <ttl@justmail.de>
parents:
19246
diff
changeset
|
1782 tr ("Convert Line Endings to &Unix (LF)"), |
9582fad68730
add actions for converting the eol characters of the editor file
Torsten <ttl@justmail.de>
parents:
19246
diff
changeset
|
1783 SLOT (request_conv_eol_unix (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1784 m_conv_eol_mac_action = add_action (m_edit_fmt_menu, QIcon (), |
19247
9582fad68730
add actions for converting the eol characters of the editor file
Torsten <ttl@justmail.de>
parents:
19246
diff
changeset
|
1785 tr ("Convert Line Endings to &Mac (CR)"), |
9582fad68730
add actions for converting the eol characters of the editor file
Torsten <ttl@justmail.de>
parents:
19246
diff
changeset
|
1786 SLOT (request_conv_eol_mac (bool))); |
9582fad68730
add actions for converting the eol characters of the editor file
Torsten <ttl@justmail.de>
parents:
19246
diff
changeset
|
1787 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1788 m_edit_nav_menu = m_edit_menu->addMenu (tr ("Navi&gation")); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1789 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1790 m_goto_line_action = add_action (m_edit_nav_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1791 tr ("Go &to Line..."), SLOT (request_goto_line (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1792 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1793 m_edit_cmd_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1794 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1795 m_move_to_matching_brace = add_action (m_edit_nav_menu, QIcon (), |
19629
8ef79bc61d8a
add actions for moving/selecting to matching brace
Torsten <ttl@justmail.de>
parents:
19608
diff
changeset
|
1796 tr ("Move to Matching Brace"), SLOT (request_move_match_brace (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1797 m_sel_to_matching_brace = add_action (m_edit_nav_menu, QIcon (), |
19629
8ef79bc61d8a
add actions for moving/selecting to matching brace
Torsten <ttl@justmail.de>
parents:
19608
diff
changeset
|
1798 tr ("Select to Matching Brace"), SLOT (request_sel_match_brace (bool))); |
8ef79bc61d8a
add actions for moving/selecting to matching brace
Torsten <ttl@justmail.de>
parents:
19608
diff
changeset
|
1799 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1800 m_edit_nav_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1801 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1802 m_next_bookmark_action = add_action (m_edit_nav_menu, QIcon (), |
22179
603f0d752de2
Wrap search for "next bookmark" and "prev bookmark" (bug #48044)
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22169
diff
changeset
|
1803 tr ("&Next Bookmark"), SLOT (request_next_bookmark (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1804 m_previous_bookmark_action = add_action (m_edit_nav_menu, QIcon (), |
19899 | 1805 tr ("Pre&vious Bookmark"), SLOT (request_previous_bookmark (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1806 m_toggle_bookmark_action = add_action (m_edit_nav_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1807 tr ("Toggle &Bookmark"), SLOT (request_toggle_bookmark (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1808 m_remove_bookmark_action = add_action (m_edit_nav_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1809 tr ("&Remove All Bookmarks"), SLOT (request_remove_bookmark (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1810 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1811 m_edit_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1812 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1813 m_preferences_action = add_action (m_edit_menu, resource_manager::icon ("preferences-system"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1814 tr ("&Preferences..."), SLOT (request_preferences (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1815 m_styles_preferences_action = add_action (m_edit_menu, resource_manager::icon ("preferences-system"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1816 tr ("&Styles Preferences..."), SLOT (request_styles_preferences (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1817 |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1818 // view menu |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1819 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1820 QMenu *view_menu = add_menu (m_menu_bar, tr ("&View")); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1821 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1822 m_view_editor_menu = view_menu->addMenu (tr ("&Editor")); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1823 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1824 m_show_linenum_action = add_action (m_view_editor_menu, QIcon (), |
19246
62756ba9e4e5
add actions for showing text formatting chars and guides in the editor
Torsten <ttl@justmail.de>
parents:
19085
diff
changeset
|
1825 tr ("Show &Line Numbers"), SLOT (show_line_numbers (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1826 m_show_linenum_action->setCheckable (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1827 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1828 m_show_whitespace_action = add_action (m_view_editor_menu, QIcon (), |
20002
17d79913f065
Fix several typos in GUI strings (bug #44681).
Rik <rik@octave.org>
parents:
20001
diff
changeset
|
1829 tr ("Show &Whitespace Characters"), SLOT (show_white_space (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1830 m_show_whitespace_action->setCheckable (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1831 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1832 m_show_eol_action = add_action (m_view_editor_menu, QIcon (), |
19246
62756ba9e4e5
add actions for showing text formatting chars and guides in the editor
Torsten <ttl@justmail.de>
parents:
19085
diff
changeset
|
1833 tr ("Show Line &Endings"), SLOT (show_eol_chars (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1834 m_show_eol_action->setCheckable (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1835 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1836 m_show_indguide_action = add_action (m_view_editor_menu, QIcon (), |
19246
62756ba9e4e5
add actions for showing text formatting chars and guides in the editor
Torsten <ttl@justmail.de>
parents:
19085
diff
changeset
|
1837 tr ("Show &Indentation Guides"), SLOT (show_indent_guides (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1838 m_show_indguide_action->setCheckable (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1839 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1840 m_show_longline_action = add_action (m_view_editor_menu, QIcon (), |
19246
62756ba9e4e5
add actions for showing text formatting chars and guides in the editor
Torsten <ttl@justmail.de>
parents:
19085
diff
changeset
|
1841 tr ("Show Long Line &Marker"), SLOT (show_long_line (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1842 m_show_longline_action->setCheckable (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1843 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1844 m_view_editor_menu->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1845 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1846 m_show_toolbar_action = add_action (m_view_editor_menu, QIcon (), |
20992
73e92fca3c78
GUI: add editor toolbar display option (Bug #46705)
John Donoghue <john.donoghue@ieee.org>
parents:
20989
diff
changeset
|
1847 tr ("Show &Toolbar"), SLOT (show_toolbar (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1848 m_show_toolbar_action->setCheckable (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1849 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1850 m_show_statusbar_action = add_action (m_view_editor_menu, QIcon (), |
21001
1c91ff4cf9ec
add a menu entry for showing/hiding the editor status bar
Torsten <ttl@justmail.de>
parents:
20995
diff
changeset
|
1851 tr ("Show &Statusbar"), SLOT (show_statusbar (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1852 m_show_statusbar_action->setCheckable (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1853 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1854 m_show_hscrollbar_action = add_action (m_view_editor_menu, QIcon (), |
21002
314245afff3a
add a menu entry for showing/hiding the editor horizontal scrollbar
Torsten <ttl@justmail.de>
parents:
21001
diff
changeset
|
1855 tr ("Show &Horizontal Scrollbar"), SLOT (show_hscrollbar (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1856 m_show_hscrollbar_action->setCheckable (true); |
21002
314245afff3a
add a menu entry for showing/hiding the editor horizontal scrollbar
Torsten <ttl@justmail.de>
parents:
21001
diff
changeset
|
1857 |
19246
62756ba9e4e5
add actions for showing text formatting chars and guides in the editor
Torsten <ttl@justmail.de>
parents:
19085
diff
changeset
|
1858 view_menu->addSeparator (); |
62756ba9e4e5
add actions for showing text formatting chars and guides in the editor
Torsten <ttl@justmail.de>
parents:
19085
diff
changeset
|
1859 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1860 m_zoom_in_action = add_action (view_menu, resource_manager::icon ("zoom-in"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1861 tr ("Zoom &In"), SLOT (zoom_in (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1862 m_zoom_out_action = add_action (view_menu, resource_manager::icon ("zoom-out"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1863 tr ("Zoom &Out"), SLOT (zoom_out (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1864 m_zoom_normal_action = add_action (view_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1865 tr ("&Normal Size"), SLOT (zoom_normal (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1866 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1867 m_menu_bar->addMenu (view_menu); |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1868 |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1869 // debug menu |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1870 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1871 m_debug_menu = add_menu (m_menu_bar, tr ("&Debug")); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1872 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1873 m_toggle_breakpoint_action = add_action (m_debug_menu, |
19899 | 1874 resource_manager::icon ("bp-toggle"), tr ("Toggle &Breakpoint"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1875 SLOT (request_toggle_breakpoint (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1876 m_next_breakpoint_action = add_action (m_debug_menu, |
19899 | 1877 resource_manager::icon ("bp-next"), tr ("&Next Breakpoint"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1878 SLOT (request_next_breakpoint (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1879 m_previous_breakpoint_action = add_action (m_debug_menu, |
19899 | 1880 resource_manager::icon ("bp-prev"), tr ("Pre&vious Breakpoint"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1881 SLOT (request_previous_breakpoint (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1882 m_remove_all_breakpoints_action = add_action (m_debug_menu, |
19899 | 1883 resource_manager::icon ("bp-rm-all"), tr ("&Remove All Breakpoints"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1884 SLOT (request_remove_breakpoint (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1885 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1886 m_debug_menu->addSeparator (); |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1887 |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1888 // The other debug actions will be added by the main window. |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1889 |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1890 // run menu |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1891 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1892 QMenu *_run_menu = add_menu (m_menu_bar, tr ("&Run")); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1893 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1894 m_run_action = add_action (_run_menu, resource_manager::icon ("system-run"), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1895 tr ("Save File and Run"), SLOT (request_run_file (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1896 m_run_selection_action = add_action (_run_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1897 tr ("Run &Selection"), SLOT (request_context_run (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1898 m_run_selection_action->setEnabled (false); |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1899 |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1900 // help menu |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1901 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1902 QMenu *_help_menu = add_menu (m_menu_bar, tr ("&Help")); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1903 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1904 m_context_help_action = add_action (_help_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1905 tr ("&Help on Keyword"), SLOT (request_context_help (bool))); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1906 m_context_doc_action = add_action (_help_menu, QIcon (), |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1907 tr ("&Documentation on Keyword"), SLOT (request_context_doc (bool))); |
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1908 |
20693
7751bd56d0be
added actions and shortcuts for switching editor tabs
Torsten <ttl@justmail.de>
parents:
20630
diff
changeset
|
1909 // tab navigation (no menu, only actions) |
7751bd56d0be
added actions and shortcuts for switching editor tabs
Torsten <ttl@justmail.de>
parents:
20630
diff
changeset
|
1910 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1911 m_switch_left_tab_action = add_action (nullptr, QIcon (), "", |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1912 SLOT (switch_left_tab (void))); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1913 m_switch_right_tab_action = add_action (nullptr, QIcon (), "", |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1914 SLOT (switch_right_tab (void))); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1915 m_move_tab_left_action = add_action (nullptr, QIcon (), "", |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1916 SLOT (move_tab_left (void))); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1917 m_move_tab_right_action = add_action (nullptr, QIcon (), "", |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1918 SLOT (move_tab_right (void))); |
20693
7751bd56d0be
added actions and shortcuts for switching editor tabs
Torsten <ttl@justmail.de>
parents:
20630
diff
changeset
|
1919 |
13562
a89aa9e05e19
editor: menu bar, run editor file in octave
ttl <ttl@justmail.de>
parents:
13558
diff
changeset
|
1920 // toolbar |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1921 |
20754
e6ccc8ae9e41
add list of mru files to the toolbar of the editor
Torsten <ttl@justmail.de>
parents:
20720
diff
changeset
|
1922 // popdown menu with mru files |
e6ccc8ae9e41
add list of mru files to the toolbar of the editor
Torsten <ttl@justmail.de>
parents:
20720
diff
changeset
|
1923 QToolButton *popdown_button = new QToolButton (); |
e6ccc8ae9e41
add list of mru files to the toolbar of the editor
Torsten <ttl@justmail.de>
parents:
20720
diff
changeset
|
1924 popdown_button->setToolTip (tr ("Recent Files")); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1925 popdown_button->setMenu (m_mru_file_menu); |
20754
e6ccc8ae9e41
add list of mru files to the toolbar of the editor
Torsten <ttl@justmail.de>
parents:
20720
diff
changeset
|
1926 popdown_button->setPopupMode (QToolButton::InstantPopup); |
e6ccc8ae9e41
add list of mru files to the toolbar of the editor
Torsten <ttl@justmail.de>
parents:
20720
diff
changeset
|
1927 popdown_button->setToolButtonStyle (Qt::ToolButtonTextOnly); |
e6ccc8ae9e41
add list of mru files to the toolbar of the editor
Torsten <ttl@justmail.de>
parents:
20720
diff
changeset
|
1928 |
18665
777281eeb3d4
add all editor actions to the shortcut manager and fix their shortcut context
Torsten <ttl@justmail.de>
parents:
18656
diff
changeset
|
1929 // new and open actions are inserted later from main window |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1930 m_popdown_mru_action = m_tool_bar->addWidget (popdown_button); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1931 m_tool_bar->addAction (m_save_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1932 m_tool_bar->addAction (m_save_as_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1933 m_tool_bar->addAction (m_print_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1934 m_tool_bar->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1935 // m_undo_action: later via main window |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1936 m_tool_bar->addAction (m_redo_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1937 // m_copy_action: later via the main window |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1938 m_tool_bar->addAction (m_cut_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1939 // m_paste_action: later via the main window |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1940 m_tool_bar->addAction (m_find_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1941 //m_tool_bar->addAction (m_find_next_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1942 //m_tool_bar->addAction (m_find_previous_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1943 m_tool_bar->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1944 m_tool_bar->addAction (m_run_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1945 m_tool_bar->addSeparator (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1946 m_tool_bar->addAction (m_toggle_breakpoint_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1947 m_tool_bar->addAction (m_previous_breakpoint_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1948 m_tool_bar->addAction (m_next_breakpoint_action); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1949 m_tool_bar->addAction (m_remove_all_breakpoints_action); |
16981
e86df0d43309
make ctrl-w available for readline in the gui terminal
Torsten <ttl@justmail.de>
parents:
16970
diff
changeset
|
1950 |
e86df0d43309
make ctrl-w available for readline in the gui terminal
Torsten <ttl@justmail.de>
parents:
16970
diff
changeset
|
1951 // layout |
15368
36ececf69385
avoid some GCC warnings in the libgui code
John W. Eaton <jwe@octave.org>
parents:
15367
diff
changeset
|
1952 QVBoxLayout *vbox_layout = new QVBoxLayout (); |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1953 vbox_layout->addWidget (m_menu_bar); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1954 vbox_layout->addWidget (m_tool_bar); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1955 vbox_layout->addWidget (m_tab_widget); |
15368
36ececf69385
avoid some GCC warnings in the libgui code
John W. Eaton <jwe@octave.org>
parents:
15367
diff
changeset
|
1956 vbox_layout->setMargin (0); |
36ececf69385
avoid some GCC warnings in the libgui code
John W. Eaton <jwe@octave.org>
parents:
15367
diff
changeset
|
1957 editor_widget->setLayout (vbox_layout); |
36ececf69385
avoid some GCC warnings in the libgui code
John W. Eaton <jwe@octave.org>
parents:
15367
diff
changeset
|
1958 setWidget (editor_widget); |
13501 | 1959 |
23321
ac4d0a72927a
provide a context menu for the tab bar of the editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23304
diff
changeset
|
1960 // create the context menu of the tab bar |
24679
a3e67a9e7be5
move derived tab bar from editor and doc viewer into separate file
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1961 tab_bar *bar |
a3e67a9e7be5
move derived tab bar from editor and doc viewer into separate file
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1962 = static_cast<tab_bar *>(m_tab_widget->tabBar ()); |
a3e67a9e7be5
move derived tab bar from editor and doc viewer into separate file
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1963 QMenu *ctx_men = bar->get_context_menu (); |
a3e67a9e7be5
move derived tab bar from editor and doc viewer into separate file
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1964 ctx_men->addAction (m_close_action); |
a3e67a9e7be5
move derived tab bar from editor and doc viewer into separate file
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1965 ctx_men->addAction (m_close_all_action); |
a3e67a9e7be5
move derived tab bar from editor and doc viewer into separate file
Torsten <mttl@mailbox.org>
parents:
24534
diff
changeset
|
1966 ctx_men->addAction (m_close_others_action); |
23321
ac4d0a72927a
provide a context menu for the tab bar of the editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23304
diff
changeset
|
1967 |
16981
e86df0d43309
make ctrl-w available for readline in the gui terminal
Torsten <ttl@justmail.de>
parents:
16970
diff
changeset
|
1968 // signals |
23150
d133d90b495a
connect execute command signal in editor constructor (bug #50171)
Torsten <mttl@mailbox.org>
parents:
23146
diff
changeset
|
1969 connect (this, SIGNAL (execute_command_in_terminal_signal (const QString&)), |
d133d90b495a
connect execute command signal in editor constructor (bug #50171)
Torsten <mttl@mailbox.org>
parents:
23146
diff
changeset
|
1970 main_win (), SLOT (execute_command_in_terminal (const QString&))); |
d133d90b495a
connect execute command signal in editor constructor (bug #50171)
Torsten <mttl@mailbox.org>
parents:
23146
diff
changeset
|
1971 |
17676
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1972 connect (this, SIGNAL (request_settings_dialog (const QString&)), |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1973 main_win (), |
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1974 SLOT (process_settings_dialog_request (const QString&))); |
17676
c060ad097056
add menu entries to the editor for directly accessing the editor's settings
Torsten <ttl@justmail.de>
parents:
17639
diff
changeset
|
1975 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1976 connect (m_mru_file_menu, SIGNAL (triggered (QAction *)), |
16614
49653ed9561b
Use menu triggered signal instead of action triggered signal to rid cast.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16611
diff
changeset
|
1977 this, SLOT (request_mru_open_file (QAction *))); |
16558 | 1978 |
15860
feba9ff6e6a8
editor: add list of recently used files to the file menu
Torsten <ttl@justmail.de>
parents:
15848
diff
changeset
|
1979 mru_menu_update (); |
16558 | 1980 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1981 connect (m_tab_widget, SIGNAL (tabCloseRequested (int)), |
16558 | 1982 this, SLOT (handle_tab_close_request (int))); |
1983 | |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1984 connect (m_tab_widget, SIGNAL (currentChanged (int)), |
16558 | 1985 this, SLOT (active_tab_changed (int))); |
14676
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
1986 |
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
1987 resize (500, 400); |
16558 | 1988 setWindowIcon (QIcon (":/actions/icons/logo.png")); |
20001
97b37077a2d3
Add missing translation call to GUI "Editor" tab.
Rik <rik@octave.org>
parents:
19945
diff
changeset
|
1989 set_title (tr ("Editor")); |
15356
842ab161c10a
GUI: new setting to restore tabs from previous session; allow silent load file
Thorsten Liebig <Thorsten.Liebig@gmx.de>
parents:
15321
diff
changeset
|
1990 |
20796
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
1991 check_actions (); |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
1992 } |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
1993 |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
1994 void |
16558 | 1995 file_editor::add_file_editor_tab (file_editor_tab *f, const QString& fn) |
14676
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
1996 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
1997 m_tab_widget->addTab (f, fn); |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
1998 |
18689
fac35875f6eb
update enabled status of undo/redo actions in the editor
Torsten <ttl@justmail.de>
parents:
18688
diff
changeset
|
1999 // signals from the qscintilla edit area |
fac35875f6eb
update enabled status of undo/redo actions in the editor
Torsten <ttl@justmail.de>
parents:
18688
diff
changeset
|
2000 connect (f->qsci_edit_area (), SIGNAL (status_update (bool, bool)), |
fac35875f6eb
update enabled status of undo/redo actions in the editor
Torsten <ttl@justmail.de>
parents:
18688
diff
changeset
|
2001 this, SLOT (edit_status_update (bool, bool))); |
fac35875f6eb
update enabled status of undo/redo actions in the editor
Torsten <ttl@justmail.de>
parents:
18688
diff
changeset
|
2002 |
19606
3156773fcc80
open a doc page from editor directly without command window
Torsten <ttl@justmail.de>
parents:
19605
diff
changeset
|
2003 connect (f->qsci_edit_area (), SIGNAL (show_doc_signal (const QString&)), |
3156773fcc80
open a doc page from editor directly without command window
Torsten <ttl@justmail.de>
parents:
19605
diff
changeset
|
2004 main_win (), SLOT (handle_show_doc (const QString&))); |
3156773fcc80
open a doc page from editor directly without command window
Torsten <ttl@justmail.de>
parents:
19605
diff
changeset
|
2005 |
19608
4b980842edba
clean up some signal-slot combinations in the editor
Torsten <ttl@justmail.de>
parents:
19606
diff
changeset
|
2006 connect (f->qsci_edit_area (), SIGNAL (create_context_menu_signal (QMenu *)), |
4b980842edba
clean up some signal-slot combinations in the editor
Torsten <ttl@justmail.de>
parents:
19606
diff
changeset
|
2007 this, SLOT (create_context_menu (QMenu *))); |
4b980842edba
clean up some signal-slot combinations in the editor
Torsten <ttl@justmail.de>
parents:
19606
diff
changeset
|
2008 |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2009 connect (f->qsci_edit_area (), |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2010 SIGNAL (execute_command_in_terminal_signal (const QString&)), |
19608
4b980842edba
clean up some signal-slot combinations in the editor
Torsten <ttl@justmail.de>
parents:
19606
diff
changeset
|
2011 main_win (), SLOT (execute_command_in_terminal (const QString&))); |
4b980842edba
clean up some signal-slot combinations in the editor
Torsten <ttl@justmail.de>
parents:
19606
diff
changeset
|
2012 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2013 // Signals from the file editor_tab |
15984
1eb3c67139f6
Add full-length-name tool tip to editor file tab when name is not full length.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15982
diff
changeset
|
2014 connect (f, SIGNAL (file_name_changed (const QString&, const QString&)), |
16558 | 2015 this, SLOT (handle_file_name_changed (const QString&, |
2016 const QString&))); | |
2017 | |
19803
415864f5b85f
communicating actual working directory to the editor (#44298)
Torsten <ttl@justmail.de>
parents:
19739
diff
changeset
|
2018 connect (f, SIGNAL (editor_state_changed (bool, bool)), |
415864f5b85f
communicating actual working directory to the editor (#44298)
Torsten <ttl@justmail.de>
parents:
19739
diff
changeset
|
2019 this, SLOT (handle_editor_state_changed (bool, bool))); |
16558 | 2020 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2021 connect (f, SIGNAL (tab_remove_request ()), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2022 this, SLOT (handle_tab_remove_request ())); |
16558 | 2023 |
20796
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
2024 connect (f, SIGNAL (add_filename_to_list (const QString&, |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
2025 const QString&, QWidget*)), |
ed770c16a3e8
also store encoding and tab index with last editor session (bugs #46588, #45688)
Torsten <ttl@justmail.de>
parents:
20793
diff
changeset
|
2026 this, SLOT (handle_add_filename_to_list (const QString&, |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2027 const QString&, |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2028 QWidget*))); |
16558 | 2029 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2030 connect (f, SIGNAL (editor_check_conflict_save (const QString&, bool)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2031 this, SLOT (check_conflict_save (const QString&, bool))); |
16558 | 2032 |
20814
2da4058d65c7
store the encoding of recent editor files in the mru list
Torsten <ttl@justmail.de>
parents:
20796
diff
changeset
|
2033 connect (f, SIGNAL (mru_add_file (const QString&, const QString&)), |
2da4058d65c7
store the encoding of recent editor files in the mru list
Torsten <ttl@justmail.de>
parents:
20796
diff
changeset
|
2034 this, SLOT (handle_mru_add_file (const QString&, const QString&))); |
16558 | 2035 |
16635
25e418d23a4b
fix running files from file browser's context menu
Torsten <ttl@justmail.de>
parents:
16615
diff
changeset
|
2036 connect (f, SIGNAL (run_file_signal (const QFileInfo&)), |
16798
d749c9b588e5
make stand-alone windows from dock widgets when floating (bug #38785)
Torsten <ttl@justmail.de>
parents:
16740
diff
changeset
|
2037 main_win (), SLOT (run_file_in_terminal (const QFileInfo&))); |
17790
86c6ae5f969e
Use GNU style coding conventions for code in libgui/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
2038 |
19605
d258070914ef
open file directly without edit command when editing a function from editor
Torsten <ttl@justmail.de>
parents:
19599
diff
changeset
|
2039 connect (f, SIGNAL (request_open_file (const QString&)), |
d258070914ef
open file directly without edit command when editing a function from editor
Torsten <ttl@justmail.de>
parents:
19599
diff
changeset
|
2040 this, SLOT (request_open_file (const QString&))); |
d258070914ef
open file directly without edit command when editing a function from editor
Torsten <ttl@justmail.de>
parents:
19599
diff
changeset
|
2041 |
20995
aab7a3c7168e
edit a file from an error message in the terminal (bug #35619)
Torsten <ttl@justmail.de>
parents:
20992
diff
changeset
|
2042 connect (f, SIGNAL (edit_mfile_request (const QString&, const QString&, |
aab7a3c7168e
edit a file from an error message in the terminal (bug #35619)
Torsten <ttl@justmail.de>
parents:
20992
diff
changeset
|
2043 const QString&, int)), |
23385
41639665aa34
improve opening files from gui when built without qscintilla (bug #39179)
Torsten <mttl@mailbox.org>
parents:
23380
diff
changeset
|
2044 main_win (), SLOT (handle_edit_mfile_request (const QString&, |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2045 const QString&, |
21352
043ec02115b8
fix edit function related to current word in editor (bug #47255)
Torsten <ttl@justmail.de>
parents:
21310
diff
changeset
|
2046 const QString&, int))); |
20995
aab7a3c7168e
edit a file from an error message in the terminal (bug #35619)
Torsten <ttl@justmail.de>
parents:
20992
diff
changeset
|
2047 |
23177
0b59e37dd83e
unhide editor when a file was changed by an external application (bug #50106)
Torsten <mttl@mailbox.org>
parents:
23152
diff
changeset
|
2048 connect (f, SIGNAL (set_focus_editor_signal (QWidget*)), |
0b59e37dd83e
unhide editor when a file was changed by an external application (bug #50106)
Torsten <mttl@mailbox.org>
parents:
23152
diff
changeset
|
2049 this, SLOT (set_focus (QWidget*))); |
0b59e37dd83e
unhide editor when a file was changed by an external application (bug #50106)
Torsten <mttl@mailbox.org>
parents:
23152
diff
changeset
|
2050 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2051 // Signals from the file_editor non-trivial operations |
16413
28136851099a
remove _terminal pointer from main_window, it is contained by other Qt object
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
16407
diff
changeset
|
2052 connect (this, SIGNAL (fetab_settings_changed (const QSettings *)), |
23178
6da3526ccf33
fix settings update for existing editor tabs (regression from b3ced5e3cebb)
Torsten <mttl@mailbox.org>
parents:
23150
diff
changeset
|
2053 f, SLOT (notice_settings (const QSettings *))); |
16558 | 2054 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2055 connect (this, SIGNAL (fetab_change_request (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2056 f, SLOT (change_editor_state (const QWidget*))); |
16558 | 2057 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2058 connect (this, SIGNAL (fetab_file_name_query (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2059 f, SLOT (file_name_query (const QWidget*))); |
16558 | 2060 |
2061 connect (this, SIGNAL (fetab_save_file (const QWidget*, const QString&, | |
2062 bool)), | |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2063 f, SLOT (save_file (const QWidget*, const QString&, bool))); |
16558 | 2064 |
19714
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19697
diff
changeset
|
2065 connect (this, SIGNAL (fetab_check_modified_file (void)), |
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19697
diff
changeset
|
2066 f, SLOT (check_modified_file (void))); |
21015ca26566
Restructure shutdown flow and behavior for improved robustness
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
19697
diff
changeset
|
2067 |
21158
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
2068 connect (f, SIGNAL (execute_command_in_terminal_signal (const QString&)), |
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
2069 main_win (), SLOT (execute_command_in_terminal (const QString&))); |
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
2070 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2071 // Signals from the file_editor trivial operations |
21054
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
2072 connect (this, SIGNAL (fetab_recover_from_exit (void)), |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
2073 f, SLOT (recover_from_exit (void))); |
221847e5f488
fix issues when restoring breakpoints and closing tabs or whole application
Torsten <ttl@justmail.de>
parents:
21002
diff
changeset
|
2074 |
19803
415864f5b85f
communicating actual working directory to the editor (#44298)
Torsten <ttl@justmail.de>
parents:
19739
diff
changeset
|
2075 connect (this, SIGNAL (fetab_set_directory (const QString&)), |
415864f5b85f
communicating actual working directory to the editor (#44298)
Torsten <ttl@justmail.de>
parents:
19739
diff
changeset
|
2076 f, SLOT (set_current_directory (const QString&))); |
415864f5b85f
communicating actual working directory to the editor (#44298)
Torsten <ttl@justmail.de>
parents:
19739
diff
changeset
|
2077 |
18560
26d15a57f45b
add menu entries and shortcuts for zoom functions in the editor (bug #41516)
Torsten <ttl@justmail.de>
parents:
18555
diff
changeset
|
2078 connect (this, SIGNAL (fetab_zoom_in (const QWidget*)), |
26d15a57f45b
add menu entries and shortcuts for zoom functions in the editor (bug #41516)
Torsten <ttl@justmail.de>
parents:
18555
diff
changeset
|
2079 f, SLOT (zoom_in (const QWidget*))); |
26d15a57f45b
add menu entries and shortcuts for zoom functions in the editor (bug #41516)
Torsten <ttl@justmail.de>
parents:
18555
diff
changeset
|
2080 connect (this, SIGNAL (fetab_zoom_out (const QWidget*)), |
26d15a57f45b
add menu entries and shortcuts for zoom functions in the editor (bug #41516)
Torsten <ttl@justmail.de>
parents:
18555
diff
changeset
|
2081 f, SLOT (zoom_out (const QWidget*))); |
26d15a57f45b
add menu entries and shortcuts for zoom functions in the editor (bug #41516)
Torsten <ttl@justmail.de>
parents:
18555
diff
changeset
|
2082 connect (this, SIGNAL (fetab_zoom_normal (const QWidget*)), |
26d15a57f45b
add menu entries and shortcuts for zoom functions in the editor (bug #41516)
Torsten <ttl@justmail.de>
parents:
18555
diff
changeset
|
2083 f, SLOT (zoom_normal (const QWidget*))); |
26d15a57f45b
add menu entries and shortcuts for zoom functions in the editor (bug #41516)
Torsten <ttl@justmail.de>
parents:
18555
diff
changeset
|
2084 |
17627
811019b9ef57
Add help and documentation on actual keyword to the editor menu
Torsten <ttl@justmail.de>
parents:
17009
diff
changeset
|
2085 connect (this, SIGNAL (fetab_context_help (const QWidget*, bool)), |
811019b9ef57
Add help and documentation on actual keyword to the editor menu
Torsten <ttl@justmail.de>
parents:
17009
diff
changeset
|
2086 f, SLOT (context_help (const QWidget*, bool))); |
811019b9ef57
Add help and documentation on actual keyword to the editor menu
Torsten <ttl@justmail.de>
parents:
17009
diff
changeset
|
2087 |
17628
99ffa521ecec
Add possibility to edit the function related to the actual keyword in editor
Torsten <ttl@justmail.de>
parents:
17627
diff
changeset
|
2088 connect (this, SIGNAL (fetab_context_edit (const QWidget*)), |
99ffa521ecec
Add possibility to edit the function related to the actual keyword in editor
Torsten <ttl@justmail.de>
parents:
17627
diff
changeset
|
2089 f, SLOT (context_edit (const QWidget*))); |
99ffa521ecec
Add possibility to edit the function related to the actual keyword in editor
Torsten <ttl@justmail.de>
parents:
17627
diff
changeset
|
2090 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2091 connect (this, SIGNAL (fetab_save_file (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2092 f, SLOT (save_file (const QWidget*))); |
16558 | 2093 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2094 connect (this, SIGNAL (fetab_save_file_as (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2095 f, SLOT (save_file_as (const QWidget*))); |
16558 | 2096 |
16440
aaf024ac8015
Add editor print menu/toolbutton implementation
John Donoghue <john.donoghue@ieee.org>
parents:
16438
diff
changeset
|
2097 connect (this, SIGNAL (fetab_print_file (const QWidget*)), |
aaf024ac8015
Add editor print menu/toolbutton implementation
John Donoghue <john.donoghue@ieee.org>
parents:
16438
diff
changeset
|
2098 f, SLOT (print_file (const QWidget*))); |
16558 | 2099 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2100 connect (this, SIGNAL (fetab_run_file (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2101 f, SLOT (run_file (const QWidget*))); |
16558 | 2102 |
17635
7945344506ae
Add possibility to run selected text of the editor in the terminal
Torsten <ttl@justmail.de>
parents:
17628
diff
changeset
|
2103 connect (this, SIGNAL (fetab_context_run (const QWidget*)), |
7945344506ae
Add possibility to run selected text of the editor in the terminal
Torsten <ttl@justmail.de>
parents:
17628
diff
changeset
|
2104 f, SLOT (context_run (const QWidget*))); |
7945344506ae
Add possibility to run selected text of the editor in the terminal
Torsten <ttl@justmail.de>
parents:
17628
diff
changeset
|
2105 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2106 connect (this, SIGNAL (fetab_toggle_bookmark (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2107 f, SLOT (toggle_bookmark (const QWidget*))); |
16558 | 2108 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2109 connect (this, SIGNAL (fetab_next_bookmark (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2110 f, SLOT (next_bookmark (const QWidget*))); |
16558 | 2111 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2112 connect (this, SIGNAL (fetab_previous_bookmark (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2113 f, SLOT (previous_bookmark (const QWidget*))); |
16558 | 2114 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2115 connect (this, SIGNAL (fetab_remove_bookmark (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2116 f, SLOT (remove_bookmark (const QWidget*))); |
16558 | 2117 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2118 connect (this, SIGNAL (fetab_toggle_breakpoint (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2119 f, SLOT (toggle_breakpoint (const QWidget*))); |
16558 | 2120 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2121 connect (this, SIGNAL (fetab_next_breakpoint (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2122 f, SLOT (next_breakpoint (const QWidget*))); |
16558 | 2123 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2124 connect (this, SIGNAL (fetab_previous_breakpoint (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2125 f, SLOT (previous_breakpoint (const QWidget*))); |
16558 | 2126 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2127 connect (this, SIGNAL (fetab_remove_all_breakpoints (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2128 f, SLOT (remove_all_breakpoints (const QWidget*))); |
16558 | 2129 |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2130 connect (this, SIGNAL (fetab_scintilla_command (const QWidget *, |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2131 unsigned int)), |
18656
1b289f45187f
add some qscintilla actions to the menu and to the shortcut manager
Torsten <ttl@justmail.de>
parents:
18651
diff
changeset
|
2132 f, SLOT (scintilla_command (const QWidget *, unsigned int))); |
1b289f45187f
add some qscintilla actions to the menu and to the shortcut manager
Torsten <ttl@justmail.de>
parents:
18651
diff
changeset
|
2133 |
24484
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
2134 connect (this, SIGNAL (fetab_comment_selected_text (const QWidget*, bool)), |
abb075ada761
Allow commenting with manually selected comment strings (bug #52695):
Torsten <mttl@mailbox.org>
parents:
24232
diff
changeset
|
2135 f, SLOT (comment_selected_text (const QWidget*, bool))); |
16558 | 2136 |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2137 connect (this, SIGNAL (fetab_uncomment_selected_text (const QWidget*)), |
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2138 f, SLOT (uncomment_selected_text (const QWidget*))); |
16558 | 2139 |
18303
106da7544504
gui: Add indent/unindent edit menu to editor (Bug #41223)
John Donoghue <john.donoghue@ieee.org>
parents:
18294
diff
changeset
|
2140 connect (this, SIGNAL (fetab_indent_selected_text (const QWidget*)), |
106da7544504
gui: Add indent/unindent edit menu to editor (Bug #41223)
John Donoghue <john.donoghue@ieee.org>
parents:
18294
diff
changeset
|
2141 f, SLOT (indent_selected_text (const QWidget*))); |
106da7544504
gui: Add indent/unindent edit menu to editor (Bug #41223)
John Donoghue <john.donoghue@ieee.org>
parents:
18294
diff
changeset
|
2142 |
106da7544504
gui: Add indent/unindent edit menu to editor (Bug #41223)
John Donoghue <john.donoghue@ieee.org>
parents:
18294
diff
changeset
|
2143 connect (this, SIGNAL (fetab_unindent_selected_text (const QWidget*)), |
106da7544504
gui: Add indent/unindent edit menu to editor (Bug #41223)
John Donoghue <john.donoghue@ieee.org>
parents:
18294
diff
changeset
|
2144 f, SLOT (unindent_selected_text (const QWidget*))); |
106da7544504
gui: Add indent/unindent edit menu to editor (Bug #41223)
John Donoghue <john.donoghue@ieee.org>
parents:
18294
diff
changeset
|
2145 |
24232
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
2146 connect (this, SIGNAL (fetab_smart_indent_line_or_selected_text (const QWidget*)), |
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
2147 f, SLOT (smart_indent_line_or_selected_text (const QWidget*))); |
e0bcd17ac070
smart indentation for selections or current line in code editor
John W. Eaton <jwe@octave.org>
parents:
24130
diff
changeset
|
2148 |
22411
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2149 connect (this, |
c69805d1fa64
maint: Style check C++ code in libgui/
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
2150 SIGNAL (fetab_convert_eol (const QWidget*, QsciScintilla::EolMode)), |
19247
9582fad68730
add actions for converting the eol characters of the editor file
Torsten <ttl@justmail.de>
parents:
19246
diff
changeset
|
2151 f, SLOT (convert_eol (const QWidget*, QsciScintilla::EolMode))); |
9582fad68730
add actions for converting the eol characters of the editor file
Torsten <ttl@justmail.de>
parents:
19246
diff
changeset
|
2152 |
22169
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
2153 connect (this, SIGNAL (fetab_find (const QWidget*, QList<QAction *>)), |
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
2154 f, SLOT (find (const QWidget*, QList<QAction *>))); |
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
2155 |
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
2156 connect (this, SIGNAL (fetab_find_next (const QWidget*)), |
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
2157 f, SLOT (find_next (const QWidget*))); |
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
2158 |
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
2159 connect (this, SIGNAL (fetab_find_previous (const QWidget*)), |
b3ced5e3cebb
Enable shortcuts for find next / find previous
Lachlan Andrew <lachlanbis@gmail.com>
parents:
22022
diff
changeset
|
2160 f, SLOT (find_previous (const QWidget*))); |
16558 | 2161 |
2162 connect (this, SIGNAL (fetab_goto_line (const QWidget*, int)), | |
2163 f, SLOT (goto_line (const QWidget*, int))); | |
2164 | |
19629
8ef79bc61d8a
add actions for moving/selecting to matching brace
Torsten <ttl@justmail.de>
parents:
19608
diff
changeset
|
2165 connect (this, SIGNAL (fetab_move_match_brace (const QWidget*, bool)), |
8ef79bc61d8a
add actions for moving/selecting to matching brace
Torsten <ttl@justmail.de>
parents:
19608
diff
changeset
|
2166 f, SLOT (move_match_brace (const QWidget*, bool))); |
8ef79bc61d8a
add actions for moving/selecting to matching brace
Torsten <ttl@justmail.de>
parents:
19608
diff
changeset
|
2167 |
18482
3a509de8e791
automatic completion list as user preference (bug #41469)
Torsten <ttl@justmail.de>
parents:
18460
diff
changeset
|
2168 connect (this, SIGNAL (fetab_completion (const QWidget*)), |
3a509de8e791
automatic completion list as user preference (bug #41469)
Torsten <ttl@justmail.de>
parents:
18460
diff
changeset
|
2169 f, SLOT (show_auto_completion (const QWidget*))); |
3a509de8e791
automatic completion list as user preference (bug #41469)
Torsten <ttl@justmail.de>
parents:
18460
diff
changeset
|
2170 |
15980
6c0fce0632a4
gui: set keyboard focus when switching between dock widgets (bug #36957)
Torsten <ttl@justmail.de>
parents:
15901
diff
changeset
|
2171 connect (this, SIGNAL (fetab_set_focus (const QWidget*)), |
6c0fce0632a4
gui: set keyboard focus when switching between dock widgets (bug #36957)
Torsten <ttl@justmail.de>
parents:
15901
diff
changeset
|
2172 f, SLOT (set_focus (const QWidget*))); |
16558 | 2173 |
2174 connect (this, SIGNAL (fetab_insert_debugger_pointer (const QWidget*, int)), | |
2175 f, SLOT (insert_debugger_pointer (const QWidget*, int))); | |
2176 | |
2177 connect (this, SIGNAL (fetab_delete_debugger_pointer (const QWidget*, int)), | |
2178 f, SLOT (delete_debugger_pointer (const QWidget*, int))); | |
2179 | |
2180 connect (this, SIGNAL (fetab_do_breakpoint_marker (bool, const QWidget*, | |
21158
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
2181 int, const QString&)), |
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
2182 f, SLOT (do_breakpoint_marker (bool, const QWidget*, int, |
65827e9cccb8
Gui support for enhancement of dbstop.
Lachlan Andrew <lachlanbis@gmail.com>
parents:
21148
diff
changeset
|
2183 const QString&))); |
15848
424edeca3c66
Redo portions of file editor to use more signals/slots rather than casting.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
15552
diff
changeset
|
2184 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2185 m_tab_widget->setCurrentWidget (f); |
17009
adf06e03fbdd
Enable/disable editor actions based on available editor windows
John Donoghue <john.donoghue@ieee.org>
parents:
16981
diff
changeset
|
2186 |
adf06e03fbdd
Enable/disable editor actions based on available editor windows
John Donoghue <john.donoghue@ieee.org>
parents:
16981
diff
changeset
|
2187 check_actions (); |
14676
35512b788af2
Editor can now handle multiple files in tabs.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14674
diff
changeset
|
2188 } |
15873
7d300b85ee25
allow build to proceed if either Qt or QScintilla is missing
John W. Eaton <jwe@octave.org>
parents:
15861
diff
changeset
|
2189 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2190 void |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2191 file_editor::mru_menu_update (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2192 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2193 int num_files = qMin (m_mru_files.size (), int (MaxMRUFiles)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2194 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2195 // configure and show active actions of mru-menu |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2196 for (int i = 0; i < num_files; ++i) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2197 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2198 QString text = tr ("&%1 %2"). |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2199 arg ((i+1) % int (MaxMRUFiles)).arg (m_mru_files.at (i)); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2200 m_mru_file_actions[i]->setText (text); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2201 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2202 QStringList action_data; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2203 action_data << m_mru_files.at (i) << m_mru_files_encodings.at (i); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2204 m_mru_file_actions[i]->setData (action_data); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2205 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2206 m_mru_file_actions[i]->setVisible (true); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2207 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2208 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2209 // hide unused mru-menu entries |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2210 for (int j = num_files; j < MaxMRUFiles; ++j) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2211 m_mru_file_actions[j]->setVisible (false); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2212 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2213 // delete entries in string-list beyond MaxMRUFiles |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2214 while (m_mru_files.size () > MaxMRUFiles) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2215 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2216 m_mru_files.removeLast (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2217 m_mru_files_encodings.removeLast (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2218 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2219 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2220 // save actual mru-list in settings |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2221 QSettings *settings = resource_manager::get_settings (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2222 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2223 settings->setValue ("editor/mru_file_list", m_mru_files); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2224 settings->setValue ("editor/mru_file_encodings", m_mru_files_encodings); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2225 settings->sync (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2226 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2227 |
19945
f7a805f02723
link undo in main window to editor if the latter has focus (bug #44402)
Torsten <ttl@justmail.de>
parents:
19930
diff
changeset
|
2228 bool |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2229 file_editor::call_custom_editor (const QString& file_name, int line) |
19945
f7a805f02723
link undo in main window to editor if the latter has focus (bug #44402)
Torsten <ttl@justmail.de>
parents:
19930
diff
changeset
|
2230 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2231 // Check if the user wants to use a custom file editor. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2232 QSettings *settings = resource_manager::get_settings (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2233 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2234 if (settings->value ("useCustomFileEditor",false).toBool ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2235 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2236 // use the external editor interface for handling the call |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2237 emit request_open_file_external (file_name, line); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2238 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2239 if (line < 0 && ! file_name.isEmpty ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2240 handle_mru_add_file (QFileInfo (file_name).canonicalFilePath (), |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2241 QString ()); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2242 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2243 return true; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2244 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2245 |
19945
f7a805f02723
link undo in main window to editor if the latter has focus (bug #44402)
Torsten <ttl@justmail.de>
parents:
19930
diff
changeset
|
2246 return false; |
f7a805f02723
link undo in main window to editor if the latter has focus (bug #44402)
Torsten <ttl@justmail.de>
parents:
19930
diff
changeset
|
2247 } |
f7a805f02723
link undo in main window to editor if the latter has focus (bug #44402)
Torsten <ttl@justmail.de>
parents:
19930
diff
changeset
|
2248 |
16881
944ade6e7f66
Make main window copy and paste global for current focused window
John Donoghue <john.donoghue@ieee.org>
parents:
16809
diff
changeset
|
2249 void |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2250 file_editor::toggle_preference (const QString& preference, bool def) |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16912
diff
changeset
|
2251 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2252 QSettings *settings = resource_manager::get_settings (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2253 bool old = settings->value (preference,def).toBool (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2254 settings->setValue (preference,! old); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2255 notice_settings (settings); |
16970
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16912
diff
changeset
|
2256 } |
78116b88dbf5
enable readline key bindings in terminal widget of gui (bug #36986)
Torsten <ttl@justmail.de>
parents:
16912
diff
changeset
|
2257 |
17009
adf06e03fbdd
Enable/disable editor actions based on available editor windows
John Donoghue <john.donoghue@ieee.org>
parents:
16981
diff
changeset
|
2258 void |
20720
7c21b151b8b4
build: Fix warning messages from compiler.
Rik <rik@octave.org>
parents:
20713
diff
changeset
|
2259 file_editor::switch_tab (int direction, bool movetab) |
20693
7751bd56d0be
added actions and shortcuts for switching editor tabs
Torsten <ttl@justmail.de>
parents:
20630
diff
changeset
|
2260 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2261 int tabs = m_tab_widget->count (); |
20693
7751bd56d0be
added actions and shortcuts for switching editor tabs
Torsten <ttl@justmail.de>
parents:
20630
diff
changeset
|
2262 |
7751bd56d0be
added actions and shortcuts for switching editor tabs
Torsten <ttl@justmail.de>
parents:
20630
diff
changeset
|
2263 if (tabs < 2) |
7751bd56d0be
added actions and shortcuts for switching editor tabs
Torsten <ttl@justmail.de>
parents:
20630
diff
changeset
|
2264 return; |
7751bd56d0be
added actions and shortcuts for switching editor tabs
Torsten <ttl@justmail.de>
parents:
20630
diff
changeset
|
2265 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2266 int old_pos = m_tab_widget->currentIndex (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2267 int new_pos = m_tab_widget->currentIndex () + direction; |
20705
632683d6396f
provide actions for moving the editor tabs by shortscuts
Torsten <ttl@justmail.de>
parents:
20697
diff
changeset
|
2268 |
632683d6396f
provide actions for moving the editor tabs by shortscuts
Torsten <ttl@justmail.de>
parents:
20697
diff
changeset
|
2269 if (new_pos < 0 || new_pos >= tabs) |
632683d6396f
provide actions for moving the editor tabs by shortscuts
Torsten <ttl@justmail.de>
parents:
20697
diff
changeset
|
2270 new_pos = new_pos - direction*tabs; |
20693
7751bd56d0be
added actions and shortcuts for switching editor tabs
Torsten <ttl@justmail.de>
parents:
20630
diff
changeset
|
2271 |
20720
7c21b151b8b4
build: Fix warning messages from compiler.
Rik <rik@octave.org>
parents:
20713
diff
changeset
|
2272 if (movetab) |
20705
632683d6396f
provide actions for moving the editor tabs by shortscuts
Torsten <ttl@justmail.de>
parents:
20697
diff
changeset
|
2273 { |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21650
diff
changeset
|
2274 #if defined (HAVE_QTABWIDGET_SETMOVABLE) |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2275 m_tab_widget->tabBar ()->moveTab (old_pos, new_pos); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2276 m_tab_widget->setCurrentIndex (old_pos); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2277 m_tab_widget->setCurrentIndex (new_pos); |
20705
632683d6396f
provide actions for moving the editor tabs by shortscuts
Torsten <ttl@justmail.de>
parents:
20697
diff
changeset
|
2278 focus (); |
632683d6396f
provide actions for moving the editor tabs by shortscuts
Torsten <ttl@justmail.de>
parents:
20697
diff
changeset
|
2279 #endif |
632683d6396f
provide actions for moving the editor tabs by shortscuts
Torsten <ttl@justmail.de>
parents:
20697
diff
changeset
|
2280 } |
632683d6396f
provide actions for moving the editor tabs by shortscuts
Torsten <ttl@justmail.de>
parents:
20697
diff
changeset
|
2281 else |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2282 m_tab_widget->setCurrentIndex (new_pos); |
20693
7751bd56d0be
added actions and shortcuts for switching editor tabs
Torsten <ttl@justmail.de>
parents:
20630
diff
changeset
|
2283 } |
7751bd56d0be
added actions and shortcuts for switching editor tabs
Torsten <ttl@justmail.de>
parents:
20630
diff
changeset
|
2284 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2285 // Function for closing the files in a removed directory |
23321
ac4d0a72927a
provide a context menu for the tab bar of the editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23304
diff
changeset
|
2286 void |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2287 file_editor::handle_dir_remove (const QString& old_name, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2288 const QString& new_name) |
23276
ea143f4f76a5
Allow to close an editor tab with the middle mouse button (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23223
diff
changeset
|
2289 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2290 QDir old_dir (old_name); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2291 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2292 // Have all file editor tabs signal what their filenames are. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2293 m_editor_tab_map.clear (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2294 emit fetab_file_name_query (nullptr); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2295 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2296 // Loop over all open files and pick those within old_dir |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2297 for (editor_tab_map_const_iterator p = m_editor_tab_map.begin (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2298 p != m_editor_tab_map.end (); p++) |
23321
ac4d0a72927a
provide a context menu for the tab bar of the editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23304
diff
changeset
|
2299 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2300 QString rel_path_to_file = old_dir.relativeFilePath (p->first); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2301 if (rel_path_to_file.left (3) != QString ("../")) |
23321
ac4d0a72927a
provide a context menu for the tab bar of the editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23304
diff
changeset
|
2302 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2303 // We directly go down from old_dir to reach our file: Our |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2304 // file is included in the removed/renamed diectory. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2305 // Thus delete it. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2306 m_no_focus = true; // Remember for not focussing editor |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2307 file_editor_tab *editor_tab |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2308 = static_cast<file_editor_tab *> (p->second.fet_ID); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2309 editor_tab->file_has_changed (QString (), true); // Close |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2310 m_no_focus = false; // Back to normal |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2311 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2312 // Store file for possible later reload |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2313 m_tmp_closed_files << p->first; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2314 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2315 // Add the new file path and the encoding for later reloading |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2316 // if new_name is given |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2317 if (! new_name.isEmpty ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2318 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2319 QDir new_dir (new_name); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2320 m_tmp_closed_files << new_dir.absoluteFilePath (rel_path_to_file); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2321 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2322 else |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2323 m_tmp_closed_files << ""; // no new name, just removing this file |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2324 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2325 m_tmp_closed_files << p->second.encoding; // store the encoding |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2326 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2327 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2328 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2329 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2330 bool |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2331 file_editor::editor_tab_has_focus (void) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2332 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2333 QWidget *foc_w = focusWidget (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2334 if (foc_w && foc_w->inherits ("octave_qscintilla")) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2335 return true; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2336 return false; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2337 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2338 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2339 // Check whether this file is already open in the editor. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2340 QWidget * |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2341 file_editor::find_tab_widget (const QString& file) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2342 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2343 // Have all file editor tabs signal what their filenames are. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2344 m_editor_tab_map.clear (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2345 emit fetab_file_name_query (nullptr); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2346 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2347 // Check all tabs for the given file name |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2348 QWidget *retval = nullptr; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2349 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2350 for (editor_tab_map_const_iterator p = m_editor_tab_map.begin (); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2351 p != m_editor_tab_map.end (); p++) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2352 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2353 QString tab_file = p->first; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2354 if (same_file (file.toStdString (), tab_file.toStdString ()) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2355 || file == tab_file) // needed as same_file ("","") is false. |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2356 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2357 retval = p->second.fet_ID; |
23321
ac4d0a72927a
provide a context menu for the tab bar of the editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23304
diff
changeset
|
2358 break; |
ac4d0a72927a
provide a context menu for the tab bar of the editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23304
diff
changeset
|
2359 } |
ac4d0a72927a
provide a context menu for the tab bar of the editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23304
diff
changeset
|
2360 } |
ac4d0a72927a
provide a context menu for the tab bar of the editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23304
diff
changeset
|
2361 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2362 return retval; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2363 } |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2364 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2365 QAction* |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2366 file_editor::add_action (QMenu *menu, const QIcon& icon, const QString& text, |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2367 const char *member) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2368 { |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2369 QAction *a; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2370 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2371 if (menu) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2372 a = menu->addAction (icon, text, this, member); |
23276
ea143f4f76a5
Allow to close an editor tab with the middle mouse button (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23223
diff
changeset
|
2373 else |
ea143f4f76a5
Allow to close an editor tab with the middle mouse button (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23223
diff
changeset
|
2374 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2375 a = new QAction (this); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2376 connect (a, SIGNAL (triggered ()), this, member); |
23276
ea143f4f76a5
Allow to close an editor tab with the middle mouse button (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23223
diff
changeset
|
2377 } |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2378 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2379 addAction (a); // important for shortcut context |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2380 a->setShortcutContext (Qt::WidgetWithChildrenShortcut); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2381 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2382 return a; |
23276
ea143f4f76a5
Allow to close an editor tab with the middle mouse button (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23223
diff
changeset
|
2383 } |
ea143f4f76a5
Allow to close an editor tab with the middle mouse button (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23223
diff
changeset
|
2384 |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2385 QMenu* |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2386 file_editor::add_menu (QMenuBar *p, QString name) |
23304
fb495c47e82d
allow double left click for closing tabs in the file editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23300
diff
changeset
|
2387 { |
24020
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2388 QMenu *menu = p->addMenu (name); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2389 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2390 QString base_name = name; // get a copy |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2391 // replace intended '&' ("&&") by a temp. string |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2392 base_name.replace ("&&", "___octave_amp_replacement___"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2393 // remove single '&' (shortcut) |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2394 base_name.remove ("&"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2395 // restore intended '&' |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2396 base_name.replace ("___octave_amp_replacement___", "&&"); |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2397 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2398 // remember names with and without shortcut |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2399 m_hash_menu_text[menu] = QStringList () << name << base_name; |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2400 |
387be1a6c3dc
style fixes for GUI editor
John W. Eaton <jwe@octave.org>
parents:
23920
diff
changeset
|
2401 return menu; |
23304
fb495c47e82d
allow double left click for closing tabs in the file editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23300
diff
changeset
|
2402 } |
fb495c47e82d
allow double left click for closing tabs in the file editor (bug #44605)
Torsten <mttl@mailbox.org>
parents:
23300
diff
changeset
|
2403 |
15873
7d300b85ee25
allow build to proceed if either Qt or QScintilla is missing
John W. Eaton <jwe@octave.org>
parents:
15861
diff
changeset
|
2404 #endif |