Commit Graph

3371 Commits

Author SHA1 Message Date
Roy-043
f6e1287be8 Draft: Fix Draft_Wire conversion function
The Draft_Wire command can combine selected Draft_Wires and Draft_Lines into a single wire. This function did not always behave properly.
* Edges were not sorted, the result could have a different shape (with the correct vertexes).
* If edges formed  a closed shape the resultant wire was not closed.
2024-02-02 22:54:34 +01:00
Roy-043
174938a52a Merge pull request #12234 from Roy-043/Draft-Draft_Arc_3Points-minor-consistency-update
Draft: Draft_Arc_3Points minor consistency update
2024-02-02 18:07:37 +01:00
Roy-043
aa421a60f1 Merge pull request #12230 from kpemartin/Issue11876
Remove excessive output from Draft object creation and editing
2024-02-02 18:06:02 +01:00
Roy-043
0bd6f0d6c7 minor edit 2024-02-02 15:17:13 +01:00
Kevin Martin
78eba96f1c Replace deprecated escapes with valid ones 2024-02-02 08:58:49 -05:00
Kevin Martin
2b9fa18b68 Eliminate many "doing what you told me to" messages
These messages were perhaps originally intended as a debuggin aid but now add clutter to the output panes. Remaining messges are mostly the result of methods to display attributes of an object (which one could call from the Python console) or actually provide some information which would not be obvious from the circumstances
2024-02-02 08:58:45 -05:00
Roy-043
285c655834 Draft: Draft_Point minor consistency update 2024-02-02 14:12:57 +01:00
Roy-043
ac46a1ecf4 Draft: Draft_Arc_3Points minor consistency update 2024-02-02 14:11:55 +01:00
Roy-043
0fbe5f75bf Draft: Draft_Fillet minor consistency update 2024-02-02 11:29:43 +01:00
Roy-043
51035731e7 Draft: Avoid draftToolBar.getDefaultColor outside DraftGui.py
The draftToolBar.getDefaultColor() function is an indirect way of retreiving a parameter. It is better to avoid it where possible.
2024-02-01 18:02:10 +01:00
Roy-043
ff5f5c407a Draft: preferences-drafttexts.ui fix some issues
Increase step size from 0.05 to 0.1
Increase max for scale multiplier from 100 to 10,000
2024-02-01 17:21:14 +01:00
Roy-043
47f6c756e3 Merge pull request #12111 from 3x380V/draft_wb_qt6
Draft: Qt6 fixes
2024-01-31 11:31:38 +01:00
Roy-043
b1b0c48742 Draft: Scale widget did not handle FEM unit system
The FEM UserSchema (8) was not handled by the code.
2024-01-26 13:09:07 +01:00
Ladislav Michl
839fb17649 Draft: Use widgets from QtWidgets 2024-01-25 14:27:38 +01:00
Ladislav Michl
87985620c1 Draft: Do not specifically import PySide2 2024-01-25 13:13:39 +01:00
Roy-043
d76db39662 Draft: Draft_Scale: make sure scale inputboxes show at least 6 decimals
Fixes #7386.
2024-01-23 18:07:03 +01:00
Roy-043
427e75707e Draft: ShapeString double escape backslash in string
Fixes 12058.
2024-01-22 14:35:34 -03:00
Roy-043
6e0112d5f8 Draft: Inform user that objects without a Shape cannot be cloned
Fixes #11923.
2024-01-22 12:31:02 -05:00
Roy-043
7a85dd07e1 Draft: Improve layer functions
The current make_layer function has a `None` default for the shape color and the line color. With that value the current preference is used. This, and how the function is called, results in some confusing behaviors:
* Newly created layers will only use 2 values from the preferences when they might use 5. The latter makes more sense for the end-user IMO.
* Layers created during DXF import (for example) will have a different shape color depending on the current preferences.
* The make_layer function may reapply colors that have already been set by the view provider.

To solve this all view property related function parameter have been changed to a not None value. If a None value is supplied the view property as set by the view provider is not changed. The Layer Manager has been updated accordingly.
I realize that calling a function with 6 None values is not very convenient, but think it is the solution that is least likely to break other exiting code.

Additionally:
* Removed the makeLayer function. Layers were introduced in V0.19 when the naming scheme was changed to "make_*". Maybe it was created by mistake, or before the actual renaming operation started, but it is safe to remove it now.
* Removed overly verbose messages.
* gui_layers.py had a missing import (result of a previous V0.22 PR): `from draftutils import utils`.
2024-01-22 11:29:13 -06:00
Roy-043
c155edcd87 Draft: DraftGui.py make type of self.facecolor consistent
Since V0.19 self.facecolor had two types: integer (initial value) or QColor. With this PR it is again always a QColor.
2024-01-19 18:31:11 +01:00
Roy-043
be03a9cebf Arch: implement new get_param functions
Additionally 2 Arch_Window bugs were fixed:
* If the W1 value was changed the box tracker was not repositioned relative to the cursor.
* The WindowColor was not applied because of a typo in the code. De current default color is quite dark BTW.

