Commit Graph

6664 Commits

Author SHA1 Message Date
tetektoza
31accb32df Gui: Add a comment explaining invoke(0) call in NavigationStyle 2025-09-03 01:24:58 +02:00
tetektoza
873aab3b2a Gui: Extract helper methods for navigation context menu 2025-09-03 01:24:58 +02:00
tetektoza
9329767039 Gui: Use QStringLiteral for selected element 2025-09-03 01:24:58 +02:00
tetektoza
85526db81a Gui: Fix typo in SelectionView 2025-09-03 01:24:58 +02:00
tetektoza
178996a80a Gui: Check for nullptr in activeWindow in CommandView directly 2025-09-03 01:24:58 +02:00
tetektoza
8c004fc98b Gui: Use freecad_cast where possible in CommandView for ClarifySelection 2025-09-03 01:24:58 +02:00
tetektoza
80aca31684 Gui: Use designated initializer in CommandView 2025-09-03 01:24:58 +02:00
tetektoza
de8b9f2dbf Gui: Initialize SbVec2s point directly in CommandView 2025-09-03 01:24:58 +02:00
tetektoza
b780cf923f Part/Gui: Rename Pick Geometry tool to Clarify Selection
Co-authored-by: realthunder <realthunder@users.noreply.github.com>
2025-09-03 01:24:58 +02:00
tetektoza
3c5131e051 Gui: Add support for toggling PickGeometry with long-press LMB
Co-authored-by: realthunder <realthunder@users.noreply.github.com>
2025-09-03 01:24:58 +02:00
tetektoza
c856c9ea01 Core/Gui: Render primitives on top of the scene in PickGeometry
+ added some better grouping for items, which are assigned per object
  right now. For example, if we exceed 10 items per object it gets an
  additional group.

Co-authored-by: realthunder <realthunder@users.noreply.github.com>
2025-09-03 01:24:58 +02:00
tetektoza
59b234028f Core: Add preselect on hovered menu items in PickGeometry tool
Co-authored-by: realthunder <realthunder@users.noreply.github.com>
2025-09-03 01:24:57 +02:00
tetektoza
5d49b4b108 Core: Respect highlighting for preselection too
Co-authored-by: realthunder <realthunder@users.noreply.github.com>
2025-09-03 01:24:57 +02:00
realthunder
ce8ba74602 Gui: Add a context menu to select obstructed items (from RT fork)
As the title says, this is from RT's fork. I only adjusted it a little
bit and removed pie selection which was previously in the
implementation.

To activate context menu - "G, G", then if it can't resolve edges vs
faces, it adds QMenus on top to let user decide which one to select.

Co-authored-by: tetektoza <tetektoza@users.noreply.github.com>
2025-09-03 01:24:57 +02:00
Benjamin Nauck
85af5e6095 Merge pull request #23519 from kadet1090/show-axis-cross-on-top
Gui: Show Axis Cross on top
2025-09-02 15:12:39 +02:00
Kacper Donat
e7a17f203f Merge pull request #23549 from captain0xff/gizmo
PartDesign: improve the interactive draggers
2025-09-02 00:25:55 +02:00
Kacper Donat
24a6d59ca8 Merge pull request #23552 from pieterhijma/delete-key-prop
Gui: Add a binding for the Delete key to remove a property
2025-09-01 23:18:15 +02:00
Kacper Donat
bc8caa49ed Gui: Show Axis Cross on top 2025-09-01 23:07:53 +02:00
Kacper Donat
d34295354c Gui: SoFCPlacementIndicatorKit add missing headers 2025-09-01 23:07:32 +02:00
Benjamin Nauck
c48e1bbae2 Merge pull request #23399 from wwmayer/quick_measure
Measure: Fix quick measure command
2025-09-01 21:11:26 +02:00
captain0xff
4c75c3fe0a PartDesign: set the linear dragger increment based on the zoom level 2025-09-02 00:32:25 +05:30
Pieter Hijma
c0f440fad4 Gui: Add Property View delete key binding
This commit adds a binding for the delete key to delete properties from
property containers.
2025-09-01 20:53:32 +02:00
captain0xff
d5ec53f30d PartDesign: fix draggers for chamfer with two dimensions 2025-09-01 23:20:18 +05:30
Chris Hennes
a429931abd Core: Record module failure information during startup 2025-09-01 18:10:04 +02:00
Chris Hennes
e36d5db583 Update translations 2025-08-30 2025-09-01 17:44:54 +02:00
Pieter Hijma
0ac71c5e80 Gui: Fix Property View copy bug
The context menu of the property view shows a "Copy" action for
properties with which the value of the property can be copied to the
clipboard.  When multiple properties are selected, this menu item
appears multiple times and in that case it copies the name of one of the
properties.  This commit fixes this.
2025-09-01 17:06:40 +02:00
Chris Hennes
a1be07569b Merge pull request #22998 from Rexbas/prevent-showing-context-menu
Navigation: Prevent showing context menu after panning or rubber band selection
2025-08-31 22:41:05 -05:00
Kacper Donat
cac32c4d3c Revert "Gui: Mark mouse move action handled to skip digging nodes"
This reverts commit ccb417e00d.
2025-09-01 05:33:02 +02:00
Bas Ruigrok
d5a44b4b67 Gui: Allow switch to panning after canceling sketcher rubber band selection 2025-08-31 18:37:09 -05:00
Bas Ruigrok
7fa5147043 Gui: Reset navigation flags when the new mode is not IDLE or when the mouse buttons are released 2025-08-31 17:24:28 -05:00
tetektoza
98e653fc9f Core: Do not clear highlight if filter rejected selection
When user has specified a filter for a multi selection attempt, for
example Ctrl + clicking on a disallowed edge, the visual highlighting of
previously selected valid objects (that filter allowed) would disappear,
even though they were still internally valid in selection system.

