Commit Graph

1433 Commits

Author SHA1 Message Date
donovaly
699baa8477 [TD] show balloon dialog on double-clicking
when adding GD&T statements as described in https://wiki.freecadweb.org/TechDraw_Geometric_dimensioning_and_tolerancing
You will quickly get a lot of balloons and it is then very tiring to be forced to first select a balloon with a single-click in the drawing, then go to the model tree and there double-click to get the dialog.

This PR also removes unused includes from the dialog code.
2021-01-11 03:02:35 +01:00
donovaly
2232b1d48e [TD] handle equal tolerances correctly
the common rule is that if a dimension has equal over- and undertolerance, they are output on the same line as the dimension concatenated using the ± character.

This PR does this.

Note that this is not just cosmetics, it is even standardized in the GD&T norms.

also:
* use one format specifier for tolerances since the norms don't allow a different format for the over- and the undertolerance
* some code optimizations like a self-explaining function name, remove unnecessary/outdated comments
2021-01-08 15:14:37 +01:00
Abdullah Tahiri
4facab0936 Gui: Colorful/Greyable overlay status in icons
===============================================

Before this implementation, specific status via former mergeOverlayIcon() was greyed out
with the visibility.

With this commit, the developer has two options:

a) override mergeGreyableOverlayIcons, in which case the overlay will
be greyed out when the item is greyed out as per former mergeOverlayIcon()

b) override mergeColorfulOverlayIcons, in which case the overlay will
be superimposed after the icon is greyed out as it is the case for stardard
error and recompute flags.
2021-01-06 13:54:00 +01:00
Mateusz Skowroński
9ee06a098a Fix Qt deprecation warnings. QPrinter::paperSize() and QPrinter::setPaperSize() are obsolete. 2021-01-04 13:40:58 +01:00
Mateusz Skowroński
5b4e76b834 Fix Qt deprecation warnings. QPrinter::orientation() and QPrinter::setOrientation() are obsolete. 2021-01-03 15:08:10 +01:00
wmayer
a9945500d8 TechDraw: [skip ci] restore TAB order of TaskBalloon dialog 2021-01-02 12:00:01 +01:00
donovaly
12c9aa00cf [TD] update balloon dialog
2 weeks ago the properties EndTypeScale and LineVisible were added but not to the dialog.

This PR adds them t the balloon dialog-

It also took the opportunity to cleanup the code:
- add missing tooltips
- uniform tooltips in App and Gui
- uniform the UI element names
2021-01-02 11:49:20 +01:00
Mateusz Skowroński
2bfccf8146 Fix Qt deprecation warnings. QPrinter::paperRect() and QPrinter::pageRect() are obsolete. 2021-01-02 10:39:16 +01:00
donovaly
e54f4fc086 [TD] fix regression for balloon text separators
as reported here: https://forum.freecadweb.org/viewtopic.php?f=35&t=53664 the balloon text separation no longer works.

The regression was introduced by commit 76357b3fc . The mistake thereby was that the textHeight is already handled before the separators and that rectangular balloons behave differently because of the separator feature.
2020-12-30 23:59:15 +01:00
donovaly
4011e7f129 [TD] cleanup preferences
as discussed here: https://forum.freecadweb.org/viewtopic.php?f=35&t=53680&p=461356#p461349

