Commit Graph

2566 Commits

Author SHA1 Message Date
vocx-fc
b532c74e3d Draft: DraftGeomUtils clean up imports, and Python 2 compatibility
Small spacing fixes like imports in separate lines
for more clarity, and the position of the license.

Also fix copying of a list in order to keep compatibility
with Python 2.
2020-04-07 18:12:06 +02:00
vocx-fc
033d0091e5 Draft: WorkingPlane.py clean up imports and docstrings
Small spacing fixes like imports in separate lines
for more clarity, and the position of the license.

Cleaned up the class docstring, so it is in only one place
below the class definition. Also small fixes
in the docstrings of the class methods.

The class is now in upper case `Plane` to conform with Python
guidelines. An alias in lowercase `plane` is still provided
for compatibility purposes; this will be deprecated
in the future.
2020-04-07 18:12:06 +02:00
vocx-fc
ad0a50c79a Draft: DraftVecUtils.py clean up imports and messages
Small spacing fixes like imports in separate lines
for more clarity, and the position of the license.
Also use the new `messages` module to provide the functions
to print text to the console.
Also use `Matrix` prefixed by the `FreeCAD` module.
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
f33dcf69db Draft: todo.py clean up header, imports and messages
Small spacing fixes like imports in separate lines
for more clarity, and the position of the license.
Also use the new `messages` module to provide
the functions to print text to the console.

Use two `DEBUG` variables to print information about
the `ToDo` class in order to see the scheduled commands
when the graphical commands are executed.
2020-04-07 18:12:06 +02:00
vocx-fc
3b6c06d095 Draft: gui_utils.py clean up imports
Small spacing fixes like imports in separate lines
for more clarity, and the position of the license.
Also use the new `messages` module to provide the functions
to print text to the console.
2020-04-07 18:12:06 +02:00
vocx-fc
e9742da7d8 Draft: utils.py clean up header and imports
Small spacing fixes like imports in separate lines
for more clarity, and the position of the license.
Also use the new `messages` module to provide the functions
to print text to the console.
2020-04-07 18:12:06 +02:00
vocx-fc
d45321f7ff Draft: Draft.py improve imports of utility functions 2020-04-07 18:12:06 +02:00
vocx-fc
4018a47885 Draft: Draft.py clean up header and imports 2020-04-07 18:12:06 +02:00
vocx-fc
f00fe58061 Draft: DraftTools.py clean up header and imports
Small spacing fixes like imports in separate lines for
more clarity, and the position of the license.
Also use the class name `ToDo` in `CamelCase`,
as it is indicated in Python guidelines for classes.
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
6cc5001c08 Draft: Draft_Text split lines by newline characters 2020-04-06 13:01:32 +02:00
vocx-fc
a45738c629 Draft: update unit test for gui_edit 2020-04-06 12:51:55 +02:00
vocx-fc
9ed42f61a7 Draft: move Draft_Edit to another module 2020-04-06 12:51:55 +02:00
vocx-fc
67dca69d60 Draft: task_scale, small style improvements 2020-04-02 16:53:49 +02:00
vocx-fc
7bc2e3ad48 Draft: move ScaleTaskPanel to a module
We remove it from `DraftGui.py` to reduce the size of this file.
Then we import it and tie it to its command defined
in `DraftTools.py`.
2020-04-02 16:53:49 +02:00
vocx-fc
22e3788bfd Draft: task_shapestring, small style improvements 2020-04-01 13:22:04 +02:00
vocx-fc
50faaea5bf Draft: move ShapeStringTaskPanel to a module
We remove it from `DraftGui.py` to reduce the size of this file.
Then we import it and tie it to its command defined
in `DraftTools.py`.
2020-04-01 13:22:04 +02:00
carlopav
f018dbf159 [Draft] Fix to mirror tool
the normal is not computed with the view, but with the working plane if active.
ref. https://forum.freecadweb.org/viewtopic.php?f=23&t=44301&p=380632#p380370
2020-03-31 12:03:02 +02:00
vocx-fc
6f028e0395 Draft: update unit test for gui_selectplane 2020-03-31 12:00:38 +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
carlopav
115d4b0d08 [Draft] Reordering Modifiers toolbar 2020-03-24 11:17:48 +01:00
luz.paz
76a77e4f88 [skip ci] Fix typos
Found via 
```
codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,ba,beginn,behaviour,bloaded,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childs,colour,colours,commen,connexion,currenty,dof,doubleclick,dum,eiter,elemente,ende,feld,finde,findf,freez,hist,iff,indicies,initialisation,initialise,initialised,initialises,initialisiert,ist,kilometre,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oder,orgin,orginx,orginy,ot,pard,pres,programm,que,recurrance,rougly,seperator,serie,sinc,strack,substraction,te,thist,thru,tread,uint,unter,vertexes,wallthickness,whitespaces -S ./.git,*.po,*.ts,./ChangeLog.txt,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./src/CXX,./src/zipios++,./src/Base/swig*,./src/Mod/Robot/App/kdl_cp,./src/Mod/Import/App/SCL,./src/WindowsInstaller,./src/Doc/FreeCAD.uml
```
2020-03-24 11:14:24 +01:00
vocx-fc
a150b3048d Draft: use functions from the utils module, not DraftGui
These functions were moved from DraftGui to individual
modules precisely to make them easy to import.
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-23 12:14:58 +01:00
vocx-fc
791f799626 Draft: update unit test for new gui_trackers module 2020-03-23 12:14:33 +01: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
69af481235 Draft: update unit test for gui_snapper 2020-03-20 08:11:04 -03: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
d80ee4a820 Draft: properly import the Snapper class
Avoid star imports, and prepend the module name,
`DraftSnap.Snapper()`.
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
UR-0
bb1c5cde7f DRAFT: import DXF version R12 minimalistic file with legacy importer 2020-03-19 12:21:39 -03:00
vocx-fc
c629bf2fad Draft, Arch: coding conventions for the workbench 2020-03-19 12:20:03 -03:00
vocx-fc
9eeceb4f28 Draft: improve the README files with links 2020-03-19 12:11:16 -03:00
vocx-fc
054ce9a540 Draft: recompute before using radial dimension in the unit test
This solves a small bug in the radial dimension
unit test introduced in 81c2896928, where a circle shape
is used before it is recomputed.

