Commit Graph

50 Commits

Author SHA1 Message Date
vocx-fc
1ed3df9df0 Draft: add base class for Snap commands 2020-04-16 11:40:58 +02:00
vocx-fc
11206b1d3a Draft: move Draft_ShowSnapBar to gui_snaps module 2020-04-16 11:40:58 +02:00
vocx-fc
ef3ad5121b Draft: move SelectGroup command to gui_groups module 2020-04-16 11:40:58 +02:00
vocx-fc
d05a786e57 Draft: move AddToGroup command to gui_groups module 2020-04-16 11:40:58 +02:00
vocx-fc
14352677c5 Draft: move DisplayMode command to gui_togglemodes module 2020-04-16 11:40:58 +02:00
vocx-fc
9758d983ef 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
7189d3de05 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
017226e803 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
carlopav
0745f760a0 [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
8e3dfe7c26 [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
4855564bb8 [Draft] Group object for dimension styles 2020-04-16 11:37:10 +02:00
carlopav
6d8fe07312 [Draft] Annotation refactor and Cleanup
.


.
2020-04-16 11:37:10 +02:00
carlopav
530e8b6c58 [Draft] Split Dimension object and reorganize of annotation objects
part 1
2020-04-16 11:37:10 +02:00
carlopav
34cf98102c [Draft] Dimension style object
still have to split viewprovider from object.
[Draft] Dimension Style code cleanup

thx @vocx-fc for reviewing
further cleanup


[Draft] Dimension Style improvements

Added a property to the dimension object to link the dimension style.
Improved the update of dimensions when style changes. This can be done in 2 different ways: by setting AutoUpdate property to True or by activating Update function from the viewprovider context menu.
2020-04-16 11:37:10 +02:00
vocx-fc
c5e5f901e9 Draft: gui_ and task_polararray cleanup 2020-04-10 13:19:22 +02:00
vocx-fc
48619ad6e9 Draft: gui_ and task_orthoarray cleanup 2020-04-10 13:19:22 +02:00
vocx-fc
13cc36e73d Draft: gui_ and task_circulararray cleanup 2020-04-10 13:19:22 +02:00
vocx-fc
5afce788c9 Draft: move WorkingPlaneProxy to separate module
Previously it was in the `gui_selectplane` module
but we prefer to place it in its own module
so that the files are as small as possible.
2020-04-09 11:41:45 +02:00
vocx-fc
cb7bf768c8 Draft: add WorkingPlaneProxy button to the toolbar
We also rename it from `Draft_SetWorkingPlaneProxy`
to `Draft_WorkingPlaneProxy` as we want to indicate a new object
is created.
2020-04-09 11:41:45 +02:00
vocx-fc
2ede46764e Draft: move SelectPlane task panel to a separate module 2020-04-09 11:41:45 +02:00
vocx-fc
ec5dcdc087 Draft: gui_trackers clean up docstrings and spaces (3)
Many small spacing fixes in the code, to improve the Pythonic
style according to PEP8.
Also add many docstrings in triple quotes.
2020-04-07 18:12:06 +02:00
vocx-fc
da1f71dfc0 Draft: gui_trackers clean up docstrings and spaces (2)
Many small spacing fixes in the code, to improve the Pythonic
style according to PEP8.
Also add many docstrings in triple quotes.
2020-04-07 18:12:06 +02:00
vocx-fc
1cde3156b0 Draft: gui_trackers clean up docstrings and spaces
Many small spacing fixes in the code, to improve the Pythonic
style according to PEP8.
Also add many docstrings in triple quotes.
2020-04-07 18:12:06 +02:00
vocx-fc
009a7aacf9 Draft: gui_snaps cleanup 2020-04-07 18:12:06 +02:00
vocx-fc
d91cc369f3 Draft: gui_snapper clean up docstrings and spaces (2) 2020-04-07 18:12:06 +02:00
vocx-fc
3f33f04827 Draft: gui_snapper clean up docstrings and spaces 2020-04-07 18:12:06 +02:00
vocx-fc
b5fa36953f Draft: gui_selectplane cleanup
Small spacing fixes like imports in separate lines
for more clarity, and the position of the license.

Added many docstrings to clarify the methods, and spaces
after commas in order to comply with Python PEP8 style.
Also break many lines so that they are shorter than 80 characters.
2020-04-07 18:12:06 +02:00
vocx-fc
3e77ded2c4 Draft: gui_polararray cleanup
Small spacing fixes like imports in separate lines
for more clarity, the module docstrings,
and the position of the license.

Remove unnecessary check for the graphical interface
as this command should be imported when the interface
is already up and running.

Use proper `ToDo` class instead of importing `DraftGui`.
2020-04-07 18:12:06 +02:00
vocx-fc
aad2969a28 Draft: gui_orthoarray cleanup
Small spacing fixes like imports in separate lines
for more clarity, the module docstring,
and the position of the license.

Remove unnecessary check for the graphical interface
as this command should be imported when the interface
is already up and running.

Use proper `ToDo` class instead of importing `DraftGui`.
2020-04-07 18:12:06 +02:00
vocx-fc
6c4b2161e3 Draft: gui_edit, many small spacing and docstring edits 2020-04-07 18:12:06 +02:00
vocx-fc
c1fe916f00 Draft: gui_edit cleanup
Small spacing fixes like imports in separate lines
for more clarity, the module docstring,
the position of the license, and trailing spaces.

Remove unnecessary check for the graphical interface
as this command should be imported when the interface
is already up and running.

Properly import `gui_trackers` module and use tracker
classes prefixed accordingly.
2020-04-07 18:12:06 +02:00
vocx-fc
dd9b694422 Draft: gui_circulararray cleanup
Small spacing fixes like imports in separate lines
for more clarity, the module docstring,
and the position of the license.

Remove unnecessary check for the graphical interface
as this command should be imported when the interface
is already up and running.

Use proper `ToDo` class instead of importing `DraftGui`.
2020-04-07 18:12:06 +02:00
vocx-fc
43c93b886e Draft: clean up gui_arrays and gui_base
Small spacing fixes like imports in separate lines
for more clarity, the module docstring,
and the position of the license.

Remove unused imports. And use proper `ToDo` class
instead of importing `DraftGui`.
2020-04-07 18:12:06 +02:00
vocx-fc
046be91982 Draft: gui_trackers.py clean up imports and spaces
Small spacing fixes like imports in separate lines
for more clarity, and the position of the license.
Also use the `ToDo` class with this new name
following Python guidelines.
2020-04-07 18:12:06 +02:00
vocx-fc
a9a10a7fd7 Draft: gui_snapper.py clean up imports and spaces
Small spacing fixes like imports in separate lines
for more clarity.
Also use the `OrderedDict` prefixed with the `collections` module.
2020-04-07 18:12:06 +02:00
vocx-fc
d1c0f2f2f0 Draft: docstrings for the submodules 2020-04-07 18:12:06 +02:00
vocx-fc
9ed42f61a7 Draft: move Draft_Edit to another module 2020-04-06 12:51:55 +02:00
vocx-fc
48f2ba9c74 Draft: improve the Python style gui_selectplane
Also import `todo` and `translate` from the utils module
instead of from `DraftGui`.
Otherwise we have to import the entire `DraftGui` module
which creates dependency problems when we want to use
some functions without the graphical interface.
2020-03-31 12:00:38 +02:00
vocx-fc
f54ca61463 Draft: move and rename DraftSelectPlane 2020-03-31 12:00:38 +02:00
vocx-fc
439d021dd7 Draft: Snapper class with new gui_trackers module
Also change the imports in `DraftFillet.py`
and `DraftEdit.py` so the trackers are found.
2020-03-23 12:14:33 +01:00
vocx-fc
b38dcd9ff6 Draft: move DraftTrackers to another module.
Properly import the tracker classes. Avoid star imports,
and use the classes prefixed with the name of the module.
The BIM Workbench also has to be updated to use the new
module.
```
import draftguitools.gui_trackers as DraftTrackers
```
2020-03-23 12:14:33 +01:00
vocx-fc
699624fd26 Draft: move DraftSnap to another module
And do not load the `Snapper` in `DraftGui`.
The Snapper should be initialized by the module
that imports `DraftGui`, most probably `DraftTools`
or even by the `InitGui` of the workbench.
2020-03-20 08:11:04 -03:00
vocx-fc
f1a3e14226 Draft: move snap commands to an individual module
This way we remove lines from `DraftTools.py`
and we can more easily identify where the snapping
commands are defined.
2020-03-20 08:11:04 -03:00
vocx-fc
9eeceb4f28 Draft: improve the README files with links 2020-03-19 12:11:16 -03:00
vocx-fc
b1a71f4a53 Draft: new Draft_OrthoArray command
It replaces the older `Draft_Array` command, and provides
a task panel to select the properties, similar to the
`Draft_PolarArray` and `Draft_CircularArray` commands.

It can also create `App::Links` directly from this task
panel, so it also replaces the `Draft_LinkArray`
introduced by the LinkMerge.
2020-03-03 21:27:31 +01:00
vocx-fc
9dc24a9d4d Draft, Arch: group the array tools 2020-03-02 11:41:22 -03:00
vocx-fc
3ccffc1b3f Draft: add README files to explain the new structure 2020-02-05 10:59:28 +01:00
vocx-fc
5143369fc9 Draft: add new command for Draft CircularArray
Added object, viewprovider, icon; gui command definition, task panel,
add command to InitGui; add callbacks, and delay system.
2020-01-08 15:16:07 +01:00
vocx-fc
fa44c7ae2f Draft: new command for Draft PolarArray
Added object, viewprovider, icon; gui command definition, task panel,
add command to InitGui; add callbacks, and delay system.
2020-01-07 07:18:39 -03:00
vocx-fc
71154715e7 Draft: add GuiCommandBase class to serve as the parent class of all DraftTools
Prepare auxiliary directories to restructure all graphical tools
for objects, viewproviders, gui commands, and taskpanels.
2019-12-27 11:01:34 -03:00