Commit Graph

63 Commits

Author SHA1 Message Date
Chris Hennes
b3bc81603d Gui: Fix compiler warnings 2025-07-20 22:47:52 +02:00
Chris Hennes
4eab1460ed Gui: Fix missing PCH include 2025-07-17 03:35:12 +02:00
captain0xff
7438a80a72 Gui: move geometry data to separate classes from dragger components 2025-07-08 17:59:51 +05:30
captain0xff
d109100ced Gui: add SoToggleSwitch class
update
2025-07-08 17:59:51 +05:30
captain0xff
cd8ddd1b9b Gui: refactor SoRotationDragger 2025-07-01 18:18:14 +05:30
Captain
ce54149637 Gui: refactor SoLinearDragger (#21451)
* Gui: refactor SoLinearDragger

* further improvements

* allow changing label visibility

* change SoLinearDraggerContainer to not inherit from SoDragger

---------

Co-authored-by: captain <captain@captain.captain.com>
2025-06-14 23:21:25 +02:00
Chris Hennes
cfb6368026 Gui: Eliminate double->float truncations
Our GUI code uses a mix of floats and doubles to represent floating
point numbers, and in a few places interchanges them in a way that
causes an invisible loss of precision. Change the double precision
"default" values to float defaults, and use the appropriate value for
pi.
2025-05-13 08:37:06 +02:00
captain0xff
d2ff41dbd7 Gui: moved dragger classes to separate folder and files
* renamed SoFCCSysDragger to SoTransformDragger
* moved TDragger, RDragger and TPlanarDragger to separate files and also renamed them to be more descriptive
2025-04-13 21:36:54 +02:00
Kacper Donat
0cbb1c0fc3 Gui: Add Origin indicator to SoFCPlacementIndicator
This adds optional origin indicator ofr SoFCPlacementIndicator. This is
something that can be used to clearly indicate origin placement with
small sphere.
2025-04-09 17:48:15 +02:00
Benjamin Nauck
b625e81a3e Gui: Use std::numeric_limits and std::numbers instead of defines 2025-03-29 13:32:38 +01:00
Chris Hennes
15a9efe356 Inventor: Fix old color ref 2025-03-02 17:09:19 -06:00
Chris Hennes
1a2070c36f Merge pull request #19636 from kadet1090/color-in-base
Base: Move App::Color to Base
2025-03-02 16:36:40 -06:00
Kacper Donat
0a0c5f828e Gui: Add SoFCPlacementIndicatorKit node
This adds SoFCPlacementIndicatorKit - a node that can be used to
show position of object to the user. It can be configured in various
ways so it should be a good base for future unification of features like
this across the application.
2025-02-24 17:30:27 +01:00
Kacper Donat
13fbab9e42 Base: Move App::Color to Base
Every basic data type is stored in Base module, color is standing out as
one that does not. Moving it to Base opens possibilities to integrate it
better with the rest of FreeCAD.
2025-02-17 21:10:26 +01:00
Benjamin Bræstrup Sayoc
c6e590ce9d [Gui] Make axis colors of axis kit (world origin axis) changeable 2025-01-24 15:45:42 +01:00
Kacper Donat
c95c4e8fe4 Gui: Fix render order of datum planes 2025-01-20 11:38:57 -05:00
luzpaz
2902ea4995 Trim lines ending with superfluous whitespace 2024-12-22 08:50:37 -05:00
PaddleStroke
1c9ce3e028 SoShapeScale: Fix SoShapeScale does not take DPI scaling into account 2024-12-10 17:15:13 +01:00
PaddleStroke
dbdbc9934e Core: SoShapeScale fix weird scaling on viewport resize. See https://github.com/FreeCAD/FreeCAD/issues/18382#issuecomment-2527623758 2024-12-10 17:15:13 +01:00
wwmayer
cdaff41fbe Add doc string to SoFCTransform
Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
2024-11-28 19:31:44 +01:00
wmayer
8b70bf5cb1 Core: Implement SoFCTransform node
In its doAction() method it only sets the model matrix if it's not the identity matrix.
This improves the issue #7606
2024-11-28 19:31:44 +01:00
liukaiwen
a481386436 add SoFCBackgroundGradient to inventor folder 2024-07-22 02:48:53 +08:00
liukaiwen
776ed8f2c1 refactor: move some nodes to Inventor folder 2024-07-20 01:07:04 +08:00
Roy-043
53ff79215c Gui: MarkerBitmaps fix DIAMOND_FILLED_20_20
Also made DIAMOND_FILLED_25_25 sharper.

See: https://github.com/FreeCAD/FreeCAD/pull/11524#issuecomment-1847906082
2023-12-11 18:23:41 +01:00
Syres916
b00cca788d [Gui] Add HourGlass markers including larger sizes 2023-11-28 23:55:10 +01:00
wmayer
ec02ef0126 Gui: use MarkerBitmaps::getSupportedSizes to get available sizes 2023-11-25 18:37:26 +01:00
Syres916
0046e625f0 [Gui] Add 20, 25 and 30px marker sizes 2023-11-25 12:36:33 +01:00
wmayer
888a33917d Gui: modernize C++: use equals default 2023-08-20 18:12:43 +02:00
wmayer
e09d8aaba6 Gui: modernize C++: use range-based for loop 2023-08-14 19:42:18 +02:00
wmayer
4d4267481f Gui: modernize C++: use override 2023-08-04 17:09:53 +02:00
luz paz
818e2b2841 Gui: fix trailing whitespace 2022-12-02 19:18:54 -06:00
marioalexis
ff1b4eff05 Gui: Replace C cast 2022-09-18 11:06:51 -05:00
berniev
ae53c9b0a4 Gui: Use auto and range-based for (#7481)
* On lines where the variable type is obvious from inspection, avoid repeating the type using auto. 
* When possible use a ranged for loop instead of begin() and end() iterators
2022-09-14 13:25:13 -05:00
wmayer
23961706be Gui: modernize C++: replace 'typedef' with 'using' 2022-08-29 14:09:18 +02:00
wmayer
fd5558f295 Fix several clazy issue:
* Using copy-ctor but class SbMatrix/SbViewportRegion has a trivial copy-ctor but non trivial assign operator [-Wclazy-rule-of-two-soft]
2022-07-24 19:38:59 +02:00
andrea
7886d3cbf4 Remove unused code into GUI 2022-07-17 03:53:11 +02:00
Chris Hennes
5df3dbae6f Gui: PR6497 move return statement to new line 2022-03-29 12:33:50 -05:00
Uwe
66dd0f62a5 [Gui] So headers: remove some unused includes
- also sort out some headers for precompiled headers
2022-03-14 15:13:13 +01:00
Uwe
07c28ad22a [Gui] Inventor: remove unused includes
-also move some includes to precompiled header
2022-03-06 03:28:50 +01:00
wmayer
dd57f124fe Gui: modernize C++11
* remove redundant void-arg
* use nullptr
2022-02-03 11:15:46 +01:00
Benjamin Nauck
cb3e059ab5 [Gui] Make inventor markers symmetric
These changes makes the round markers symmetric horizontally, vertically
and on the diagonal.
2021-01-28 14:54:05 +01:00
Zheng, Lei
dcc04f35d0 Gui: reset model transformation scaling in SoAutoZoomTranslation 2020-05-13 13:21:58 +02:00
luz.paz
04ba2872f0 src/Gui: [skip ci] fix header uniformity
This PR fixes header uniformity across all `src/Gui` files
2019-12-25 11:39:17 +01:00
wmayer
9fa56345cf core system
force strict ISO C++ (-Wpedantic)
TODO: still a lot of variadic macros are not valid ISO C++
2019-09-18 01:01:14 +02:00
Zheng, Lei
fc87332709 Gui: Placement/DatumCS view provider changes
* Add always zoom invariant and always on top rendering to
  ViewProviderDatumCS

* Add a new utility class AxisOrigin for more efficient axis rendering.
  Also exposed to python.

* Change ViewProviderPlacement to use AxisOrigin for rendering.
  A single instance of AxisOrigin is shared by all
  ViewProviderPlacement. Selection context is used to distinguish among
  different instances.
2019-08-17 15:08:34 +02:00
JimStar
6a5ad383ab Extended global marker size to be used for other modes 2018-07-11 21:22:28 -03:00
JimStar
5a7a765ed6 Implemented a global setting for marker size and support of it for snapping in "Draft" workbench. In future this setting can be used for other markers too, to be able to set them all to comfortable size by just one global setting.
Before that (e.g. on MacBook Pro) it was very hard to see the microscopic selection-circle hidden behind much bigger cursor arrow when trying to snap e.g. a line to some vertex. Now this setting can be used for such displays to increase the marker size and make it clearly visible behind the cursor.
The already existing "sketcher marker size" property is intended to be used for sketcher only, so it's not suitable for global setup of all the markers' sizes uniformly...
2018-07-05 19:05:19 -03:00
wmayer
906e548912 fix bug in SmSwitchboard::doAction 2018-01-26 16:47:56 +01:00
wmayer
c831d66589 add SwitchBoard node class 2017-05-01 17:42:03 +02:00
Kunda
de2392eb18 source typo fixes pt5
+ cleaning up some more non-short-URLs
Issue #2914
2017-03-04 13:07:13 -03:00