Commit Graph

20645 Commits

Author SHA1 Message Date
carlopav
cd1f2df6e9 [Draft] rough implementation of new preference dialog for interface 2020-04-20 12:38:06 +02:00
carlopav
77c385631b [Draft] Added Draft Snap Statusbar
.
2020-04-20 12:38:06 +02:00
carlopav
78a5036048 [Draft] Improved Snapper Toolbar Behaviour
Changed snap toolbar behaviour:
- create a list of available snaps (Gui.Snapper.snaps)
- make it consistent with Snap Gui Commands (in gui_snaps module)
- create a list of active snaps (Gui.Snapper.active_snaps)
- refactor the isEnabled() method to allow it to check if the given snap is in Gui.Snapper.active_snaps and not if the snap toolbar button isChecked()
- updated and reordered the new list of gui snap commands in draftutils.init_tools and used it as a base to refactor the creation of draft toolbar
- updated all the draft snap gui tools to make them control the toolbar buttons directly
.


.


.
2020-04-20 12:38:06 +02:00
Adam Spontarelli
7334fa5cf0 Converted class names from private to public, per feedback from pull request 2020-04-20 12:30:08 +02:00
Adam Spontarelli
6da1c6f834 Converted class names from private to public and corrected docstring formatting, per feedback from pull request 2020-04-20 12:28:27 +02:00
Adam Spontarelli
67f37b3d90 Initial addition of fcsprocket feature. This is a PartDesign tool that allows for the simple creation of ANSI standard roller chain sprockets. 2020-04-20 12:28:27 +02:00
Bernd Hahnebach
7e76135b2e FEM: meshtools, init empty node numbers in face search 2020-04-19 21:57:54 +02:00
Bernd Hahnebach
12d30f33ef FEM: result task panel, avoid zero float division 2020-04-19 21:38:19 +02:00
Bernd Hahnebach
29f4ecc79e FEM: meshtools, fix element names in face search 2020-04-19 21:38:09 +02:00
WandererFan
7c1ce37eff [TD]Piecewise Detail Algo 2020-04-19 09:17:28 -04:00
WandererFan
d12124073c [TD]Piecewise Sectioning Algo 2020-04-19 09:17:28 -04:00
Bernd Hahnebach
bbdaa62890 FEM: mesh export, add export to Python module 2020-04-17 22:51:36 +02:00
Bernd Hahnebach
f74cfae9b3 FEM: mesh tools, better logs 2020-04-17 21:11:28 +02:00
Yorik van Havre
d51363fefe Draft: Annotation styles editor 2020-04-17 18:51:30 +02:00
sliptonic
49ba5bef1f Merge pull request #3327 from Russ4262/3D_Surface_updates
[Path] 3D Surface fixes(7), minor optimizations, and cleanup
2020-04-17 10:40:53 -05:00
sliptonic
2e1796cbb5 Merge pull request #3331 from Russ4262/Waterline_updates
[Path] Waterline fixes(5), new IgnoreOuterAbove feature, and code simplification
2020-04-17 10:40:15 -05:00
Yorik van Havre
419b99bc38 Draft: [WIP] Annotation styles editor 2020-04-17 17:18:52 +02:00
wandererfan
f59188e5e4 [TD]fix crash on bad centerline selection 2020-04-17 10:11:24 -04:00
sliptonic
d4c35a0f08 Merge pull request #3320 from Russ4262/ProfileEdges_optimize
[Path] Some optimization for recent open edges update
2020-04-16 16:21:44 -05:00
Russell Johnson
9642271335 Path: Optimization for open edges update
Remove required usage of DocObject creation, in lieu of Part geometry usage - the preferred method.
Limit DocObject creation to debugging mode only.
Remove dependency on Draft module.
Drawback is top edge must be selected, and Final Depth set appropriately when using profiling open edges.
2020-04-16 12:53:32 -05:00
wmayer
63fcfb4802 Mesh: [skip ci] add sphere and cylinder fitting algorithms 2020-04-16 14:58:30 +02:00
wmayer
8e05325137 Spreadsheet: [skip ci] add generated Imp files to repository to avoid possible build failures 2020-04-16 12:24:38 +02:00
vocx-fc
5b677151e6 Draft: move array commands to DraftTools
Previously they were imported directly in `InitGui.py`,
now they are collected in `DraftTools.py`, so that they
are imported at the same time as other modules.

Also provide an icon so this icon appears in the menu.
2020-04-16 11:40:58 +02:00
vocx-fc
6b659cfcc2 Draft: move AddPoint and DelPoint to gui_line_add_delete module
These two Gui Commands were inside `DraftTools.py`
but they were considered obsolete as they just call `Draft_Edit`.
They were completely removed in 8f07732c46 and 15de58a5be.