Note that all dimensional values that were not really defaults, but just the last entered values, have been removed from preferences-archdefaults.ui. As a result the layout looks a bit strange. That will be improved in a next PR.
2024-01-18 15:43:15 +01:00
Roy-043
744ef19866 Draft: Task panel checkboxes were repositioned by accident
In a previous PR of mine I have reorganized some lines of code in DraftGui.py without realizing that this would reposition checkboxes. This PR fixes that.
2024-01-17 11:00:40 +01:00
Kevin Martin
359a3487ed Move the "Treat ellipses and splines as polylines" to DXF *output* options
This option control DXF export but was confusingly in the Import options area. Fixes #11659
2024-01-11 15:58:26 +01:00
Roy-043
6ce705bc58 Draft: remove reapply_diffuse_color workaround
The function would trigger the creation of duplicate Draft Polar Arrays (only on Linux and only if the Fuse option is selected and the Link Array option deselected).
Forum topic:
https://forum.freecad.org/viewtopic.php?t=84090

The reapply_diffuse_color function is no longer required anyway as Issue #8340 has been fixed.
2024-01-10 16:46:49 +01:00
Roy-043
8ea799bd61 Draft: gui_snapper: setTrackers can be called if there is no 3D view 2024-01-05 10:50:46 +01:00
Chris Hennes
fce7dea6f7 Update translations (#11886)
* Update translations

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-01-03 09:27:18 -06:00
Roy-043
8d8f429d89 Draft: improve checkSpecialChars in DraftGui.py 2023-12-23 10:33:54 +01:00
Yorik van Havre
651fc54a8c merged crowdin translations 2023-12-20 09:27:37 +01:00
Yorik van Havre
1f65348080 Updated ts files 2023-12-20 09:27:37 +01:00
Roy-043
06a321eb80 Draft: intermediate fix for get_normal: check if 3D view exists
This avoids issues with TechDraw views of Arch models if there is no active 3D view.
2023-12-16 20:30:45 +01:00
Roy-043
0845671608 Draft: implement new get_param functions (step 6)
See #11677

Added a parameter to the dictionary. The get_parameter and set_parameter functions now print a warning if a parameter is not found.
2023-12-15 14:59:59 +01:00
Roy-043
20f32c4bf1 Draft: implement new get_param functions (step 5)
See #11677

Last bits...
2023-12-14 15:53:45 +01:00
Kevin Martin
00cbc6bab1 Remove the "legacy only" from the import colors option 2023-12-14 10:15:17 +01:00
Kevin Martin
37e6c19a4b Add hooks so Gui classes can be seen by DXF importer 2023-12-14 10:15:17 +01:00
Roy-043
16e5835aa6 Draft: implement new get_param functions (step 4)
See #11677
2023-12-13 19:39:35 +01:00
Roy-043
14482b1f8e Moved another import 2023-12-13 16:32:15 +01:00
Roy-043
bd19d331f5 Moved an import to avoid circular import 2023-12-13 09:59:08 +01:00
Roy-043
822f2111e3 Draft: implement new get_param functions (step 3)
See #11677
2023-12-12 20:20:03 +01:00
Roy-043
b0aa33f92a Draft: implement new get_param functions (step 2)
See #11677
2023-12-12 14:48:09 +01:00
Roy-043
59753260c9 Draft: implement new get_param functions (step 1)
See #11677
2023-12-11 19:31:34 +01:00
Roy-043
ea59cce36e Draft: increase DXF Python library version to 1.42
See: https://github.com/yorikvanhavre/Draft-dxf-importer/pull/28
2023-12-11 12:40:47 +01:00
Roy-043
4d00c0f43c Draft: new get_param function with defaults
This PR introduces a new get_param function. For its default values it checks a dictionary largely filled by reading the preferences UI files. The goal is to have all defaults in one place to avoid inconsistencies. The dictionary is created once and then stored in a global variable.

Once merged this function will be implemented in Draft and Arch. The get_param function in utils.py will become obsolete.

Related issue: #10176
2023-12-11 10:18:50 +01:00
Roy-043
f7fa76b975 Draft: minor improvement to prefs layouts 2023-12-10 15:22:43 +01:00
Roy-043
79eaa01032 Draft: Introduce DefaultAnnoScaleMultiplier parameter
This parameter replaces DraftAnnotationScale.

The parameter can be changed in the preferences and with the Draft_SetStyle command.
2023-12-09 19:17:36 +01:00
Roy-043
6e86e9efa2 Draft: use MarkerSize for snap and tracker markers 2023-12-08 21:17:34 +01:00
Roy-043
770eb5e64a Draft: remove maxSnap parameter
It is superfluous. The maxSnapEdges parameter can be set to zero.
2023-12-08 12:06:36 +01:00
Roy-043
26adc417a9 Draft: remove the Draft_ToggleContinueMode command
Rarely used as Continue mode can also be checked in the task panel of Draft commands.
2023-12-05 22:31:44 +01:00
Roy-043
652c0fb752 Draft: menu texts to sentence case 2023-12-04 10:44:59 +01:00
Roy-043
6db658255f Draft: update Draft_ApplyStyle
The command now applies all style properties from `utils.get_default_annotation_style()` and `utils.get_default_shape_style()`.

Additionally: minor improvements to gui_setstyle.py.
2023-12-02 13:11:08 +01:00
Roy-043
e64bb9f499 Draft: update Draft_SetStyle
* Added handling of DefaultShapeVertexColor, DefaultShapePointSize, DefaultAnnoLineColor and DefaultAnnoLineWidth preferences.
* Rearranged the task panel.

Additionally the DefaultDrawStyle and DefaultDisplayMode preferences are now applied by format_object in gui_utils.py.
2023-11-30 21:19:48 +01:00