* change default tolerance scale to 0.8
* the tolerance scale is directly applied, thus it must have non-italic label
* move tolerance scale to "Dimensions" tab
* move Fuzz settings to "Advanced" tab
* move Conventions to General tab since e.g. the projection angle is an important general setting
* add a note for the label font that this is also used for dimensions and that it there only has an effect for new ones
* use more useful step size of 0.1 for some scaling spinboxes
* sort UI fields in the C++ code to avoid doubled or missing entries (there were 2 doubled entries)
* uniform width of all preferences dialogs
* better alignment for the HLR dialog
2020-12-30 20:22:27 +01:00
Aapo
e20a21a97d [TD] DrawViewDimension Tolerances, print zero tolerances without plus sign and decimals. 2020-12-30 18:49:59 +01:00
donovaly
665a1106f7 [TD] fix bug with angular and small values
* angular as reported here: https://forum.freecadweb.org/viewtopic.php?f=35&t=53473&start=10#p461507
* small values: since we convert to e.g. mm, we must then not output e.g. 'µm'
* also a code optimization, fix a typo, removal of a meanwhile misleading comment
2020-12-30 16:20:27 +01:00
wmayer
eac4062b3f Boost: [skip ci] Fix build warnings from deprecated Boost headers (v1.75) 2020-12-29 15:34:25 +01:00
Mateusz Skowroński
98f63ba60f Fix build warnings from deprecated Boost headers (they are used internally by Boost). Thanks @wwmayer for the hint. 2020-12-29 10:20:53 +01:00
Yorik van Havre
22f7d5f3bc Merged crowdin translations 2020-12-23 15:13:05 +01:00
Yorik van Havre
16effcb2af Updated ts files 2020-12-23 14:51:04 +01:00
Yorik van Havre
107ac45ddd Merge pull request #4175 from donovaly/TD-unit-dimension-fix
[TD] fix unit conversion for dimensions
2020-12-23 14:10:04 +01:00
Aapo
5a25f91beb [TD] ShapeExtractor.cpp: Avoid processing infinite-sized shapes (Datum objects etc). 2020-12-22 17:46:19 +01:00
donovaly
9213dace6b [TD] fix unit conversion for dimensions
as reported here: https://forum.freecadweb.org/viewtopic.php?f=35&t=53473
my commit 957ce2f38787 introduced a regression because now units are no longer converted when the unit is displayed.

This PR fixes this.
2020-12-21 01:27:41 +01:00
Aapo
5f497ab37a [TD] Balloon, fix Origin and scale refresh bugs, make Balloon scale change more reasonable per UI click. 2020-12-18 12:45:34 +01:00
Aapo
d81e377546 [TD] Balloon, fix EndTypeScale refresh bug. 2020-12-18 12:45:34 +01:00
Aapo
294136e9bd [TD] Balloon, move property LineVisible to View tab and fix a refresh bug. 2020-12-18 12:45:34 +01:00
Aapo
7d260787b9 [TD] Balloon, change ordering of the data properties to more logical. 2020-12-18 12:45:34 +01:00
Aapo
2077709329 [TD] Make Dimension Tolerances respect the Prefs formatSpec when creating a Dimension. 2020-12-17 17:30:29 +01:00
Yorik van Havre
9c1c6f02ed Merge pull request #4121 from everlanes/TechDraw_Segfault
[TD] Check return value of getMDIViewPage() a second time
2020-12-14 12:43:28 +01:00
Yorik van Havre
bae52813df Merge pull request #4109 from donovaly/TD-dimensioning-fix
[TD] treat dimensions the same way, no matter if with unit or not
2020-12-14 12:08:46 +01:00
Yorik van Havre
8aa4e821c5 Merge pull request #4069 from aapo-aapo/TD-Balloon-improvements
[TD] TechDraw Balloon improvements with two new App::PropertyType properties
2020-12-14 11:56:08 +01:00
wmayer
b3cd06afe8 Py: fix memory leaks by incorrect use of PyList_Append 2020-12-13 16:30:04 +01:00
Chris Hennes
533814dd0f Silence Qt/Windows setGeometry Warning
Add the optional Qt::MSWindowsFixedSizeDialogHint parameter to all uses of the QInputDialog::getX static functions to silence a Qt/Windows debug mode warning about QWindowsWindow::setGeometry: Unable to set geometry. Increase the size of the unit calculator to eliminate the same warning. Finally, call adjustSize() on the "Unsaved Changes" dialog to silence the warning.
2020-12-11 09:58:09 +01:00
Andreas Brinner
63f7aa3b66 Check return value of getMDIViewPage() a second time
When exporting a hidden TechDraw::Page with exportPageAs[Pdf|SVG] a
Segmentation Fault occured.

