Commit Graph

206 Commits

Author SHA1 Message Date
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
Joao Matos
aace8f7bee CMake: Modernize build files using outdated Python variables. 2025-02-16 10:21:26 -06:00
Benjamin Bræstrup Sayoc
e09698ee47 Surface: Use QStringLiteral 2025-02-10 18:34:57 +01:00
tritao
551c2e48fb Gui: Reorganize the selection files into a top Selection folder. 2025-02-03 17:56:57 +01:00
Benjamin Nauck
6f535f19fb Prefer to use BaseClass's isDerivedFrom<T> over non template or Base::Type's
Regex based changes, manually verified
2025-01-27 16:08:18 +01:00
Benjamin Nauck
08fe94ef25 Add template based Document::countObjectsOfType
Also convert code to use this new method
2025-01-14 14:23:46 +01:00
Benjamin Nauck
74f3aee9a7 Add template based SelectionSingleton::countObjectsOfType
Also convert code to use this new method
2025-01-13 18:55:15 +01:00
Kacper Donat
954b729b56 Gui: Use getObject<T>() helpers in classes
This commit is generated using regex based find and replace:

```
s/[\w:]+_cast\s*<([^>]+)\*>\s*\(\s*getObject\(\s*\)\)/getObject<$1>/
s/[\w:]+_cast\s*<([^>]+)\*>\s*\(\s*([^)]*)\s*->\s*getObject\(\s*\)\)/$2->getObject<$1>()/
```

