Commit Graph

32319 Commits

Author SHA1 Message Date
Chris Hennes
fc996571cb CI: Run the C++ test suite as part of the GitHub CI
Refactors the tests to rename them to runPythonTests and runCPPTests.
2023-03-15 18:34:39 +00:00
Chris Hennes
00deb9f7d3 Merge pull request #8819 from galou/empty_identifier_not_allowed
Do not allow an empty identifier in `getIdentifier`
2023-03-15 15:22:42 +00:00
Gaël Écorchard
85420a885b Merge branch 'master' into empty_identifier_not_allowed 2023-03-15 14:14:15 +01:00
Yorik van Havre
45001fa160 Merge pull request #8795 from yorikvanhavre/draft-layermanager
Draft: Added LayerManager command from BIM
2023-03-15 11:59:59 +01:00
Yorik van Havre
23f266f2e2 Merge pull request #8818 from yorikvanhavre/draft-grid-fix
Draft: Fixes grid on/off behaviour - fixes #5878
2023-03-15 11:59:30 +01:00
Chris Hennes
44864bf525 Merge pull request #8776 from chennes/toponamingIndexedName
App: Toponaming indexed name
2023-03-14 19:21:19 -05:00
wmayer
2071971a5d MSYS2: fix creation of ProgressIndicatorPy 2023-03-14 22:24:33 +01:00
wmayer
21d705ad4b Import/Part: [skip ci] restore some comments 2023-03-14 21:47:41 +01:00
Chris Hennes
c1e6d516f4 Addon Manager: Pylint cleanup 2023-03-14 13:59:51 -05:00
Chris Hennes
95e1389c41 Addon Manager: Fix #8833 2023-03-14 13:59:51 -05:00
Chris Hennes
cc9387aa3f App: Clean up IndexedName and add tests
Fixes the matching algorithm when provided a vector of existing names:
The original algorithm was equivalent to a 'startswith' algorithm, when it should
have been testing for exact and complete string equality. This also does some
refactoring to rename and clarify variables and functions, simplifies some
functions by using standard library calls when possible, and addresses various
linter complaints. It also applies our current clang-format to the files.

Co-authored-by: Ajinkya Dahale <AjinkyaDahale@users.noreply.github.com>
2023-03-14 13:08:23 -05:00
Paddle
9dfeccafd1 Sketcher: Stylesheet, fix manualUpdate button style. 2023-03-14 16:28:14 +01:00
Paddle
d09b1e1499 Sketcher: Solver Message simplification 2023-03-14 16:28:14 +01:00
Andrew
0833cbe7cc Clean mod/import folder
Clean mod/import folder

fix code not removed.
2023-03-14 16:02:01 +01:00
berniev
de373436cd Remove original proof of concept test files as some fail, and that won't work too well with future possible CI 2023-03-14 16:00:13 +01:00
luzpaz
3f6771ff56 Refine previous fix for #8866 2023-03-14 15:59:33 +01:00
Adrian Insaurralde Avalos
0b2a2a8cf7 fix #8847 sketcher dialog tool buttons bad styling 2023-03-14 13:32:21 +01:00
wandererfan
7ed22cc5f6 [TD]add autocorrect preference 2023-03-13 19:03:32 -04:00
wmayer
ac2c09b487 Gui: [skip ci] fix whitespaces 2023-03-13 22:38:54 +01:00
Syres916
8a7945c9f2 [Gui] Add TODO reference hack 2023-03-13 22:34:58 +01:00
Syres916
322c1e4ddb [Gui] Improve comments regarding move of widget 2023-03-13 22:34:58 +01:00
Syres916
48ca8d5269 [Gui] Fix regressions from PR7771...
specifically 7458912b33 fixes #7965 #8440
2023-03-13 22:34:58 +01:00
Jonas Bähr
4eafedb20f PD: Harmonize ExternalInvoluteGear and InternalInvoluteGear
There has been lots of duplicated code between those two, and the recent
changed introduced even more copy/paste code. This commit consolidates
both implementations. The two "public" entry points, `CreateExternalGear`
and `CreateInternalGear` have been kept and now call a shared helper.
2023-03-13 22:10:41 +01:00
Jonas Bähr
b3ab9c1c3c PD: some cleanup of InvoluteGear
This commit removes obsolete files, gets rid of py2 habits like `xrange`
and fixes some comments and blank lines.
2023-03-13 22:10:41 +01:00
marioalexis
b37fe66653 Fem: Remove property name comparison 2023-03-13 22:08:41 +01:00
wmayer
616c72e7e4 CMake: add Qt's WinExtra module 2023-03-13 18:14:11 +01:00
Ronny Standtke
b44f82f0f6 use standard Close button for consistency with other task dialogs 2023-03-13 11:56:27 -05:00
Ronny Standtke
0ff5ff37f4 move "Close" button of angular variant also to north 2023-03-13 11:56:27 -05:00
Abdullah Tahiri
5b3c86d8e3 Sketcher: Constraint - notification and internal geometry command clean up
==========================================================================

- Migration of all constraints to the new non-intrusive notification framework.

- Removal of internal geometry command