```
drafttests/test_creation.DraftCreation.test_dimension_radial
```
2020-03-19 12:10:56 -03:00
triplus
c676a817b8 Draft - enable toggle grid command in edit mode
Some people would like to have more control over draft grid visibility  while in Sketcher edit mode.  Hence this PR enables the usage of Draft ToggleGrid  command in Sketcher edit mode.

Forum discussion:
https://forum.freecadweb.org/viewtopic.php?f=34&t=43265&start=20#p374747
2020-03-12 09:26:48 -03:00
vocx-fc
e41915e638 Draft: add new viewprovider icon for radius dimension
If it is a linear dimension show the older icon;
if it is a radius or diameter dimension show a new icon.

These three modes use the same Proxy class
and the same viewprovider class. Depending on the linked geometry
one icon or the other will be shown.
2020-03-12 09:12:11 -03:00
vocx-fc
3e3ed47367 Draft: add new viewprovider icons for specific objects
When there are many Draft objects in the tree view
the icon can be used to tell different objects apart quickly.
One icon is used for objects that are "straight lines",
whose Proxy is of type `Line`, `Wire` or `Polyline`; another icon
for "regular geometrical" shapes of type `Rectangle` or `Polygon`;
and another icon for "curved" objects of type `Circle`,
`Ellipse`, `BSpline`, `BezCurve`, or `Fillet`.

Other objects use the older default icon.
2020-03-12 09:12:11 -03:00
carlopav
8fd55eb6ff [Draft] Remove AddPoint and DelPoint commands from UI
[Draft] Edit: Remove Bezcurve interface from Edit Ui


[Draft] Edit: cleanup


small improvement to tooltip
2020-03-12 09:11:34 -03:00
carlopav
e79c1e6c99 [Draft] Uniform length and xyz inputfield behaviour
Single returnPressed to accept point if cursor is parallel to xyz axis for bot setfocus on x and on length inputfields.
[Draft] Edit_updated tooltip


[Draft] DraftGui Further cleanup and bugfix
2020-03-12 09:11:34 -03:00
carlopav
f5f43913e0 [Draft] DraftGui and DraftEdit Cleanup to remove AddPoint & DelPoint
Lines to be deleted in DraftGui in the future, are now commented.
2020-03-12 09:11:34 -03:00
carlopav
6182aea46b [Draft] DraftGui Bugfix on selecting inputfields
https://forum.freecadweb.org/viewtopic.php?f=23&t=43145&p=367517#p367517
2020-03-12 09:11:34 -03:00
vocx-fc
215c29caf1 Draft: implement unit test for angular dimension
Previously the `makeAngularDimension` function produced
error messages in the report view due to internal rounding
of `App::PropertyAngles`.
This was fixed in `Base::Quantity`, which now supports
Python's `__round__` function.
2020-03-12 09:06:11 -03:00
vocx-fc
81c2896928 Draft: implement unit test for radial dimension 2020-03-12 09:06:11 -03:00
vocx-fc
422d5f9d1f Draft: cleanup of unit tests code 2020-03-12 09:06:11 -03:00
vocx-fc
efd5367d94 Draft: unit test for arc by 3 points 2020-03-12 09:06:11 -03:00
vocx-fc
fb4a992ce0 Draft: add script to produce a test file as example
The test script can be run by the program's executable
or run as a macro.
```
freecad draft_test_objects.py
```

It can also be used as a Python module within the program
to create a test file on demand.
```
import drafttests.draft_test_objects as dt
dt.create_test_file()
```

The produced test file will be added in a different commit
once this commit is merged.
The idea is to have a test file created by a certain
stable version of the master branch. Then as the code
continues to change and grow, this file can be opened
with future versions of the program to test for compatibility
and regressions.
2020-03-12 09:06:11 -03:00
Syres916
11a13d6843 [Draft] Orthoarray Task Panel Fix Z interval 2020-03-06 18:05:14 -03:00