Commit Graph

21730 Commits

Author SHA1 Message Date
wmayer
e1b56f8551 Part: expose BRepFeat_MakePrism to Python 2020-10-16 13:50:29 +02:00
wmayer
b33a120935 Part: [skip ci] implement getPyObject/setPyObject of TopoShape class 2020-10-16 13:46:44 +02:00
Yorik van Havre
27053d90b0 Arch: Fixed backwards compatibility issues 2020-10-16 12:40:09 +02:00
wmayer
df9282dc12 C++11: [skip ci] replace deprecated function std::mem_fun_ref with lambda functions 2020-10-15 18:55:29 +02:00
wmayer
da4a2e4ea4 Py3: suppress warning: 'tp_print' is deprecated [-Wdeprecated-declarations]
If the tp_print slot is not set the warning -Wmissing-field-initializers is raised. If it's set then -Wdeprecated-declarations is raised.
So, the only way is to suppress it.
2020-10-15 17:07:39 +02:00
wmayer
9c72532f5d Qt5: fix deprecation warnings for Qt 5.15
+ replace QDirModel with QFileSystemModel
+ QProcess::start(QString, OpenMode) is deprecated
+ QByteArray::append is deprecated
+ QPixmap* QLabel::pixmap() is deprecated
2020-10-15 16:50:11 +02:00
wmayer
3430adda72 Py3: [skip ci] fix warning: missing field 'tp_print' initializer [-Wmissing-field-initializers]
This warning is only specific to Py3.8. See https://docs.python.org/3/c-api/typeobj.html
2020-10-15 15:25:42 +02:00
wmayer
ef0fd3ca67 Qt5: 'endl' manipulator is deprecated with 5.15. Replace it with newlines. 2020-10-15 15:22:28 +02:00
wmayer
d4c0baba0c C++11: replace deprecated function std::bind2nd with lambda functions 2020-10-15 14:46:02 +02:00
Yorik van Havre
2682700850 Arch: Made default door/windows openable 2020-10-15 12:55:27 +02:00
Yorik van Havre
fd0019c653 Draft: Added grid extension control in WorkingPlane task panel 2020-10-15 12:30:16 +02:00
wmayer
bc6fefe3a0 Py3: fix warning: missing field 'tp_print' initializer [-Wmissing-field-initializers]
This warning is only specific to Py3.8. See https://docs.python.org/3/c-api/typeobj.html
2020-10-15 10:35:47 +02:00
Neinei0k
71236cbc29 [Sketcher] Changes to drawing of constraint icons.
* Change the formula to calculate maximum distance for merging of constraint icons.
* Ignore z coordinate while calculating the distance between icons. It is irrelevant but can slightly differ between icons.
* Choose first icon from the group of nearby icons as a location of the composite icon, instead of choosing icon closest to the average position. Fixes jittering of the icon while one of the constraints is moved.
2020-10-15 10:09:30 +02:00
wmayer
d75299143b TechDraw: [skip ci] fix possible crash in QGIViewPart::drawFace 2020-10-15 09:40:39 +02:00
Yorik van Havre
71cd301ca7 Draft: Added pref option to set default dimension unit 2020-10-14 17:21:27 +02:00
Yorik van Havre
7f95da95c1 Draft: Compatibility fix 2020-10-14 17:17:56 +02:00
wmayer
b33f92898b PartDesign: [skip ci] Improve revolution function
+ Fix hard crash when selecting an edge or face of the created feature before selecting option to choose a reference.
+ In ProfileBased::getAxis() convert OCCT into FreeCAD exception to simplify handling of calling instances.
+ Change return value of getReferencedSelection() from void to bool to mkae it easier for calling instance to detect if the selection failed.
  This is needed to avoid to add invalid items to the combo box of the revolution task panel
2020-10-14 15:20:52 +02:00
wmayer
72bcdf8c89 Surface: automatically start "Add edge" mode when starting the fill surface tool. Moving the order of edges is supported now. 2020-10-13 17:32:20 +02:00
wmayer
255ef44c93 Surface: rename TaskFillingUnbound to TaskFillingEdge 2020-10-13 16:23:58 +02:00
vocx-fc
27e42f5b05 Part: add viewprovider icon for the Part::Spline object
The `Part::Spline` object is the parent of the parametric
Surface Workbench objects.

