Commit Graph

169 Commits

Author SHA1 Message Date
wandererfan
0f504fc9da [TD]refactor QGIViewPart 2023-08-10 10:17:22 -04:00
wmayer
2a88c7c7df modernize C++: use bool literals 2023-08-06 01:35:39 +02:00
Benjamin Bræstrup Sayoc
15fe52a04b [TechDraw] Simplify retrievement of user preferences
for all TechDraw files
2023-04-10 23:34:05 -04:00
Benjamin Bræstrup Sayoc
a207822ee8 [TechDraw] Move CenterLine into own file 2023-04-06 13:51:35 -04:00
Abdullah Tahiri
c604d1741d 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
wandererfan
01641433c1 [TD]getters and setters for geometry
- make attributes private (or protected) and use
  getters and setters instead of accessing attributes
  directly.
2023-02-28 08:15:06 -05:00
wandererfan
d63ac0f7f6 [TD]add light text on dark page mode
- some visually impaired users need white graphics on
  dark page.

- revise Annotation dialog to respect dark style
2023-01-03 17:41:33 -05:00
wandererfan
af3c057f99 [TD]make detail highlight interactive
- drag detail highlight to change detail anchor point
- change detail reference position using HighlightAdjust property
2022-12-28 09:41:44 -05:00
wandererfan
47ef35047b [TD]detail of rotated ComplexSection 2022-12-18 09:42:42 -05:00
Uwe
020ced9859 [TD] QGIView*: remove unused includes
- also some sorting
2022-12-04 04:21:01 +01:00
wandererfan
276e6c45b9 [TD]allow rotation of hatch directions
- faces can have their svg and bitmap hatches rotated to match
  the view rotation or special situations
- section cut face can have svg hatch rotated
2022-12-03 15:15:25 -05:00
wandererfan
26d7fe14e1 [TD]add section line marks for simple section 2022-11-14 19:41:12 -05:00
wandererfan
94c5888921 [TD]fix oblique section line ends 2022-11-10 19:19:22 -05:00
luz paz
7c5557b3cb Fix typos in TD and FEM source comments/documentation [skip ci] 2022-11-07 08:03:39 -05:00
wandererfan
99f67b8a40 [TD]SectionView/ComplexSection - preview, direction selection
- add preview/live update to TaskSectionView & TaskComplexSection
- add view direction selector to uis
- use SectionNormal as Direction.  Make Direction read-only
- simplify section line end point calculation
- section group command in toolbar
- make section and complex section icons consistent
- fix compsolid cutting tool
- terminology: single/piecewise to offset/aligned
2022-10-28 08:47:45 -04:00
wandererfan
5ddc6ce789 [TD]Complex Section - initial implementation 2022-10-28 08:47:45 -04:00
Wanderer Fan
71426aa467 [TD]fix Text sizes not exact 2022-09-07 16:06:54 -04:00
wandererfan
acf17905ed [TD]CI clang warnings 2022-09-05 17:48:38 -04:00
wandererfan
3e7a22daef [TD]cosmetic vertex size consistency 2022-08-28 13:13:20 -04:00
Wanderer Fan
ac63550122 [TD]add progress reporting framework 2022-08-18 09:34:32 -04:00
berniev
da9ebc572f Mod: redundant void 2 2022-08-08 10:27:50 +02:00
Uwe
40d8ebb372 [TD] remove some more superfluous nullptr checks 2022-07-20 11:54:28 +02:00
Uwe
31bc9f3913 [TD] remove some more superfluous nullptr checks 2022-07-20 02:53:48 +02:00
Uwe
2e5e4dced8 [TD] Gui: remove some superfluous nullptr checks 2022-07-19 02:49:46 +02:00
Wanderer Fan
ac4fa39ad4 [TD]fix bitmap hatch 2022-07-03 10:18:37 -04:00
wmayer
8573d9f8b2 TD: fix possible dangling pointer in QGIHighlight 2022-06-24 17:39:33 +02:00
Uwe
a4a8acd445 [TD] remove unnecessary Boolean comparisons 2022-06-19 15:20:03 +02:00
Wanderer Fan
8891394d5a [TD]fix Rotation not applied 2022-06-02 09:09:53 -04:00
Wanderer Fan
e91cc8e329 [TD] avoid memory leaks by using shared_ptr
TD geometry objects are sometimes double deleted.  This
change uses shared_ptr instead of raw pointers to manage
deletions.
2022-01-07 13:34:20 -05:00
wmayer
c11d5df80a TD: replace usage of raw pointers of Vertex and Face with shared pointers.
This fixes issue 4741: Broken File After Using Landmark Dimension in TechDraw
2021-12-10 14:25:24 +01:00
wmayer
ca5c799ce2 Gui: rename methods of SelectionObserver to clarify intention in client code 2021-12-07 14:17:07 +01:00
wmayer
d75299143b TechDraw: [skip ci] fix possible crash in QGIViewPart::drawFace 2020-10-15 09:40:39 +02:00
wmayer
45b755a596 Coverity: Unchecked dynamic_cast 2020-07-20 17:34:28 +02:00
wandererfan
30ff7fb6e4 [TD]multiple faces in GeomHatch 2020-07-16 08:14:16 -04:00
wandererfan
b7e8ad9a4e [TD]DPG spacing for oblique views 2020-07-07 15:26:20 -04:00
wmayer
da6b379566 fixes #0004318: Compilation fails with Qt 5.15 beta with QPainterPath errors [skip ci] 2020-07-02 13:19:43 +02:00
wandererfan
b7a448dadc [TD]fix 4335 section line pos on rotated base 2020-06-15 13:57:55 -04:00
wandererfan
dd0273ff4e [TD]Fix CosmeticVertex size 2020-06-09 16:12:14 -04:00
WandererFan
6974598dc1 [TD]Improve section face display 2020-06-04 09:00:22 -04:00
wandererfan
a9b718d1e0 [TD]Export Svg hatch as bitmap 2020-05-29 20:53:24 -04:00
wandererfan
29c5528fde [TD]oblique section lines 2020-05-10 11:03:15 -04:00
WandererFan
92dfdf605b [TD]prevent extra recompute on X,Y change 2020-05-10 11:03:15 -04:00
wandererfan
e80c576241 [TD]Centralize preference getters 2020-04-24 11:13:49 -04:00
wandererfan
fcf5ec0270 [TD]detail highlight color/style 2020-03-26 12:36:33 -04:00
wandererfan
1f3966e1c3 [TD]SectionLine colour property 2020-03-26 12:36:33 -04:00
donovaly
1102195a9a fix typos 2020-03-21 09:46:04 -04:00
donovaly
c77b63d2bd [TD] add property for section line style
see https://forum.freecadweb.org/viewtopic.php?f=35&t=44320
2020-03-21 09:46:04 -04:00
wandererfan
4a0ab015f6 [TD]Hatch - handle empty parameter - use default 2020-03-20 18:42:48 -04:00
wandererfan
072b6f11b1 [TD]make geom hatch lines on property change 2020-03-20 07:28:33 -04:00
wandererfan
ee626abef4 [TD]synchronize defaults in code and prefs 2020-03-16 08:57:08 -04:00