Commit Graph

25191 Commits

Author SHA1 Message Date
wmayer
ea0f95739b PD: [skip ci] fix angle checks for groove and revolution 2021-03-03 14:56:16 +01:00
wmayer
86751fd944 PD: [skip ci] set angle constraints for groove 2021-03-03 14:55:19 +01:00
donovaly
2caa07c291 [PD] disallow angles <=0 for holes and revolution
neither the taper, drill or countersink angle can be zero or negative for a valid hole, thus set a constraint
2021-03-03 14:33:01 +01:00
David Carter
6c57cebc9b Base: fixes #0004586: Conversion error for PoundForce (lbf) 2021-03-03 12:39:49 +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
Chris Hennes
aeb4f4fb84 [GUI] Add window decorations to About 2021-03-03 10:56:11 +01:00
wmayer
07a59e242d PD: [skip ci] fix angle check in PolarPattern::getTransformations() 2021-03-03 10:39:41 +01:00
wmayer
dd31be3b19 PD: improve task panel for polar patterns:
* set range of Occurrences property to spin box
* connect signals after initializing widgets to avoid superfluous recomputes and possible inconsistencies
2021-03-03 10:32:46 +01:00
wmayer
7b43f7e996 PD: improve task panel for linear patterns:
* set range of Occurrences property to spin box
* connect signals after initializing widgets to avoid superfluous recomputes and possible inconsistencies
2021-03-03 10:32:02 +01:00
wmayer
30e9ba9609 App: add convenience methods to get minimum, maximum and step size of property constraints 2021-03-03 08:12:03 +01:00
donovaly
20024707a9 [PD] disallow invalid polar and linear pattern settings
as discussed in 423d41da19 we should disallow invalid property settings
2021-03-03 07:45:08 +01:00
wmayer
6d02284b81 CMake: [skip ci] copy ThirdPartyLibraries.html and LICENSE.html to the correct location
and add the latter to the INSTALL() command
2021-03-02 19:05:30 +01:00
Chris Hennes
3c5523cb6b Switch to removeTab() to support older Qt versions 2021-03-02 18:49:13 +01:00
Chris Hennes
2038dedeb4 [GUI] Implement license tab that obeys stylesheet
The original License tab used a hard-coded HTML element created in Qt
Designer, which adds style tags to all HTML elements. This commit
replaces that tab with a dynamically-created tab which loads an included
LICENSE.html file at runtime. That file contains no style information,
so obeys the style information provided by the current stylesheet. If
that resource file is not available at runtime, the old license tab is
retained and displayed.
2021-03-02 18:49:13 +01:00
luz paz
e417fd9436 Crowdin: remove trailing whitespace [skip ci] 2021-03-02 17:29:21 +01:00
wmayer
2fe153118c Gui: [skip ci] for the author label use the same font configuration as with the rich text as otherwise the text appears very tiny 2021-03-02 17:23:41 +01:00
Chris Hennes
0bc39982df [GUI] Make UrlLabel in About styleable
The UrlLabel in the About FreeCAD box was not styleable because its
rich-text contents overrode any styling applied to it. This commit
converts it to a plain text label that can then be styled in a
stylesheet using the Gui--UrlLabel selector. If no stylesheet is
applied, the UrlLabel styles itself using the old-school blue text with
an underline, but any applied stylesheet completely overrides this
default.

