* in QtConcurrent::run the order of 1st and 2nd argument are swapped
* QtConcurrent::run asserts that the argument of the passed function pointer is not non-const
* Used methods of QFontDatabase are static in Qt5 and Qt6
* QTextStream::setCodec() has been removed in Qt6
* Argument of enterEvent() has changed from QEvent to QEnterEvent
* QTextCharFormat::setFamily() is deprecated
- it is a long-standing bug that the name of the result mesh object is not unique. For example for a frequency analysis you get for every result the same object "ResultMesh". When now a "ResultMesh" object is deleted because one result mode object should be deleted, all result modes loose their mesh.
To fix this, use a unique name for the mesh object.
- make the connection also working for frequency and buckling analysis by directly creating/updating the pipeline where the CalculiX results are loaded
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>
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.
==========================================================================
- 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).
========================================================================================
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.