refactoring/cleanups

This commit is contained in:
2018-07-30 20:56:17 +02:00
parent 9a07790ec6
commit a9fcb77675
23 changed files with 276 additions and 247 deletions

View File

@@ -22,52 +22,52 @@
#include <QFileDialog>
#include <QCheckBox>
QComboBox* getMaterials() {
using namespace Floorplan;
QComboBox* cmbMaterial = new QComboBox();
for (int i = 0; i < (int)Material::_END; ++i) {
switch ((Material)i) {
case Material::CONCRETE: cmbMaterial->addItem("Concrete", i); break;
case Material::UNKNOWN: cmbMaterial->addItem("Unknown ", i); break;
case Material::DRYWALL: cmbMaterial->addItem("Drywall", i); break;
case Material::WOOD: cmbMaterial->addItem("Wood", i); break;
case Material::GLASS: cmbMaterial->addItem("Glass", i); break;
case Material::METAL: cmbMaterial->addItem("Metal", i); break;
case Material::METALLIZED_GLAS: cmbMaterial->addItem("Glass (metallized)", i); break;
case Material::_END: throw 1;
}
}
return cmbMaterial;
}
//QComboBox* getMaterials() {
// using namespace Floorplan;
// QComboBox* cmbMaterial = new QComboBox();
// for (int i = 0; i < (int)Material::_END; ++i) {
// switch ((Material)i) {
// case Material::CONCRETE: cmbMaterial->addItem("Concrete", i); break;
// case Material::UNKNOWN: cmbMaterial->addItem("Unknown ", i); break;
// case Material::DRYWALL: cmbMaterial->addItem("Drywall", i); break;
// case Material::WOOD: cmbMaterial->addItem("Wood", i); break;
// case Material::GLASS: cmbMaterial->addItem("Glass", i); break;
// case Material::METAL: cmbMaterial->addItem("Metal", i); break;
// case Material::METALLIZED_GLAS: cmbMaterial->addItem("Glass (metallized)", i); break;
// case Material::_END: throw 1;
// }
// }
// return cmbMaterial;
//}
QComboBox* getObstacleTypes() {
using namespace Floorplan;
QComboBox* cmb = new QComboBox();
for (int i = 0; i < (int)ObstacleType::_END; ++i) {
switch ((ObstacleType)i) {
case ObstacleType::UNKNOWN: cmb->addItem("Unknown ", i); break;
case ObstacleType::WALL: cmb->addItem("Wall", i); break;
case ObstacleType::WINDOW: cmb->addItem("Window", i); break;
case ObstacleType::HANDRAIL:cmb->addItem("Handrail", i); break;
case ObstacleType::PILLAR: cmb->addItem("Pillar", i); break;
case ObstacleType::_END: throw 1;
}
}
return cmb;
}
//QComboBox* getObstacleTypes() {
// using namespace Floorplan;
// QComboBox* cmb = new QComboBox();
// for (int i = 0; i < (int)ObstacleType::_END; ++i) {
// switch ((ObstacleType)i) {
// case ObstacleType::UNKNOWN: cmb->addItem("Unknown ", i); break;
// case ObstacleType::WALL: cmb->addItem("Wall", i); break;
// case ObstacleType::WINDOW: cmb->addItem("Window", i); break;
// case ObstacleType::HANDRAIL:cmb->addItem("Handrail", i); break;
// case ObstacleType::PILLAR: cmb->addItem("Pillar", i); break;
// case ObstacleType::_END: throw 1;
// }
// }
// return cmb;
//}
QComboBox* getOutlineMethods() {
using namespace Floorplan;
QComboBox* cmb = new QComboBox();
for (int i = 0; i < (int)OutlineMethod::_END; ++i) {
switch ((OutlineMethod)i) {
case OutlineMethod::ADD: cmb->addItem("add", i); break;
case OutlineMethod::REMOVE: cmb->addItem("remove ", i); break;
case OutlineMethod::_END: throw 1;
}
}
return cmb;
}
//QComboBox* getOutlineMethods() {
// using namespace Floorplan;
// QComboBox* cmb = new QComboBox();
// for (int i = 0; i < (int)OutlineMethod::_END; ++i) {
// switch ((OutlineMethod)i) {
// case OutlineMethod::ADD: cmb->addItem("add", i); break;
// case OutlineMethod::REMOVE: cmb->addItem("remove ", i); break;
// case OutlineMethod::_END: throw 1;
// }
// }
// return cmb;
//}
ElementParamWidget::ElementParamWidget(QWidget *parent) : QWidget(parent) {
@@ -104,50 +104,50 @@ void ElementParamWidget::refresh() {
MapModelElement* el = this->curElement;
// material? -> select in combo-box
{
IHasMaterial* elem = dynamic_cast<IHasMaterial*>(el);
if (elem) {
material.cmb = getMaterials();
material.lbl = new QLabel("material", this);
lay->addWidget(material.lbl,r,0);
lay->addWidget(material.cmb,r,1);
connect(material.cmb , SIGNAL(currentIndexChanged(int)), this, SLOT(onMaterialChange()));
material.cmb->setCurrentIndex((int)elem->getMaterial());
++r;
}
}
// // material? -> select in combo-box
// {
// IHasMaterial* elem = dynamic_cast<IHasMaterial*>(el);
// if (elem) {
// material.cmb = getMaterials();
// material.lbl = new QLabel("material", this);
// lay->addWidget(material.lbl,r,0);
// lay->addWidget(material.cmb,r,1);
// connect(material.cmb , SIGNAL(currentIndexChanged(int)), this, SLOT(onMaterialChange()));
// material.cmb->setCurrentIndex((int)elem->getMaterial());
// ++r;
// }
// }
// obstacle-type? -> select in combo-box
{
IHasObstacleType* elem = dynamic_cast<IHasObstacleType*>(el);
if (elem) {
obstacleType.cmb = getObstacleTypes();
obstacleType.lbl = new QLabel("type", this);
lay->addWidget(obstacleType.lbl,r,0);
lay->addWidget(obstacleType.cmb,r,1);
connect(obstacleType.cmb, SIGNAL(currentIndexChanged(int)), this, SLOT(onObstacleTypeChange()));
obstacleType.cmb->setCurrentIndex((int)elem->getObatcleType());
++r;
}
}
// // obstacle-type? -> select in combo-box
// {
// IHasObstacleType* elem = dynamic_cast<IHasObstacleType*>(el);
// if (elem) {
// obstacleType.cmb = getObstacleTypes();
// obstacleType.lbl = new QLabel("type", this);
// lay->addWidget(obstacleType.lbl,r,0);
// lay->addWidget(obstacleType.cmb,r,1);
// connect(obstacleType.cmb, SIGNAL(currentIndexChanged(int)), this, SLOT(onObstacleTypeChange()));
// obstacleType.cmb->setCurrentIndex((int)elem->getObatcleType());
// ++r;
// }
// }
// has outline method?
{
MMFloorOutlinePolygon* elem = dynamic_cast<MMFloorOutlinePolygon*>(el);
if (elem) {
QComboBox* cmb = getOutlineMethods();
QLabel* lbl = new QLabel("outline", this);
lay->addWidget(lbl,r,0);
lay->addWidget(cmb,r,1);
cmb->setCurrentIndex((int)elem->getMethod());
connect(cmb, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), [elem, cmb] (int idx) {
(void) idx;
elem->setMethod( (Floorplan::OutlineMethod) cmb->currentData().toInt() );
});
++r;
}
}
// // has outline method?
// {
// MMFloorOutlinePolygon* elem = dynamic_cast<MMFloorOutlinePolygon*>(el);
// if (elem) {
// QComboBox* cmb = getOutlineMethods();
// QLabel* lbl = new QLabel("outline", this);
// lay->addWidget(lbl,r,0);
// lay->addWidget(cmb,r,1);
// cmb->setCurrentIndex((int)elem->getMethod());
// connect(cmb, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), [elem, cmb] (int idx) {
// (void) idx;
// elem->setMethod( (Floorplan::OutlineMethod) cmb->currentData().toInt() );
// });
// ++r;
// }
// }
{ // does the element have "parameters" ?
IHasParams* elem = dynamic_cast<IHasParams*>(el);
@@ -185,14 +185,3 @@ void ElementParamWidget::refresh() {
}
void ElementParamWidget::onMaterialChange() {
IHasMaterial* el = dynamic_cast<IHasMaterial*>(this->curElement);
if (el) {el->setMaterial( (Floorplan::Material) material.cmb->currentData().toInt() );}
}
void ElementParamWidget::onObstacleTypeChange() {
IHasObstacleType* el = dynamic_cast<IHasObstacleType*>(this->curElement);
if (el) {el->setObstacleType((Floorplan::ObstacleType) obstacleType.cmb->currentData().toInt() );}
}

View File

@@ -51,8 +51,8 @@ public slots:
private slots:
void onMaterialChange();
void onObstacleTypeChange();
//void onMaterialChange();
//void onObstacleTypeChange();
};