Commit Graph

30747 Commits

Author SHA1 Message Date
wmayer
ebdd4c9af3 Gui: refactor and modernize code of Placement dialog 2022-10-27 00:28:55 +02:00
wmayer
13b3abc063 Gui: if an expression is set for Euler angles in the placement dialog then evaluate the expression instead of determining the angles from the rotation
See forum thread: https://forum.freecadweb.org/viewtopic.php?f=3&t=72522
2022-10-26 11:27:46 +02:00
wmayer
c3b0988219 Gui: don't make QuantitySpinBox dependent on implementation details of its base class 2022-10-26 10:54:07 +02:00
Yorik van Havre
e1ef5ef69d Merge pull request #7635 from Jolbas/master
Draft: Accept 1 in NumberPolar parameter
2022-10-26 09:23:25 +02:00
Yorik van Havre
90d0f0efc6 Merge pull request #7616 from Roy-043/Draft-Make-Std_TransformManip-work-for-Draft_Point
Draft: Make Std_TransformManip work for Draft_Point
2022-10-26 09:21:53 +02:00
wmayer
121e4ed03c Gui: don't make QuantitySpinBox dependent on implementation details of its base class 2022-10-26 00:43:33 +02:00
luz paz
a5841ce1ed Spreadsheet: [skip ci] fix doxygen typo 2022-10-25 23:54:35 +02:00
wmayer
2a3737feb0 Gui: in placement dialog use spin boxes for rotation axis 2022-10-25 22:56:56 +02:00
wmayer
1f7618cafa Gui: [skip ci] include header 2022-10-25 22:21:19 +02:00
wmayer
5f48e22bba Gui: [skip ci] Missing reference in range-for with non trivial type (Py::Object) [-Wclazy-range-loop-reference] 2022-10-25 13:36:39 +02:00
wmayer
342666162a Gui: fix possible crash in WrapperManager 2022-10-25 12:48:55 +02:00
Uwe
c31dc73e62 [PD] FeatureHole.cpp: sort counterdrill
- will be necessary to push deprecated entries to the end of the combobox in the dialog (in a coming PR)
- also fix too long code line
2022-10-25 01:09:37 +02:00
Roy-043
7ae40aebd2 Sketcher: Correct icon for Sketcher_CreatePointFillet 2022-10-25 00:33:28 +02:00
wmayer
8b1760971f Gui: cppcoreguidelines-pro-type-reinterpret-cast
Replace an unsafe reinterpret_cast with the safer static_cast
2022-10-24 17:09:53 +02:00
wmayer
189d0a0438 CMake: [skip ci] fix deprecation warning about policy CMP0072 2022-10-24 17:08:04 +02:00
wmayer
316ce9f13b PD: [skip ci] disable undo/redo for the tmp. document created by the SubShapeBinder 2022-10-24 16:50:50 +02:00
wmayer
a020382f09 App: fixes issue #7628: Crash after creating Sketch for Body
The problem is that inside Transaction::addObjectNew() a transaction object is deleted before removing it from the container. When deleting the corresponding transactional object (i.e. a DocumentObject or ViewProvider)
it can happen that it e.g. calls Transaction::addOrRemoveProperty() that now finds the dangling pointer in the container.

The safe way is to first remove the object from the container before deleting it.
2022-10-24 16:49:29 +02:00
Uwe
f5339093b3 [skip CI] [FEM] equation.py: fix a tooltip
- the highest priority is computed first, the Wiki page is already correct
2022-10-24 15:21:54 +02:00
Stefan Klug
673be545fd PartDesign: Add HoleCuteType "Counterdrill" 2022-10-24 15:19:24 +02:00
Stefan Klug
c077f75159 PartDesign: Refactor geometry creation of counersink/counterbore
The counterbore is basically a special case of the countersink
with a countersink angle of 180 degrees and applied depth.
Handling it that way elimintaes some duplicate code and adds the ability to
combine countersinks and counterbore to form a counterdrill.

The sanity check on countersinkAngle can be safely dropped as it is ensured
by a constraint on the property itself.
2022-10-24 03:42:02 +02:00
wmayer
f3440f403f Mesh: use PropertyMaterial in view provider 2022-10-23 23:31:04 +02:00
Chris Hennes
48de48ea4b Addon Manager: Clean up tests for pip 2022-10-23 15:24:42 -05:00
Jolbas
028c256300 Accept 1 in NumberPolar parameter
Setting the NumberPolar parameter to 1 resulted in a ZeroDivisionError.
2022-10-23 21:44:57 +02:00
Bernd Hahnebach
e77bf30a8e FEM: get LGTM silent 2022-10-23 21:43:04 +02:00
wmayer
86bf176b1f Mesh: implement PropertyMaterial 2022-10-23 19:49:46 +02:00
Haas
094ec8cb59 Added 2 missing dark icons for stylesheets. 2022-10-23 12:33:15 -05:00
wmayer
6d2d3731e7 Mesh: [skip ci] add Python module with enum types 2022-10-23 18:52:33 +02:00
Stefan Klug
477726806f PartDesign: Remove duplicate comment 2022-10-23 09:15:17 -05:00
luz paz
57d561f683 Fix source comment typo 2022-10-23 09:14:44 -05:00
Stefan Klug
264d0bb890 [Bugfix] PartDesign: Fix HoleCutDepth not being recalculated correctly
HoleCutDepth is reset to 0 to force a recalculation of te depth when
HoleCutType is set to a new value.
But the line
	pcHole->HoleCutCustomValues.setValue(false)
