Commit Graph

5313 Commits

Author SHA1 Message Date
Alexander Golubev
68c78de00d PartDesign/Gui: add origin sizing and rework datums sizing 2016-04-12 18:12:18 +02:00
Alexander Golubev
3ed51ac4bd PartDesign: add Origin to the Body and unstrap the module from the Parts 2016-04-12 18:12:18 +02:00
Alexander Golubev
d72a919384 OriginGroup: add new abstraction layer between the Part and the GeoFeatureGroup 2016-04-12 18:12:18 +02:00
Alexander Golubev
1d7a1982aa Part/Attacher: remove a couple of no more valid asserts 2016-04-12 18:12:18 +02:00
Alexander Golubev
305151be34 App/Origin: big refactoring
- Rebase App::Origin on App::DocumentObject
 - Keep all control over the Origin structure inside the Origin and it's
   ViewProvider
 - Add OriginFeature class as common base for App::Plane and App::Line
 - Rebase App::Plane and App::Line on top of newly created class and
   move to the file.
 - Change Origin's ViewProvider API associated with temporary display
 - Lots of associated changes to files
 - Several minor fixes
 - Lots of new bugs
2016-04-12 18:12:18 +02:00
Alexander Golubev
ade1dec103 Revert "part deletion handling"
This reverts commit 6ab2002021ac1df26ebe77f488f5cd94e1df0b26.
2016-04-12 18:12:17 +02:00
Alexander Golubev
78de2a193a Commented out a portion of code cosed a segfault 2016-04-12 18:12:17 +02:00
Alexander Golubev
9db890015c PartDesign/Body: move deletion of subobjects to view provider 2016-04-12 18:12:17 +02:00
Alexander Golubev
067530c168 PartDesign/Gui: Make partDesign's add sketch command Workflow-aware 2016-04-12 18:12:17 +02:00
Alexander Golubev
ddd0ecafa9 PartDesign/Gui: initial migration command implementation 2016-04-12 18:12:17 +02:00
Alexander Golubev
771c2b2fce PartDesign/Gui: rename some fonctions in ReferenceSelection.cpp
e.g. getPythonStr -> buildLinkListPythonStr etc
2016-04-12 18:12:17 +02:00
Alexander Golubev
37aab92bbc PartDesign/Body: remowe Part::Feature from isAllowed() 2016-04-12 18:12:17 +02:00
Alexander Golubev
9e47fea5ab PartDisign/WorkflowManager: initial implementation 2016-04-12 18:12:17 +02:00
Alexander Golubev
eec03e20cc PartDesign/FeaturePrimitive: suppress a -Woverloaded-virtual warning 2016-04-12 18:12:17 +02:00
Alexander Golubev
9347f66a9e PartDesign/Gui: Move various utility stuff from Workbench to a separate file
Also do some header cleanup.
2016-04-12 18:12:17 +02:00
Alexander Golubev
5459768c3f PartDesign: update body management commands according to the changes in body paradigms 2016-04-12 18:12:16 +02:00
Alexander Golubev
2e27001382 Sketcher: minor enhance in sketch interaction with body 2016-04-12 18:12:16 +02:00
Alexander Golubev
09b32218ef PartDesign: fix negative Offset property in pad and pocket 2016-04-12 18:12:16 +02:00
Alexander Golubev
3fff7c6ef2 PartDesign/Gui: move body commands to a separate file 2016-04-12 18:12:16 +02:00
Alexander Golubev
f6b0ed3a47 PartDesign: Body rework - add BaseFeature property and make Tip always point to solid 2016-04-12 18:12:16 +02:00
Alexander Golubev
d5a0f8849e PartDesign/ViewProviderPad: removed a TODO 2016-04-12 18:12:16 +02:00
Alexander Golubev
a96e78e063 PartDesign/Gui: make Transformed ViewProviders use common code with other 2016-04-12 18:12:16 +02:00
Alexander Golubev
82db88b6db PartDesign/TaskMultiTransformParameters: fix a segfault
The segfault was caused by premature delete of object
TaskMultiTransformParameter::subFeature refered to.
Steps to reproduce:
1. Create a multitransform
2. Add a sub transfurmation to it
3. Press cancel
2016-04-12 18:12:16 +02:00
Alexander Golubev
f6ed16438f PartDesign: make transform parameter dialogs use common base code with other dialogs
subj;
Make PasrtDesign::Transformed provide common for all features
classes interface getBaseObject() instead of specific getSupportObject ();
Refactor some TransformedParameters methods.
2016-04-12 18:12:16 +02:00
Alexander Golubev
e4f184a1f2 PartDesign/Workbench: fix a crash 2016-04-12 18:12:16 +02:00
Alexander Golubev
260fe191d6 PartDesign/Feature: minor gramma fix 2016-04-12 18:12:16 +02:00
Alexander Golubev
b41a7881ab PartDesign/ViewProvider: minor enhancements 2016-04-12 18:12:16 +02:00
Alexander Golubev
e96af480ea PartDesign/TaskDressUpParameters: disable edit of dressup features with broken supports
Also remove unused headers and fix spacing.