To regenerate if needed.
2024-12-06 18:29:39 +01:00
Benjamin Nauck
779fda5e4a Reuse Std_Delete shortcut instead of hardcoding Delete (#16682)
* Reuse Std_Delete shortcut in TaskBooleanParameters

* Reuse Std_Delete shortcut in TaskDressUpParameters

* Reuse Std_Delete shortcut in TaskLoftParameters

* Reuse Std_Delete shortcut in TaskPipeParameters

* Reuse Std_Delete shortcut in TaskSapeBinder

* Reuse Std_Delete shortcut in TaskTransformedParameters

* Reuse Std_Delete shortcut in TaskExtrudeParameters

* Reuse Std_Delete shortcut in TaskSections

* Reuse Std_Delete shortcut in MaterialSave

* Reuse Std_Delete shortcut in Array2D

* Reuse Std_Delete shortcut in TaskFemConstraint

* [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-09-23 10:53:39 -05:00
wmayer
e5fa099591 Clean-up code and improve formatting 2024-06-17 16:30:25 +02:00
David Carter
5feb963f9d Material: Appearance Updates 2
Improves the use of the ShapeAppearance property for the Part workbench.

    removes DiffuseColor property
        adds Python compatibility using custom attributes
        transitions DiffuseColor to ShapeAppearance on open
    Improved UI elements for setting object appearance, and appearance per face
    Lays the foundation for future texture support
2024-06-01 19:57:16 -05:00
wmayer
560cab6f31 clang/gcc: Add build option FREECAD_WARN_ERROR to force to make warnings into errors 2024-05-29 13:37:07 +02:00
David Carter
ba20441935 Material: Material appearance
Uses new material system for appearance

Each feature object now has a property called ShapeMaterial that
describes its physical properties. If it has a shape, it has a
material.

The ShapeColor attribute is replaced by a ShapeAppearance attribute.
This is a material list that describes all appearance properties, not
just diffuse color. As a list in can be used for all elements of a
shape, such as edges and faces.

A new widget is provided to allow the user to select materials in a
consistent fashion. It can also launch the material editor with its
more advanced capabilities.
2024-04-04 07:39:58 -05:00
wmayer
0c6a0ccad8 Surface: use of TaskDialog::addTaskBox 2024-03-26 15:57:20 +01:00
Chris Hennes
37a8e348c6 Merge pull request #11231 from DeflateAwning/http-cleanup
Find and replace http://freecad to https://freecad
2023-11-06 11:16:13 -06:00
DeflateAwning
46b3c02647 Change http to https in SVGs
Find and replace:
http:\/\/(.{0,10})freecad
https://$1freecad
Include: *.svg
2023-10-29 22:32:59 -06:00
Florian Foinant-Willig
bb3eb31d4e Surface: modernize type checking 2023-10-23 18:08:22 +02:00
liukaiwen
329904a055 [cmake] some definitions do not matter build now 2023-09-27 18:17:14 +08:00
pre-commit-ci[bot]
e92ed45df9 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-09-12 13:02:35 -04:00
Chris Hennes
6c9557c39b Surface: Final application of pre-commit 2023-09-04 08:18:51 -05:00
wmayer
255ddb746c Surface: apply clang format 2023-09-04 07:21:32 -05:00
tomate44
a501b93f16 BlendCurve: cleanup properties instantiation 2023-08-31 10:42:40 +02:00
tomate44
bc7f7c7dbf BlendCurve: add documentation of properties 2023-08-31 10:42:40 +02:00
tomate44
34634ac3cf BlendCurve: fix auto-update of properties 2023-08-31 10:42:40 +02:00
tomate44
e1b139655f Surface: allow instant update of BlendCurve properties 2023-08-31 10:42:40 +02:00
wmayer
e4239b74b6 Surface: modernize C++: use default member init 2023-08-23 00:55:03 +02:00
wmayer
93ac88bcc3 Surface: modernize C++: use equals default 2023-08-22 11:16:10 +02:00
wmayer
e1dce4e024 Surface: modernize C++: use range-based for loop 2023-08-15 17:20:01 +02:00
tomate44
8b2c2dab51 Surface: fix BlendCurve relative size
values independent of the number of control points are more intuitive
2023-08-07 09:53:00 -06:00
wmayer
9f99285d59 modernize C++: use nullptr 2023-08-05 11:23:12 -06:00
wmayer
2b3d48176c Mods: modernize C++: redundant void arg 2023-08-05 16:50:31 +02:00
wmayer
6ff3ee9951 Sketch: modernize C++: use override 2023-08-04 17:09:53 +02:00
tomate44
da3088d8b9 Surface: Fix Blend Curve icon name
and remove unused BlendSurface code
2023-05-29 10:53:01 +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
wmayer
64a6c3c376 Surface: fix -Wclazy-connect-by-name 2023-04-05 00:44:13 +02:00
wmayer
c5dedb412d Surface: replace slots with member function pointers 2023-02-03 00:21:38 +01:00
luzpaz
3a6794a317 Surface: fix header uniformity 2023-01-22 20:31:45 +01:00
wmayer
4da8c3682e Surface: move to new style connect() 2023-01-13 15:21:37 +01:00
wmayer
9a9cd5f048 Surface: fix crash when canceling filling dialog 2022-12-23 11:56:00 +01:00
wmayer
996839c263 Surface: use a single button group for all task boxes 2022-12-20 19:17:10 +01:00
wmayer
8310d0e2cb Surface: add external enumerators 2022-12-20 19:17:10 +01:00
wmayer
c30ede9df4 Surface: remove unneeded includes 2022-12-20 16:22:59 +01:00
Ajinkya Dahale
80f28a4821 [Surface] Allow modal adding/removal of geometric entities 2022-12-20 15:42:46 +01:00
Uwe
3b0f96098e [Surface] enable precompiled headers
- also remove double code
2022-12-08 03:26:59 +01:00
Uwe
2ef00dc9f2 [Surface] Gui:: remove unused includes
- also some sorting
2022-12-08 01:32:38 +01:00
Uwe
101ac1175d [Surface] App:: remove unused includes
- also some sorting
2022-12-08 00:34:08 +01:00
Chris Hennes
1fac3fead0 cMake: Add support for compiling against Qt6 (#7647)
Removes the BUILD_QT5 flag and adds a new FREECAD_QT_VERSION option,
which can be set to either "Auto" (default), 5, or 6. Auto detects which
version of Qt is installed on the system and chooses it. If both version
are installed, Qt5 is used.

Note that this DOES NOT implement compiling against Qt6, it only adds
the necessary cMake infrastructure to begin work on the source code
changes that will be required.
2022-10-31 09:24:09 -05:00
wmayer
10d6a90be5 Mod: [skip ci] fix some MSVC warnings 2022-09-05 13:45:22 +02:00
wmayer
312c8f68e4 Mod: modernize C++: replace 'typedef' with 'using' 2022-08-29 23:21:15 +02:00
wmayer
e56e35cf6a Surface: [skip ci] fix minor issues found by code checkers 2022-08-24 18:47:48 +02:00