This does not affect the "clickability" of a UrlLabel widget, which is
handled independently of the label's content (including its textual
hyperlink, which was and still is ignored).
2021-03-02 16:45:03 +01:00
wmayer
dfba396b4f Gui: support to customize the font size of bounding boxes 2021-03-02 16:29:57 +01:00
David Osterberg
c1b3fba031 Beautify xml step 1: These changes do not affect the uic output 2021-03-02 16:29:11 +01:00
wmayer
5853dbcf08 travis: using C++17 for the clang build doesn't currently work on Bionic.
So revert the change from commit c3b61ab2e77c and instead suppress the C++17 related warnings caused by OCCT
2021-03-02 12:44:56 +01:00
wmayer
eed1a3f1b7 travis: OCCT 7.5.1 uses [[nodiscard]] that is a C++17 feature.
To avoid to get tons of warnings because of -Wpedantic the clang build should use C++17, too
2021-03-02 12:13:08 +01:00
Chris Hennes
96406ff97c [Arch] LGTM issues in Dice3DS
LGTM identified a few minor issues in the Dice3DS code -- none of them
appear to be real errors, so the changes here should not affect the
behavior of the code.
2021-03-01 10:35:39 -06:00
Yorik van Havre
19e4113de4 Arch: Fixed SectionPlane outside objects bug in ArchSectionPlane - Fixes #4549 2021-03-01 16:49:31 +01:00
Chris Hennes
4ebdff9d9c [Draft] Fix localize_vectors double definition
LGTM identified an instance where a function was defined twice: in this
case, one version was intended to take a list of items and the second
version just a single item. Because they share the same name and number
of arguments, the second definition overrode the first. This causes no
problems in the current code because the version that takes a list is
never used. However, for consistency with the analogous
"globalize_vectors" and "globalize_vector" functions, the "localize*"
versions are changed to match that pattern. All calls in are
converted to the singular use.
2021-03-01 09:36:21 -06:00
Chris Hennes
784ee36121 [Draft] Eliminate unused loop iteration variables
When creating arrays of colors, the color information is often created
to be the same length as some array of objects. In three instances this
was achieved with a loop over that list of objects, even though the
objects themselves are never used. This commit eliminates those loops
and creates the required number of color instances directly.

Identified by LGTM.
2021-03-01 09:19:20 -06:00
Chris Hennes
3e48fef002 [OpenSCAD] Add unit test framework to module
The OpenSCAD module did not have any unit tests. This commit adds the
basic framework (and two very simple tests). The framework is modeled
after the unit tests in the FEM module.
2021-03-01 15:21:18 +01:00
David Osterberg
1110f1198b PartDesign: Allow use of circle edge as axis in PolarPattern 2021-03-01 14:48:24 +01:00
David Osterberg
c862ec458c PartDesign: Allow use of circle edge as axis in ProfileBased 2021-03-01 14:48:24 +01:00
wmayer
9120d4a7d9 PD: [skip ci] PolarPattern: Support 1 occurrence
This is analogous to support 1 occurrence of the linear pattern feature: 74ea8353edc9
2021-03-01 13:58:02 +01:00
donovaly
88c6ed3d2d [PD] fix multi-transform View
- fixes bug 4581
  See the first issue reported here:
  https://forum.freecadweb.org/viewtopic.php?f=3&t=56093#p482553

- also fix issue that one could set 1 occurrence for polar patterns despite 2 are required at least

- also fix potential dereferencing null pointer (reported by MSVC)
2021-03-01 13:11:15 +01:00
Chris Hennes
6640f13be1 [Arch] Refactor to eliminate unused variable
LGTM complains about the unused variable in a loop that is really only
using the variable to iterate a set number of times. This replaces that
loop with a multiplication by the length of the array, eliminating the
unused iteration variable and clarifying the intent of the code.
2021-02-28 23:42:14 -06:00
Chris Hennes
2d9c9accda [DRAFT] Remove unused loop variable
LGTM is concerned about the unused loop variable in this algorithm.
While there was nothing wrong here, to eliminate the alarm the loop was
removed entirely, since Python allows the use of the multiplication
operator here to achieve the same effect.
2021-02-28 23:18:53 -06:00
Chris Hennes
59ecfbe508 [Draft] Return once the button is found 2021-02-28 21:48:31 -06:00
Chris Hennes
747dc8b81a [DRAFT] Refactor sync_snap_toolbar_button
LGTM objected to the re-use of the loop variable a in the algorithm.
Upon closer inspection, the algorithm in this function could be modified
to match the algorithm in sync_snap_statusbar_button (which does the
same thing to the statusbar that this does to the toolbar). This
eliminates the double-use. This change does not affect the functionality
of the routine.
2021-02-28 21:42:46 -06:00
Chris Hennes
d93567ce27 Add library versions to LibraryVersions.h 2021-02-28 20:45:34 -06:00
David Osterberg
beb85522e4 PartDesign: Hole. Address Donovaly bugs 7 and 8
bug 7: the update view checkbox should be enabled/disabled based on Model thread.
       the checked state should not change