The return value of getMDIViewPage() was only checked for the first call, but
not for the second call. showMDIViewPage() silently returns, when the
TechDraw::Page is hidden and does not load the page.
2020-12-09 11:21:59 +01:00
Aapo
a421a35f1f [TD] Add a comment about QGIViewBalloon.cpp draw() function needing refactoring. 2020-12-07 23:48:28 +02:00
Aapo
6670197fad [TD] Add Balloon property LineVisible for making the Balloon line visible or hidden. 2020-12-07 23:40:12 +02:00
Aapo
d274805567 [TD] Add Balloon property EndTypeScale for scaling line end decorations (arrows etc). 2020-12-07 23:40:12 +02:00
donovaly
36686f78b1 [TD] treat dimensions the same way, no matter if with unit or not
fixes the issue reported here: https://forum.freecadweb.org/viewtopic.php?f=35&t=52545&start=40#p454483
2020-12-05 03:58:39 +01:00
Aapo
f72bf9d325 [TD] Make DrawViewSpreadSheet respect DrawPage::redrawCommand() update mechanism. 2020-12-05 00:50:20 +02:00
Aapo
3dd77d7e89 [TD] Fix column index range checking bug in std::string DrawViewSpreadsheet::getSheetImage(void) 2020-12-05 00:50:19 +02:00
Mark O'Donovan
e88dff8902 Remove unused variable in DrawViewDimension.cpp 2020-12-04 17:13:56 +01:00
donovaly
97e7913b11 [TD] uniform wording
in other/existing elements of line width we speak of "width", so do the same for line groups
2020-12-04 13:56:38 +01:00
Aapo
514b41b1c2 [TD] GQIViedDimension.cpp, GQCustomText.cpp - Fix Dimension label unit positioning bug and too tight bounding rectangle. 2020-12-03 21:31:01 +01:00
donovaly
4bae944950 [TD] make LineGroup selectable
At the moment one has to specify the LineGroup as string. But one doesn't know what groups exist. So one has to check the Wiki, learn there where the groups are defined and then open the definition file with a text editor.

This PR simplifies this by reading the existing groups out of the definition file and fill the combobox accordingly.
It also give the user info what the selected LineGroup defines via the tooltip.

A nice side effect is that no typos can occur since you don't have to enter the LineGroup name as text.
2020-12-03 17:24:49 +01:00
donovaly
7f856a251f tolerances can be negative, thus the decimal precision check must be adapted 2020-12-03 15:50:06 +01:00
donovaly
a2b523fb39 [TD] fix unit mismatch bug
- also make global decimal option italic since it only affects new dimensions
- also fix a typo in UnitsApi.h
2020-12-03 15:50:06 +01:00
wmayer
d284a343a8 [TD] add an enum to avoid to work with plain numbers 2020-12-02 16:42:21 +01:00
wmayer
2c599495a9 [TD] use PropertyQuantity for OverTolerance and UnderTolerance and add backward compatibility 2020-12-02 16:42:10 +01:00
aapo-aapo
3935ef8b8f @aapo-aapo @chennes [TD] Suggested minor improvements for DrawViewDimension.cpp and QGIViewDimension.cpp in Pull request review.
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2020-12-02 16:38:21 +01:00
Aapo
40bd4b806f [TD] Add tolerance format specifiers and arbitrary tolerances. 2020-12-02 16:38:21 +01:00
Aapo
eb22a14a3b [TD] Make tolerance labels use the same formatValue() conversion as dimension labels. Support MultiValueSchemas for tolerances, too. 2020-12-02 16:38:21 +01:00
Aapo
e7b4d9ed99 [TD] Refactor DrawViewDimension getFormatedValue() into two functions. 2020-12-02 16:38:21 +01:00
luz paz
89664642fb TD: Issue #0004473: Expose openCommand() to translation
Continuing the work to expose the undo/redo functionality to translation. This commit does so for the TechDraw Wb.  
Ticket: https://tracker.freecadweb.org/view.php?id=4473
2020-12-01 14:53:35 +01:00
wmayer
04f85c56fe TechDraw: [skip ci] fix -Winconsistent-missing-override 2020-12-01 14:45:26 +01:00