annotate examples/dialogs/classwizard/classwizard_d1.d @ 282:256ab6cb8e85

Signals look-up andNew syntax for connect. The old one will not work from now on. This will allow for the signals overload. Although changes are done for both D1 and D2 versions, D1 won't work because of compiler bugs. I am tired of waiting for fixes.
author eldar
date Fri, 16 Oct 2009 02:43:59 +0000
parents 073b9153ed8a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
216
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
1 /****************************************************************************
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
2 **
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
4 ** Contact: Qt Software Information (qt-info@nokia.com)
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
5 **
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
6 ** This file is part of the examples of the Qt Toolkit.
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
7 **
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
8 ** $QT_BEGIN_LICENSE:LGPL$
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
9 ** Commercial Usage
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
10 ** Licensees holding valid Qt Commercial licenses may use this file in
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
11 ** accordance with the Qt Commercial License Agreement provided with the
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
12 ** Software or, alternatively, in accordance with the terms contained in
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
13 ** a written agreement between you and Nokia.
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
14 **
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
15 ** GNU Lesser General Public License Usage
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
16 ** Alternatively, this file may be used under the terms of the GNU Lesser
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
17 ** General Public License version 2.1 as published by the Free Software
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
18 ** Foundation and appearing in the file LICENSE.LGPL included in the
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
19 ** packaging of this file. Please review the following information to
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
20 ** ensure the GNU Lesser General Public License version 2.1 requirements
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
21 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
22 **
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
23 ** In addition, as a special exception, Nokia gives you certain
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
24 ** additional rights. These rights are described in the Nokia Qt LGPL
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
25 ** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
26 ** package.
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
27 **
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
28 ** GNU General Public License Usage
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
29 ** Alternatively, this file may be used under the terms of the GNU
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
30 ** General Public License version 3.0 as published by the Free Software
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
31 ** Foundation and appearing in the file LICENSE.GPL included in the
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
32 ** packaging of this file. Please review the following information to
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
33 ** ensure the GNU General Public License version 3.0 requirements will be
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
34 ** met: http://www.gnu.org/copyleft/gpl.html.
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
35 **
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
36 ** If you are unsure which license is appropriate for your use, please
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
37 ** contact the sales department at qt-sales@nokia.com.
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
38 ** $QT_END_LICENSE$
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
39 **
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
40 ****************************************************************************/
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
41 module classwizard_d1;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
42
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
43 import qt.gui.QWizardPage;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
44 import qt.gui.QCheckBox;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
45 import qt.gui.QGroupBox;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
46 import qt.gui.QLabel;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
47 import qt.gui.QLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
48 import qt.gui.QRadioButton;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
49 import qt.gui.QMessageBox;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
50 import qt.gui.QVBoxLayout;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
51 import qt.gui.QGridLayout;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
52 import qt.core.QFile;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
53 import qt.core.QDir;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
54 import qt.core.QRegExp;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
55
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
56 import tango.text.convert.Format;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
57 import tango.core.Array;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
58 import tango.text.Ascii;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
59
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
60
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
61 class ClassWizard : public QWizard
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
62 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
63 public:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
64
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
65 this(QWidget parent = null)
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
66 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
67 super(parent);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
68 addPage(new IntroPage);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
69 addPage(new ClassInfoPage);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
70 addPage(new CodeStylePage);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
71 addPage(new OutputFilesPage);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
72 addPage(new ConclusionPage);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
73
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
74 setPixmap(QWizard.BannerPixmap, new QPixmap(":/images/banner.png"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
75 setPixmap(QWizard.BackgroundPixmap, new QPixmap(":/images/background.png"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
76
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
77 setWindowTitle(tr("Class Wizard"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
78 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
79
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
80 void accept()
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
81 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
82 string className = field("className").toString();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
83 string baseClass = field("baseClass").toString();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
84 string macroName = field("macroName").toString();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
85 string baseInclude = field("baseInclude").toString();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
86
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
87 string outputDir = field("outputDir").toString();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
88 string header = field("header").toString();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
89 string implementation = field("implementation").toString();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
90
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
91 string block;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
92
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
93 if (field("comment").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
94 block ~= "/*\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
95 block ~= " " ~ header ~ "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
96 block ~= "*/\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
97 block ~= "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
98 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
99 if (field("protect").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
100 block ~= "#ifndef " ~ macroName ~ "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
101 block ~= "#define " ~ macroName ~ "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
102 block ~= "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
103 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
104 if (field("includeBase").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
105 block ~= "#include " ~ baseInclude ~ "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
106 block ~= "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
107 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
108
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
109 block ~= "class " ~ className;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
110 if (baseClass.length)
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
111 block ~= " : public " ~ baseClass;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
112 block ~= "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
113 block ~= "{\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
114
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
115 /* qmake ignore */
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
116
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
117 if (field("qobjectMacro").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
118 block ~= " \n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
119 block ~= "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
120 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
121 block ~= "public:\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
122
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
123 if (field("qobjectCtor").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
124 block ~= " " ~ className ~ "(QObject *parent = 0);\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
125 } else if (field("qwidgetCtor").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
126 block ~= " " ~ className ~ "(QWidget *parent = 0);\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
127 } else if (field("defaultCtor").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
128 block ~= " " ~ className ~ "();\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
129 if (field("copyCtor").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
130 block ~= " " ~ className ~ "(const " ~ className ~ " &other);\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
131 block ~= "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
132 block ~= " " ~ className ~ " &operator=" ~ "(const " ~ className ~ " &other);\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
133 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
134 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
135 block ~= "};\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
136
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
137 if (field("protect").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
138 block ~= "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
139 block ~= "#endif\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
140 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
141
253
073b9153ed8a Rev. 264 done right.
maxter
parents: 216
diff changeset
142 scope headerFile = new QFile(outputDir ~ "/" ~ header);
216
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
143 if (!headerFile.open(QFile.WriteOnly | QFile.Text)) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
144 QMessageBox.warning(null, tr("Simple Wizard"),
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
145 Format(tr("Cannot write file {}:\n{}"),
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
146 headerFile.fileName(),
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
147 headerFile.errorString()));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
148 return;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
149 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
150 headerFile.write(block);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
151
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
152 block.length = 0;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
153
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
154 if (field("comment").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
155 block ~= "/*\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
156 block ~= " " ~ implementation ~ "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
157 block ~= "*/\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
158 block ~= "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
159 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
160 block ~= "#include \"" ~ header ~ "\"\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
161 block ~= "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
162
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
163 if (field("qobjectCtor").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
164 block ~= className ~ "." ~ className ~ "(QObject *parent)\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
165 block ~= " : " ~ baseClass ~ "(parent)\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
166 block ~= "{\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
167 block ~= "}\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
168 } else if (field("qwidgetCtor").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
169 block ~= className ~ "." ~ className ~ "(QWidget *parent)\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
170 block ~= " : " ~ baseClass ~ "(parent)\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
171 block ~= "{\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
172 block ~= "}\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
173 } else if (field("defaultCtor").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
174 block ~= className ~ "." ~ className ~ "()\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
175 block ~= "{\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
176 block ~= " // missing code\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
177 block ~= "}\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
178
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
179 if (field("copyCtor").toBool()) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
180 block ~= "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
181 block ~= className ~ "." ~ className ~ "(const " ~ className ~ " &other)\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
182 block ~= "{\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
183 block ~= " *this = other;\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
184 block ~= "}\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
185 block ~= "\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
186 block ~= className ~ " &" ~ className ~ ".operator=(const " ~ className ~ " &other)\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
187 block ~= "{\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
188 if (baseClass.length)
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
189 block ~= " " ~ baseClass ~ ".operator=(other);\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
190 block ~= " // missing code\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
191 block ~= " return *this;\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
192 block ~= "}\n";
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
193 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
194 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
195
253
073b9153ed8a Rev. 264 done right.
maxter
parents: 216
diff changeset
196 scope implementationFile = new QFile(outputDir ~ "/" ~ implementation);
216
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
197 if (!implementationFile.open(QFile.WriteOnly | QFile.Text)) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
198 QMessageBox.warning(null, tr("Simple Wizard"),
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
199 Format(tr("Cannot write file {}:\n{}"),
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
200 implementationFile.fileName(),
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
201 implementationFile.errorString()));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
202 return;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
203 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
204 implementationFile.write(block);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
205
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
206 QDialog.accept();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
207 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
208 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
209
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
210
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
211 class IntroPage : public QWizardPage
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
212 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
213 public:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
214
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
215 this(QWidget parent = null)
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
216 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
217 super(parent);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
218 setTitle(tr("Introduction"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
219 setPixmap(QWizard.WatermarkPixmap, new QPixmap(":/images/watermark1.png"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
220
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
221 label = new QLabel(tr("This wizard will generate a skeleton C++ class "
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
222 "definition, including a few functions. You simply "
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
223 "need to specify the class name and set a few "
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
224 "options to produce a header file and an "
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
225 "implementation file for your new C++ class."));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
226 label.setWordWrap(true);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
227
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
228 QVBoxLayout layout = new QVBoxLayout;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
229 layout.addWidget(label);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
230 setLayout(layout);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
231 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
232
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
233 private:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
234
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
235 QLabel label;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
236 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
237
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
238 class ClassInfoPage : public QWizardPage
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
239 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
240 public:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
241
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
242 this(QWidget parent = null)
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
243 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
244 super(parent);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
245 setTitle(tr("Class Information"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
246 setSubTitle(tr("Specify basic information about the class for which you want to generate skeleton source code files."));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
247 setPixmap(QWizard.LogoPixmap, new QPixmap(":/images/logo1.png"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
248
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
249 classNameLabel = new QLabel(tr("&Class name:"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
250 classNameLineEdit = new QLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
251 classNameLabel.setBuddy(classNameLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
252
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
253 baseClassLabel = new QLabel(tr("B&ase class:"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
254 baseClassLineEdit = new QLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
255 baseClassLabel.setBuddy(baseClassLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
256
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
257 qobjectMacroCheckBox = new QCheckBox(tr("Generate &macro"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
258
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
259 groupBox = new QGroupBox(tr("C&onstructor"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
260
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
261 qobjectCtorRadioButton = new QRadioButton(tr("&QObject-style constructor"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
262 qwidgetCtorRadioButton = new QRadioButton(tr("Q&Widget-style constructor"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
263 defaultCtorRadioButton = new QRadioButton(tr("&Default constructor"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
264 copyCtorCheckBox = new QCheckBox(tr("&Generate copy constructor and operator="));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
265
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
266 defaultCtorRadioButton.setChecked(true);
282
256ab6cb8e85 Signals look-up andNew syntax for connect. The old one will not work from now on. This will allow for the signals overload. Although changes are done for both D1 and D2 versions, D1 won't work because of compiler bugs. I am tired of waiting for fixes.
eldar
parents: 253
diff changeset
267 connect!("toggled")(defaultCtorRadioButton, &copyCtorCheckBox.setEnabled);
216
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
268
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
269 registerField("className*", classNameLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
270 registerField("baseClass", baseClassLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
271 registerField("qobjectMacro", qobjectMacroCheckBox);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
272 registerField("qobjectCtor", qobjectCtorRadioButton);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
273 registerField("qwidgetCtor", qwidgetCtorRadioButton);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
274 registerField("defaultCtor", defaultCtorRadioButton);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
275 registerField("copyCtor", copyCtorCheckBox);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
276
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
277 QVBoxLayout groupBoxLayout = new QVBoxLayout;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
278
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
279 groupBoxLayout.addWidget(qobjectCtorRadioButton);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
280 groupBoxLayout.addWidget(qwidgetCtorRadioButton);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
281 groupBoxLayout.addWidget(defaultCtorRadioButton);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
282 groupBoxLayout.addWidget(copyCtorCheckBox);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
283 groupBox.setLayout(groupBoxLayout);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
284
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
285 QGridLayout layout = new QGridLayout;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
286 layout.addWidget(classNameLabel, 0, 0);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
287 layout.addWidget(classNameLineEdit, 0, 1);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
288 layout.addWidget(baseClassLabel, 1, 0);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
289 layout.addWidget(baseClassLineEdit, 1, 1);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
290 layout.addWidget(qobjectMacroCheckBox, 2, 0, 1, 2);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
291 layout.addWidget(groupBox, 3, 0, 1, 2);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
292 setLayout(layout);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
293 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
294
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
295 private:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
296
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
297 QLabel classNameLabel;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
298 QLabel baseClassLabel;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
299 QLineEdit classNameLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
300 QLineEdit baseClassLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
301 QCheckBox qobjectMacroCheckBox;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
302 QGroupBox groupBox;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
303 QRadioButton qobjectCtorRadioButton;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
304 QRadioButton qwidgetCtorRadioButton;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
305 QRadioButton defaultCtorRadioButton;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
306 QCheckBox copyCtorCheckBox;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
307 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
308
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
309 class CodeStylePage : public QWizardPage
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
310 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
311 public:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
312
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
313 this(QWidget parent = null)
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
314 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
315 super(parent);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
316 setTitle(tr("Code Style Options"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
317 setSubTitle(tr("Choose the formatting of the generated code."));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
318 setPixmap(QWizard.LogoPixmap, new QPixmap(":/images/logo2.png"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
319
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
320 commentCheckBox = new QCheckBox(tr("&Start generated files with a comment"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
321 commentCheckBox.setChecked(true);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
322
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
323 protectCheckBox = new QCheckBox(tr("&Protect header file against multiple inclusions"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
324 protectCheckBox.setChecked(true);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
325
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
326 macroNameLabel = new QLabel(tr("&Macro name:"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
327 macroNameLineEdit = new QLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
328 macroNameLabel.setBuddy(macroNameLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
329
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
330 includeBaseCheckBox = new QCheckBox(tr("&Include base class definition"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
331 baseIncludeLabel = new QLabel(tr("Base class include:"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
332 baseIncludeLineEdit = new QLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
333 baseIncludeLabel.setBuddy(baseIncludeLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
334
282
256ab6cb8e85 Signals look-up andNew syntax for connect. The old one will not work from now on. This will allow for the signals overload. Although changes are done for both D1 and D2 versions, D1 won't work because of compiler bugs. I am tired of waiting for fixes.
eldar
parents: 253
diff changeset
335 connect!("toggled")(protectCheckBox, &macroNameLabel.setEnabled);
256ab6cb8e85 Signals look-up andNew syntax for connect. The old one will not work from now on. This will allow for the signals overload. Although changes are done for both D1 and D2 versions, D1 won't work because of compiler bugs. I am tired of waiting for fixes.
eldar
parents: 253
diff changeset
336 // ? connect!("toggled")(protectCheckBox, &macroNameLabel.setEnabled);
256ab6cb8e85 Signals look-up andNew syntax for connect. The old one will not work from now on. This will allow for the signals overload. Although changes are done for both D1 and D2 versions, D1 won't work because of compiler bugs. I am tired of waiting for fixes.
eldar
parents: 253
diff changeset
337 connect!("toggled")(includeBaseCheckBox, &macroNameLabel.setEnabled);
256ab6cb8e85 Signals look-up andNew syntax for connect. The old one will not work from now on. This will allow for the signals overload. Although changes are done for both D1 and D2 versions, D1 won't work because of compiler bugs. I am tired of waiting for fixes.
eldar
parents: 253
diff changeset
338 // ? connect!("toggled")(includeBaseCheckBox, &macroNameLabel.setEnabled);
216
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
339
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
340 registerField("comment", commentCheckBox);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
341 registerField("protect", protectCheckBox);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
342 registerField("macroName", macroNameLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
343 registerField("includeBase", includeBaseCheckBox);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
344 registerField("baseInclude", baseIncludeLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
345
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
346 QGridLayout layout = new QGridLayout;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
347 layout.setColumnMinimumWidth(0, 20);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
348 layout.addWidget(commentCheckBox, 0, 0, 1, 3);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
349 layout.addWidget(protectCheckBox, 1, 0, 1, 3);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
350 layout.addWidget(macroNameLabel, 2, 1);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
351 layout.addWidget(macroNameLineEdit, 2, 2);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
352 layout.addWidget(includeBaseCheckBox, 3, 0, 1, 3);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
353 layout.addWidget(baseIncludeLabel, 4, 1);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
354 layout.addWidget(baseIncludeLineEdit, 4, 2);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
355
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
356 setLayout(layout);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
357 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
358
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
359 protected:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
360
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
361 void initializePage()
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
362 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
363 string className = field("className").toString();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
364 macroNameLineEdit.setText(toUpper(className) ~ "_H");
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
365
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
366 string baseClass = field("baseClass").toString();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
367
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
368 includeBaseCheckBox.setChecked(baseClass.length != 0);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
369 includeBaseCheckBox.setEnabled(baseClass.length != 0);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
370 baseIncludeLabel.setEnabled(baseClass.length != 0);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
371 baseIncludeLineEdit.setEnabled(baseClass.length != 0);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
372
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
373 if (baseClass.length == 0) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
374 baseIncludeLineEdit.clear();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
375 } else if ((new QRegExp("Q[A-Z].*")).exactMatch(baseClass)) {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
376 baseIncludeLineEdit.setText("<" ~ baseClass ~ ">");
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
377 } else {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
378 baseIncludeLineEdit.setText("\"" ~ toLower(baseClass) ~ ".h\"");
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
379 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
380 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
381
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
382 private:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
383
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
384 QCheckBox commentCheckBox;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
385 QCheckBox protectCheckBox;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
386 QCheckBox includeBaseCheckBox;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
387 QLabel macroNameLabel;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
388 QLabel baseIncludeLabel;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
389 QLineEdit macroNameLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
390 QLineEdit baseIncludeLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
391 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
392
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
393 class OutputFilesPage : public QWizardPage
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
394 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
395 public:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
396
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
397 this(QWidget parent = null)
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
398 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
399 super(parent);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
400 setTitle(tr("Output Files"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
401 setSubTitle(tr("Specify where you want the wizard to put the generated skeleton code."));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
402 setPixmap(QWizard.LogoPixmap, new QPixmap(":/images/logo3.png"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
403
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
404 outputDirLabel = new QLabel(tr("&Output directory:"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
405 outputDirLineEdit = new QLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
406 outputDirLabel.setBuddy(outputDirLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
407
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
408 headerLabel = new QLabel(tr("&Header file name:"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
409 headerLineEdit = new QLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
410 headerLabel.setBuddy(headerLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
411
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
412 implementationLabel = new QLabel(tr("&Implementation file name:"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
413 implementationLineEdit = new QLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
414 implementationLabel.setBuddy(implementationLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
415
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
416 registerField("outputDir*", outputDirLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
417 registerField("header*", headerLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
418 registerField("implementation*", implementationLineEdit);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
419
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
420 QGridLayout layout = new QGridLayout;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
421 layout.addWidget(outputDirLabel, 0, 0);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
422 layout.addWidget(outputDirLineEdit, 0, 1);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
423 layout.addWidget(headerLabel, 1, 0);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
424 layout.addWidget(headerLineEdit, 1, 1);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
425 layout.addWidget(implementationLabel, 2, 0);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
426 layout.addWidget(implementationLineEdit, 2, 1);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
427 setLayout(layout);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
428 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
429
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
430 protected:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
431
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
432 void initializePage()
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
433 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
434 string className = field("className").toString();
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
435 headerLineEdit.setText(toLower(className) ~ ".h");
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
436 implementationLineEdit.setText(toLower(className) ~ ".cpp");
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
437 outputDirLineEdit.setText(QDir.convertSeparators(QDir.tempPath()));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
438 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
439
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
440 private:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
441
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
442 QLabel outputDirLabel;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
443 QLabel headerLabel;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
444 QLabel implementationLabel;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
445 QLineEdit outputDirLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
446 QLineEdit headerLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
447 QLineEdit implementationLineEdit;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
448 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
449
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
450 class ConclusionPage : public QWizardPage
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
451 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
452 public:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
453
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
454 this(QWidget parent = null)
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
455 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
456 super(parent);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
457 setTitle(tr("Conclusion"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
458 setPixmap(QWizard.WatermarkPixmap, new QPixmap(":/images/watermark2.png"));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
459
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
460 label = new QLabel;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
461 label.setWordWrap(true);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
462
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
463 QVBoxLayout layout = new QVBoxLayout;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
464 layout.addWidget(label);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
465 setLayout(layout);
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
466 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
467
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
468 protected:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
469
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
470 void initializePage()
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
471 {
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
472 string finishText = wizard().buttonText(QWizard.FinishButton).dup;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
473 label.setText(Format(tr("Click {} to generate the class skeleton."), finishText));
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
474 }
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
475
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
476 private:
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
477
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
478 QLabel label;
06e7d3219464 ups....
SokoL_SD
parents:
diff changeset
479 }