also forces a recalculation. So the depth was recalculated with the old
value in HoleCutType which was not expected behaviour.
2022-10-23 04:10:18 +02:00
wmayer
2973da9203 Mesh: support to add transparencies to a mesh 2022-10-22 23:31:12 +02:00
Bernd Hahnebach
f46ed721c6 FEM: Python pep8 code formatting 2022-10-22 23:05:51 +02:00
wmayer
42b8c7ad5a Gui: create modal color dialog on the heap if its parent widget is used in the property editor
For more details see: https://forum.freecadweb.org/viewtopic.php?f=23&t=70655
2022-10-22 21:42:21 +02:00
wmayer
e0eb6054c4 Gui: create modal dialog on the heap if its parent widget is used in the property editor
For more details see: https://forum.freecadweb.org/viewtopic.php?f=23&t=70655
2022-10-22 18:36:52 +02:00
wmayer
be410de3c3 App: simplify code in Application::newDocument 2022-10-21 21:15:21 +02:00
Abdullah Tahiri
4d1e1733e3 Sketcher: Solver - Improvement of popularity contest and bug fix
================================================================

Master has a problem in that internal alignment constraints are suggested to the user for removal.

This is fundamentally wrong, as an internal alignment constraint are an inherent part of the geometry. They cannot be the ones suggested for removal.

The popularity contest algorithm is an heuristic algorithm that determines which redundant/conflicting constraints should be proposed for removal.

Basically, the algorithm works on groups of redundant/conflicting constraints detected via the QR decomposition. A constraint may belong to more than one group.

The algorithm runs some heuristics, each constraint scoring a value, the one constraint from each group scoring the highest is proposed (is more popular and wins the contest).

This PR documents the algorithm, and adds a further condition, that internal alignment constraints are never proposed.

As the solver works with solver constraints as opposed to the sketcher, which works with sketcher constraints, information about whether a solver constraint originated from a
sketcher constraint that is internal alignment is necessary. So the solver constraint is extended to accomodate this piece of information.

As a bonus, it fixes a bug. Solver constraints carry information of the ID of the corresponding sketcher constraint in their tag. Knots are not currently implemented as constraints.
However, the tag index was not being update. This caused the popularity contest to provide wrong suggestions despite good detection.
2022-10-21 19:54:51 +02:00
wmayer
15fc8c0541 Gui: fix crash when accessing PySide wrapper after the underlying QObject has been destroyed 2022-10-21 17:05:55 +02:00
Paddle
56e067a521 Sketcher: remove select DOF. 2022-10-21 09:47:07 -05:00
0penBrain
4e6625ac12 Sketcher: remove unneeded flag 2022-10-21 15:15:43 +02:00
wmayer
de595d5aa9 App: [skip ci] fix string literal 2022-10-21 13:43:26 +02:00
wmayer
2863ee0832 Part: [skip ci] fix German translation 2022-10-21 13:31:36 +02:00
wmayer
5f0f51bedc Sketcher: fix possible crash when closing the sketcher
For more details see the forum thread: https://forum.freecadweb.org/viewtopic.php?f=13&t=72774
2022-10-21 10:23:53 +02:00
Kuzemko Alexsandr
2eb55d48c7 [App] Fix of untranslated first document's name (#7156)
* Change no need function newDocument("Unnamed") call to variant without parameter. "Unnamed" set in App newDocument function instead.
* Refactor New Document command to run without parameter.
* Translate new document's userName. Internal name = "Unnamed".
* Crowdin Add to updatets.py App.ts. Create new file App.ts
* Fix error where document name is set with one function parameter. In this situation set internal and user name to string variable. For default function call (without parameter) set internal name to Unnamed, userName = translate ("Unnamed")
2022-10-20 21:35:09 -05:00
wandererfan
086de5430f [TD]fix check of wrong variable
- replace check of pages in selection with check of
  pages in document
- fix mixed {} conventions
- fix fail to exit on user cancel
2022-10-20 21:28:04 -04:00
adrianinsaval
5a32e28ce4 Use Std_New for new document creation at startup
so it uses the translated string
2022-10-20 19:58:16 -05:00
wmayer
06204d9f3d Gui: [skip ci] refactor PropertyModel::buildUp 2022-10-21 02:24:42 +02:00
0penBrain
7317e5a93c [Bugfix]Spreadsheet: fix multi-screen management of QtColorPicker
+ set parent when instantiating
2022-10-20 16:08:01 -05:00
Zheng, Lei
2053a90cbc Spreadsheet: fix cell span handling
When undo/redo, copy/paste, and removing row/column
2022-10-20 16:03:20 -05:00
Zheng, Lei
729f2e857a Spreadsheet: fix cell span synchronization with SheetTableView
Also, allow merge cell with overlaps, by auto split overlapped cells
first
2022-10-20 16:03:20 -05:00
wmayer
3b01056b9b Gui: ignore recursive call of PropertyView::onTimer() 2022-10-20 23:00:50 +02:00