Commit Graph

31377 Commits

Author SHA1 Message Date
Abdullah Tahiri
ff598a058a Sketcher: Use new critical message mechanism to notify parabola migration
=========================================================================

A migrated parabola cannot be openned with a previous version of FreeCAD. The user is notified upfront.
2022-12-21 16:01:23 +01:00
Abdullah Tahiri
bcc65d2fbb Gui: Handle user notifications
==============================

This commit provides specific behaviour on how to handle user messages signalled by App::Document for the different types of notifications.

For critical messages DURING a user initiated restore (i.e. only if the user clicked in the UI, not applicable for macros or Python initiated):
- The first critical message during restore requires user confirmation by clicking a button in a modal dialog box. The user has the choice to
request to be asked for confirmation for any subsequent critical message during restore or to forgo confirmation.
- If he chooses to forgo confirmation, subsequent critical messages are shown as auto-closing non-modal dialogs in a non-intrusive way. The user
can continue working while this information is shown. There is a maximum of auto-closing non-modal dialgos that can be enqueued. Over this maximum,
A warning pop up indicates this situation, referring to the Report View. No further auto-closing messages are enqueued until all existing messages
have disappeared. This is done to prevent overwhelming the user with notifications in cases where malfunction causes too many notifications to be
generated.

For any type of message OUTSIDE a user initiated restore:
- Messages are shown as non-intrusive non-modal auto-closing messages (it is not possible to generate modal/blocking messages outside a user
initiated restore).
- Messages are enqueued respecting a limit as above.
2022-12-21 16:01:23 +01:00
Abdullah Tahiri
8b36a2780b App: New signal to notify user messages
=======================================

Document provides a new functionality, to signal subscribed user code of messages intended for the user.

The main motivation is critical messages of broken forward compatibility during restoring a document into a new version of FreeCAD.
However, the framework may be used in many other ways.
2022-12-21 16:01:23 +01:00
Abdullah Tahiri
793a70b0e2 Gui: Set status bit when restoring is initiated by the user from the UI 2022-12-21 16:01:23 +01:00
Abdullah Tahiri
6cb616aeb8 Gui:: Application - user initiated restore status bit
=====================================================

