Mercurial > octave
annotate libgui/src/welcome-wizard.cc @ 31649:deb553ac2c54
maint: Merge stable to default.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Tue, 06 Dec 2022 15:45:27 -0500 |
parents | 431f80aba37a 29d734430e5f |
children | aae24eaf89ad |
rev | line source |
---|---|
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
1 //////////////////////////////////////////////////////////////////////// |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
2 // |
30564
796f54d4ddbf
update Octave Project Developers copyright for the new year
John W. Eaton <jwe@octave.org>
parents:
29542
diff
changeset
|
3 // Copyright (C) 2011-2022 The Octave Project Developers |
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
4 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
5 // See the file COPYRIGHT.md in the top-level directory of this |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
6 // distribution or <https://octave.org/copyright/>. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
7 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
8 // This file is part of Octave. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
9 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
10 // Octave is free software: you can redistribute it and/or modify it |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
11 // under the terms of the GNU General Public License as published by |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
12 // the Free Software Foundation, either version 3 of the License, or |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
13 // (at your option) any later version. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
14 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
15 // Octave is distributed in the hope that it will be useful, but |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
16 // WITHOUT ANY WARRANTY; without even the implied warranty of |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
18 // GNU General Public License for more details. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
19 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
20 // You should have received a copy of the GNU General Public License |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
21 // along with Octave; see the file COPYING. If not, see |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
22 // <https://www.gnu.org/licenses/>. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
23 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
24 //////////////////////////////////////////////////////////////////////// |
13674
c0e66d6e3dc8
Updated license headers and moved to AGPLv3.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
13668
diff
changeset
|
25 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21301
diff
changeset
|
26 #if defined (HAVE_CONFIG_H) |
21301
40de9f8f23a6
Use '#include "config.h"' rather than <config.h>.
Rik <rik@octave.org>
parents:
21203
diff
changeset
|
27 # include "config.h" |
15286
ae9079bbc627
Add '#include <config.h>' to C++ files in libgui/src
Rik <rik@octave.org>
parents:
15204
diff
changeset
|
28 #endif |
ae9079bbc627
Add '#include <config.h>' to C++ files in libgui/src
Rik <rik@octave.org>
parents:
15204
diff
changeset
|
29 |
17611
0dd2cf2e3174
don't use ui designer for welcome dialog box
John W. Eaton <jwe@octave.org>
parents:
17515
diff
changeset
|
30 #include <QApplication> |
27412
da1f59fe04b3
try to use consitent ordering for include files in libgui sources
John W. Eaton <jwe@octave.org>
parents:
27101
diff
changeset
|
31 #include <QHBoxLayout> |
17937
f87a7e161710
* welcome-wizard.h, welcome-wizard.cc: Rewrite.
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
32 #include <QPushButton> |
17611
0dd2cf2e3174
don't use ui designer for welcome dialog box
John W. Eaton <jwe@octave.org>
parents:
17515
diff
changeset
|
33 #include <QVBoxLayout> |
0dd2cf2e3174
don't use ui designer for welcome dialog box
John W. Eaton <jwe@octave.org>
parents:
17515
diff
changeset
|
34 |
21979
d04da18a407a
use OCTAVE_USE_WINDOWS_API more consistently
John W. Eaton <jwe@octave.org>
parents:
21724
diff
changeset
|
35 #if defined (OCTAVE_USE_WINDOWS_API) |
19886
17d21d68888d
GUI: force show of welcome wizard when displayed (Bug #41074)
John Donoghue
parents:
19861
diff
changeset
|
36 #define WIN32_LEAN_AND_MEAN |
17d21d68888d
GUI: force show of welcome wizard when displayed (Bug #41074)
John Donoghue
parents:
19861
diff
changeset
|
37 #include <windows.h> |
17d21d68888d
GUI: force show of welcome wizard when displayed (Bug #41074)
John Donoghue
parents:
19861
diff
changeset
|
38 #endif |
17d21d68888d
GUI: force show of welcome wizard when displayed (Bug #41074)
John Donoghue
parents:
19861
diff
changeset
|
39 |
30964
04601f6c47f4
fix broken icon path after new icon structure in GUI
Torsten Lilge <ttl-octave@mailbox.org>
parents:
30690
diff
changeset
|
40 #include "gui-preferences-dw.h" |
27620
45bb5bbaf291
don't use singleton pattern for resource manager in GUI
John W. Eaton <jwe@octave.org>
parents:
27613
diff
changeset
|
41 #include "gui-preferences-nr.h" |
31619
ad014fc78bd6
use individual local gui_settings objects
John W. Eaton <jwe@octave.org>
parents:
30964
diff
changeset
|
42 #include "gui-settings.h" |
14707
674740c44c09
Changed various files to matche file naming conventions.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
14703
diff
changeset
|
43 #include "welcome-wizard.h" |
13668
421afeae929b
Added a settings wizard that appears at first startup of Octave GUI.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
diff
changeset
|
44 |
31646
c6d54dd31a7e
maint: Use macros to begin/end C++ namespaces.
John W. Eaton <jwe@octave.org>
parents:
30964
diff
changeset
|
45 OCTAVE_BEGIN_NAMESPACE(octave) |
c6d54dd31a7e
maint: Use macros to begin/end C++ namespaces.
John W. Eaton <jwe@octave.org>
parents:
30964
diff
changeset
|
46 |
27101
097774bed4ed
move some static functions inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27087
diff
changeset
|
47 static QLabel * |
097774bed4ed
move some static functions inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27087
diff
changeset
|
48 make_octave_logo (QWidget *p = nullptr, int height = 100) |
097774bed4ed
move some static functions inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27087
diff
changeset
|
49 { |
097774bed4ed
move some static functions inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27087
diff
changeset
|
50 QLabel *logo = new QLabel (p); |
30964
04601f6c47f4
fix broken icon path after new icon structure in GUI
Torsten Lilge <ttl-octave@mailbox.org>
parents:
30690
diff
changeset
|
51 QPixmap logo_pixmap (dw_icon_set_names["NONE"]); |
27101
097774bed4ed
move some static functions inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27087
diff
changeset
|
52 logo->setPixmap (logo_pixmap.scaledToHeight (height)); |
097774bed4ed
move some static functions inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27087
diff
changeset
|
53 return logo; |
097774bed4ed
move some static functions inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27087
diff
changeset
|
54 }; |
097774bed4ed
move some static functions inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27087
diff
changeset
|
55 |
31639
ca7d58406f82
eliminate unnecessary uses of octave_qobject in GUI classes
John W. Eaton <jwe@octave.org>
parents:
31638
diff
changeset
|
56 welcome_wizard::welcome_wizard (QWidget *p) |
ca7d58406f82
eliminate unnecessary uses of octave_qobject in GUI classes
John W. Eaton <jwe@octave.org>
parents:
31638
diff
changeset
|
57 : QDialog (p), m_page_ctor_list (), m_page_list_iterator (), |
ca7d58406f82
eliminate unnecessary uses of octave_qobject in GUI classes
John W. Eaton <jwe@octave.org>
parents:
31638
diff
changeset
|
58 m_current_page (initial_page::create (this)), |
27087
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
59 m_allow_web_connect_state (false), |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
60 m_max_height (0), m_max_width (0) |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
61 { |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
62 m_page_ctor_list.push_back (initial_page::create); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
63 m_page_ctor_list.push_back (setup_community_news::create); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
64 m_page_ctor_list.push_back (final_page::create); |
17937
f87a7e161710
* welcome-wizard.h, welcome-wizard.cc: Rewrite.
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
65 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
66 m_page_list_iterator = m_page_ctor_list.begin (); |
17937
f87a7e161710
* welcome-wizard.h, welcome-wizard.cc: Rewrite.
John W. Eaton <jwe@octave.org>
parents:
17935
diff
changeset
|
67 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
68 setWindowTitle (tr ("Welcome to GNU Octave")); |
17611
0dd2cf2e3174
don't use ui designer for welcome dialog box
John W. Eaton <jwe@octave.org>
parents:
17515
diff
changeset
|
69 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
70 setEnabled (true); |
26643
5d1f413ff746
adapt initial window sizes to the screen resolution (bug #55498)
Torsten <mttl@mailbox.org>
parents:
26376
diff
changeset
|
71 |
27087
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
72 setSizePolicy (QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); |
26643
5d1f413ff746
adapt initial window sizes to the screen resolution (bug #55498)
Torsten <mttl@mailbox.org>
parents:
26376
diff
changeset
|
73 |
27087
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
74 // Create all pages for pre-setting the minimal required size for all pages |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
75 show_page (); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
76 adjust_size (); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
77 next_page (); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
78 adjust_size (); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
79 next_page (); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
80 adjust_size (); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
81 // now go back to the first page |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
82 previous_page (); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
83 previous_page (); |
26643
5d1f413ff746
adapt initial window sizes to the screen resolution (bug #55498)
Torsten <mttl@mailbox.org>
parents:
26376
diff
changeset
|
84 |
27087
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
85 // Set the size determined above |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
86 resize (m_max_width, m_max_height); |
19886
17d21d68888d
GUI: force show of welcome wizard when displayed (Bug #41074)
John Donoghue
parents:
19861
diff
changeset
|
87 |
21979
d04da18a407a
use OCTAVE_USE_WINDOWS_API more consistently
John W. Eaton <jwe@octave.org>
parents:
21724
diff
changeset
|
88 #if defined (OCTAVE_USE_WINDOWS_API) |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
89 // HACK to forceshow of dialog if started minimized |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
90 ShowWindow (reinterpret_cast<HWND> (winId ()), SW_SHOWNORMAL); |
19886
17d21d68888d
GUI: force show of welcome wizard when displayed (Bug #41074)
John Donoghue
parents:
19861
diff
changeset
|
91 #endif |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
92 } |
17611
0dd2cf2e3174
don't use ui designer for welcome dialog box
John W. Eaton <jwe@octave.org>
parents:
17515
diff
changeset
|
93 |
27087
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
94 void welcome_wizard::adjust_size (void) |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
95 { |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
96 // Get adjusted size for the current page |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
97 adjustSize (); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
98 QSize sz = size (); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
99 |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
100 // Update the max. size of the three pages if required |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
101 |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
102 if (sz.height () > m_max_height) |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
103 m_max_height = sz.height (); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
104 |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
105 if (sz.width () > m_max_width) |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
106 m_max_width = sz.width (); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
107 } |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
108 |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
109 void welcome_wizard::handle_web_connect_option (int state) |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
110 { |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
111 m_allow_web_connect_state = state == Qt::Checked; |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
112 } |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
113 |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
114 void welcome_wizard::show_page (void) |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
115 { |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
116 delete m_current_page; |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
117 delete layout (); |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17937
diff
changeset
|
118 |
31639
ca7d58406f82
eliminate unnecessary uses of octave_qobject in GUI classes
John W. Eaton <jwe@octave.org>
parents:
31638
diff
changeset
|
119 m_current_page = (*m_page_list_iterator) (this); |
17611
0dd2cf2e3174
don't use ui designer for welcome dialog box
John W. Eaton <jwe@octave.org>
parents:
17515
diff
changeset
|
120 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
121 QVBoxLayout *new_layout = new QVBoxLayout (); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
122 setLayout (new_layout); |
17611
0dd2cf2e3174
don't use ui designer for welcome dialog box
John W. Eaton <jwe@octave.org>
parents:
17515
diff
changeset
|
123 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
124 new_layout->addWidget (m_current_page); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
125 } |
13668
421afeae929b
Added a settings wizard that appears at first startup of Octave GUI.
Jacob Dawid <jacob.dawid@googlemail.com>
parents:
diff
changeset
|
126 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
127 void welcome_wizard::previous_page (void) |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
128 { |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
129 --m_page_list_iterator; |
17611
0dd2cf2e3174
don't use ui designer for welcome dialog box
John W. Eaton <jwe@octave.org>
parents:
17515
diff
changeset
|
130 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
131 show_page (); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
132 } |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
133 |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
134 void welcome_wizard::next_page (void) |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
135 { |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
136 ++m_page_list_iterator; |
17611
0dd2cf2e3174
don't use ui designer for welcome dialog box
John W. Eaton <jwe@octave.org>
parents:
17515
diff
changeset
|
137 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
138 show_page (); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
139 } |
17611
0dd2cf2e3174
don't use ui designer for welcome dialog box
John W. Eaton <jwe@octave.org>
parents:
17515
diff
changeset
|
140 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
141 void welcome_wizard::accept (void) |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
142 { |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
143 // Create default settings file. |
17611
0dd2cf2e3174
don't use ui designer for welcome dialog box
John W. Eaton <jwe@octave.org>
parents:
17515
diff
changeset
|
144 |
31638
474e184321d3
move some functions from resource_manager to gui_settings
John W. Eaton <jwe@octave.org>
parents:
31619
diff
changeset
|
145 gui_settings settings; |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17937
diff
changeset
|
146 |
31639
ca7d58406f82
eliminate unnecessary uses of octave_qobject in GUI classes
John W. Eaton <jwe@octave.org>
parents:
31638
diff
changeset
|
147 settings.setValue (nr_allow_connection.key, m_allow_web_connect_state); |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17937
diff
changeset
|
148 |
31619
ad014fc78bd6
use individual local gui_settings objects
John W. Eaton <jwe@octave.org>
parents:
30964
diff
changeset
|
149 settings.sync (); |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17937
diff
changeset
|
150 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
151 QDialog::accept (); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
152 } |
17940
b3e4ee8f4d6d
respect option for opting out of web connections for community news
John W. Eaton <jwe@octave.org>
parents:
17937
diff
changeset
|
153 |
31639
ca7d58406f82
eliminate unnecessary uses of octave_qobject in GUI classes
John W. Eaton <jwe@octave.org>
parents:
31638
diff
changeset
|
154 initial_page::initial_page (welcome_wizard *wizard) |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
155 : QWidget (wizard), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
156 m_title (new QLabel (tr ("Welcome to Octave!"), this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
157 m_message (new QLabel (this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
158 m_logo (make_octave_logo (this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
159 m_next (new QPushButton (tr ("Next"), this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
160 m_cancel (new QPushButton (tr ("Cancel"), this)) |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
161 { |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
162 QFont ft; |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
163 ft.setPointSize (20); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
164 m_title->setFont (ft); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
165 |
31638
474e184321d3
move some functions from resource_manager to gui_settings
John W. Eaton <jwe@octave.org>
parents:
31619
diff
changeset
|
166 gui_settings settings; |
27620
45bb5bbaf291
don't use singleton pattern for resource manager in GUI
John W. Eaton <jwe@octave.org>
parents:
27613
diff
changeset
|
167 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
168 m_message->setText |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
169 (tr ("<html><body>\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
170 "<p>You seem to be using the Octave graphical interface for the first time on this computer.\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
171 "Click 'Next' to create a configuration file and launch Octave.</p>\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
172 "<p>The configuration file is stored in<br>%1.</p>\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
173 "</body></html>"). |
31638
474e184321d3
move some functions from resource_manager to gui_settings
John W. Eaton <jwe@octave.org>
parents:
31619
diff
changeset
|
174 arg (settings.file_name ())); |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
175 m_message->setWordWrap (true); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
176 m_message->setMinimumWidth (400); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
177 |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
178 QVBoxLayout *message_layout = new QVBoxLayout; |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
179 |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
180 message_layout->addWidget (m_title); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
181 message_layout->addWidget (m_message); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
182 |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
183 QHBoxLayout *message_and_logo = new QHBoxLayout; |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
184 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
185 message_and_logo->addLayout (message_layout); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
186 message_and_logo->addStretch (10); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
187 message_and_logo->addWidget (m_logo, 0, Qt::AlignTop); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
188 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
189 QHBoxLayout *button_bar = new QHBoxLayout; |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
190 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
191 button_bar->addStretch (10); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
192 button_bar->addWidget (m_next); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
193 button_bar->addWidget (m_cancel); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
194 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
195 QVBoxLayout *page_layout = new QVBoxLayout (this); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
196 setLayout (page_layout); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
197 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
198 page_layout->addLayout (message_and_logo); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
199 page_layout->addStretch (10); |
27087
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
200 page_layout->addSpacing (20); |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
201 page_layout->addLayout (button_bar); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
202 |
27087
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
203 setSizePolicy (QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
204 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
205 m_next->setDefault (true); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
206 m_next->setFocus (); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
207 |
29542
3d34b70b5a49
connect many Qt signals and slots without SIGNAL and SLOT macros
John W. Eaton <jwe@octave.org>
parents:
29523
diff
changeset
|
208 connect (m_next, &QPushButton::clicked, wizard, &welcome_wizard::next_page); |
3d34b70b5a49
connect many Qt signals and slots without SIGNAL and SLOT macros
John W. Eaton <jwe@octave.org>
parents:
29523
diff
changeset
|
209 connect (m_cancel, &QPushButton::clicked, wizard, &welcome_wizard::reject); |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
210 } |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
211 |
31639
ca7d58406f82
eliminate unnecessary uses of octave_qobject in GUI classes
John W. Eaton <jwe@octave.org>
parents:
31638
diff
changeset
|
212 setup_community_news::setup_community_news (welcome_wizard *wizard) |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
213 : QWidget (wizard), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
214 m_title (new QLabel (tr ("Community News"), this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
215 m_message (new QLabel (this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
216 m_checkbox (new QCheckBox (this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
217 m_checkbox_message (new QLabel (this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
218 m_logo (make_octave_logo (this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
219 m_previous (new QPushButton (tr ("Previous"), this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
220 m_next (new QPushButton (tr ("Next"), this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
221 m_cancel (new QPushButton (tr ("Cancel"), this)) |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
222 { |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
223 QFont ft; |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
224 ft.setPointSize (20); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
225 m_title->setFont (ft); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
226 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
227 m_message->setText |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
228 (tr ("<html><body>\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
229 "<p>When Octave starts, it will optionally check the Octave web site for current news and information about the Octave community.\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
230 "The check will happen at most once each day and news will only be displayed if there is something new since the last time you viewed the news.</p>\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
231 "<p>You may also view the news by selecting the \"Community News\" item in the \"Help\" menu, or by visiting\n" |
25024
3c817af70eed
maint: use https for all Octave project URLs
Mike Miller <mtmiller@octave.org>
parents:
24718
diff
changeset
|
232 "<a href=\"https://octave.org/community-news.html\">https://octave.org/community-news.html</a>.</p>\n" |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
233 "</body></html>")); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
234 m_message->setWordWrap (true); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
235 m_message->setMinimumWidth (400); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
236 m_message->setOpenExternalLinks (true); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
237 |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
238 QVBoxLayout *message_layout = new QVBoxLayout; |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
239 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
240 message_layout->addWidget (m_title); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
241 message_layout->addWidget (m_message); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
242 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
243 QHBoxLayout *message_and_logo = new QHBoxLayout; |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
244 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
245 message_and_logo->addLayout (message_layout); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
246 message_and_logo->addStretch (10); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
247 message_and_logo->addWidget (m_logo, 0, Qt::AlignTop); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
248 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
249 QHBoxLayout *checkbox_layout = new QHBoxLayout; |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
250 |
27613
deb8877f2c34
use symbolic constants for preferences key and default values in news reader
Torsten Lilge <ttl-octave@mailbox.org>
parents:
27611
diff
changeset
|
251 bool allow_connection = nr_allow_connection.def.toBool (); |
deb8877f2c34
use symbolic constants for preferences key and default values in news reader
Torsten Lilge <ttl-octave@mailbox.org>
parents:
27611
diff
changeset
|
252 if (allow_connection) |
deb8877f2c34
use symbolic constants for preferences key and default values in news reader
Torsten Lilge <ttl-octave@mailbox.org>
parents:
27611
diff
changeset
|
253 m_checkbox->setCheckState (Qt::Checked); |
deb8877f2c34
use symbolic constants for preferences key and default values in news reader
Torsten Lilge <ttl-octave@mailbox.org>
parents:
27611
diff
changeset
|
254 else |
deb8877f2c34
use symbolic constants for preferences key and default values in news reader
Torsten Lilge <ttl-octave@mailbox.org>
parents:
27611
diff
changeset
|
255 m_checkbox->setCheckState (Qt::Unchecked); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
256 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
257 m_checkbox_message->setText |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
258 (tr ("<html><head>\n" |
26786
bb3a441addb0
* welcome-wizard.cc (setup_community_news): fix incorrect head tag
Torsten <mttl@mailbox.org>
parents:
26643
diff
changeset
|
259 "</head><body>\n" |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
260 "<p>Allow Octave to connect to the Octave web site when it starts to display current news and information about the Octave community.</p>\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
261 "</body></html>")); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
262 m_checkbox_message->setWordWrap (true); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
263 m_checkbox_message->setOpenExternalLinks (true); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
264 m_checkbox_message->setMinimumWidth (500); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
265 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
266 checkbox_layout->addWidget (m_checkbox, 0, Qt::AlignTop); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
267 checkbox_layout->addSpacing (20); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
268 checkbox_layout->addWidget (m_checkbox_message, 0, Qt::AlignTop); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
269 checkbox_layout->addStretch (10); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
270 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
271 QVBoxLayout *message_logo_and_checkbox = new QVBoxLayout; |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
272 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
273 message_logo_and_checkbox->addLayout (message_and_logo); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
274 message_logo_and_checkbox->addSpacing (20); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
275 message_logo_and_checkbox->addLayout (checkbox_layout); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
276 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
277 QHBoxLayout *button_bar = new QHBoxLayout; |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
278 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
279 button_bar->addStretch (10); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
280 button_bar->addWidget (m_previous); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
281 button_bar->addWidget (m_next); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
282 button_bar->addWidget (m_cancel); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
283 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
284 QVBoxLayout *page_layout = new QVBoxLayout (this); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
285 setLayout (page_layout); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
286 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
287 page_layout->addLayout (message_logo_and_checkbox); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
288 page_layout->addStretch (10); |
27087
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
289 page_layout->addSpacing (20); |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
290 page_layout->addLayout (button_bar); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
291 |
27087
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
292 setSizePolicy (QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
293 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
294 m_next->setDefault (true); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
295 m_next->setFocus (); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
296 |
29542
3d34b70b5a49
connect many Qt signals and slots without SIGNAL and SLOT macros
John W. Eaton <jwe@octave.org>
parents:
29523
diff
changeset
|
297 connect (m_checkbox, &QCheckBox::stateChanged, |
3d34b70b5a49
connect many Qt signals and slots without SIGNAL and SLOT macros
John W. Eaton <jwe@octave.org>
parents:
29523
diff
changeset
|
298 wizard, &welcome_wizard::handle_web_connect_option); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
299 |
29542
3d34b70b5a49
connect many Qt signals and slots without SIGNAL and SLOT macros
John W. Eaton <jwe@octave.org>
parents:
29523
diff
changeset
|
300 connect (m_previous, &QPushButton::clicked, wizard, &welcome_wizard::previous_page); |
3d34b70b5a49
connect many Qt signals and slots without SIGNAL and SLOT macros
John W. Eaton <jwe@octave.org>
parents:
29523
diff
changeset
|
301 connect (m_next, &QPushButton::clicked, wizard, &welcome_wizard::next_page); |
3d34b70b5a49
connect many Qt signals and slots without SIGNAL and SLOT macros
John W. Eaton <jwe@octave.org>
parents:
29523
diff
changeset
|
302 connect (m_cancel, &QPushButton::clicked, wizard, &welcome_wizard::reject); |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
303 } |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
304 |
31639
ca7d58406f82
eliminate unnecessary uses of octave_qobject in GUI classes
John W. Eaton <jwe@octave.org>
parents:
31638
diff
changeset
|
305 final_page::final_page (welcome_wizard *wizard) |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
306 : QWidget (wizard), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
307 m_title (new QLabel (tr ("Enjoy!"), this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
308 m_message (new QLabel (this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
309 m_logo (make_octave_logo (this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
310 m_links (new QLabel (this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
311 m_previous (new QPushButton (tr ("Previous"), this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
312 m_finish (new QPushButton (tr ("Finish"), this)), |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
313 m_cancel (new QPushButton (tr ("Cancel"), this)) |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
314 { |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
315 QFont ft; |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
316 ft.setPointSize (20); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
317 m_title->setFont (ft); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
318 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
319 m_message->setText |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
320 (tr ("<html><body>\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
321 "<p>We hope you find Octave to be a useful tool.</p>\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
322 "<p>If you encounter problems, there are a number of ways to get help, including commercial support options, a mailing list, a wiki, and other community-based support channels.\n" |
25024
3c817af70eed
maint: use https for all Octave project URLs
Mike Miller <mtmiller@octave.org>
parents:
24718
diff
changeset
|
323 "You can find more information about each of these by visiting <a href=\"https://octave.org/support.html\">https://octave.org/support.html</a> (opens in external browser).</p>\n" |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
324 "</body></html>")); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
325 m_message->setWordWrap (true); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
326 m_message->setMinimumWidth (400); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
327 m_message->setOpenExternalLinks (true); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
328 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
329 QVBoxLayout *message_layout = new QVBoxLayout; |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
330 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
331 message_layout->addWidget (m_title); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
332 message_layout->addWidget (m_message); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
333 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
334 QHBoxLayout *message_and_logo = new QHBoxLayout; |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
335 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
336 message_and_logo->addLayout (message_layout); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
337 message_and_logo->addStretch (10); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
338 message_and_logo->addWidget (m_logo, 0, Qt::AlignTop); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
339 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
340 m_links->setText |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
341 (tr ("<html><head>\n" |
26333
13c62f51e830
welcome-wizard.cc: Fix 2 typos in HTML. (bug #55347)
Doug Stewart
parents:
25054
diff
changeset
|
342 "</head><body>\n" |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
343 "<p>For more information about Octave:</p>\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
344 "<ul>\n" |
25024
3c817af70eed
maint: use https for all Octave project URLs
Mike Miller <mtmiller@octave.org>
parents:
24718
diff
changeset
|
345 "<li>Visit <a href=\"https://octave.org\">https://octave.org</a> (opens in external browser)</li>\n" |
26333
13c62f51e830
welcome-wizard.cc: Fix 2 typos in HTML. (bug #55347)
Doug Stewart
parents:
25054
diff
changeset
|
346 "<li>Get the documentation online as <a href=\"https://www.gnu.org/software/octave/doc/interpreter/index.html\">html</a>- or <a href=\"https://www.gnu.org/software/octave/octave.pdf\">pdf</a>-document (opens in external browser)</li>\n" |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
347 "<li>Open the documentation browser of the Octave GUI with the help menu</li>\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
348 "</ul>\n" |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
349 "</body></html>")); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
350 m_links->setWordWrap (true); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
351 m_links->setOpenExternalLinks (true); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
352 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
353 QHBoxLayout *button_bar = new QHBoxLayout; |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
354 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
355 button_bar->addStretch (10); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
356 button_bar->addWidget (m_previous); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
357 button_bar->addWidget (m_finish); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
358 button_bar->addWidget (m_cancel); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
359 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
360 QVBoxLayout *page_layout = new QVBoxLayout (this); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
361 setLayout (page_layout); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
362 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
363 page_layout->addLayout (message_and_logo); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
364 page_layout->addSpacing (20); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
365 page_layout->addWidget (m_links); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
366 page_layout->addStretch (10); |
27087
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
367 page_layout->addSpacing (20); |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
368 page_layout->addLayout (button_bar); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
369 |
27087
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
370 setSizePolicy (QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); |
4092ffc1e43c
fix size of the welcome wizard (bug #56265)
Torsten Lilge <ttl-octave@mailbox.org>
parents:
26786
diff
changeset
|
371 |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
372 m_finish->setDefault (true); |
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
373 m_finish->setFocus (); |
24014
bffd7d826887
style fixes for some GUI source files
John W. Eaton <jwe@octave.org>
parents:
23457
diff
changeset
|
374 |
29542
3d34b70b5a49
connect many Qt signals and slots without SIGNAL and SLOT macros
John W. Eaton <jwe@octave.org>
parents:
29523
diff
changeset
|
375 connect (m_previous, &QPushButton::clicked, |
3d34b70b5a49
connect many Qt signals and slots without SIGNAL and SLOT macros
John W. Eaton <jwe@octave.org>
parents:
29523
diff
changeset
|
376 wizard, &welcome_wizard::previous_page); |
3d34b70b5a49
connect many Qt signals and slots without SIGNAL and SLOT macros
John W. Eaton <jwe@octave.org>
parents:
29523
diff
changeset
|
377 connect (m_finish, &QPushButton::clicked, wizard, &welcome_wizard::accept); |
3d34b70b5a49
connect many Qt signals and slots without SIGNAL and SLOT macros
John W. Eaton <jwe@octave.org>
parents:
29523
diff
changeset
|
378 connect (m_cancel, &QPushButton::clicked, wizard, &welcome_wizard::reject); |
24718
ea1c88bd4430
move more GUI classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
379 } |
31646
c6d54dd31a7e
maint: Use macros to begin/end C++ namespaces.
John W. Eaton <jwe@octave.org>
parents:
30964
diff
changeset
|
380 |
c6d54dd31a7e
maint: Use macros to begin/end C++ namespaces.
John W. Eaton <jwe@octave.org>
parents:
30964
diff
changeset
|
381 OCTAVE_END_NAMESPACE(octave) |