Commit Graph

175 Commits

Author SHA1 Message Date
0penBrain
be80a217f6 Gui: add live retranslation to dimension indicator 2023-03-24 19:31:41 +01:00
0penBrain
38416d7b80 Gui: dimension indicator moved to custom widget to handle unit schema change in other places 2023-03-24 19:31:41 +01:00
0penBrain
8eee92da99 Gui: change dimension indicator from QToolButton to QPushButton for lighter style
Consistency with navigation style indicator

 Also fix typo in function name and remove comment
2023-03-24 19:31:41 +01:00
Abdullah Tahiri
f0077e5f8a NotificationArea: Change Icon color to indicate missed notifications 2023-03-22 19:13:32 +01:00
wmayer
608521d9f5 Gui: add missing include for Qt6 build 2023-03-18 00:08:40 +01:00
Paddle
98b97d7c68 Core: Add possibility to change the unit in the sizeLabel. 2023-03-17 14:04:24 +00:00
Abdullah Tahiri
7954716386 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
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
Adrian Insaurralde Avalos
662473b11f Improve NaviCube font matching on linux 2023-02-28 10:01:33 +01:00
wmayer
9604f94fdc Core: add functions setPackedARGB and fromPackedRGBA 2023-02-26 10:11:53 +01:00
wmayer
ca946aabcb Gui: [skip ci] set object name to tabbar of MDI area 2023-02-15 19:12:37 +01:00
Jakub Świerk
4c3bca22d7 Gui: Removed unused method. 2023-01-10 13:46:33 +01:00
Jakub Świerk
16f85753aa GUI: Removed Std_ArrangeIcons command. 2023-01-10 13:46:33 +01:00
wmayer
61e11bb4ab Gui: fix activating of MDI views via menu commands 2023-01-06 14:42:29 +01:00
wmayer
8a643bee16 Gui: switch to new-style connect in order to find build failures with Qt6 2023-01-01 12:40:07 +01:00
wmayer
fa6dc8d0e1 Gui: make unit tests working from command line if Gui is up 2022-12-24 19:13:40 +01:00
MrBlock
20329514c5 Fix bug #7563 where menus and tooltips are not visible in fullscreen mode on windows systems. (#8027)
* Fix bug where menus and tooltips are not visible in fullscreen mode on windows systems.
2022-12-12 12:44:36 +01:00
Uwe
aef629ece1 [Build] output point release version
- to Splashscreen, About, MainWindow and Console
2022-12-05 00:26:43 +01:00
wmayer
e470bdc018 Gui: replace old-style with new-style connect 2022-11-12 21:57:26 +01: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
75bfb8f48f Core: replace QRegExp with QRegularExpression 2022-10-06 13:54:20 +02:00
wmayer
7109a24374 Gui: code refactoring of dock window setup 2022-09-15 16:03:41 +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
3877fc62c3 Gui: Single arg ctors must be explicit (PR #7369) 2022-08-24 15:06:03 +02:00
berniev
75fa455c5d Gui: Use override etc 2 2022-08-09 12:43:23 +02:00
berniev
3d1f70765a Gui: redundant void 2 2022-08-08 10:21:44 +02:00
berniev
2db561561e Gui: use empty 2022-08-06 16:35:45 +02:00
berniev
066656f62a Gui: use emplace_back 2022-08-05 10:33:41 +02:00
wmayer
7a4d29e87a Gui: Use new-style syntax of connect()
When fixing clazy issues -Wclazy-fully-qualified-moc-types then old-style syntax of connect() may fail. Thus, replace it with the new-style syntax
2022-07-26 16:32:18 +02:00
Uwe
bb2b49fb1f [Gui] remove superfluous nullptr checks 2022-07-18 03:17:42 +02:00
andrea
7886d3cbf4 Remove unused code into GUI 2022-07-17 03:53:11 +02:00
0penBrain
43772e985c Gui: implement temporary blocker for console observer 2022-07-05 13:35:18 +02:00
0penBrain
1f1551bb5e [BUGFIX] Gui: correctly save and restore warning type enabling in report view 2022-07-05 13:35:18 +02:00
wmayer
82a6241fc5 fix (Qt) issues found by clang's clazy tool:
+ -Wclazy-incorrect-emit
+ -Wclazy-strict-iterators
+ -Wclazy-overloaded-signal
+ -Wclazy-qstring-arg
+ -Wclazy-unused-non-trivial-variable
+ -Wclazy-container-anti-pattern
+ -Wclazy-range-loop-reference
+ -Wclazy-const-signal-or-slot
+ -Wclazy-detaching-temporary
+ -Wclazy-qfileinfo-exists
2022-06-29 21:00:54 +02:00
Chris Hennes
0c33741785 GUI: Preliminary support for HiDPI splashscreen 2022-06-13 15:19:40 +02:00
wmayer
4cd51e71bb Gui: avoid that toolbars of active workbench become invisible
Forum thread: https://forum.freecadweb.org/viewtopic.php?f=8&t=67748
2022-05-18 14:08:32 +02:00
wmayer
5a93f68d6f Gui: [skip ci] avoid that mouse is stuck after opening Help page with What's This 2022-04-06 18:32:55 +02:00
Yorik van Havre
76f78654c3 Gui: Added 'open Addon Manager' to Help message box - issue #6514 2022-03-30 14:54:20 +02:00
Yorik van Havre
12a94dfb9a Merge branch 'master' of github.com:FreeCAD/FreeCAD 2022-03-30 10:28:41 +02:00
Yorik van Havre
8a55c797ab Gui: Fixed wrong button on Help messaage box - issue #6514 2022-03-30 10:28:27 +02:00
Chris Hennes
5df3dbae6f Gui: PR6497 move return statement to new line 2022-03-29 12:33:50 -05:00
Yorik van Havre
cea8c31836 Merge pull request #6634 from yorikvanhavre/retire-qassistant-2
Retire qassistant (try 2)
2022-03-24 09:42:33 +01:00
wmayer
1178df06b4 Gui: modernize C++11
* use nullptr
2022-03-23 18:41:21 +01:00
Yorik van Havre
e8233976ba Qassistant retirement: avoid ref leak 2022-03-23 13:19:46 +01:00
Yorik van Havre
2512fcd7cb Qassistant retirement: Added GIL lock 2022-03-23 12:00:35 +01:00
Yorik van Havre
5ecda50d07 Retiring qtassistant : Added Werner's fixes 2022-03-21 13:27:27 +01:00
Yorik van Havre
736027d509 Gui: Disable use of qassistant
Displaying of help pages is now handled by the Help addon.
In case the Help addon is not installed, an info message is shown.
2022-03-21 13:26:58 +01:00
wmayer
8f786ea6ef Gui: Optimize includes to reduce compile time 2022-03-07 20:29:18 +01:00
Yorik van Havre
e4ca93bfbc Preparation for Help module
Added a preference switch to enable the use of the Help module.
Doing this before the release so users of 0.20 will be able to
use the Help module when it's ready
2022-03-02 19:07:44 +01:00
wmayer
fce7e11636 Gui: Attach PythonConsole to parameter group and handle changes in its OnChange() method
This avoids code duplications and makes sure the group name is used only once.
The parameters are saved to the group 'PythonConsole' instead of 'General'.
2022-02-21 19:26:44 +01:00