For example, the `Part::Spline` object is created by the
`Surface_CurveOnMesh` tool, which in reality just calls
the `MeshPart_CurveOnMesh` tool.
2020-10-13 15:54:04 +02:00
vocx-fc
c9c4bbe104 Surface: better titles for the task panels, and tooltips 2020-10-13 15:53:32 +02:00
vocx-fc
8eb466d3e7 Surface, MeshPart: add more information to the CurveOnMesh command
In the Surface Workbench, the command is called `Surface_CurveOnMesh`
and the only thing it does is call the corresponding command
in the MeshPart Workbench, where it is defined
under the name `MeshPart_CurveOnMesh`.

Currently the MeshPart Workbench is not exposed on the graphical user
interface but it is loaded at startup, and its commands
are in fact used from the Mesh Workbench and, in this case,
the Surface Workbench.

Also improve the tooltip of the other commands in the Surface Workbench:
`Cut`, `Filling`, `GeomFillSurface`, `ExtendFace`, and `Sections`.
The `Cut` command does not do anything at this moment
so it is not visible in the interface.
2020-10-13 15:14:12 +02:00
vocx-fc
13a5f74d32 Surface: new icon for existing Surface_CurveOnMesh command
Add this command to the Surface toolbar.
2020-10-13 15:09:12 +02:00
vocx-fc
9b4b6d4276 Surface: ViewProviderExtend for Surface::Extend object
This is created by the Surface_ExtendFace command.
2020-10-13 14:52:02 +02:00
vocx-fc
64e0ac16ae Surface: new Extend icon for existing Surface_ExtendFace command
The icon is added to the `.qrc` resource file.

The command is added to the Surface toolbar.
2020-10-13 14:42:20 +02:00
wmayer
f81c1cd31f Part: make changing face colors independent of edit-mode implementation of a view provider 2020-10-13 14:16:01 +02:00
vocx-fc
048da48080 Part: activate Part_ColorPerFace in the menu and toolbar
According to the source this command was deactivated until issue #0477
and hence #1954 could be solved. However, since those issues
haven't been addressed the command has remained hidden for a long time.
This command does not work with objects that reimplement
their edit modes, meaning that it may work with Part and PartDesign
created objects but not with Draft and Arch objects.

The command is added to the standard `View` menu,
and to one `Part tools` toolbar so that it is no longer hidden.
The limitations of the command can be described in the documentation,
and then somebody else can help solve the problem
with the edit modes.

A new icon for the command is also provided.
2020-10-13 12:59:16 +02:00
Priit Laes
e755238456 build: boost: Clean up branches requiring boost-1.55 2020-10-13 12:56:28 +02:00
Priit Laes
6a6a6f3d25 build: boost: Drop branches requiring boost-1.46 2020-10-13 12:56:28 +02:00
Priit Laes
95ed01728e build: boost: Drop boost-1.44-specific checks 2020-10-13 12:56:28 +02:00
Priit Laes
a56b6730d0 build: boost: Drop boost <= 1.41 dependent-code branches 2020-10-13 12:56:28 +02:00
Priit Laes
06d87e4003 build: Bump boost requirement to 1.55 and drop bundled boost::any
Based on the information from bunch of the latest supported distros:
Debian Jessie: 1.55
Debian Stretch: 1.62
Ubuntu 16.04: 1.58
Ubuntu 18.04: 1.65
Fedora 31 and 32: 1.69
Redhat Enterprise Linux 8: 1.66 (1.53 for EL-7, though)
openSuse Leap 15.1: 1.66
2020-10-13 12:56:28 +02:00
vocx-fc
74abbfde02 Part: fix the mixed newlines of DlgPrimitives.h
My editor, Spyder, detected a mix of Windows and Unix newlines,
and offered to fix the file.
2020-10-13 12:51:51 +02:00
vocx-fc
d54cdff9e5 Part: improve tooltip of measure commands
Also update the text of the buttons in the `TaskDimension` task panel.

