Commit Graph

3108 Commits

Author SHA1 Message Date
vocx-fc
868435bfd9 Draft: move Scale GuiCommand to gui_scale module
The scale operation can be used with subelements, vertices
and edges, but in this case this only works with polylines
(wires) because internally the functions `scaleVertex`
and `scaleEdges` only work with polylines that have a `Points`
property.

When doing a copy and scale, it also calls `copyScaledEdges`
which calls `joinWires`, so problems with joining wires
may also be present when performing this operation.
2020-04-24 13:49:13 +02:00
vocx-fc
81d77e2ca1 Draft: move Trimex GuiCommand to gui_trimex module 2020-04-24 13:49:13 +02:00
vocx-fc
418bafe6ee Draft: move Downgrade GuiCommand to gui_downgrade module 2020-04-24 13:49:13 +02:00
vocx-fc
c3221222b3 Draft: move Upgrade GuiCommand to gui_upgrade module 2020-04-24 13:49:13 +02:00
vocx-fc
a9688f7d00 Draft: move Split GuiCommand to gui_split module 2020-04-24 13:49:13 +02:00
vocx-fc
cb5aa765fb Draft: move Join GuiCommand to gui_join module
Occasionally it fails to join lines even if the lines
visually share a point.

This is a rounding error in the comparison of the shared point;
a small distance will result in the points being considered
different and thus the lines not joining.

The solution is to test properly the two points using
`DraftVecUtils.equals` which considers the value of
the `precision` set in the Draft preferences.
2020-04-24 13:49:13 +02:00
vocx-fc
8ea1358dcb Draft: move Stretch GuiCommand to gui_stretch module 2020-04-24 13:49:13 +02:00
vocx-fc
eb21502d0f Draft: move Offset GuiCommand to gui_offset module
Include Yorik's commit 97c8eff825.
2020-04-24 13:49:13 +02:00
vocx-fc
5cf9dadd68 Draft: move Rotate GuiCommand to gui_rotate module 2020-04-24 13:49:13 +02:00
vocx-fc
bad30329d7 Draft: move ApplyStyle GuiCommand to gui_styles module
Also fix an error in determining the objects of type group.

Also call `finish` to properly terminate the command,
otherwise it stays active and behaves incorrectly.
2020-04-24 13:49:13 +02:00
vocx-fc
5f11802bc0 Draft: move Move GuiCommand to gui_move module 2020-04-24 13:49:13 +02:00
vocx-fc
3370e870fe Draft: move SubelementHighlight to its own module 2020-04-24 13:49:13 +02:00
Yorik van Havre
3802e07f54 Draft: fixed regression in snapper 2020-04-23 12:05:59 +02:00
Yorik van Havre
5b3fea59e0 Draft: Annotation editor 2020-04-22 13:38:17 +02:00
luz.paz
9489776462 LGTM: Fix 'testing equality to None'
Testing whether an object is `None` using the `==` operator is inefficient and potentially incorrect.
2020-04-22 12:18:33 +02:00
carlopav
18cfafeed8 Draft: reintroduced grid button in snap toolbar 2020-04-22 12:14:23 +02:00
carlopav
d59224a4be [Draft] Correct Draft Edit Tooltip in preferences
correction thx to Kunda1
2020-04-22 12:08:29 +02:00
vocx-fc
ace8c98aa8 Draft: move Label GuiCommand to gui_labels module
Also include carlopav's commit ff3bdf86bc for the Draft_Label tool,
which runs the autogroup function on the created label.
2020-04-22 12:07:25 +02:00
vocx-fc
d3646b0577 Draft: move Facebinder GuiCommand to gui_facebinders module 2020-04-22 12:07:25 +02:00
vocx-fc
4c297587c4 Draft: move Point GuiCommand to gui_points module 2020-04-22 12:07:25 +02:00
vocx-fc
afd941b66d Draft: move ShapeString GuiCommand to gui_shapestrings module 2020-04-22 12:07:25 +02:00
vocx-fc
44be767583 Draft: move Dimension GuiCommand to gui_dimensions module 2020-04-22 12:07:25 +02:00
vocx-fc
bec9d01058 Draft: move Text GuiCommand to gui_texts module 2020-04-22 12:07:25 +02:00
vocx-fc
66055ebf14 Draft: move Ellipse GuiCommand to gui_ellipses module 2020-04-22 12:07:25 +02:00
vocx-fc
0e089e998d Draft: move Polygon GuiCommand to gui_polygons module 2020-04-22 12:07:25 +02:00
vocx-fc
59c41fab33 Draft: move Circle GuiCommand to gui_circles module 2020-04-22 12:07:25 +02:00
vocx-fc
ea31a7d452 Draft: move Arc GuiCommand to gui_arcs module
Also move the `ArcGroup` that containst the two arc tools.
2020-04-22 12:07:25 +02:00
vocx-fc
0d891a85e3 Draft: move Rectangle GuiCommand to gui_rectangles module 2020-04-22 12:07:25 +02:00
vocx-fc
689324fe22 Draft: move CubicBezCurve GuiCommand to gui_beziers module
Also move the `BezierGroup` that contains the two Bezier tools.
2020-04-22 12:07:25 +02:00
vocx-fc
17281a250f Draft: move BezCurve GuiCommand to gui_beziers module 2020-04-22 12:07:25 +02:00
vocx-fc
b6cdf9f558 Draft: move BSpline GuiCommand to gui_splines module 2020-04-22 12:07:25 +02:00
vocx-fc
529ec1e1a6 Draft: move Wire GuiCommand to gui_lines module 2020-04-22 12:07:25 +02:00
vocx-fc
934d0f3752 Draft: move Line GuiCommand to gui_lines module 2020-04-22 12:07:25 +02:00
JeromeL
ff134bb576 Merge branch 'master' into Draft_addgroup 2020-04-21 14:53:12 +02:00
jerome Laverroux
d02eff767a Merge remote-tracking branch 'origin/Draft_addgroup' into Draft_addgroup 2020-04-21 14:50:06 +02:00
jerome Laverroux
3ade4f073c Modified :
- naming Label and not Name/ID
2020-04-21 14:49:30 +02:00
carlopav
b8d7f8df57 [Draft] Fixed scale multiplier for text object 2020-04-21 12:58:20 +02:00
vocx-fc
982a0fdd9c Draft: move Modifier class to gui_base_original module 2020-04-21 12:53:30 +02:00
vocx-fc
9f5e215751 Draft: move Creator class to gui_base_original module 2020-04-21 12:53:30 +02:00
vocx-fc
181c5cb60d Draft: import Part module where necessary for the tools
Also import `DraftGeomUtils` where necessary.

