diff --git a/src/Mod/TechDraw/App/DrawProjGroup.cpp b/src/Mod/TechDraw/App/DrawProjGroup.cpp index 149b5978d6..f86f9d00fb 100644 --- a/src/Mod/TechDraw/App/DrawProjGroup.cpp +++ b/src/Mod/TechDraw/App/DrawProjGroup.cpp @@ -55,9 +55,9 @@ using namespace TechDraw; -const char* DrawProjGroup::ProjectionTypeEnums[] = {"Default", - "First Angle", +const char* DrawProjGroup::ProjectionTypeEnums[] = {"First Angle", "Third Angle", + "Default", //Use Page setting NULL}; PROPERTY_SOURCE(TechDraw::DrawProjGroup, TechDraw::DrawViewCollection) @@ -779,7 +779,7 @@ int DrawProjGroup::getViewIndex(const char *viewTypeCStr) const Base::Console().Warning("DPG: %s - can not find parent page. Using default Projection Type. (1)\n", getNameInDocument()); int projConv = getDefProjConv(); - projType = ProjectionTypeEnums[projConv + 1]; + projType = ProjectionTypeEnums[projConv]; } } else { projType = ProjectionType.getValueAsString(); diff --git a/src/Mod/TechDraw/Gui/DlgPrefsTechDrawDimensions.ui b/src/Mod/TechDraw/Gui/DlgPrefsTechDrawDimensions.ui index 7246bbd49f..4ec686fcf8 100644 --- a/src/Mod/TechDraw/Gui/DlgPrefsTechDrawDimensions.ui +++ b/src/Mod/TechDraw/Gui/DlgPrefsTechDrawDimensions.ui @@ -7,7 +7,7 @@ 0 0 460 - 425 + 440 @@ -470,6 +470,11 @@ Third + + + Page + + diff --git a/src/Mod/TechDraw/Gui/TaskProjGroup.cpp b/src/Mod/TechDraw/Gui/TaskProjGroup.cpp index 53240341d1..015ec31d75 100644 --- a/src/Mod/TechDraw/Gui/TaskProjGroup.cpp +++ b/src/Mod/TechDraw/Gui/TaskProjGroup.cpp @@ -109,7 +109,8 @@ TaskProjGroup::TaskProjGroup(TechDraw::DrawProjGroup* featView, bool mode) : connect(ui->sbScaleDen, SIGNAL(valueChanged(int)), this, SLOT(scaleManuallyChanged(int))); // Slot for Projection Type (layout) - connect(ui->projection, SIGNAL(currentIndexChanged(int)), this, SLOT(projectionTypeChanged(int))); +// connect(ui->projection, SIGNAL(currentIndexChanged(int)), this, SLOT(projectionTypeChanged(int))); + connect(ui->projection, SIGNAL(currentIndexChanged(QString)), this, SLOT(projectionTypeChanged(QString))); m_page = multiView->findParentPage(); Gui::Document* activeGui = Gui::Application::Instance->getDocument(m_page->getDocument()); @@ -211,29 +212,23 @@ void TaskProjGroup::rotateButtonClicked(void) } } -void TaskProjGroup::projectionTypeChanged(int index) +//void TaskProjGroup::projectionTypeChanged(int index) +void TaskProjGroup::projectionTypeChanged(QString qText) { - if(blockUpdate) + if(blockUpdate) { return; + } - if(index == 0) { - //layout per Page (Document) + if (qText == QString::fromUtf8("Page")) { multiView->ProjectionType.setValue("Default"); - - } else if(index == 1) { - // First Angle layout - multiView->ProjectionType.setValue("First Angle"); - } else if(index == 2) { - // Third Angle layout - multiView->ProjectionType.setValue("Third Angle"); } else { - Base::Console().Log("Error - TaskProjGroup::projectionTypeChanged - unknown projection layout: %d\n", - index); - return; + std::string text = qText.toStdString(); + multiView->ProjectionType.setValue(text.c_str()); } // Update checkboxes so checked state matches the drawing setupViewCheckboxes(); + multiView->recomputeFeature(); } void TaskProjGroup::scaleTypeChanged(int index) diff --git a/src/Mod/TechDraw/Gui/TaskProjGroup.h b/src/Mod/TechDraw/Gui/TaskProjGroup.h index fe3c7e12c1..c03e80648b 100644 --- a/src/Mod/TechDraw/Gui/TaskProjGroup.h +++ b/src/Mod/TechDraw/Gui/TaskProjGroup.h @@ -82,8 +82,8 @@ protected Q_SLOTS: void rotateButtonClicked(void); // void onResetClicked(void); - - void projectionTypeChanged(int index); +/* void projectionTypeChanged(int index);*/ + void projectionTypeChanged(QString qText); void scaleTypeChanged(int index); void scaleManuallyChanged(int i); diff --git a/src/Mod/TechDraw/Gui/TaskProjGroup.ui b/src/Mod/TechDraw/Gui/TaskProjGroup.ui index d750b271dd..c6351e8e82 100644 --- a/src/Mod/TechDraw/Gui/TaskProjGroup.ui +++ b/src/Mod/TechDraw/Gui/TaskProjGroup.ui @@ -63,11 +63,9 @@ false - - - Page - - + + First Angle + First Angle @@ -78,6 +76,11 @@ Third Angle + + + Page + +