Commit Graph

563 Commits

Author SHA1 Message Date
Max Wilfinger
7c9546fdb1 Update Sketcher context menu.
Refine poposed constraints on point selection.
Add symmetry constraint to context menu.
Rearrange commands to be consistent with the toolbar.
2024-04-08 17:58:28 +02:00
wmayer
c96fd71e4f Fix several compiler warnings
* fix -Winconsistent-missing-override
* fix -Wunused-but-set-variable
* fix -Wunused-parameter
* fix -Wunused-lambda-capture
* fix -Wunused-private-field
* fix -Wpessimizing-move
2024-04-03 10:04:56 +02:00
sliptonic
d82ee98d46 Merge pull request #12602 from FlachyJoe/arc-distance
Sketcher : ArcLength Constraint
2024-04-01 10:43:35 -05:00
Max Wilfinger
e38b8d9bd4 update hardcoded XPMs to .svg files. Updated .svg icons for clarity. 2024-03-30 11:25:13 +01:00
Florian Foinant-Willig
e2086ce1c7 Sketcher: ArcLength GUI 2024-03-25 22:32:20 +01:00
luzpaz
65cdbe3e89 Fix various typos throughout the codebase (#13029)
* Fix various typos throughout the codebase

* [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-03-18 16:54:30 -05:00
Max Wilfinger
3d5d58c418 add constraint perpendicular to the context menu if a conic and line is selected. 2024-03-18 13:24:16 -04:00
PaddleStroke
58975135f4 Sketcher: Chamfer tool (and fillet refactor) 2024-03-18 13:23:54 -04:00
Chris Hennes
73417470f5 Sketcher: Remove trailing spaces from translations 2024-03-12 22:42:19 -05:00
xtemp09
f037a1ae25 Fix segmentation fault in Sketcher
Closes #11954.
2024-03-11 16:02:15 +01:00
Josh Coalson
fbd8767242 Part: Rename AttachExtension::Support property to AttachmentSupport, to avoid name conflict with base features. Fixes #7052 2024-03-04 18:22:43 +01:00
Roy-043
94120db2a9 Sketcher: Sketcher_ConstrainHorizontal before Sketcher_ConstrainVertical in GUI
Changes to TaskSketcherElements.cpp are not required, but were done for consistency. The order in the file follows the GUI.
2024-03-04 11:12:38 -06:00
wmayer
88b2cccc09 Fix compiler warnings:
fix [-Winconsistent-missing-override]
fix [-Wunused-lambda-capture]
fix [-Wunused-variable]
fix [-Wswitch]
2024-02-26 11:01:37 -06:00
wmayer
be3de50660 Sketcher: fixes #12343: Undo/Redo for sketcher constraints doesn't work correctly 2024-02-25 00:59:35 +01:00
Max Wilfinger
3f1c0d4262 add new Sketcher commands translate and scale to context menu 2024-02-12 21:50:07 +01:00
wmayer
5eabeff94e Mod: fix several compiler warnings:
* fix -Wsometimes-uninitialized
* fix -Wunused-parameter
* fix -Wunused-variable
* fix -Winconsistent-missing-override
* fix -Wsign-compare
* fix -Wreorder-ctor
* fix -Wtautological-overlap-compare
2024-02-12 11:39:32 -06:00
Max Wilfinger
4b71f44414 Improvements to contextual right click menu in Sketcher.
Consider preselection, external geo and copy/cut/paste commands.
2024-02-12 11:04:06 -06:00
Max Wilfinger
b57a6b504c [Sketcher] enable BSpline commands in contextual right click menu 2024-01-22 12:21:01 -06:00
Paddle
ec7e3ea364 Sketcher: Define double click on edges : Select the whole wire. 2024-01-17 11:05:28 -03:00
Max Wilfinger
96d3e26110 sketcher: create contextual right click menu 2024-01-08 12:39:17 -05:00
Abdullah Tahiri
f06e805d8a Refactor ViewProvider move constraint code 2023-12-17 16:01:29 +01:00
Florian Foinant-Willig
7343bf940b Sketcher: Extend distance constraint to arcs 2023-12-17 16:01:29 +01:00
Florian Foinant-Willig
838802e28d Sketcher: Arc to arc or circle distance constraint 2023-12-17 16:01:29 +01:00
Paddle
bf54c1f1ca When moving an angle, we did not take into account the case where they are reversed. This fixes that. 2023-11-24 15:07:30 +01:00
Abdullah Tahiri
62365dd7dd SketcherGui: Fix preselectAtPoint for non X-Y orientations 2023-11-15 14:34:11 +01:00
Abdullah Tahiri
99889ac487 Sketcher: Box Selection - refactor
==================================

Full refactor of this function without change of functionality (hopefully).
2023-11-11 21:19:12 +01:00
Abdullah Tahiri
6eb55822a0 Sketcher: Box selection - Hyperbola/Parabola endpoint fix 2023-11-11 21:19:12 +01:00
Abdullah Tahiri
2f40dd34c8 Sketcher: Encapsulate function to ensure MDI focus 2023-11-08 17:46:34 +01:00
Abdullah Tahiri
13e3491148 Sketcher: Handling of right mouse button during handler execution
=================================================================

    Instead of terminating the handler, as mandated before this PR by ViewProviderSketch, ViewProviderSketch
    delegates the action to DrawSketchHandler.

    DrawSketchHandler implements by default this terminating behaviour, but allows to override it.

    DrawSketchDefaultHandler (and all tools deriving from it) implement as default behaviour to cancel if
    in initial state, otherwise to reset.
2023-11-07 16:05:08 +01:00
Abdullah Tahiri
cc5e928d74 Sketcher: Handling of ESC keypress during handler execution
===========================================================

Instead of terminating the handler, as mandated before this PR by ViewProviderSketch, ViewProviderSketch
delegates the action to DrawSketchHandler.

DrawSketchHandler implements by default this terminating behaviour, but allows to override it.

DrawSketchDefaultHandler (and all tools deriving from it) implement as default behaviour to cancel if
in initial state, otherwise to reset.
2023-11-07 16:05:08 +01:00
Florian Foinant-Willig
c0e8fa1e75 Sketcher: modernize type checking 2023-10-23 18:09:23 +02:00
Abdullah Tahiri
7034795723 Sketcher: ToolSettings Widget - Tool Management
===============================================

Sets the full interface between the DrawSketchHandler and a tool widget available somewhere in the UI.

Signalling is as follows:
1. On activation of the tool, DrawSketchHandler notifies the tool widget.
2. The tool widget retrieves tool information necessary for representation (type of widget, visibility, ...)
3. When the tool widget has created an appropriate widget, it notifies back a widget change.
4. The tool receives the widget handler and can now configure and interact with the widget.
2023-10-15 15:20:03 +02:00
Paddle
5ad7548340 ToolWidget-Sketcher: Tool widget basic framework
================================================

Provides a framework to show in the taskbar a taskbox with a tool settings dialog.
2023-10-15 15:20:03 +02:00
wmayer
d305f306df Core: Revert superfluous changes made with PR #9521 2023-10-09 15:06:45 +02:00
Abdullah Tahiri
c7b99b9fbb Sketcher: Fix segfault when activating a tool in a different view
=================================================================

When in Sketcher edit mode, a tool button is activated, while the view has been changing to view of a different type, it segfaults.

This commit checks the pointer of the view to ensure correct type before activation, and refusing to activate if not of the correct type.

fixes #10809
2023-10-07 09:00:06 +02:00
AgCaliva
a4e90b2609 Merge branch 'master' into User/Document/Feature_level_units_selection_#7746 2023-09-25 22:58:23 -03:00
Paddle
9c3c763d10 Sketcher: Angle constraint: when moving it with mouse, it enables user to switch of supplementary angle. 2023-09-19 07:22:50 +02:00
AgCaliva
ae9bb6ed43 using clang-format tags to avoid get headers reordered(fix DOMDocument redefinition error) 2023-09-18 13:40:13 -03:00
pre-commit-ci[bot]
19887876d2 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-09-16 05:14:03 +00:00
AgCaliva
b360b43ebe Fixing DOMDocument redefinition 2023-09-16 00:38:41 -03:00
Florian Foinant-Willig
9681ad595b Sketcher: Point to Circle Distance Constraints (#9559) 2023-08-28 10:58:09 -05:00
wmayer
948cbfccd9 modernize C++: avoid bind
In many cases std::bind() is kept because the code is much simpler
2023-08-08 21:10:16 +02:00
wmayer
52e1c7c33b modernize C++: move from boost::bind to std::bind 2023-08-08 17:36:13 +02:00
Abdullah Tahiri
78ae9c1d7d SketcherGui: apply clang-format 2023-05-25 17:08:03 +02:00
Abdullah Tahiri
0bdc7bb370 SketcherGui: Separate user and developer errors
===============================================

Revisiting all console calls:
- Using the Notification Framework when the user needs to be notified
- Turning them into DeveloperError/DeveloperWarnings when messages are intended only for developers
2023-05-25 14:09:06 +02:00
Florian Foinant-Willig
29657c2310 Sketcher: fix Circle to Line distance constraint display 2023-05-15 12:14:21 +02:00
wmayer
b0c9871722 Use View3DInventorViewer::setSelectionEnabled instead of SoFCUnifiedSelection::selectionRole 2023-05-04 08:03:11 +02:00
luzpaz
38a01939e0 Migrate domain name from freecadweb to freecad (#9352)
* Migrate domain name from freecadweb to freecad
* Migrate src/Mod/Material files
* Migrate Stylesheet related files
* Migrate *.svg files
* Migrate miscellaneous files
* Migrate some build files
* Migrate recently added TD AR_IRAM template files

Closes #6415
2023-04-24 15:19:20 -05:00
0penBrain
b21b18a5c6 [Bugfix]Sketcher: edge/point colors in preferences aren't took into account
Regression introduced by 0f28f26 (PR #9151)
2023-04-10 11:13:02 +02:00
wmayer
e9a9413c71 Gui: rename getPointOnScreen() to getPointOnViewport() 2023-04-08 13:51:32 +02:00