These modules were previously imported globaly when the base
`DraftTool` class was first called by the individual tools
through the `Creator` and `Modifier` classes.

However, since `DraftTool` was moved to a separate module,
these `Part` and `DraftGeomUtils` modules are no longer
in the `DraftTools` namespace, and therefore they
cannot be imported globally anymore.

Now the `Part` and `DraftGeomUtils` modules are imported
in the specific functions where they are actually needed.
2020-04-21 12:53:30 +02:00
vocx-fc
9b3096353c Draft: move the base DraftTool class to its own module
This is the base class of most Draft Gui Commands,
particularly those which were developed a long time ago.
It is inherited by `Creator` and `Modifier`
to set some specific options for some tools.

Newer Gui Commands do not use these classes and thus
are independent of `DraftTool`.

Nevertheless, in the future we expect to organize further
the commands so that they all derive from a few classes,
so that they all share some common properties and behaviors.
2020-04-21 12:53:30 +02:00
vocx-fc
0ba89d1662 Draft: move DraftTools utilities to another module
These small functions and utilities are placed in another
module, so they can be imported and called
by the individual Gui Command classes as necessary.

When these Gui Command classes are moved to their respective
modules, they will be able to import this auxiliary module as well.
2020-04-21 12:53:30 +02:00
vocx-fc
dd41c1a492 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-21 12:53:30 +02:00
Yorik van Havre
6f2fd04518 Draft: Fixed further regressions 2020-04-21 12:46:08 +02:00
Yorik van Havre
dc742e8523 Draft: Fixed broken backwards compatibility with annotations 2020-04-21 12:20:10 +02:00
luz.paz
0c326f094f [skip ci] fix documentation typos
Found via codespell v1.17.0.dev0  
```
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-04-20 12:59:09 +02:00
carlopav
c857754460 [Draft] Further cleanup of the branch
thanks to vocx revisions
2020-04-20 12:38:06 +02:00
carlopav
81df9b76ae [Draft] Snapper cleanup
Cleanup after @vocx-fc review
2020-04-20 12:38:06 +02:00
carlopav
64db721998 [Draft] Snap improvement and statusbar cleanup after rebase
[Draft] Attempt to make base classes compatible with super on py2


[Draft] Refactored imports of snapper and snaps gui tools


.


.
2020-04-20 12:38:06 +02:00
carlopav
be75f4febc [Draft] Statusbar widgets, preferences to disable draft statusba
.


.


.


.
2020-04-20 12:38:06 +02:00