Commit Graph

5342 Commits

Author SHA1 Message Date
Chris Hennes
bd96ddef8a 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
f68c2de569 Start: Migrate to simple command 2024-04-21 22:27:50 -05:00
Chris Hennes
57bc297005 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
dzid26
f9c423e979 Core: Bring ConfirmSave dialog to the top (#13352) 2024-04-18 22:56:28 -05:00
Chris Hennes
e7069e6797 Update translations. 2024-04-17 16:50:38 -05:00
wmayer
1f29a4a8b7 Gui: In property editor disable widget of Placement property is not part of a DocumentObject 2024-04-17 12:28:30 +02:00
wmayer
86f9c6b6b4 Gui: In Placement dialog check that the object identifier has a valid property before binding it to a widget 2024-04-17 12:28:30 +02:00
Patryk Skowroński
43ddbb4936 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
Chris Hennes
ed3e1cf544 Merge pull request #13332 from wwmayer/fix_material_issues
Fix material issues
2024-04-15 10:33:29 -05:00
Roy-043
5ae6b8acf6 Gui: spelling: freezed -> frozen 2024-04-13 17:16:22 +02:00
wmayer
a1194f5f57 Gui: fix crash in PythonCommand::isChecked()
This very likely fixes the crash reported at https://forum.freecad.org/viewtopic.php?t=86874
2024-04-13 14:58:21 +02:00
Bas Ruigrok
4b8fe0c1ab Fix compiler warning 2024-04-10 22:31:35 +02:00
wmayer
12ef38e66f Fix handling of transparency / Restore colour per face
The Materials module does a conversion from float to double when saving the transparency and again a conversion from double to float to double
when restoring it. This causes a considerable loss of accuracy so that the representation in percent leads to different numbers.

Using consistently some helper functions to do a proper conversion from float to long and back fixes the problem.

The new property ShapeAppearance is a PropertyMaterialList and always read after the DiffuseColor property when restoring a document.
Thus, the  method onChanged() doesn't override DiffuseColor when restoring a document. Additionally, the method finishRestoring() is re-implemented
to set the colours per face in case DiffuseColor has defined multiple colors.
2024-04-10 13:32:58 +02:00
wmayer
92ac3cc0d3 Core: avoid conversion from float to double or vice-versa
When synchronizing the Transparency property with the transparency value of the ShapeAppearance property then do not convert between float and
double as otherwise some strange rounding issues can occur.

Example: Set the Transparency property of an object to 35 in the Property Editor. After leaving the editor the value may switch to 34.
2024-04-09 22:15:51 +02:00
wmayer
15dcd1e9be Gui: add security checks to view provider extensions because they can be accessed if a document objects is not yet attached 2024-04-09 22:15:51 +02:00
wmayer
2af81362d3 Gui: fix Std_RandomColor 2024-04-09 22:15:51 +02:00
wmayer
92b1e77744 Gui: fix ViewProviderGeometryObject
* fix several linter warnings
* remove code that cannot be executed: inside the constructor it cannot ever happen that getObject()
  returns a valid object
* in ViewProviderGeometryObject::handleChangedPropertyName call the method of the direct base class
  as otherwise this may break the mechanism in the future
* Shape is a property of an extension module -> move its handling to ViewProviderPartExt
2024-04-09 22:15:51 +02:00
sliptonic
d485bf3741 Merge pull request #13330 from Rexbas/fix-navigation-with-overlays
Gui: Fix navigation with overlays
2024-04-08 11:09:10 -05:00
PaddleStroke
c6bf546b7a Sketcher: Points color reflect their construction state. Remove Vertex color. 2024-04-08 17:49:46 +02:00
Bas Ruigrok
5e9b75658c Gui: Fix navigation with overlays 2024-04-05 22:30:52 +02:00
wmayer
dfc74591cc Material: add workbench manipulator
Implement a workbench manipulator to inject Std_Material and Std_Appearance to (context) menu.
2024-04-05 10:08:06 +02:00
wmayer
384902c26c Gui: Fix broken toolbars layout due to MaterialWorkbench
The explicit activation of the MaterialWorkbench breaks the toolbars layout for every start. When fixing it manually it will be broken
again after the next start.

Because the core doesn't depend on the Material module it's a no-go to add an explicit runtime dependency to the corresponding workbench.

Since the Part module depends on the Materials module and the PartGui on MatGui the correct way is to let Part an PartGui load their
dependencies.
2024-04-05 10:08:06 +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
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
Ladislav Michl
4054520f08 Gui: WorkbenchSelector: Fix build with Qt6
indexOf is returning qsizetype in Qt6, so use type explicitely.
2024-04-02 16:19:27 +02:00
Ladislav Michl
ec3b89a567 Gui: WorkbenchSelector: Fix whitespaces 2024-04-02 16:19:27 +02:00
Yorik van Havre
00b6b6ba3b Setter for Modified attribute 2024-04-02 15:28:57 +02:00
wmayer
392d0ce150 Gui: Fix Std_LinkActions
Currently the active button of the Std_LinkActions command is toggable that is confusing behaviour.
This PR makes the action group non-checkable
2024-04-02 08:19:38 +02:00
wmayer
b1a0a3edc8 Gui: fix compiler warning 2024-04-01 19:42:08 +02:00
PaddleStroke
bb87b572c5 Core: Std_ToggleTransparency: Fixes #11353 2024-04-01 11:23:49 -05:00
Florian Foinant-Willig
3aa0241dc9 [PD] Fix crash related to SuppressibleExtension 2024-04-01 11:02:25 -05:00
lyphrowny
e99ee08514 FEM: Fix cxx typo and remove calculix from solvers tab in examples (#12876)
* FEM: remove calculix from solvers

* FEM: remove calculix from joint with ccxtools if branches

* FEM: remove calculix from its if

* FEM: fix cxx typo in translations

* FEM: fix cxx typo in classes name

* FEM: fix ccx typo in shortcuts

* FEM: convert FEM_*CcxTools to CamelCase

* FEM: remove tests related to calculix

* FEM: remove test_solver_calculix.py from Fem/CMakeLists.txt

* FEM: convert all 'CalculiXccxTools' to 'CalculiXCcxTools'

* FEM: revert changes in all *_*.ts files

* FEM: convert 'SolverCcxtools' to 'SolverCcxTools'

* FEM: convert remaining 'Ccxtools' to 'CcxTools'
2024-04-01 10:51:23 -05:00
sliptonic
d82ee98d46 Merge pull request #12602 from FlachyJoe/arc-distance
Sketcher : ArcLength Constraint
2024-04-01 10:43:35 -05:00
PaddleStroke
5d3de598e7 Core: Introduce Tab-Bar workbench selector 2024-04-01 10:35:53 -05:00
wmayer
098d42573b Gui: fix computing status value and use enum to avoid magic numbers 2024-03-31 10:59:00 +02:00
wmayer
15537b0c23 Gui: the overlay icon for the call tips list is too small 2024-03-31 10:48:50 +02:00
ppphp
0488a7bb8e add version check macro for compatibility 2024-03-31 10:47:32 +02:00
ppphp
2bce6946dc fix: c++20 deprecate copy_option 2024-03-31 10:47:32 +02:00
ppphp
8863b9ac4c fix: c++20 deprecate [=] 2024-03-31 10:47:32 +02:00
Roy-043
fcf638849b Gui: Std_ViewLeft should be last in "Individual views" toolbar
See #13227.
2024-03-30 17:46:25 +01:00
Max Wilfinger
78249a8ed8 add missing view top option + arrangement 2024-03-30 11:50:17 +01:00
Max Wilfinger
e38b8d9bd4 update hardcoded XPMs to .svg files. Updated .svg icons for clarity. 2024-03-30 11:25:13 +01:00
Chris Hennes
c37c32edc9 Merge pull request #13154 from chennes/translations20240325
Update translations and fix script
2024-03-28 13:51:39 -05:00
wmayer
7256e1c827 Gui: add overloaded method pixmapFromSvg() to pass the device pixel ratio of a widget 2024-03-28 07:27:29 +01:00
wmayer
7f2bb822d8 Fixes #12865: CommandView Cursor Icons use hardcoded XPM
For the cursor use the device pixel ratio to avoid to look pixelated on HiDPI screens
2024-03-28 07:26:12 +01:00
wmayer
a44262b736 Gui: add SVG icons 2024-03-28 07:26:12 +01:00
wmayer
858f6023b5 Gui: allow to add task box with no header and
add methods to add a task box to a watcher
2024-03-26 15:57:20 +01:00
wmayer
35a10e8717 Gui: use of TaskDialog::addTaskBox 2024-03-26 15:57:20 +01:00
wmayer
e48134e0e7 Gui: extend and add overloaded method of TaskDialog::addTaskBox 2024-03-26 15:57:20 +01:00
Chris Hennes
7143f8d5bf Add QOffscreenSurface to QtAll.h 2024-03-26 07:33:43 +01:00