Commit Graph

37 Commits

Author SHA1 Message Date
Markus Reitböck
0019739095 TechDraw: use CMake to generate precompiled headers on all platforms
"Professional CMake" book suggest the following:

"Targets should build successfully with or without compiler support for precompiled headers. It
 should be considered an optimization, not a requirement. In particular, do not explicitly include a
 precompile header (e.g. stdafx.h) in the source code, let CMake force-include an automatically
 generated precompile header on the compiler command line instead. This is more portable across
 the major compilers and is likely to be easier to maintain. It will also avoid warnings being
 generated from certain code checking tools like iwyu (include what you use)."

Therefore, removed the "#include <PreCompiled.h>" from sources, also
there is no need for the "#ifdef _PreComp_" anymore
2025-09-23 00:50:59 +02:00
bofdahof
998f4e4d45 Console: rename PascalCase named methods to camelCase 2025-05-06 17:50:21 +02:00
Benjamin Bræstrup Sayoc
9a323909e1 TechDraw: remove unneeded state from QGCustomText 2025-03-13 13:42:02 +01:00
Benjamin Guest
9990408035 TechDraw: Fix dimension alignment issue.
Fixes issue #19121 "dimension numbers placed lower than normal".

Problem:

QGCustomText has a new method `alignmentRect` which can optionally return a
`tightBoundingRect` instead of the regular `boundingRect`. The
`alignmentRect` is used for laying out the `QGIDatumLabel`, however
QGraphicsItemGroup's `childrenBoundingRect` use the childrens'
`boundingRect` and knows nothing of `alignmentRect`. The result is an
improperly sized label and frame and miss alignment. Additionally
`childrenBoundingRect` calculations includes hidden views, so even though
the `m_tolTextOver` and `m_tolTextUnder` are hidden they still affect
the bounding rect size.

Solution:

1. Implement new method `QGIDatumLabel::tightBoundingRect` this
   calculates the bounding rect using the subview's
   `aligmentRect` if there is text in the custom text.
2. Use `tightBoundingRect` in place of `boundingRect` to for the drawing of
   arrows and the exact dim frames.
3. This PR acknowledges that there are some edge case fonts that while not
   clipped may not interface perfectly with arrows and the exact dimension
   frame.
4. Fix vertical alignment of `m_tolTextOver` / `m_tolTextUnder`
5. Incorporate PR Review comments
2025-01-27 20:39:41 +01:00
WandererFan
e9c30cf370 [TD]Dimension font clipping (fix #11452) (#18771)
* [TD]separate alignment and rendering bounding rectangles

* [TD]use alignment rectangle (fix #11452)
2025-01-13 11:13:59 -06:00
Benjamin Bræstrup Sayoc
5785cb589b [TechDraw] Fix uncentered balloon label 2024-09-11 20:04:30 -04:00
Benjamin Bræstrup Sayoc
15fe52a04b [TechDraw] Simplify retrievement of user preferences
for all TechDraw files
2023-04-10 23:34:05 -04:00
Uwe
8231c77cb3 [TD] QGC* - QGE:remove unused includes
- also some sorting
2022-12-04 02:16:43 +01:00
wandererfan
acf17905ed [TD]CI clang warnings 2022-09-05 17:48:38 -04:00
Wanderer Fan
f2ba030ebb [TD]remove precompiled from *.h 2022-08-14 09:20:38 -04:00
Benjamin Bræstrup Sayoc
aa9a667506 [TechDraw] Clean up precompile in Gui 2022-08-14 09:20:38 -04:00
berniev
da9ebc572f Mod: redundant void 2 2022-08-08 10:27:50 +02:00
Benjamin Bræstrup Sayoc
8b52db90c5 [TechDraw] Use function overloadin and avoid code repeat 2022-07-06 20:46:44 -04:00
wmayer
97330443a2 All: modernize C++11
* replace deprecated headers
2022-03-23 22:44:18 +01:00
Aapo
dadac36234 [TD] GQIViedDimension.cpp, GQCustomText.cpp - Fix Dimension label unit positioning bug and too tight bounding rectangle. 2020-12-03 21:31:01 +01:00
Aapo
4e06414552 [TD] Add comments and more transparent tolerance position adjustment calculation. 2020-12-01 14:37:39 +01:00
aapo-aapo
4ed3c99e3e Update src/Mod/TechDraw/Gui/QGCustomText.cpp by compacting boundingRect()
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2020-12-01 14:37:39 +01:00
Aapo
f2e91ec488 [TD] Make dimension number graphical layout more compact by making boundingRect() tighter for dimension number labels. 2020-12-01 14:37:39 +01:00
wmayer
cbb5f99ade PVS: V730 Not all members of a class are initialized inside the constructor 2020-07-18 10:59:27 +02:00
wandererfan
e80c576241 [TD]Centralize preference getters 2020-04-24 11:13:49 -04:00
wandererfan
b7190a8b50 [TD]refix Dim select area problem 2020-01-08 15:07:28 -05:00
wandererfan
d7dabeb885 [TD]Fix Dimension Color Regression
- still an issue where text looses select color if
  clicked while selected
2019-09-29 19:56:46 -04:00
wandererfan
0d01744098 [TD]Clean up Welding Symbol creation 2019-08-22 17:11:55 -04:00
wandererfan
992ef1b07e [TD]Welding Symbol creation 2019-08-22 17:11:55 -04:00
Tomas Pavlicek
fad4db3300 TechDraw: Fix font size issues when exporting to SVG 2019-05-27 22:18:14 -04:00
wandererfan
21353779d9 Fix Dimension Text Color
- Dimension text did not respect Color property setting.
2019-02-14 21:14:11 +01:00
wandererfan
cd1959a094 Fix Detail highlight position for rotated DPGI
- highlight position calculation was not taking into account
  rotation of DPGI due to RotationVector property.
2018-12-19 10:30:30 -02:00
WandererFan
88b15ffdf1 Poistioning and Rotation for QGIVAnnotation 2017-11-12 19:08:32 -05:00
WandererFan
94a647a94c Fix Svg export page & text size in HiRez 2017-01-29 19:40:32 -05:00
WandererFan
bcb1534391 Add 2nd page of preferences 2016-11-24 14:44:37 -02:00
WandererFan
4cb4e5f04a Create ViewSection from ViewPart
Property name changes
Touch section when View SymbolSection changes
2016-08-26 11:39:03 -03:00
WandererFan
fa57b7a5de Fix dimension highlighting problems
Derived all lines from PrimPath
2016-08-16 14:29:15 +02:00
WandererFan
2c8f497292 Get user prefs at time of use 2016-07-14 15:55:57 -04:00
WandererFan
ed2de2c06e Default font to Sans from osifont 2016-07-11 15:32:16 +02:00
WandererFan
6cec1df189 Working Face selection 2016-07-11 15:32:16 +02:00
WandererFan
a9d6f1568b /QGI/QGraphicsItem/ 2016-07-11 15:32:16 +02:00
WandererFan
7c009c6def Add Mod/TechDraw/Gui 2016-07-11 15:32:16 +02:00