36 #include "glRenderer.h" |
36 #include "glRenderer.h" |
37 #include "documentation.h" |
37 #include "documentation.h" |
38 #include "ldDocument.h" |
38 #include "ldDocument.h" |
39 #include "dialogs.h" |
39 #include "dialogs.h" |
40 #include "ui_overlay.h" |
40 #include "ui_overlay.h" |
41 #include "ui_ldrawpath.h" |
|
42 #include "ui_openprogress.h" |
41 #include "ui_openprogress.h" |
43 #include "ui_extprogpath.h" |
42 #include "ui_extprogpath.h" |
44 #include "ui_about.h" |
43 #include "ui_about.h" |
45 #include "ui_bombbox.h" |
44 #include "ui_bombbox.h" |
46 |
45 |
158 ui->buttonBox->button (QDialogButtonBox::Ok)->setEnabled (enable); |
157 ui->buttonBox->button (QDialogButtonBox::Ok)->setEnabled (enable); |
159 } |
158 } |
160 |
159 |
161 // ============================================================================= |
160 // ============================================================================= |
162 // ============================================================================= |
161 // ============================================================================= |
163 LDrawPathDialog::LDrawPathDialog (const bool validDefault, QWidget* parent, Qt::WindowFlags f) : |
|
164 QDialog (parent, f), |
|
165 m_validDefault (validDefault) |
|
166 { |
|
167 ui = new Ui_LDPathUI; |
|
168 ui->setupUi (this); |
|
169 ui->status->setText ("---"); |
|
170 |
|
171 if (validDefault) |
|
172 ui->heading->hide(); |
|
173 else |
|
174 { |
|
175 cancelButton()->setText ("Exit"); |
|
176 cancelButton()->setIcon (GetIcon ("exit")); |
|
177 } |
|
178 |
|
179 okButton()->setEnabled (false); |
|
180 |
|
181 connect (ui->path, SIGNAL (textEdited (QString)), this, SLOT (slot_tryConfigure())); |
|
182 connect (ui->searchButton, SIGNAL (clicked()), this, SLOT (slot_findPath())); |
|
183 connect (ui->buttonBox, SIGNAL (rejected()), this, validDefault ? SLOT (reject()) : SLOT (slot_exit())); |
|
184 connect (ui->buttonBox, SIGNAL (accepted()), this, SLOT (slot_accept())); |
|
185 |
|
186 setPath (cfg::LDrawPath); |
|
187 |
|
188 if (validDefault) |
|
189 slot_tryConfigure(); |
|
190 } |
|
191 |
|
192 // ============================================================================= |
|
193 // ============================================================================= |
|
194 LDrawPathDialog::~LDrawPathDialog() |
|
195 { |
|
196 delete ui; |
|
197 } |
|
198 |
|
199 QPushButton* LDrawPathDialog::okButton() |
|
200 { |
|
201 return ui->buttonBox->button (QDialogButtonBox::Ok); |
|
202 } |
|
203 |
|
204 QPushButton* LDrawPathDialog::cancelButton() |
|
205 { |
|
206 return ui->buttonBox->button (QDialogButtonBox::Cancel); |
|
207 } |
|
208 |
|
209 void LDrawPathDialog::setPath (QString path) |
|
210 { |
|
211 ui->path->setText (path); |
|
212 } |
|
213 |
|
214 QString LDrawPathDialog::filename() const |
|
215 { |
|
216 return ui->path->text(); |
|
217 } |
|
218 |
|
219 // ============================================================================= |
|
220 // ============================================================================= |
|
221 void LDrawPathDialog::slot_findPath() |
|
222 { |
|
223 QString newpath = QFileDialog::getExistingDirectory (this, "Find LDraw Path"); |
|
224 |
|
225 if (not newpath.isEmpty()) |
|
226 { |
|
227 setPath (newpath); |
|
228 slot_tryConfigure(); |
|
229 } |
|
230 } |
|
231 |
|
232 // ============================================================================= |
|
233 // ============================================================================= |
|
234 void LDrawPathDialog::slot_exit() |
|
235 { |
|
236 Exit(); |
|
237 } |
|
238 |
|
239 // ============================================================================= |
|
240 // ============================================================================= |
|
241 void LDrawPathDialog::slot_tryConfigure() |
|
242 { |
|
243 if (not LDPaths::tryConfigure (filename())) |
|
244 { |
|
245 ui->status->setText (format ("<span style=\"color:#700; \">%1</span>", LDPaths::getError())); |
|
246 okButton()->setEnabled (false); |
|
247 return; |
|
248 } |
|
249 |
|
250 ui->status->setText ("<span style=\"color: #270; \">OK!</span>"); |
|
251 okButton()->setEnabled (true); |
|
252 } |
|
253 |
|
254 // ============================================================================= |
|
255 // ============================================================================= |
|
256 void LDrawPathDialog::slot_accept() |
|
257 { |
|
258 Config::Save(); |
|
259 accept(); |
|
260 } |
|
261 |
|
262 // ============================================================================= |
|
263 // ============================================================================= |
|
264 OpenProgressDialog::OpenProgressDialog (QWidget* parent, Qt::WindowFlags f) : QDialog (parent, f) |
162 OpenProgressDialog::OpenProgressDialog (QWidget* parent, Qt::WindowFlags f) : QDialog (parent, f) |
265 { |
163 { |
266 ui = new Ui_OpenProgressUI; |
164 ui = new Ui_OpenProgressUI; |
267 ui->setupUi (this); |
165 ui->setupUi (this); |
268 ui->progressText->setText ("Parsing..."); |
166 ui->progressText->setText ("Parsing..."); |