Remove tabs in the source code, as there was a mix of tabs
and spaces. Further cleaning is necessary as the indentation
is inconsistent and mostly 2 spaces instead of 4 spaces.
2020-10-13 12:50:50 +02:00
vocx-fc
5d1d8d800b Part: clean up spacing of lines in BOP JoinFeatures 2020-10-13 12:49:54 +02:00
vocx-fc
d603136821 Part: update object and commands for BOP SplitFeatures
This includes `BooleanFragments`, `Slice to compound`,
`Slice apart`, and `Boolean XOR`.

Clean up the tooltips of properties and commands.

Clean up the spacing of the code so that lines aren't very long.
2020-10-13 12:49:54 +02:00
vocx-fc
0eafaa3031 Part: update icon, object and command for CompoundFilter
The previous icon did not follow the general style and colors
of other icons in the workbench.

If there is no `Stencil` in the `CompoundFilter` object, raise
a `ValueError` exception when the `FilterType` is `'collision-pass'`
or `'window-distance'`.

Raise an exception when `items` is empty, or has a malformed string,
when `Filtertype` is `'specific items'`.

Fix the `getNullShapeShape` function to return a simple
`Part.Shape`, so that there is no error raised if `_nullShapeShape`
doesn't exist. This function doesn't work at all. It was probably
a prototype which was never fully developed; it may be removed
completely in the future.

The docstrings for the commands `CompoundFilter` and `ExplodeCompound`
were revised.

Clean up the spacing of the code so that lines aren't very long.
2020-10-13 12:49:54 +02:00
vocx-fc
f439384ccb Part: small cleanup of Python modules and InitGui.py
Add empty newline at the end of the file.
2020-10-13 12:49:54 +02:00
sliptonic
68ad4f2f1d Merge pull request #3941 from sliptonic/bug/deburr
[Path] Deburr bug fixes
2020-10-12 16:04:55 -05:00
vocx-fc
5a07d7dd46 Part: update icon for ProjectionOnSurface
The previous icon was improperly trimmed. The new icon
shows the projection more clearly as one object imprinting itself
over another.

Also update the tooltip, fix the indentation of the code,
and the title of the taskpanel `DlgProjectionOnSurface.ui`.
2020-10-12 19:54:11 +02:00
vocx-fc
c3994535d9 Part: move more icons to tools subdirectory 2020-10-12 19:54:11 +02:00
vocx-fc
9177eae0bb Part: move icons to measure subdirectory
The path to the icons is added to `AppPartGui.cpp`
using `Gui::BitmapFactory().addPath()`, so the icons are found
automatically in their new directories.
2020-10-12 19:54:11 +02:00
vocx-fc
e6dd1df7a3 Part: move icons to parametric subdirectory
The path to the icons is added to `AppPartGui.cpp`
using `Gui::BitmapFactory().addPath()`, so the icons are found
automatically in their new directories.
2020-10-12 19:54:11 +02:00
vocx-fc
3b671bf4a5 Part: move icons to booleans subdirectory
The path to the icons is added to `AppPartGui.cpp`
using `Gui::BitmapFactory().addPath()`, so the icons are found
automatically in their new directories.
2020-10-12 19:54:11 +02:00
vocx-fc
db91c6f424 Part: move icons to tools subdirectory
The path to the icons is added to `AppPartGui.cpp`
using `Gui::BitmapFactory().addPath()`, so the icons are found
automatically in their new directories.
2020-10-12 19:54:11 +02:00
vocx-fc
2fa40f4060 Part: move icons to create subdirectory
The path to the icons is added to `AppPartGui.cpp`
using `Gui::BitmapFactory().addPath()`, so the icons are found
automatically in their new directories.

Rename icon `Part_CreatePrimitives.svg` to `Part_Primitives.svg`.
2020-10-12 19:54:11 +02:00
sliptonic
63a244f01e Merge pull request #3938 from sliptonic/feature/dragknifepanel
[PATH]  Task panel for dragknife and axismap dressups.  fixes #2840
2020-10-12 12:50:44 -05:00
sliptonic
ffd7693815 Fix deburr CW/CCW calculation 2020-10-12 12:39:14 -05:00
Chrismettal
f82532ddbf Seed randomizer on application init 2020-10-12 19:10:06 +02:00
wmayer
7825eef62e PartDesign: [skip ci] Prevent crash when pressing delete key without feature selected to remove in mirror and scale pattern dialog 2020-10-12 18:56:12 +02:00