--- a/src/extprogs.cpp Thu Jun 27 12:13:15 2013 +0300 +++ b/src/extprogs.cpp Thu Jun 27 12:29:54 2013 +0300 @@ -36,6 +36,7 @@ #include "labeledwidget.h" #include "ui_intersector.h" +#include "ui_rectifier.h" #include "ui_coverer.h" #include "ui_isecalc.h" #include "ui_edger2.h" @@ -89,7 +90,7 @@ } // ============================================================================= -static str processErrorString (const extprog prog, QProcess& proc) { +static str processErrorString (QProcess& proc) { switch (proc.error()) { case QProcess::FailedToStart: return "Failed to start (check your permissions)"; @@ -228,7 +229,7 @@ str err = ""; if ( proc.exitStatus() != QProcess::NormalExit ) - err = processErrorString (prog, proc); + err = processErrorString (proc); // Check the return code if (proc.exitCode() != 0) @@ -356,37 +357,13 @@ if (!checkProgPath (prog_rectifier, Rectifier)) return; - QDialog dlg; - QCheckBox* cb_condense = new QCheckBox ("Condense triangles to quads"), - *cb_subst = new QCheckBox ("Substitute rect primitives"), - *cb_condlineCheck = new QCheckBox ("Don't replace quads with adj. condlines"), - *cb_colorize = new QCheckBox ("Colorize resulting objects"); - LabeledWidget<QDoubleSpinBox>* dsb_coplthres = new LabeledWidget<QDoubleSpinBox> ("Coplanarity threshold"); - - dsb_coplthres->w ()->setMinimum (0.0f); - dsb_coplthres->w ()->setMaximum (360.0f); - dsb_coplthres->w ()->setDecimals (3); - dsb_coplthres->w ()->setValue (0.95f); - cb_condense->setChecked (true); - cb_subst->setChecked (true); + QDialog* dlg = new QDialog; + Ui::RectifierUI ui; + ui.setupUi (dlg); - QVBoxLayout* layout = new QVBoxLayout (&dlg); - layout->addWidget (cb_condense); - layout->addWidget (cb_subst); - layout->addWidget (cb_condlineCheck); - layout->addWidget (cb_colorize); - layout->addWidget (dsb_coplthres); - layout->addWidget (makeButtonBox (dlg)); - - if (!dlg.exec ()) + if (!dlg->exec ()) return; - const bool condense = cb_condense->isChecked (), - subst = cb_subst->isChecked (), - condlineCheck = cb_condlineCheck->isChecked (), - colorize = cb_colorize->isChecked (); - const double coplthres = dsb_coplthres->w ()->value (); - QTemporaryFile indat, outdat; str inDATName, outDATName; @@ -396,12 +373,12 @@ // Compose arguments str argv = join ({ - (condense == false) ? "-q" : "", - (subst == false) ? "-r" : "", - (condlineCheck) ? "-a" : "", - (colorize) ? "-c" : "", + (!ui.cb_condense->isChecked ()) ? "-q" : "", + (!ui.cb_subst->isChecked ()) ? "-r" : "", + (ui.cb_condlineCheck->isChecked ()) ? "-a" : "", + (ui.cb_colorize->isChecked ()) ? "-c" : "", "-t", - coplthres, + ui.dsb_coplthres->value (), inDATName, outDATName });