| 25 #include "../partdownloader.h" |
25 #include "../partdownloader.h" |
| 26 #include "../primitives.h" |
26 #include "../primitives.h" |
| 27 #include "../dialogs/configdialog.h" |
27 #include "../dialogs/configdialog.h" |
| 28 #include "../dialogs/ldrawpathdialog.h" |
28 #include "../dialogs/ldrawpathdialog.h" |
| 29 #include "../dialogs/newpartdialog.h" |
29 #include "../dialogs/newpartdialog.h" |
| |
30 #include "../dialogs/generateprimitivedialog.h" |
| 30 #include "../documentmanager.h" |
31 #include "../documentmanager.h" |
| 31 #include "filetoolset.h" |
32 #include "filetoolset.h" |
| 32 #include "ui_makeprim.h" |
33 #include "ui_makeprim.h" |
| 33 |
34 |
| 34 FileToolset::FileToolset (MainWindow* parent) : |
35 FileToolset::FileToolset (MainWindow* parent) : |
| 198 dialog->exec(); |
199 dialog->exec(); |
| 199 } |
200 } |
| 200 |
201 |
| 201 void FileToolset::makePrimitive() |
202 void FileToolset::makePrimitive() |
| 202 { |
203 { |
| 203 PrimitivePrompt* dialog = new PrimitivePrompt (m_window); |
204 GeneratePrimitiveDialog* dialog = new GeneratePrimitiveDialog(m_window); |
| 204 |
205 |
| 205 if (not dialog->exec()) |
206 if (not dialog->exec()) |
| 206 return; |
207 return; |
| 207 |
208 |
| 208 int segs = dialog->ui->sb_segs->value(); |
209 LDDocument* primitive = primitives()->generatePrimitive(dialog->spec()); |
| 209 int divs = dialog->ui->cb_hires->isChecked() ? HighResolution : LowResolution; |
|
| 210 int num = dialog->ui->sb_ringnum->value(); |
|
| 211 |
|
| 212 PrimitiveType type = |
|
| 213 dialog->ui->rb_circle->isChecked() ? Circle : |
|
| 214 dialog->ui->rb_cylinder->isChecked() ? Cylinder : |
|
| 215 dialog->ui->rb_disc->isChecked() ? Disc : |
|
| 216 dialog->ui->rb_ndisc->isChecked() ? DiscNegative : |
|
| 217 dialog->ui->rb_ring->isChecked() ? Ring : Cone; |
|
| 218 |
|
| 219 LDDocument* primitive = primitives()->generatePrimitive(type, segs, divs, num); |
|
| 220 primitive->openForEditing(); |
210 primitive->openForEditing(); |
| 221 m_window->save(primitive, false); |
211 m_window->save(primitive, false); |
| 222 } |
212 } |
| 223 |
213 |
| 224 // These are not exactly file tools but I don't want to make another toolset just for 3 very small actions |
214 // These are not exactly file tools but I don't want to make another toolset just for 3 very small actions |