Commit Graph

108 Commits

Author SHA1 Message Date
Max Wilfinger
fe70801fc2 remove code block quotes from about info 2024-03-03 12:08:12 +01:00
Kuzemko Alexsandr
697f8a7b77 Change [code] to ``` as code tag don't recognize and user need manually correct tag. (#11226) 2023-11-06 14:11:42 -03:00
Paddle
d3235e0c3a SplashScreen : Add "ShowSplasherMessages" parameter to disable labels from the splashscreen. 2023-11-04 21:58:00 +01:00
wmayer
888a33917d Gui: modernize C++: use equals default 2023-08-20 18:12:43 +02:00
wmayer
e09d8aaba6 Gui: modernize C++: use range-based for loop 2023-08-14 19:42:18 +02:00
wmayer
c2e17824fa modernize C++: raw string literal 2023-08-07 19:51:15 -06:00
Chris Hennes
12f7dff7a6 GUI: Add prominent dev build indicators 2023-08-04 18:21:39 -06:00
Abdullah Tahiri
5f52885fbf Ilogger - Separate behaviour for user exposed and not exposed loggers 2023-05-23 14:24:45 +02:00
Abdullah Tahiri
9d9f928b2d Console: Extend framework with intended recipient and content type metainformation
==================================================================================

Limitations of the current framework:
- Codes the translated state only for TranslatedNotification as part of the type.
- Does not code the intended recipient (user, developer, ...)

Problems:
- Some errors are intended for developers, some errors may only be intended for users,
if, for example, there is another developer error which already contains all the information.
The current framework may lead to information duplication or to showing to the user developer
information, which is perceived as annoying.
- Logs shall be in English (report view), while every message to the user (UI) shall be translated.
The current framework can only differentiate where to report based on subscription (legacy logs do not
subscribe to notifications), and for notifications, whether it is translated or not depends on the type.
It is not possible to code errors or warnings that are already translated.

Solution:
- To extend the ILogger interface with additional metainformation, indicating the intended recipient
(User, Developer, All), and the content of the message (translated, untranslated, untranslatable). The latter
is useful for dynamic strings that won't find a match in the translation framework.

Bonus:
- This extended version allows to do away with translatednotification, as now any message can be independently
marked as translated or untranslated or untraslatable.
- It is now possible to provide the right icon of severity (error, warning, info), even when it is only user intended
and already translated.
2023-05-23 14:24:45 +02:00
Chris Hennes
19b5e8bce9 Gui: Hack to get Windows 11 version 2023-05-19 10:27:21 -05:00
Chris Hennes
456371590b Gui: Hack to ensure good macOS version number 2023-05-16 21:34:07 -05:00
wmayer
3d90279c12 Gui: fix -Wclazy-connect-by-name 2023-04-05 00:44:13 +02:00
wmayer
be0e65fa7a clang: fix -Wdeprecated-declarations 2023-03-12 15:05:21 +01:00
Abdullah Tahiri
ee0c3ad5c1 Console/ILogger: Refactor and extension
=======================================

Refactor:
 - Substitute the use of variadic templates with parameter packs.
 - Use recently incorporated external library "fmt" to handle printf like formating.
 - Extensive cleaning of pragmas and unnecessary forward declarations.
 - Parameter packs and libfmt provide a much stronger type checking now, so
   conversions that are by standard implicit as bool to int need an explicit static_cast
   to avoid compilation warnings.

Extension:
 - Include a notifier field, so that the originator of the message can be provided. E.g. Document#DocumentObject
 - Include a new type of message called CriticalMessage, this message is intended to have
   special behaviour in the future. Namely, it will be used to notify forward compatilibity issues.
   It will be used to substitute the current signal/slot mechanism.
 - Include two new types of messages for user notifications (Notification and TranslatedNotification). This messages
   will be use to convey UI notifications intended for the user (such as non-intrusive message about the usage of a tool). There
   are two versions to mark whether the string provided as a message is already translated or not. When using the console system for
   notifications, these notifications may originate from the App or the Gui. In the former, it is generally the case that the strings
   of messages are not (yet) translated (but they can be marked with QT_TRANSLATE_NOOP). In the latter, often the messages to be provided
   are already translated.

Python support for CriticalMessage, Notification and TranslatedNofification, including shortcuts:

    Crt = FreeCAD.Console.PrintCritical
    Ntf = FreeCAD.Console.PrintNotification
    Tnf = FreeCAD.Console.PrintTranslatedNotification
2023-03-07 16:13:23 +01:00
Uwe
aef629ece1 [Build] output point release version
- to Splashscreen, About, MainWindow and Console
2022-12-05 00:26:43 +01:00
berniev
2ecd6db0e7 change ALL_UPPER_CASE constexpr definitions to camelCase 2022-11-19 16:00:36 +01:00
Chris Hennes
398aaa1aac GUI: Remove references to MS Shell DLG2 font 2022-11-08 17:54:59 +01:00
wmayer
ab31c1dee2 Gui: use braced-init-list to create LibraryInfo objects 2022-11-06 21:11:15 +01:00
wmayer
4b4a8b57f6 + fix build failure if SMESH support is disabled 2022-11-06 20:23:13 +01:00
wmayer
e94513b97d Gui: [skip ci] fix several warnings reported by GH Actions 2022-11-06 13:07:34 +01:00
Uwe
72d10e3fc8 [Gui] SplashScreen: modernize Qt connection
- was reported as warning by our CI
2022-11-06 12:50:23 +01:00
Uwe
75d02279a7 output SMESH version number in about dialog
- in order to get this info when user reports bugs
2022-11-05 17:46:34 +01:00
wmayer
6118dfd7bd Qt: replace deprecated methods of QMessageBox 2022-11-03 09:54:00 +01:00
wmayer
4b08850edb Qt6 port:
* QApplication::setFallbackSessionManagementEnabled has been removed
* QString::medRef() has been removed. Use QString::mid() again.
* QTextStream::setCodec has been removed
* Use operator QVariant of the QFont class to make code Qt5 and Qt6 compatible
* Signature of QTreeWidget::mimeData() has changed in Qt6. Remove TreeWidget::mimeData() because it doesn't change the implementation
* QLayout::setMargin() is deprecated in Qt5 and has been removed in Qt6. Use QLayout::setContentsMargins()
* QDateTime::toTime_t() is deprecated in Qt5 and has been removed in Qt6. Use QDateTime::toSecsSinceEpoch()
* QDesktopWidget is deprecated in Qt5 and has been removed in Qt6. Use QScreen
2022-11-01 16:55:40 +01:00
wmayer
75bfb8f48f Core: replace QRegExp with QRegularExpression 2022-10-06 13:54:20 +02:00
berniev
ae53c9b0a4 Gui: Use auto and range-based for (#7481)
* On lines where the variable type is obvious from inspection, avoid repeating the type using auto. 
* When possible use a ranged for loop instead of begin() and end() iterators
2022-09-14 13:25:13 -05:00
berniev
75fa455c5d Gui: Use override etc 2 2022-08-09 12:43:23 +02:00
wmayer
916c814219 Fix several clazy issue:
* Use multi-arg instead [-Wclazy-qstring-arg]
* Use an empty QLatin1String instead of an empty QStringLiteral [-Wclazy-empty-qstringliteral]
* getter Gui::ProgressBar::canAbort possibly mismarked as a slot [-Wclazy-const-signal-or-slot]
* Missing emit keyword on signal call [-Wclazy-incorrect-emit]
2022-07-24 20:07:04 +02:00
Chris Hennes
c3ded1a6b0 GUI: Add Vtk info to copied About data 2022-06-07 12:51:51 -05:00
Chris Hennes
48328b9a54 Gui: Check for Snap and add details to About 2022-05-30 13:19:02 -05:00
Chris Hennes
66ccc6cc97 Gui: Compile CONTRIBUTORS into Qt resources 2022-04-27 10:25:53 -05:00
Uwe
17c502ce8a [Gui] remove misleading button from About Dialog
- the help button in the title bar had no function but I remember people asked in the forum what it does. Since we don't use it, remove it
2022-03-31 04:15:28 +02:00
0penBrain
3753a4b237 Gui: Add dual info about FC + OS locale in full information
+ clean some horrible old code
2022-03-29 10:26:49 +02:00
wmayer
1178df06b4 Gui: modernize C++11
* use nullptr
2022-03-23 18:41:21 +01:00
Uwe
30cde82d30 [Doc] update weblinks
- link Freetype license
2022-03-21 17:59:49 +01:00
Uwe
b066b17c6d [Gui] Splashscreen: remove unused includes 2022-03-17 00:23:20 +01:00
wmayer
5e7007dbcb Gui: [skip ci] remove text 2022-03-08 12:54:46 +01:00
Chris Hennes
cba00f8ee1 GUI: Clean up copy of addon list 2022-02-28 15:26:01 -06:00
Uwe
bb4e6e477c [Gui] improvements for PCH builds 2022-02-19 06:38:45 +01:00
Chris Hennes
232a938a8b Gui: Add Mod info to copied About string 2022-02-16 12:08:17 +01:00
wmayer
f36126770c App: harmonize API of App::Application
* make getHomePath() static and return a std::string
* make getExecutableName() static and return a std::string
2021-11-04 10:50:09 +01:00
donovaly
b705093d3d [Doc] update weblink to Coin3D
* Coin3D is no loner available via bitbucket, therefore update the new dead links
* change a weblink so that it is the same in all our code
2021-10-09 19:24:15 +02:00
wmayer
d3d9d24c61 Gui: set UTF-8 encoding when reading file with contributors 2021-04-04 11:04:23 +02:00
Chris Hennes
dac8b8ea6a Allow different splash and about image 2021-04-03 22:36:28 +02:00
Chris Hennes
098d7b9aee [GUI] Remove code for Qt < 5.9 2021-04-02 10:10:37 +02:00
Chris Hennes
49f4e66501 Minor refactoring and cleanup of the About window
Removes old Qt code, restores the conditional inclusion of the
3Dconnexion license information, shortens the displayed hash, and links
the hash to its repo.
2021-03-28 16:12:27 +02:00
wmayer
fd9959ce41 Gui: [skip ci] show or hide splash image depending on screen size 2021-03-08 19:03:59 +01:00
wmayer
29b7301793 Gui: [skip ci] do not allow image size in About dialog to occupy more than 25% of the screen size 2021-03-08 12:55:45 +01:00
Chris Hennes
ed01a60cf0 [GUI] Tweak wording and translatability of Credits 2021-03-03 17:18:56 +01:00
Chris Hennes
5ad480aeec [GUI] Refactor About to list credits from a file
The Credits tab is now generated from a CONTRIBUTORS file. The file is
expected to list one contributor per line, with individuals first,
followed by a line with the word "Firms" on it, followed by firms (again
one per line). The formatting is currently a simple <ul> for each set of
names. No sorting, etc. is performed.
2021-03-03 11:03:43 +01:00