From 35ed8a8afa6c58be88091e4c602d4958cd49c302 Mon Sep 17 00:00:00 2001 From: DeepSOIC Date: Fri, 2 Sep 2016 12:03:21 +0300 Subject: [PATCH 1/2] PartGui: fixes to Revolve and Extrude tasks by @f3nix fixes layout issues on KDE of Part Extrude and Part Revolve task dialogs --- src/Mod/Part/Gui/DlgExtrusion.ui | 262 +++++++++++++++--------------- src/Mod/Part/Gui/DlgRevolution.ui | 121 ++++++++------ 2 files changed, 202 insertions(+), 181 deletions(-) diff --git a/src/Mod/Part/Gui/DlgExtrusion.ui b/src/Mod/Part/Gui/DlgExtrusion.ui index c4dceec4d..6b7e6a9ca 100644 --- a/src/Mod/Part/Gui/DlgExtrusion.ui +++ b/src/Mod/Part/Gui/DlgExtrusion.ui @@ -83,17 +83,27 @@ - - - Qt::AlignCenter - - - Qt::AlignCenter - + + + + + + 0 + 0 + + + + + + + X: + + + - + 0 0 @@ -106,10 +116,17 @@ + + + + Y: + + + - + 0 0 @@ -122,10 +139,17 @@ + + + + Z: + + + - + 0 0 @@ -144,30 +168,6 @@ - - - - - - - X: - - - - - - - Y: - - - - - - - Z: - - - @@ -178,94 +178,84 @@ Length - - - - - - - Along - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - Against - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - Length to extrude along direction (can be negative). If both lengths are zero, magnitude of direction is used. - - - mm - - - -2147480000.000000000000000 - - - 2147480000.000000000000000 - - - 10.000000000000000 - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - Length to extrude against direction (can be negative). - - - mm - - - -2147480000.000000000000000 - - - 2147480000.000000000000000 - - - 0.000000000000000 - - - - + + + + + Along: + + - + + + + + 0 + 0 + + + + + 0 + 0 + + + + Length to extrude along direction (can be negative). If both lengths are zero, magnitude of direction is used. + + + mm + + + -2147480000.000000000000000 + + + 2147480000.000000000000000 + + + 10.000000000000000 + + + + + + + Against: + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + Length to extrude against direction (can be negative). + + + mm + + + -2147480000.000000000000000 + + + 2147480000.000000000000000 + + + 0.000000000000000 + + + + Distribute extrusion length equally to both sides. @@ -279,7 +269,7 @@ - + @@ -288,39 +278,51 @@ - + + + + 0 + 0 + + Apply slope (draft) to extrusion side faces. deg - + -89.999999000000003 - + 89.999999000000003 - + 5.000000000000000 - + + + + 0 + 0 + + Apply slope (draft) to extrusion side faces. deg - + -89.999999000000003 - + 89.999999000000003 - + 5.000000000000000 diff --git a/src/Mod/Part/Gui/DlgRevolution.ui b/src/Mod/Part/Gui/DlgRevolution.ui index 8f056f8ef..2177c2e0d 100644 --- a/src/Mod/Part/Gui/DlgRevolution.ui +++ b/src/Mod/Part/Gui/DlgRevolution.ui @@ -6,7 +6,7 @@ 0 0 - 320 + 426 599 @@ -20,16 +20,7 @@ Revolve - - 9 - - - 9 - - - 9 - - + 9 @@ -71,16 +62,7 @@ 6 - - 0 - - - 0 - - - 0 - - + 0 @@ -94,17 +76,23 @@ - + + + + 0 + 0 + + deg - + -360.000000000000000 - + 360.000000000000000 - + 360.000000000000000 @@ -124,7 +112,7 @@ - + @@ -133,9 +121,9 @@ - + - + 0 0 @@ -153,7 +141,13 @@ - + + + + 0 + 0 + + mm @@ -167,7 +161,13 @@ - + + + + 0 + 0 + + mm @@ -176,11 +176,11 @@ - + - + 0 0 @@ -205,24 +205,10 @@ - - - - - - - - - - - - - - - + - + 0 0 @@ -235,7 +221,7 @@ - + 0 0 @@ -260,10 +246,23 @@ + + + + + 0 + 0 + + + + + + + - + 0 0 @@ -285,6 +284,19 @@ + + + + + 0 + 0 + + + + + + + @@ -295,7 +307,14 @@ - + + + + 0 + 0 + + + From c60e4c944e752dad4b781e14d94aaa5c31879451 Mon Sep 17 00:00:00 2001 From: DeepSOIC Date: Fri, 2 Sep 2016 15:05:30 +0300 Subject: [PATCH 2/2] PartGui: task Extrude: fix remove selection gate on cancel --- src/Mod/Part/Gui/DlgExtrusion.cpp | 14 ++++++++++++++ src/Mod/Part/Gui/DlgExtrusion.h | 1 + 2 files changed, 15 insertions(+) diff --git a/src/Mod/Part/Gui/DlgExtrusion.cpp b/src/Mod/Part/Gui/DlgExtrusion.cpp index ce1f616d8..985e25970 100644 --- a/src/Mod/Part/Gui/DlgExtrusion.cpp +++ b/src/Mod/Part/Gui/DlgExtrusion.cpp @@ -129,6 +129,11 @@ DlgExtrusion::DlgExtrusion(QWidget* parent, Qt::WindowFlags fl) */ DlgExtrusion::~DlgExtrusion() { + if (filter){ + Gui::Selection().rmvSelectionGate(); + filter = nullptr; + } + // no need to delete child widgets, Qt does it all for us delete ui; } @@ -463,6 +468,14 @@ void DlgExtrusion::apply() } } +void DlgExtrusion::reject() +{ + if (filter) //if still selecting edge - stop. + this->on_btnSelectEdge_clicked(); + + QDialog::reject(); +} + Base::Vector3d DlgExtrusion::getDir() const { return Base::Vector3d( @@ -721,6 +734,7 @@ bool TaskExtrusion::accept() bool TaskExtrusion::reject() { + widget->reject(); return true; } diff --git a/src/Mod/Part/Gui/DlgExtrusion.h b/src/Mod/Part/Gui/DlgExtrusion.h index ab0ac8324..318e63281 100644 --- a/src/Mod/Part/Gui/DlgExtrusion.h +++ b/src/Mod/Part/Gui/DlgExtrusion.h @@ -43,6 +43,7 @@ public: ~DlgExtrusion(); void accept(); void apply(); + void reject(); Base::Vector3d getDir() const; void setDir(Base::Vector3d newDir);