Commit Graph

76 Commits

Author SHA1 Message Date
PaddleStroke
b7f1a0c150 ViewProviderOrigin: Renamed to ViewProviderCoordinateSystem 2024-11-27 12:15:53 +01:00
wmayer
28282e6800 PD: Cleanup code of TaskRevolutionParameters 2024-11-22 11:59:21 -05:00
mwganson
dbc91b393c [PartDesign Groove/Revolution] minor dialog improvements, addresses issue #13298 2024-10-27 12:12:36 +01:00
wmayer
5731a27609 PD: Add template helper functions to safely access feature or view provider
In subclasses of TaskFeatureParameters use the new helper functions and check for null pointer. This fixes #15453
2024-07-18 13:40:08 +02:00
wmayer
cf6d8da448 PD: Make blockUpdate private class member 2024-07-17 20:09:53 +02:00
Ajinkya Dahale
56278633ce [PD] Fix reference axis selection in revolve/groove
Fixes #11713.
2024-01-08 14:19:57 -03:00
Ajinkya Dahale
f66261b598 [PD] Set up-to-face when opening revolution/grove task box 2023-12-04 13:40:31 -03:00
Ajinkya Dahale
8023c0595d [PD] Fix wrong mode options when opening existing revolution
Only the "Dimension" options showed regardless of what mode was selected.
2023-12-04 13:40:31 -03:00
Ajinkya Dahale
131c74045a [PD] Set revolution taskview items based on method 2023-11-14 00:20:20 +05:30
Ajinkya Dahale
2ae3c82606 [PD] Support two-angle/up-to-face groove
Elements copied from revolution and pocket feature.
2023-11-14 00:20:20 +05:30
Ajinkya Dahale
4c80e567c6 [PD] Use enum class for revolution method 2023-11-14 00:20:20 +05:30
Ajinkya Dahale
a7da1003fc [PartDesign] Some more dummy functionality for revolution
[PD] Some more setup

[PD] Some refactor in `TaskRevolutionParameters`
2023-11-14 00:20:19 +05:30
Ajinkya Dahale
b41e592441 [PartDesign] Add some dummy options for revolution
These options correspond to "up to face" and "2 angles". They are expected to do
nothing right now. However there is also some experimental code for "up to face"
in this commit, whose behavior is not confirmed.
2023-11-14 00:20:19 +05:30
Uwe
bdc704eaa0 [PD] revolve: remove unused code
- also come code style unification
2023-03-22 17:46:03 +01:00
wmayer
f8827198ee PD: fix crash in TaskRevolutionParameters::fillAxisCombo
* Replacing the static_cast with a dynamic_cast in 2aa232bef9 is a regression because it cannot be guaranteed that the linked object is a sketch.
  In fact it can also be a shape binder which is explicitly allowed.
  Forum: https://forum.freecadweb.org/viewtopic.php?f=19&t=74939
* Move initialization of some variables into the if-statement
2023-01-02 09:49:27 +01:00
wmayer
7acc67ea43 PD: fix crash in TaskRevolutionParameters::addAxisToCombo
and some warnings reported by GH actions
2022-11-09 18:56:11 +01:00
wmayer
1911fe50ff PD: [skip ci] improve the exception text 2022-11-09 17:46:46 +01:00
Uwe
2aa232bef9 [PD] TaskDlgRevolutionParameters: fix some CI warnings
- reported here: https://github.com/FreeCAD/FreeCAD/pull/7667/commits/f0a0e563
- and here: https://github.com/FreeCAD/FreeCAD/pull/7719/commits/8f3f17f8
2022-11-09 17:33:33 +01:00
wmayer
a76dc0ade2 PD: use Base::StateLocker to simplify handling of blockUpdate and make it exception-safe 2022-11-05 19:29:20 +01:00
wmayer
18781bcf63 PD: fixes #7629: Keep sketch visible during revolution tasks 2022-11-05 19:09:54 +01:00
berniev
da9ebc572f Mod: redundant void 2 2022-08-08 10:27:50 +02:00
Uwe
35f75064a0 [PD] remove superfluous nullptr checks 2022-07-17 18:12:41 +02:00
wmayer
3608ee7f51 PD: modernize C++11
* use nullptr
2022-03-23 19:26:14 +01:00
wmayer
1ca7429705 Gui: Optimize includes to reduce compile time 2022-03-07 20:29:18 +01:00
Uwe
7c8031d356 [PD] Hole, Pipe and Revolution: remove unused includes 2022-02-19 18:47:26 +01:00
wmayer
a27b3067ba PD: eliminate the boolean argument from TaskSketchBasedParameters::onSelectReference 2021-12-07 11:04:22 +01:00
wmayer
3ee1d91b88 PD: cleanup the mess with boolean arguments and replace them with a bitmask 2021-12-03 14:46:19 +01:00
wmayer
036c6b0d25 PD: improve task panel for revolution/groove:
* set range Angle property to spin box
* connect signals after initializing widgets to avoid superfluous recomputes
2021-03-03 15:42:48 +01:00
wmayer
bc1b9ea1bb PD: [skip ci] set value range to angle spin box 2021-03-03 15:22:53 +01:00
David Osterberg
f1d6c78cbe PartDesign: Allow use of circle edge as axis in ProfileBased 2021-03-01 14:48:24 +01:00
donovaly
2ac84872ec [PD] make pointers to the UI std::unique_ptr
Same as PR #4293, just for PartDesign

