Merge pull request #21961 from knipknap/tool-cleanups

CAM: Some cleanups (moving DetachedDocumentObject around)
This commit is contained in:
sliptonic
2025-06-23 15:02:24 -05:00
committed by GitHub
16 changed files with 50 additions and 1529 deletions

View File

@@ -27,7 +27,7 @@ from unittest.mock import MagicMock
from Path.Tool.toolbit.ui.editor import ToolBitPropertiesWidget
from Path.Tool.toolbit.models.base import ToolBit
from Path.Tool.shape.ui.shapewidget import ShapeWidget
from Path.Tool.ui.property import BasePropertyEditorWidget
from Path.Tool.docobject.ui.property import BasePropertyEditorWidget
from .PathTestUtils import PathTestWithAssets

View File

@@ -24,7 +24,8 @@
import unittest
import FreeCAD
from Path.Tool.ui.property import (
from Path.Tool.docobject import DetachedDocumentObject
from Path.Tool.docobject.ui.property import (
BasePropertyEditorWidget,
QuantityPropertyEditorWidget,
BoolPropertyEditorWidget,
@@ -32,7 +33,6 @@ from Path.Tool.ui.property import (
EnumPropertyEditorWidget,
LabelPropertyEditorWidget,
)
from Path.Tool.toolbit.docobject import DetachedDocumentObject
class TestPropertyEditorFactory(unittest.TestCase):

View File

@@ -26,7 +26,9 @@ import unittest
from unittest.mock import MagicMock
import FreeCAD
from PySide import QtGui
from Path.Tool.ui.property import (
from Path.Tool.docobject import DetachedDocumentObject
from Path.Tool.docobject.ui.docobject import DocumentObjectEditorWidget, _get_label_text
from Path.Tool.docobject.ui.property import (
BasePropertyEditorWidget,
QuantityPropertyEditorWidget,
BoolPropertyEditorWidget,
@@ -34,8 +36,6 @@ from Path.Tool.ui.property import (
EnumPropertyEditorWidget,
LabelPropertyEditorWidget,
)
from Path.Tool.ui.docobject import DocumentObjectEditorWidget, _get_label_text
from Path.Tool.toolbit.docobject import DetachedDocumentObject
class TestDocumentObjectEditorWidget(unittest.TestCase):

View File

@@ -142,20 +142,28 @@ SET(PathPythonToolsAssetsUi_SRCS
Path/Tool/assets/ui/util.py
)
SET(PathPythonToolsDocObject_SRCS
Path/Tool/docobject/__init__.py
)
SET(PathPythonToolsDocObjectModels_SRCS
Path/Tool/docobject/models/__init__.py
Path/Tool/docobject/models/docobject.py
)
SET(PathPythonToolsDocObjectUi_SRCS
Path/Tool/docobject/ui/__init__.py
Path/Tool/docobject/ui/docobject.py
Path/Tool/docobject/ui/property.py
)
SET(PathPythonToolsGui_SRCS
Path/Tool/Gui/__init__.py
Path/Tool/Gui/Controller.py
)
SET(PathPythonToolsUi_SRCS
Path/Tool/ui/__init__.py
Path/Tool/ui/docobject.py
Path/Tool/ui/property.py
)
SET(PathPythonToolsToolBit_SRCS
Path/Tool/toolbit/__init__.py
Path/Tool/toolbit/docobject.py
Path/Tool/toolbit/util.py
)
@@ -554,15 +562,8 @@ SET(PathImages_Ops
Images/Ops/chamfer.svg
)
SET(PathImages_Tools
Images/Tools/drill.svg
Images/Tools/endmill.svg
Images/Tools/v-bit.svg
)
SET(Path_Images
${PathImages_Ops}
${PathImages_Tools}
)
SET(PathData_Threads
@@ -598,8 +599,10 @@ SET(all_files
${PathPythonToolsAssets_SRCS}
${PathPythonToolsAssetsStore_SRCS}
${PathPythonToolsAssetsUi_SRCS}
${PathPythonToolsDocObject_SRCS}
${PathPythonToolsDocObjectModels_SRCS}
${PathPythonToolsDocObjectUi_SRCS}
${PathPythonToolsGui_SRCS}
${PathPythonToolsUi_SRCS}
${PathPythonToolsShape_SRCS}
${PathPythonToolsShapeModels_SRCS}
${PathPythonToolsShapeUi_SRCS}
@@ -772,9 +775,23 @@ INSTALL(
INSTALL(
FILES
${PathPythonToolsUi_SRCS}
${PathPythonToolsDocObject_SRCS}
DESTINATION
Mod/CAM/Path/Tool/ui
Mod/CAM/Path/Tool/docobject
)
INSTALL(
FILES
${PathPythonToolsDocObjectModels_SRCS}
DESTINATION
Mod/CAM/Path/Tool/docobject/models
)
INSTALL(
FILES
${PathPythonToolsDocObjectUi_SRCS}
DESTINATION
Mod/CAM/Path/Tool/docobject/ui
)
INSTALL(
@@ -939,13 +956,6 @@ INSTALL(
Mod/CAM/Images/Ops
)
INSTALL(
FILES
${PathImages_Tools}
DESTINATION
Mod/CAM/Images/Tools
)
INSTALL(
FILES
${PathData_Threads}

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 18 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 36 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 42 KiB

View File

@@ -1,439 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
id="svg8"
version="1.1"
viewBox="0 0 210 297"
height="297mm"
width="210mm">
<defs
id="defs2">
<marker
orient="auto"
refY="0"
refX="0"
id="marker7593"
style="overflow:visible">
<path
id="path7591"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(1.1,0,0,1.1,1.1,0)" />
</marker>
<marker
style="overflow:visible"
id="marker4880"
refX="0"
refY="0"
orient="auto">
<path
transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
id="path4878" />
</marker>
<marker
style="overflow:visible"
id="marker4732"
refX="0"
refY="0"
orient="auto">
<path
transform="matrix(1.1,0,0,1.1,1.1,0)"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
id="path4730" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker4584"
style="overflow:visible">
<path
id="path4582"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
</marker>
<marker
style="overflow:visible"
id="marker4328"
refX="0"
refY="0"
orient="auto">
<path
transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
id="path4326" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker4186"
style="overflow:visible">
<path
id="path4184"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(1.1,0,0,1.1,1.1,0)" />
</marker>
<marker
style="overflow:visible"
id="marker3948"
refX="0"
refY="0"
orient="auto">
<path
transform="matrix(1.1,0,0,1.1,1.1,0)"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
id="path3946" />
</marker>
<marker
style="overflow:visible"
id="Arrow2Lend"
refX="0"
refY="0"
orient="auto">
<path
transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
style="fill:#000025;fill-opacity:1;fill-rule:evenodd;stroke:#000025;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
id="path920" />
</marker>
<marker
style="overflow:visible"
id="Arrow2Lstart"
refX="0"
refY="0"
orient="auto">
<path
transform="matrix(1.1,0,0,1.1,1.1,0)"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
style="fill:#000025;fill-opacity:1;fill-rule:evenodd;stroke:#000025;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
id="path917" />
</marker>
<marker
style="overflow:visible"
id="marker7497"
refX="0"
refY="0"
orient="auto">
<path
transform="scale(-0.6)"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
style="fill:#000025;fill-opacity:1;fill-rule:evenodd;stroke:#000025;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
id="path7495" />
</marker>
<marker
style="overflow:visible"
id="marker7379"
refX="0"
refY="0"
orient="auto">
<path
transform="matrix(0.4,0,0,0.4,4,0)"
style="fill:#000025;fill-opacity:1;fill-rule:evenodd;stroke:#000025;stroke-width:1.00000003pt;stroke-opacity:1"
d="M 0,0 5,-5 -12.5,0 5,5 Z"
id="path7377" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker5480"
style="overflow:visible">
<path
id="path5478"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker5470"
style="overflow:visible">
<path
id="path5468"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker5220"
style="overflow:visible">
<path
id="path5218"
d="M 0,0 5,-5 -12.5,0 5,5 Z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
transform="matrix(0.4,0,0,0.4,4,0)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker5210"
style="overflow:visible">
<path
id="path5208"
d="M 0,0 5,-5 -12.5,0 5,5 Z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
transform="matrix(0.4,0,0,0.4,4,0)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker5072"
style="overflow:visible">
<path
id="path5070"
d="M 0,0 5,-5 -12.5,0 5,5 Z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
transform="matrix(-0.8,0,0,-0.8,-10,0)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker5014"
style="overflow:visible">
<path
id="path5012"
d="M 0,0 5,-5 -12.5,0 5,5 Z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
transform="matrix(-0.8,0,0,-0.8,-10,0)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker4968"
style="overflow:visible">
<path
id="path4966"
d="M 0,0 5,-5 -12.5,0 5,5 Z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
transform="matrix(-0.8,0,0,-0.8,-10,0)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker4884"
style="overflow:visible">
<path
id="path4882"
d="M 0,0 5,-5 -12.5,0 5,5 Z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
transform="matrix(0.8,0,0,0.8,10,0)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker4856"
style="overflow:visible">
<path
id="path4854"
d="M 0,0 5,-5 -12.5,0 5,5 Z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
transform="matrix(0.8,0,0,0.8,10,0)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker4834"
style="overflow:visible">
<path
id="path4832"
d="M 0,0 5,-5 -12.5,0 5,5 Z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
transform="matrix(0.8,0,0,0.8,10,0)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker5220-5"
style="overflow:visible">
<path
id="path5218-3"
d="M 0,0 5,-5 -12.5,0 5,5 Z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
transform="matrix(0.4,0,0,0.4,4,0)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="marker5480-5"
style="overflow:visible">
<path
id="path5478-7"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6)" />
</marker>
</defs>
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
transform="translate(-2.9715041,189.05423)"
id="layer1">
<path
id="path3652"
d="M 16.482124,-35.533338 H 161.08374 l -60.25067,63.90854 H 76.732798 Z"
style="fill:#000000;fill-opacity:0.1372549;stroke:#000000;stroke-width:0.80668455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
id="path4520"
d="m 52.632531,-125.00529 v 89.471952 H 16.482124 l 60.250677,63.90854 h 24.100269 l 60.25067,-63.90854 h -36.15041 v -89.471952 z"
style="fill:none;stroke:#000000;stroke-width:3.28361988px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
id="path4526"
d="M 88.782934,-137.787 V 41.156909"
style="fill:none;stroke:#000000;stroke-width:1.24105322;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:9.9284259, 2.48210647, 1.24105325, 2.48210647;stroke-dashoffset:0;stroke-opacity:1" />
<path
id="path4528"
d="m 52.632531,-125.00529 v -38.34513"
style="fill:none;stroke:#000000;stroke-width:0.80668455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
id="path4530"
d="m 124.93333,-125.00529 v -38.34513"
style="fill:none;stroke:#000000;stroke-width:0.80668455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<g
transform="matrix(12.050135,0,0,12.781708,4.431989,-176.13213)"
id="g7053">
<path
style="fill:none;stroke:#000000;stroke-width:0.065;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 8,16 v 2"
id="path4536" />
</g>
<path
id="path4538"
d="M 161.08374,79.502035 V -35.533338"
style="fill:none;stroke:#000000;stroke-width:0.80668455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
id="path4542"
d="M 52.632531,-150.56871 H 124.93333"
style="fill:none;stroke:#000000;stroke-width:0.80668455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker4186);marker-end:url(#marker4584)" />
<path
id="path4546"
d="m 100.83307,44.466662 v 0 h 24.10026"
style="fill:none;stroke:#000000;stroke-width:0.65865523;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker4732)" />
<path
id="path4548"
d="M 16.482124,66.720326 H 161.08374"
style="fill:none;stroke:#000000;stroke-width:0.80668455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker3948);marker-end:url(#marker4328)" />
<text
transform="scale(0.97096034,1.0299082)"
id="text5680"
y="-150.39774"
x="81.176964"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:35.02528px;line-height:1.25;font-family:'URW Bookman L';-inkscape-font-specification:'URW Bookman L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.28361988"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:35.02528px;font-family:'URW Bookman L';-inkscape-font-specification:'URW Bookman L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:3.28361988"
y="-150.39774"
x="81.176964"
id="tspan5678">S</tspan></text>
<text
transform="scale(0.97096034,1.0299082)"
id="text5692"
y="96.250031"
x="78.339798"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:35.02528px;line-height:1.25;font-family:'URW Bookman L';-inkscape-font-specification:'URW Bookman L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.28361988"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:35.02528px;font-family:'URW Bookman L';-inkscape-font-specification:'URW Bookman L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:3.28361988"
y="96.250031"
x="78.339798"
id="tspan5690">D</tspan></text>
<path
transform="matrix(-0.00747619,-0.99997205,0.99996462,-0.00841146,0,0)"
d="M 13.451117,38.457364 A 76.688599,72.377235 0 0 1 12.422369,139.63833"
id="path5698"
style="fill:none;fill-opacity:1;stroke:#000025;stroke-width:0.80668473;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#Arrow2Lstart);marker-end:url(#Arrow2Lend)" />
<text
transform="scale(0.97096033,1.0299082)"
id="text5688-7"
y="-39.443188"
x="95.738831"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:35.02528px;line-height:1.25;font-family:'URW Bookman L';-inkscape-font-specification:'URW Bookman L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.28361988"
xml:space="preserve"><tspan
style="stroke-width:3.28361988"
y="-39.443188"
x="95.738831"
id="tspan5718">α</tspan></text>
<text
transform="scale(0.97096033,1.0299082)"
id="text5692-8"
y="51.168293"
x="28.921215"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:35.02528px;line-height:1.25;font-family:'URW Bookman L';-inkscape-font-specification:'URW Bookman L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.28361988"
xml:space="preserve"><tspan
style="stroke-width:3.28361988"
y="51.168293"
x="28.921215"
id="tspan10475">d</tspan></text>
<path
id="path4546-7"
d="m 50.833067,44.466662 v 0 h 24.100267"
style="fill:none;stroke:#000000;stroke-width:0.65865511;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker4880)" />
<g
id="g7053-6"
transform="matrix(12.050135,0,0,12.781708,-19.668283,-176.13213)">
<path
style="fill:none;stroke:#000000;stroke-width:0.065;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 8,16 v 2"
id="path4536-1" />
</g>
<path
id="path4538-8"
d="M 16.482124,79.502035 V -35.533338"
style="fill:none;stroke:#000000;stroke-width:0.80668455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
id="path4548-6"
d="m 160.33172,-35.533338 24.60161,0"
style="fill:none;stroke:#000000;stroke-width:0.68599999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
id="path4548-6-8"
d="m 100.93333,28.466662 84,0"
style="fill:none;stroke:#000000;stroke-width:0.75753552;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
id="path4538-7"
d="m 174.93333,28.466662 0,-64"
style="fill:none;stroke:#000000;stroke-width:0.80668455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker7593);marker-end:url(#marker5072)" />
<text
transform="scale(0.97096033,1.0299082)"
id="text5692-9"
y="9.0554771"
x="185.5818"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:35.02518845px;line-height:1.25;font-family:'URW Bookman L';-inkscape-font-specification:'URW Bookman L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.28361988"
xml:space="preserve"><tspan
y="9.0554771"
x="185.5818"
id="tspan7855">H</tspan></text>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,3 @@
from .models.docobject import DetachedDocumentObject
__all__ = ["DetachedDocumentObject"]

View File

@@ -0,0 +1,3 @@
from .docobject import DocumentObjectEditorWidget
__all__ = ["DocumentObjectEditorWidget"]

View File

@@ -33,10 +33,10 @@ from lazy_loader.lazy_loader import LazyLoader
from typing import Any, List, Optional, Tuple, Type, Union, Mapping, cast
from PySide.QtCore import QT_TRANSLATE_NOOP
from Path.Base.Generator import toolchange
from ...assets import Asset
from ...docobject import DetachedDocumentObject
from ...assets.asset import Asset
from ...camassets import cam_assets
from ...shape import ToolBitShape, ToolBitShapeCustom, ToolBitShapeIcon
from ..docobject import DetachedDocumentObject
from ..util import to_json, format_value

View File

@@ -22,13 +22,12 @@
"""Widget for editing a ToolBit object."""
from functools import partial
import FreeCAD
import FreeCADGui
from PySide import QtGui, QtCore
from ..models.base import ToolBit
from ...shape.ui.shapewidget import ShapeWidget
from ...ui.docobject import DocumentObjectEditorWidget
from ...docobject.ui import DocumentObjectEditorWidget
from ..models.base import ToolBit
class ToolBitPropertiesWidget(QtGui.QWidget):