- Command to create manually internal geometries is removed (deprecated).
2023-03-13 16:21:01 +01:00
luzpaz
ff470469f5 Fix misc. grammar and whitespace 2023-03-13 15:01:05 +01:00
wmayer
54009f14ee App: fixes #7833: Python2/3 FIXME code in App/FreeCADInit.py to be reviewed
The workaround was needed for Py2 on Windows. Since with Py3 it works as expected the workaround can be removed
2023-03-13 14:07:59 +01:00
wandererfan
5462c9de6f [TD]allow loading SVG item from file 2023-03-12 22:05:16 -04:00
wandererfan
fb9b3a9e9e [TD]fix centering of shape
- centering of shape was not affecting the OCC TShape, so
  we now make a deep copy of the original
2023-03-12 19:21:22 -04:00
xtemp09
37d7f7d570 [TechDraw] Minor improvement of TaskLineDecor.cpp 2023-03-12 13:57:45 -04:00
Abdullah Tahiri
492c941395 Gui: Notifications - Convenience functions to send intrusive/non-intrusive notifications
========================================================================================

Functions to transparently send errors, warnings, notifications and translatednotifications, either
as intrusive messages (modal pop-up QMessageBox style) or as non-intrusive messages (notificationarea),
depending on the preferences of the user.

It is intended to substitute calls to QMessageBox with these functions in WBs, including the Sketcher WB.

Example:

QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong selection"),
                      QObject::tr("Cannot add a constraint between two external geometries."));

Can be rewritten as:

 Gui::TranslatedNotification(obj,
               QObject::tr("Wrong selection"),
               QObject::tr("Cannot add a constraint between two external geometries."));

or

 Gui::TranslatedNotification("Sketcher",
               QObject::tr("Wrong selection"),
               QObject::tr("Cannot add a constraint between two external geometries."));

where the first parameter (obj or "Sketcher") is the notifier string. If obj is an App::DocumentObject
(or a derived class of it), internally the function transparently calls getFullLabel() to get the notifier
string.
2023-03-12 18:44:55 +01:00
marioalexis
2143976302 Fem: Remove property name comparison 2023-03-12 18:27:39 +01:00
luzpaz
c0b74c7dde libarea: fix whitespace 2023-03-12 18:22:02 +01:00
wmayer
645812b8f7 Tests: suppress warnings C4251 in test module 2023-03-12 17:58:11 +01:00
Chris Hennes
f0fe65e769 App: Add IndexedName class
Ported from development/toponaming.
2023-03-12 11:03:52 -05:00
wmayer
bcc80ba9aa MSYS2: fix linking error with extern templates 2023-03-12 16:17:38 +01:00
wmayer
c8c9f42ae8 MSVC: fix compiler warnings about redefined pre-processor directives
Swapping the order of Qt and Inventor headers fixes them because the latter uses #ifdef/#endif guards
2023-03-12 16:17:38 +01:00
wmayer
8457037f17 clang: fix -Wdeprecated-declarations 2023-03-12 15:05:21 +01:00
wmayer
580b775690 clang: fix -Wunused-parameter, -Wunused-variable, -Wswitch 2023-03-12 15:05:21 +01:00
wmayer
2a970b3045 clang: fix -Wunused-but-set-variable 2023-03-12 15:05:21 +01:00
mosfet80
4cd350d2d0 Removal of unused code due to old <5.2 Qt library (#8842) 2023-03-12 11:08:58 +01:00
Abdullah Tahiri
d43f4cd26b Gui: Preference Page for NotificationArea
=========================================

Configuration preference page for controlling the notification area (non-intrusive messages and widget).
2023-03-12 06:06:29 +01:00
Abdullah Tahiri
eb7bf5d977 Gui: Remove old signal for critical messages in favour of Notification Area
===========================================================================

The former system of autoclosing messageboxes is removed in favour of the Notification Area.
2023-03-12 06:06:29 +01:00
Abdullah Tahiri
340ccb8ed6 Sketcher: SketchObject using the new notification system
========================================================

- CriticalMessage old signal is reconverted to new notification system. This enables to remove the obsolete old system.

- An example of how common errors can be provided with translation support is added, so that App notifications appear
translated in the NotificationArea.
2023-03-12 06:06:29 +01:00
Abdullah Tahiri
b27bd2b4b5 Gui: Add Notification Area to Status bar
========================================

Parameter "NotificationAreaEnabled" can be used to completely disable the Notification Area.

If disabled it won't appear on the UI at all and no non-intrusive notification will be generated.
2023-03-12 06:06:29 +01:00
Abdullah Tahiri
60cb06e20c Gui: Notification Area
======================

A notification area consisting of one area for non-intrusive notifications, and a widget showing previous
errors, warnings, critical messages and notifications.

Notifications being marked with QT_TRANSLATION_NOOP with context "Notifications" are translated.

Messages are shown during a minimum show time, unless pop up (clicked inside). Messages stay until
a maximum show time. Between the minimum and the maximum show times left mouse button events make
the non-intrusive notification disappear.

The widget stores a configurable amount of messages after which old messages are removed to make room for
new ones.

Unread messages are shown in bold.
2023-03-12 06:06:29 +01:00