as noted in https://github.com/FreeCAD/FreeCAD/pull/4271#discussion_r554673632
the pointer to the UI should be a unique pointer.

This PR does this for all PartDesign dialogs that don't already use a unique_ptr.
2021-02-05 18:01:57 +01:00
luz paz
faa8688ee5 PartDesign: Issue #0004473: Expose openCommand() to translation
Continuing the work to expose the undo/redo functionality to translation. This commit does so for the PartDesign Wb.  
Ticket: https://tracker.freecadweb.org/view.php?id=4473
2020-12-01 14:53:35 +01:00
wmayer
b33f92898b PartDesign: [skip ci] Improve revolution function
+ Fix hard crash when selecting an edge or face of the created feature before selecting option to choose a reference.
+ In ProfileBased::getAxis() convert OCCT into FreeCAD exception to simplify handling of calling instances.
+ Change return value of getReferencedSelection() from void to bool to mkae it easier for calling instance to detect if the selection failed.
  This is needed to avoid to add invalid items to the combo box of the revolution task panel
2020-10-14 15:20:52 +02:00
Zheng, Lei
11a93a0578 PartDesign changes
* Mostly for supporting in-place editing

* Add new SubShapeBinder that support cross coordinate system,
  external, and sub-object binding
2019-08-17 15:15:47 +02:00
wmayer
6e898575c2 various fixes:
+ fix invalid cast
+ some minor optimizations
+ improve exception handling
2017-10-18 12:33:41 +02:00
wmayer
004324bbc5 fix scan coverity issues: uncaught exception 2017-04-11 14:03:08 +02:00
wmayer
294b2308d6 fix crash when cancelling revolution task panel 2017-01-23 23:24:40 +01:00
wmayer
664cf65d26 fix -Wextra in PartDesign 2016-09-22 18:34:56 +02:00
Stefan Tröger
f712f5e4ac PartDesign: Modeling features work with faces
-Rename Sketchbased to ProfileBased to show new behavior
-Adopt ProfileBased to make the relevant helper functions work with faces too
-Adopt features for unified use of helper functions
-Adopt commands to allow face selection
2016-04-12 18:12:22 +02:00
Stefan Tröger
5002e8e430 Fix crash on aborted pattern external axis 2016-04-12 18:12:22 +02:00
Alexander Golubev
d43525370c PartDesignGui: small rework to sketch-based task parameters
This done mostly for thurther unification them with other task
parameters/dialogs.
2016-04-12 18:12:21 +02:00
Alexander Golubev
0cfc0cd424 Fix warnings introduced in new PartDesign
Mostly unused wariables and compare of signed & unsigned
2016-04-12 18:12:21 +02:00
Alexander Golubev
1a26f7551f PartDesign: add Origin to the Body and unstrap the module from the Parts 2016-04-12 18:12:18 +02:00
Alexander Golubev
2c2d155ee9 OriginGroup: add new abstraction layer between the Part and the GeoFeatureGroup 2016-04-12 18:12:18 +02:00
Alexander Golubev
797d6d3a11 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
c4f094bba4 PartDesign/Gui: rename some fonctions in ReferenceSelection.cpp
e.g. getPythonStr -> buildLinkListPythonStr etc
2016-04-12 18:12:17 +02:00
Alexander Golubev
c782a11aab 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
f16829baee PartDesignGui: Make DressUp and SketchSupport propertie dialogs use common accept() structure 2016-04-12 18:12:15 +02:00
DeepSOIC
125dda4d70 PartDesign: Make groove work via Revolution ui
Purpose: remove duplicate code.
Remaining: wrong title and icon in task dialog.
2016-04-12 18:12:14 +02:00
DeepSOIC
9776d30b87 PartDesign: rework axis and plane comboboxes and make it work without part.
Rework combobox filling and link hadling for revolution and transformed features, in order to get rid of hard-coded item indexes and make the lists more dynamic.
2016-04-12 18:12:14 +02:00