A final fixup for issues addressed in:
cb05b01 PartDesign/TaskDressUpParameters: fix a crash when editing a broken object
2016-04-12 18:12:15 +02:00
Alexander Golubev
6134952a46 PartDesign/Gui: make DressUp view providers use the common code. 2016-04-12 18:12:15 +02:00
Alexander Golubev
af385f1c57 PartDesign/Feature: add an optional parameter to getBaseObject() to prevent it from throwing exceptions
In most cases getBaseObject() is used with an exception handler which
only detects if it failed but not the reason. This modification allows
to use it without excess exception handlers.
Also add the same parameter to SketchBased::getVerifiedSketch().
2016-04-12 18:12:15 +02:00
Alexander Golubev
bba3733086 PartDesign/Gui: share code for revolution and groove view providers 2016-04-12 18:12:15 +02:00
Alexander Golubev
5239f3447c PartDesign/Gui: start to unify view providers code
- Moved all common code for part design features view providers to a base
   class.
 - Move shared code for Sketch based features to newly created
   ViewProviderSketchBased class
 - Add ViewProviderSketchBased to initialization
 - Make Pad and Pocket ViewProviders to use the shared code
 - Minor fixes to TaskFeatureParameters and some derived classes
2016-04-12 18:12:15 +02:00
Alexander Golubev
4e2655571e PartDesign/ViewProviderDatum: minor fix in a comment 2016-04-12 18:12:15 +02:00
Alexander Golubev
15b6eccc00 PartDesign/FeatureDressUp: implement a proper getBaseObject()
The function getBaseShape() is removed and replaced with getBaseObject()
because it doesn't make a lot of scense: getBaseShape() masked the
base's class implementation (rather than redefine a virtual) which was
better in words of code reuse.

Also BaseFeature and Base properties relations are defined now in a
little another way.
2016-04-12 18:12:15 +02:00
Alexander Golubev
e16534eeb2 PartDesign/TaskDressUpParameters: fix a crash when editing a broken object 2016-04-12 18:12:15 +02:00
Alexander Golubev
984b0dd715 PartDesign/Task{Pad,Pocket}Parameters: massive refactoring
Give a massive refactoring to Task dialogs for pocket and pad.
This commit features:
 * Make Task dialogs for pocket and pad look nice in side-by side diff and
   cross import features missing in each other.
 * As a result it fixes several minor bugs.
 * Gives a rework to the UpdateUI function.
 * This one also fixes offset option support and migrates it to use unit
   framework.
2016-04-12 18:12:15 +02:00
Alexander Golubev
c51d22eb8f PartDesign/ViewProviderPad: removed unfinished reimplementation of doubleClick()
This one resulted in non proper reject of pad dialog. Because the
command transaction haven't started.
2016-04-12 18:12:15 +02:00
Alexander Golubev
595f1e19f4 PartDesignGui: move signal connections in several parameter dialogs after ui initialization 2016-04-12 18:12:15 +02:00
Alexander Golubev
180985cec0 PartDesignGui: Make DressUp and SketchSupport propertie dialogs use common accept() structure 2016-04-12 18:12:15 +02:00
Alexander Golubev
d03c6c82a4 PartDesign/TaskThicknessParameters: fix copy-paste mistake in dialog 2016-04-12 18:12:15 +02:00
Alexander Golubev
64783a4ee5 PartDesignGui: move shared code for all dressUp features into common place.
Also this allows the old workflow for thickness and draft features.
2016-04-12 18:12:15 +02:00
Alexander Golubev
6778c548f4 PartDesign: move common code for TaskDlg{SketcherBased,DressUp}Parameters into new base class
Added a new class: TaskDlgFeatureBased which currently contains common
code for TaskDlgSketcherBasedParameters::reject() as well as the same
methode for TaskDlgDressUpParameters.
It's likely that other Feature task dialogs will inherit this class too.
2016-04-12 18:12:15 +02:00
Alexander Golubev
ebfd298baf PartDesign/FeatureDressUp: make Base and BaseFeature properties track the same feature
Also remove reseting of read-only flag on placement properties on
removing Base feature: it doesn't make any scense for dressup features.
2016-04-12 18:12:15 +02:00
Alexander Golubev
ccfc18946d PartDesign: fix a crash in the loft 2016-04-12 18:12:14 +02:00
Alexander Golubev
5e5c1ece40 PartDesign/Gui: enable sketches on datum planes inside bodies 2016-04-12 18:12:14 +02:00
Alexander Golubev
f9fe1e319f PartDesign/Gui: more old workflow support
* remove an error message if adding a sketchbased feature without a body
* add champfer or fillet old workflow support

Also rework finishFeature() so at least champfer and fillet may be
inserted into any place of any apropriate body(not only the active one) of the body.
2016-04-12 18:12:14 +02:00
Alexander Golubev
b9983d5d2d PartDesign/Gui/TaskDlgSketchBasedParameters: emhance object hiding/unhiding on reject() 2016-04-12 18:12:14 +02:00
Alexander Golubev
974a434e1f PartDesign/Gui: enhance the TaskFeaturePick with new cotegory of sketches: notInBody
Also add option tp show already used sketches and fix some spacing.
2016-04-12 18:12:14 +02:00
Alexander Golubev
340c52a939 Share code for finding a body containing a feature 2016-04-12 18:12:14 +02:00
DeepSOIC
cd4dce2f1b PartDesign workflow without part/body
PartDesign: make datum features work outside of body/part
PartDesign old workflow: remove a few messageboxes about no part
PartDesign: old workflow: multitransform without body

Still has visibility issues, but generally works.
2016-04-12 18:12:14 +02:00