The root cause of that was that when `addSelection()` failed, the code
still applied a `SoSelectionElementAction::None` to the scene graph
path, which was clearing visual highlighting for all objects in that
path, including those valid selection.

So, the fix is to set `pPath` to `nullptr` if selection fails, to
prevent any visual action from happening and being applied, in essence
leaving correct (and existing) selection untouched.
2025-08-31 17:23:26 -05:00
Kohei Takahashi
da32a949f2 Gui: Mark mouse move action handled to skip digging nodes 2025-08-31 22:09:32 +02:00
Ryan K
00fcbf917c Gui: Widen the default customize dialog (#22714)
* Gui: Widen the default customize dialog

* Gui: Make panels the same width in keyboard and toolbars tabs

* Remove namespace additions

---------

Co-authored-by: Ryan Kembrey <ryan.kembrey@student.uts>
2025-08-31 21:53:51 +02:00
Kacper Donat
6cc652f414 Merge pull request #23321 from chennes/refactorApplicationAndAddVersioning
Refactor App::Application directory handling and add versioning
2025-08-31 21:35:02 +02:00
Chris Hennes
39f1c7f346 Merge pull request #23100 from 3x380V/points
Points: Speed up translation of imported points
2025-08-30 20:04:08 -05:00
Jiří Pinkava
3be2d0b994 Remove unused DAGFilter 2025-08-30 17:23:18 -05:00
captain0xff
66c458f9dc PartDesign: add interactive gizmos 2025-08-30 17:02:52 +02:00
PaddleStroke
2f970a7135 Link: MaterialOverride: fix transparency inversion 2025-08-30 16:32:23 +02:00
tetektoza
4b11789f02 Sketcher: Introduce Select All (Ctrl + A) (#23289)
* Sketcher: Introduce Select All (Ctrl + A)

As the title says, this allows selecting all geometries on the sketch
with CTRL + A shortcut, plus also allows to select "Select All" option
from Edit menu.

* Sketcher: Use fmt instead of std::stringstream in selectAll

* Sketcher: Fix typo in selectAll

Co-authored-by: João Matos <joao@tritao.eu>

---------

Co-authored-by: João Matos <joao@tritao.eu>
2025-08-29 16:52:43 +02:00
luzpaz
f38e1bdfbb Fix various typos
Found via codespell
2025-08-29 10:03:57 +02:00
Kacper Donat
8ada1998f8 Gui: Fix reloading of themes 2025-08-28 17:14:55 -05:00
Chris Hennes
f3c675ed5b Update translations 2025-08-28 16:14:49 +02:00
Chris Hennes
c1805413e0 Gui: Refactor to not use std::ranges
Older Ubuntu doesn't like the mechanism used to split on commas
2025-08-27 11:51:22 -05:00
Chris Hennes
ade698e52d Gui: Detect new versions and offer to migrate
At the very end of the startup process, check to see if we are using a
versioned directory from a previous version, or we are not versioned at
all but are using the system's default storage location (that is, not a
custom config path set on the command line, etc.). If so, offer to
migrate the old configration folders into new ones for the current
version.
2025-08-27 11:51:22 -05:00
Kacper Donat
5f2f22f588 Gui: Move style parameters to yaml files 2025-08-27 17:59:10 +02:00
MisterMakerNL
6d81d0556a Gui: Various fixes to official themes
Updated PropertyEditor QLabel and QPushButton styles for better visual consistency
and usability, including specific pushbutton styling for the Placement tool. Adjusted
QCheckBox disabled indicator styles to use consistent border and background colors,
and fixed background color for checked and indeterminate disabled states.

Gave inactive and active tab their own token. Fixed missing hover for
scrollbar.

Changed the value of EditedEdgeColor in the FreeCAD Light preference
pack Due to contrast issues with default shape color.

Refreshed Theme_thumbnail_dark.png and Theme_thumbnail_light.png images.
Updated Thumbnails_themes.svg with new Inkscape version metadata, export
paths, and visual adjustments, including color and layout changes to
theme preview rectangles.

Refreshed Theme_thumbnail_dark.png and Theme_thumbnail_light.png images.
Updated Thumbnails_themes.svg with new export filenames, DPI settings,
and adjusted some SVG properties for improved export consistency.

Changed the TextDisabledColor to fix issue with lighten full black.

Adjusted the QComboBox padding-right from 2px to 18px in FreeCAD.qss to
provide space for the check-mark indicating the active item.

Changed the 'HighlightColor' value in the FreeCAD Light preference pack
configuration to dark green to solve contrast issues.

Introduces InActiveTabBackgroundColor and ActiveTabBackgroundColor to
both FreeCAD Dark and FreeCAD Light preference packs for improved tab
appearance customization.
2025-08-27 17:58:57 +02:00
Chris Hennes
5fe310a3c2 Merge pull request #23140 from kadet1090/yaml-source-style-parameters
Gui: Add YamlParameterSource for StyleParameters
2025-08-27 10:34:17 -05:00
Kacper Donat
1237ba7852 Merge pull request #22944 from pieterhijma/expr-dialog-varset
Gui: Improve Expression dialog for VarSets
2025-08-27 16:14:25 +02:00
wwmayer
ae2748f2e4 Measure: Fix quick measure command
* Clear status bar when switching off quick measure
* Activate quick measure by default
* Remove command from toolbar as there is currently no icon
2025-08-27 16:01:54 +02:00
Kacper Donat
5719bb8bf8 Merge pull request #22389 from PaddleStroke/pd_transform
PartDesign: Transform tools
2025-08-27 15:22:26 +02:00