They are restored in this commit and placed in their own module
just for historical reasons; however this module is not imported
in `DraftTools.py`.
2020-04-16 11:40:58 +02:00
vocx-fc
b5aa88fdbc Draft: move Draft_Arc_3Points to gui_arcs module 2020-04-16 11:40:58 +02:00
vocx-fc
31ca5dd812 Draft: move Draft_AddConstruction to gui_groups module
Also add a new icon for adding to the construction group.
2020-04-16 11:40:58 +02:00
vocx-fc
8640697107 Draft: move Draft_AutoGroup to gui_groups module 2020-04-16 11:40:58 +02:00
vocx-fc
125008c5e8 Draft: move Draft_Slope to gui_lineslope module
The class name was renamed to `LineSlope` as it is fundamentally
inteded to control slopes of lines.
2020-04-16 11:40:58 +02:00
vocx-fc
91c75b03f7 Draft: move Draft_FlipDimension to gui_dimension_ops module 2020-04-16 11:40:58 +02:00
vocx-fc
28e2e20a00 Draft: move Draft_Heal to gui_heal module 2020-04-16 11:40:58 +02:00
vocx-fc
df3a06399b Draft: move Draft_ToggleGrid to gui_grid module 2020-04-16 11:40:58 +02:00
vocx-fc
78c276e2a2 Draft: add base class for Snap commands 2020-04-16 11:40:58 +02:00
vocx-fc
a1f6a7f6e0 Draft: move Draft_ShowSnapBar to gui_snaps module 2020-04-16 11:40:58 +02:00
vocx-fc
eca1c75056 Draft: add correct docstring to old Array tools
Previously they mentioned incorrectly the Shape2DView tool.
2020-04-16 11:40:58 +02:00
vocx-fc
631f74d8fc Draft: move SelectGroup command to gui_groups module 2020-04-16 11:40:58 +02:00
vocx-fc
a0f9df523a Draft: move AddToGroup command to gui_groups module 2020-04-16 11:40:58 +02:00
vocx-fc
02189fa973 Draft: new utility toolbar with some useful commands
These commands are useful but are "hiden"
inside the "Utilities" menu, so not many poeple know about them.
By placing them in a toolbar, they will be more discoverable.
2020-04-16 11:40:58 +02:00
vocx-fc
5acb94984f Draft: move DisplayMode command to gui_togglemodes module 2020-04-16 11:40:58 +02:00
vocx-fc
e3154fccb2 Draft: move mode commands to gui_togglemodes module
`Draft_ToggleConstructionMode` and `Draft_ToggleContinueMode`.
They call a base class `BaseMode` which also uses the base
`gui_base.GuiCommandSimplest` class.

Also add a new icon for continue mode.
2020-04-16 11:40:58 +02:00
vocx-fc
1b8e9d5cb8 Draft: move line GuiCommands to gui_lineops module
The commands `FinishLine`, `CloseLine`, and `UndoLine`
are moved from the huge `DraftTools.py` to `gui_lineops.py`
to reduce the complexity of the former file.

These GuiCommands aren't actually used presently
in the Draft Workbench. They were used in the past
particularly from the context menu when editing a Line object.
2020-04-16 11:40:58 +02:00
vocx-fc
1970b6c3c9 Draft: GuiCommandSimplest to serve as base of simple Gui Commands
This class defines the `command_name` of the command,
so that it is output to the report view, and is also recorded
in the log file.

It also stores the current document so it can be used inside the
command.

The class implements with `IsActive` method so that the command
is only active when an active document exists.

Also `GuiCommandNeedsSelection`, which subclasses the former
class. It reimplements `IsActive` in order to be available
only when there is a selection.
2020-04-16 11:40:58 +02:00
vocx-fc
b3abe7efe9 Draft: update InitGui with context commands
The `ContextMenu` method defines commands that will be listed
when right clicking and opening the context menu in the 3D view
or the tree view.

This sets up the line GUI commands when either a line, wire,
polyline, spline, or bezier curve is active.

However, this currently doesn't work at all for unknown reasons.
Maybe some other functionality in the internal C++ code
needs to be changed first.
2020-04-16 11:40:58 +02:00
carlopav
db9134630a [Draft] Cleanup splitted annotatation objects
- corrected super() methods to be Py2 compatible
- further cleanup of the code.
further cleanup


changed again to avoid super method


updated super() functions


updated to correct the parent classess targeted by super()
2020-04-16 11:37:10 +02:00
carlopav
00c0de6871 [Draft] Removed annotation styles objects
Removed Annotation styles current implementation.
As pointed out by yorik, in https://forum.freecadweb.org/viewtopic.php?f=23&t=44051&p=385710#p385179, this feature will be added using document Meta property.
2020-04-16 11:37:10 +02:00
carlopav
78f740807c [Draft] Dimension styles improvements
Dimension style property is auto-set on dimension creation.
Further improvementes in DimensionStyleContainer.
.
2020-04-16 11:37:10 +02:00
carlopav
a4f7bc43f6 [Draft] Cleanup of Annotation style branch
Further cleanup and guarded imports of Gui in modules.

.
2020-04-16 11:37:10 +02:00
carlopav
cb4295fd8a [Draft] Splitted object Text and Label from Draft.py
And based them on Draft Annotation object
2020-04-16 11:37:10 +02:00
carlopav
19928b7347 [Draft] Updated cmake with splitted annotation objects
.


.
2020-04-16 11:37:10 +02:00
carlopav
5b4815f807 [Draft] Dimension Style cleanup 2020-04-16 11:37:10 +02:00
carlopav
749f614313 [Draft] Group object for dimension styles 2020-04-16 11:37:10 +02:00