Add Status bits. Currently only to mark whether an UI operation of restore was initiated by the user (via click in the open dialog or in the hyperlink of the shortcuts of the home page).
2022-12-21 16:01:23 +01:00
Abdullah Tahiri
b2d42ba5f2 Sketcher: Automatic migration of parabola axis to internal geometry 2022-12-21 16:01:23 +01:00
Abdullah Tahiri
01013bc411 Sketcher: Make parabola axis to be internal alignment 2022-12-21 16:01:23 +01:00
wmayer
f0a4ec8240 Points: fixes #7924: Pointcloud import anomalies 2022-12-21 13:05:16 +01:00
wandererfan
d91edafa62 [TD]fix expression in Scale fails to propagate 2022-12-20 19:08:36 -05:00
wmayer
6d535f834d Surface: use a single button group for all task boxes 2022-12-20 19:17:10 +01:00
wmayer
e8cba4dda9 Surface: add external enumerators 2022-12-20 19:17:10 +01:00
Chris Hennes
4db688771a Addon Manager: Fix test language dependency
Fixes #8065
2022-12-20 10:34:16 -06:00
sliptonic
fd35950ec8 Merge pull request #8063 from sliptonic/py27cleanup
Fixes #7834  Removes deprecated py2.7 try/except block
2022-12-20 09:34:28 -06:00
wmayer
c8dd58fc20 Surface: remove unneeded includes 2022-12-20 16:22:59 +01:00
Ajinkya Dahale
f0f72d9ce3 [Surface] Allow modal adding/removal of geometric entities 2022-12-20 15:42:46 +01:00
Yorik van Havre
b5c5d0af95 Merged crowdin translations 2022-12-20 10:01:00 +01:00
Yorik van Havre
a95b7dc4b5 Updated ts files 2022-12-20 09:31:25 +01:00
Uwe
8b6797e1d6 [Gui] fix bug from #8048
- the submenu ordering must be coherent to the one in the preferences combobox otherwise one gets the wrong orbit style displayed in the preferences dialog
2022-12-20 03:43:33 +01:00
Uwe
83a7c57b68 [skip ci] [Gui] change default navigation orbit style back to trackball 2022-12-20 03:35:24 +01:00
Nabos
9cda82cf20 Gui: Added FreeTurntable orbit style (#8048)
* Added FreeTurntable orbit style
2022-12-20 03:21:46 +01:00
Uwe
6b5e015f94 [skip ci] [Mesh] add comment for boost 2022-12-20 02:56:10 +01:00
wmayer
12a05747c4 MeshPart: [skip ci] fix some issues reported by GH actions 2022-12-19 22:28:34 +01:00
sliptonic
9a6bb7aaa6 Fixes #7834
remove deprecated python 2.7 code
2022-12-19 15:07:14 -06:00
wmayer
70a85872a9 MeshPart: include boost python headers only where required 2022-12-19 21:49:42 +01:00
wmayer
5df04f51ce Win: [skip ci] define NOMINMAX before including Windows.h to avoid name collision with std::min/std::max 2022-12-19 20:17:08 +01:00
wmayer
8897cb2f79 App: [skip ci] improve error message 2022-12-19 17:08:26 +01:00
wmayer
ae39b31813 App: when using Yaw, Pitch or Roll angle in expressions make sure that they are in range 2022-12-19 14:48:30 +01:00
wmayer
e171a1f6e1 Gui: enable range check in QuantitySpinBox when opening expression editor 2022-12-19 14:46:31 +01:00
wmayer
d7957531f2 Gui: enable range check in QuantitySpinBox when opening expression editor 2022-12-19 13:48:26 +01:00
wmayer
9cc78c4d9e Gui: support of range checks in DlgExpressionInput 2022-12-19 13:47:15 +01:00
Chris Hennes
5f45b00078 AddonManager: Refactor uninstaller GUI
Offload uninstaller GUI into its own class, add tests for that class, and do
some additional minor cleanup of AddonManager.py.
2022-12-18 22:15:40 -06:00
Chris Hennes
02b4a762b0 Addon Manager: Create new uninstaller 2022-12-18 22:15:40 -06:00
Roy-043
de20241452 Draft: Draft_SetStyle wrongly handled LineSpacing as an int (#8052) 2022-12-18 20:29:13 +01:00
wandererfan
47ef35047b [TD]detail of rotated ComplexSection 2022-12-18 09:42:42 -05:00
wandererfan
23dc64365b [TD]move makeAlignedPieces to separate thread
- correct ComplexSection rotation

- fix fail to load CS for some profiles and directions
2022-12-18 09:42:42 -05:00
wandererfan
e059e32d40 [TD]dialog fixes from user testing
- fix jumping direction field in dialogs

- apply default rotation to simple sections

- fix rounding error in vector widget

- remove "enter" button on CompassWidget

- add lost focus trap in event filter.

[TD]prevent recompute on cancel without change
2022-12-18 09:42:42 -05:00
wandererfan
5f3c61762c [TD]fix parent page counting
- was returning inflated counts of owning page
2022-12-18 09:42:42 -05:00
Chris Hennes
856af2a122 Addon Manager: Simplify API 2022-12-17 20:23:32 -06:00
Chris Hennes
95f474a86a Addon Manager: Update to Python 3.8 2022-12-17 20:05:32 -06:00
Chris Hennes
89c191e160 Addon Manager: Refactor installation code
Improve testability of installation code by refactoring it to completely
separate the GUI and non-GUI code, and to provide more robust support
for non-GUI access to some type of Addon Manager activity.
2022-12-17 17:49:13 -06:00
Chris Hennes
403e0dc477 Addon Manager: Correct func names on disconnect
Fixes #8029.
2022-12-17 16:53:12 -06:00
sliptonic
0dc48ff85c Merge pull request #8012 from LarryWoestman/bugfix
Path:  Fixed regression in import statement.
2022-12-17 12:02:22 -06:00
wandererfan
50cdc60b08 [TD]remove problematic boost check for planarity
- boost check for planar graph was consuming memory until
  crashing.
- since all our edges have been projected onto a plane, we
  don't require this check
2022-12-17 08:07:05 -05:00
wmayer
9c8b255660 Gui: simplify logic of Placement dialog 2022-12-16 17:49:22 +01:00
wmayer
d6d3369856 Gui: refactor Placement dialog 2022-12-16 15:33:52 +01:00
wmayer
36aae6f24e Gui: refactor Placement dialog 2022-12-16 12:00:56 +01:00
Roy-043
3998f3af8d Draft: fix move AngularDimension bug (#8047) 2022-12-15 12:04:12 +01:00
Roy-043
8da2f363b8 Draft: fix make_sketch bugs (#7969) 2022-12-15 10:10:24 +01:00
wmayer
9e702c016b App: handle sub-components in PropertyRotation 2022-12-14 21:21:02 +01:00
wmayer
7948181a4d App: handle sub-components in PropertyPlacement 2022-12-14 15:41:49 +01:00