Commit Graph

24 Commits

Author SHA1 Message Date
Roy-043
84deb09f0b Draft: make mod key prefs non-global 2023-11-20 21:17:18 +01:00
Roy-043
2335c6beff Draft: Updates related to the PlaneGui class
Related issue:
#5603.
2023-10-18 09:50:50 +02:00
Roy-043
af87661093 Draft: Reduce occurrences of App.DraftWorkingPlane (#10388) 2023-08-28 10:16:36 +02:00
Chris Hennes
ddaa34f0fc Draft: Translate Dimension and axis labels 2023-08-14 08:14:32 -07:00
Yorik van Havre
b801983109 Draft: Fixes continuing dimensions - fixes #9507 (#9632) 2023-05-24 20:34:52 +02:00
Roy-043
3eaff64025 Draft: fix normal calculation for angular dims 2023-02-03 15:44:27 +01:00
Roy-043
1e03fddb67 Draft: housekeeping: remove obsolete code (uiMode and DraftGui.py) (#8327) 2023-02-02 23:24:27 +01:00
Roy-043
9351bbe7bf Draft: Escape should not switch off continue mode 2022-10-15 12:14:51 +02:00
luzpaz
95070bded4 Draft: Fix 'testing inequality to None' syntax (#7275)
* Draft: Fix 'testing inequality to None' syntax 

- Substitute `is not None` for `!= None`
- Trim trailing whitespace on touched files
2022-07-30 00:26:56 +02:00
Roy-043
84c517e333 Draft: Fix angle dimension issue
If the end points of the selected edges for an angular dimension were (almost) coincident with their intersection, random angles could be calculated. In essence a floating point inaccuracy issue.
2021-10-28 19:29:59 +02:00
Yorik van Havre
489f7441af Draft: Allow to use dimension tool with predefined direction 2021-05-11 13:27:41 +02:00
marioalexis
05f290f119 Draft: Make featureName attribute translation-independent
The translation for the task panel title is done in the Ui method call
2021-03-29 10:51:53 -03:00
Yorik van Havre
94b9374b37 Merge pull request #4348 from marioalexis84/draft-coordinate_input
[0.20] [Draft] Add global mode to enter points - Fixes #0004108
2021-03-26 11:18:23 +01:00
Chris Hennes
26ce308cf1 [DRAFT] Add call to super().__init__ where missing
Identified by LGTM. The toplevel superclass does initialize one data
member to an empty array, but this didn't appear to cause any problems.
2021-02-27 18:21:54 +01:00
Yorik van Havre
abee35f38a Draft: Fixed broken translations everywhere 2021-02-12 14:44:58 +01:00
marioalexis
6969be3881 Draft: Use function-specific icons in the taskbar 2021-02-01 01:26:15 -03:00
marioalexis
dcfba722f4 Draft: Fixes #0004293: Vertical dimensions can't be created in XZ and YZ working plane 2020-11-13 10:58:34 +01:00
Roy-043
bbddf0501c Draft: Draft_Dimension_linked_geometry_fix
Linked geometry was not handled if the selected edge started or ended at vertex zero.
2020-10-29 19:26:55 +01:00
vocx-fc
f4611f0a31 Draft: add modules of draftguitools to the proper Doxygen group
This includes `gui_annotationstyleeditor`, `gui_arcs`, `gui_array_simple`,
`gui_arrays`, `gui_base`, `gui_base_original`, `gui_beziers`,
`gui_circles`, `gui_circulararray`, `gui_clone`, `gui_circulararray`,
`gui_clone`, `gui_dimension_ops`, `gui_dimensions`, `gui_downgrade`,
`gui_draft2sketch`, `gui_drawing`, `gui_edit`, `gui_edit_arch_objects`,
`gui_edit_draft_objects`, `gui_edit_part_objects`, `gui_edit_sketcher_objects`,
`gui_ellipses`, `gui_facebinders`, `gui_fillets`, `gui_grid`,
`gui_groups`, `gui_heal`, `gui_join`, `gui_labels`, `gui_line_add_delete`,
`gui_lineops`, `gui_lines`, `gui_lineslope`, `gui_mirror`,
`gui_move`, `gui_offset`, `gui_orthoarray`, `gui_patharray`,
`gui_planeproxy`, `gui_pointarray`, `gui_points`, `gui_polararray`,
`gui_polygons`, `gui_rectangles`, `gui_rotate`, `gui_scale`,
`gui_selectplane`, `gui_shape2dview`, `gui_shapestrings`, `gui_snapper`,
`gui_snaps`, `gui_splines`, `gui_split`, `gui_stretch`, `gui_styles`,
`gui_subeleemnts`, `gui_texts`, `gui_togglemodes`, `gui_tools_utils`,
`gui_trackers`, `gui_trimex`, `gui_upgrade`, `gui_wire2spline`.

These are added to the `draftguitools` Doxygen group
so that the functions and classes contained in each module
are listed appropriately in the automatically generated
documentation.
2020-07-17 13:01:45 +02:00
vocx-fc
a531cc2c98 Draft: new make_radial_dimension function for more precision
A single `make_dimension` handles three types of dimensions,
(1) simple linear, (2) linear linked to an object, and (3) linked
to a circular edge.

So, we provide a new function, `make_radial_dimension_obj`,
to handle the third case. In this way we can check the input
parameters much better.

We adjust the `Draft_Dimension` Gui Command accordingly.
2020-06-17 12:53:29 +02:00
vocx-fc
2cb2b10d8f Draft: new make_linear_dimension functions for more precision
A single `make_dimension` handles three types of dimensions,
(1) simple linear, (2) linear linked to an object, and (3) linked
to a circular edge.

So, we provide two new functions, `make_linear_dimension`
and `make_linear_dimension_obj`, to handle the first two cases.
In this way we can check the input parameters much better.

We adjust the `Draft_Dimension` Gui Command accordingly.
2020-06-17 12:53:29 +02:00
vocx-fc
93f1e87bc0 Draft: move make_dimension function to its own module
Previously the `make_dimension` and `make_angular_dimension`
functions were in `draftobjects/dimension.py`.
Now they are moved to `draftmake/make_dimension.py`.

The original `makeAngularDimension` function requires angles
in radians which is counterintuitive for most cases. Also
the order is `[big, small]`.

The new function `make_angular_dimension` accepts angles
in degrees, and the order is `[small, big]`. The older
function is retained for compatibility purposes.

Also perform several improvements such as PEP8 cleanup,
writing complete docstrings, type checking the input arguments,
and depreacting the older call.

The `Draft.py` module, Gui Command, unit test, and test script
are updated accordingly.
2020-06-17 12:53:29 +02:00
vocx-fc
20db141c3a Draft: change super() so it is compatible with Python 2
In Python 3 `super()` can be used without an argument
in order to get the parent class, `super()`.
In Python 2 the present class must be used as an argument,
`super(ThisClass, self)`.

This commit is done to support Python 2,
as without it all Gui Command tools will be broken
and will fail to launch, even if the unit tests pass.

Also, set the `__metaclass__` variable to `type`.
This is done to turn all classes into "new style" classes
in Python 2. This is required so `super()` works correctly
in this version of Pyton.

This commit can be reverted once Python 2 support
is completely dropped, and only Python 3 compatible code
is used.
2020-04-27 11:05:51 +02:00
vocx-fc
fc8903ccba Draft: move Dimension GuiCommand to gui_dimensions module 2020-04-22 12:07:25 +02:00