bug 8: the Thread depth options should be disabled when Model thread is unchecked.
       because they don't do anything in the model it is confusing if they are enabled.
2021-02-28 20:13:14 +01:00
David Osterberg
10f922613b PartDesign: Hole: Always update view if modelthread is disabled
Also: Check the Update View checkbox and disable it, when turning off
model thread.
2021-02-28 20:13:14 +01:00
David Osterberg
99215a9f9f PartDesign: Hole: Turn off keyboard tracking on model thread spinboxex 2021-02-28 20:13:14 +01:00
David Osterberg
41724cd29b PartDesign: Hole: Rename Automatic Tapped (DIN76) and change default to Hole depth. 2021-02-28 20:13:14 +01:00
David Osterberg
d7ae53d597 PartDesign: [Hole] Add Entire Depth thread depth mode 2021-02-28 20:13:14 +01:00
David Osterberg
d94946781e PartDesign: Add true threads to Hole
- Thread runout according to DIN 76-1
- Through all length updated to be calculated based on bounding box
- New properties: ModelThread, ThreadDepthType, ThreadDepth,
                  UseCustomThreadClearance, CustomThreadClearance
- Rename Old but unused parameters related to thread modeling.
- Functionality exposed in UI
2021-02-28 20:13:14 +01:00
Chris Hennes
fd1c856afc [CMAKE] Add version info for MEDfile 2021-02-28 19:31:05 +01:00
Chris Hennes
113ef52708 [CMAKE] Cleanup version info for Python & XercesC 2021-02-28 19:27:48 +01:00
Chris Hennes
75a6ac4c8b [CMAKE] Add Coin3D version info
Modelled after the code for Eigen3, this adds a version check for Coin.
If pkg_config (or some other method) finds the version string, just
print that. If not, do a REGEX MATCH on the file in Coin's headers that
includes the version information. Note that in this case the beta
version information is excluded.
2021-02-28 19:27:26 +01:00
Chris Hennes
0332ba1e20 [Offline Docs] Fix static analysis issues
LGTM identified a number of minor issues (mostly unused imports) in the
offline docs code. This commit addresses those, plus tweaks some output
formatting to include missing spaces, makes a regex more rigorously safe
by escaping some periods, and updates the use of a get() function which
appears to have changed since it was first written.
2021-02-28 17:53:58 +01:00
Chris Hennes
62bfb44a0d [Tools] Fix static analyis issues
This commit addresses issues identified by LGTM for the various
independent (and mostly-independent) files in the Tools subdirectory.
The vast majority of the issues are trivial, and are things like unused
imports or catching BaseException. There was one true bug identified, a
global variable being changed in a function where it was not marked
global, but it only affected output quantity (the variable is named
"VERBOSE"). A couple of other issues identified variables that appear to
represent no-longer-existing options in the code. The options were left,
but a deprecation printout replaces the variable in the event the option
is provided.
2021-02-28 17:53:04 +01:00
luz paz
6f6c1deed7 Crowdin: Startpage - add whitespace to tooltip [skip ci] 2021-02-28 17:15:08 +01:00
luz paz
504cd1e7a5 Crowdin: Startpage: remove obsolete translation [skip ci] 2021-02-28 17:15:08 +01:00
luz paz
4e0fa6a736 Crowdin: StartPage - remove obsolete translation [skip ci]
Ticket 0004578  
ref: https://crowdin.com/translate/freecad/7254/en-en?filter=basic&value=0#6572932
2021-02-28 17:15:08 +01:00
wmayer
24b446c9f7 Sketcher: fixes #0004303: Three choices in a Sketcher menu each with the same Ctrl+Shift+E 'address' 2021-02-28 13:14:48 +01:00