Commit Graph

351 Commits

Author SHA1 Message Date
0penBrain
7b85e8fc48 Cmake: pass 'undefined' with double dash so alternative linker can be used 2024-04-29 18:25:17 +02:00
wwmayer
c4c453312d PySide6: Fixes #13533: QSvgWidget is not a child of QtSvg in PySide6 (#13554)
* Create a compatibility module QtSvgWidgets.py to handle PySide2 & PySide6
* In the Arch and Material modules use the QtSvgWidgets module
* Since Qt6 the method QFont.setWeight() doesn't accept an int any more but requires an enum. Since the call of QFont.setBold(True) sets
  a weight of 75 the extra calls of QFont.setWeight(75) can be safely removed

Co-authored-by: Adrián Insaurralde Avalos <36372335+adrianinsaval@users.noreply.github.com>
2024-04-22 18:35:33 -04:00
Chris Hennes
5d7fec1e98 Web: remove QtWebEngine dependency 2024-04-21 22:27:50 -05:00
Chris Hennes
c35693fd8a Web: Remove GUI
Web no longer provides a user-visible browser, but only a simple server for remote interaction with FreeCAD. Dependency on QtWebWengine has been removed.
2024-04-21 22:27:50 -05:00
Chris Hennes
cfb0873d38 Start: Migrate to simple command 2024-04-21 22:27:50 -05:00
Chris Hennes
d0a87d3e0c Start: Remove old WB and replace with new 2024-04-21 22:27:50 -05:00
Chris Hennes
ef189f8bcf Start: Recreate start as a QtWidgets-based app
Removes all Start network access and dependency on Chromium for rendering. Written
entirely in C++ (no HTML, CSS, JS, etc.).
2024-04-21 22:27:49 -05:00
Patryk Skowroński
233a61e54e New integration with 3Dconnexion devices (#12929)
* New integration with 3Dconnexion devices

* CMake build option hidden for Mac

* Minor fixes, to be squashed to previous commit

* cmake: fix indent and case; to be squashed

* Corrected name case

---------

Co-authored-by: Patryk Skowroński <pskowronski@3dconnexion.com>
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
Co-authored-by: Ladislav Michl <ladis@linux-mips.org>
2024-04-15 10:43:45 -05:00
mosfet80
4b7b09d1f8 Clean FindEigen3.cmake (#12632) 2024-04-01 10:47:19 -05:00
Adrián Insaurralde Avalos
5a960792e5 Material: fix windows debug builds
Material: fix cmake linking of yaml-cpp<0.7.0
write version in final report
2024-04-01 10:38:23 -05:00
mosfet80
dd518726f1 clean FindNETGEN.cmake
Removed redundant mac netgen setup
2024-02-29 17:36:40 -06:00
mosfet80
d8598139ce Clean ConfigureChecks.cmake
Clean cmake
2024-02-27 15:09:48 +01:00
mosfet80
637287e932 Clean FindPyCXX.cmake (#12333)
* Clean FindPyCXX.cmake
2024-02-19 11:25:01 -06:00
Ladislav Michl
3a603138bd CMake: Fix include path returned by find_pip_package
SetupShibokenAndPyside macro checks module include path and eventually
decides to disable respective module in case its include directory is
missing. Make this process more straightforward by testing directory
existence; "Location: " string is 10 not 9 characters long and leading
whitespace makes testing for directory name fail.
While there, rename variables to respect that find_pip_package returns
only single include and library path.
2024-02-16 09:19:09 +01:00
Ladislav Michl
f32ed05a01 CMake: Move build options for Shiboken/Pyside to the top 2024-02-16 09:19:09 +01:00
Paddle
d77cd7acf5 Assembly: Introduce core functionality of assembly workbench. 2024-02-13 08:25:45 +01:00
mosfet80
006f64b64e Clean SetupQt.cmake (#12335)
* Update SetupQt.cmake
2024-02-12 12:08:09 -06:00
mosfet80
b546b17342 Clean CompilerChecksAndSetups.cmake
CMAKE_CXX_COMPILER_VERSION are always greater than  3.9
2024-02-12 12:05:11 -06:00
Ladislav Michl
8c220492e3 CMake: Fix searching for pip installed PySide 2024-01-22 06:58:17 +01:00
bgbsww
8abd09398a Add support for OCCT 7.8.0 (#11909) 2024-01-09 19:47:25 -06:00
looooo
8e2ab9f768 set INSTALL_TO_SITEPACKAGES to ON by default
and add some modules to the freecad-namespace (freecad.part, freecad.partdesign, freecad.sketcher)
2024-01-08 14:40:32 -03:00
David Lanzendörfer
7ad74e1a73 Adding version check (#11795)
* Adding version check

* Add compat component for Qt6

* Remove too many qts

* Fix include path

---------

Co-authored-by: David Lanzendörfer <leviathan@libresilicon.com>
2024-01-05 11:08:13 -06:00
Jacob Oursland
4e020c14a3 CMake: Use /Z7 instead of /Zi when ccache is used. 2023-12-04 10:15:08 -07:00
wmayer
8f3fcd540a MSYS: fix CMake configure and build for MinGW 2023-12-03 18:02:07 +01:00
wmayer
e8d0485f94 Qt: fix failure for Qt version < 5.15 2023-11-21 23:10:03 +01:00
wmayer
132b077983 Qt: define Q_DISABLE_COPY_MOVE only if needed 2023-11-21 23:10:03 +01:00
Adrián Insaurralde Avalos
94f7398f36 Add OndselSolver as git submodule
also update github actions to pull submodules
2023-11-13 12:17:20 -05:00
Yorik van Havre
1c18768634 Merging the Help module (#11008)
* Adding the Help module - fixes 10527, fixes #10512

* Aded Help to pre-commit

* [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>
2023-10-16 11:17:06 -05:00
David Carter
442bca834e Material: Material handling enhancements
Rework of the material handling system.

This first part concntrates on a rework of the material cards.
Rather than use a fixed list of possible properties, properties can
be defined separately in their own files and mixed to provide a
complete list of possible properties. Properties can be inherited.

The cards then provide values for the properties. These can also
be inherited allowing for small changes in cards as required.

The new property definitions are more extensive than previously.
2 and 3 dimensional arrays of properties can be defined. Values
are obtained by calling an API instead of reading from a dictionary.

For compatibility, a Python dictionary of values can be obtained
similar to how it was done previously, but this is considered a
deprecated API and won't support the newer advanced features.

The editor is completely reworked. It will be able to edit older format
material cards, but can only save them in the new format.

For testing during the development phase, a system preference can
specifiy wether the old or new material editors are to be used. This
option will be removed before release.
2023-09-25 11:04:15 -04:00
David Carter
6624fa3775 Material: Material handling enhancements
Rework of the material handling system.

This first part concntrates on a rework of the material cards.
Rather than use a fixed list of possible properties, properties can
be defined separately in their own files and mixed to provide a
complete list of possible properties. Properties can be inherited.

The cards then provide values for the properties. These can also
be inherited allowing for small changes in cards as required.

The new property definitions are more extensive than previously.
2 and 3 dimensional arrays of properties can be defined. Values
are obtained by calling an API instead of reading from a dictionary.

For compatibility, a Python dictionary of values can be obtained
similar to how it was done previously, but this is considered a
deprecated API and won't support the newer advanced features.

The editor is completely reworked. It will be able to edit older format
material cards, but can only save them in the new format.

For testing during the development phase, a system preference can
specifiy wether the old or new material editors are to be used. This
option will be removed before release.
2023-09-25 11:04:01 -04:00
PaddleStroke
b7a6558c72 Assembly: Initial implementation (#10427)
* Assembly: Initial implementation.
* Disable Assembly wb as it's WIP.
* Stub code for handling assembly import.

Co-authored-by: sliptonic <shopinthewoods@gmail.com>
Co-authored-by: Paddle <PaddleStroke@users.noreply.github.com>
2023-08-31 12:30:10 -05:00
Chris Hennes
ee7779455a Test: Begin QuantitySpinBox QTests 2023-08-12 10:23:43 -07:00
andrea
170c2b9957 removed old OCC <7 references
removed OCC <7 references
2023-08-04 21:22:40 -06:00
Adrián Insaurralde Avalos
3b6dbeb27e Rename cmake flag for unit tests to ENABLE_DEVELOPER_TESTS
To differentiate from the previously existing BUILD_TEST that controls building the Test WB
2023-08-02 00:49:29 +00:00
Adrián Insaurralde Avalos
2a1d4d4994 fix use ccache by default on most systems 2023-07-27 08:31:04 -04:00
wmayer
713bc349a5 Qt6: fix possible build failure
* add CMake definitions 'QT_NO_KEYWORDS' to avoid the Qt definition of the 'slots' macro that causes a conflict when including Python headers
* drop QT3_SUPPORT define
2023-07-20 08:58:56 -05:00
wmayer
08e239e9f7 CMake: improve handling of shiboken/PySide
* fix syntax error with message()
* if shiboken/PySide cannot be found print a warning instead of fatal error. Especially for Qt6 builds a self-compiled shiboken6/PySide6 is required that isn't necessarily installed into the system directories so that the (system) Python interpreter may fail to find them
2023-07-20 08:58:56 -05:00
Adrián Insaurralde Avalos
1d7fb46f89 Add FREEECAD_USE_CCACHE cmake option
Defaults to ON except for conda compilation on windows
2023-07-18 11:46:04 -04:00
sliptonic
fecc5d954e Merge pull request #9797 from mosfet80/patch-5
clean FindCoin3DDoc.cmake
2023-07-10 09:59:09 -05:00
sliptonic
127afb981f Merge pull request #9773 from adrianinsaval/defaultEnableFlatMesh
cmake: enable BUILD_FLAT_MESH by default
2023-07-10 09:54:58 -05:00
Adrian Insaurralde Avalos
0ef101d817 Add cmake option FREECAD_USE_EXTERNAL_FMT to turn on/off system fmt use
defaults to ON
2023-07-02 01:38:26 -04:00
mosfet80
d1130c3120 check correct Eigen3 required version
https://wiki.freecad.org/Third_Party_Libraries say minimum eigen3 are v3.0
2023-06-30 10:14:38 -04:00
mosfet80
af2253f16e Merge branch 'FreeCAD:master' into patch-5 2023-06-30 08:04:30 +02:00
Adrián Insaurralde Avalos
0bd56851ac update libpack download hint [skip ci] 2023-06-27 13:49:16 -04:00
mosfet80
c82a0f79c7 clean FindCoin3DDoc.cmake
clean FindCoin3DDoc.cmake
2023-06-20 00:00:58 +02:00
Adrián Insaurralde Avalos
93f9a34b40 cmake: enable BUILD_FLAT_MESH by default 2023-06-14 12:07:06 -04:00
Chris Hennes
67638c3701 CMake: Remove last vestige of raytracing 2023-06-06 07:37:15 -05:00
wmayer
cd4ac3c853 fixes #9523: CMake Error at cMake/FreeCAD_Helpers/SetupEigen.cmake 2023-05-17 14:39:11 +02:00
sliptonic
ed961dd834 remove dependency on robot 2023-05-12 09:20:20 -05:00
wmayer
8cc0b6ad39 Gui: Create .qm out of .ts files 2023-05-07 08:52:49 +02:00