Compare commits

..

36 Commits

Author SHA1 Message Date
Simon De Backer 32a90493bd TEST a Merge branch 'XMLProperties'
it gets built let's test it for bugs

 Conflicts:
	sources/ElementsCollection/fileelementcollectionitem.cpp
	sources/QetGraphicsItemModeler/qetgraphicshandleritem.h
	sources/borderproperties.cpp
	sources/conductorproperties.cpp
	sources/conductorproperties.h
	sources/diagram.cpp
	sources/diagram.h
	sources/diagramprintdialog.cpp
	sources/diagramprintdialog.h
	sources/editor/graphicspart/customelementgraphicpart.cpp
	sources/editor/graphicspart/partarc.cpp
	sources/editor/graphicspart/partdynamictextfield.cpp
	sources/editor/graphicspart/partdynamictextfield.h
	sources/editor/graphicspart/partellipse.cpp
	sources/editor/graphicspart/partline.cpp
	sources/editor/graphicspart/partpolygon.cpp
	sources/editor/graphicspart/partrectangle.cpp
	sources/editor/graphicspart/partterminal.cpp
	sources/editor/graphicspart/partterminal.h
	sources/editor/graphicspart/parttext.cpp
	sources/properties/propertiesinterface.cpp
	sources/properties/propertiesinterface.h
	sources/properties/terminaldata.cpp
	sources/properties/terminaldata.h
	sources/properties/xrefproperties.cpp
	sources/properties/xrefproperties.h
	sources/qetgraphicsitem/conductor.cpp
	sources/qetgraphicsitem/conductor.h
	sources/qetgraphicsitem/conductortextitem.h
	sources/qetgraphicsitem/dynamicelementtextitem.h
	sources/qetgraphicsitem/element.cpp
	sources/qetgraphicsitem/element.h
	sources/qetgraphicsitem/elementtextitemgroup.h
	sources/qetgraphicsitem/slaveelement.cpp
	sources/qetgraphicsitem/slaveelement.h
	sources/qetgraphicsitem/terminal.cpp
	sources/qetgraphicsitem/terminal.h
	sources/qetproject.cpp
	sources/titleblockproperties.cpp
2020-10-13 22:31:58 +02:00
Martin Marmsoler eb5494c360 Merge branch 'XMLProperties' of ssh://git.tuxfamily.org/gitroot/qet/qet into XMLProperties 2020-10-12 19:14:02 +02:00
Martin Marmsoler c0d9bf9548 use more meaningful name 2020-10-12 19:11:01 +02:00
Martin Marmsoler f79b1a52bb WIP 2020-10-11 11:05:22 +02:00
Martin Marmsoler 3509a1c7a5 add comments and move some initializations from the source file to the header file 2020-10-10 15:50:04 +02:00
Martin Marmsoler 0dfe0c1613 let conductor textitem export to xml, because the read is also made from it 2020-10-10 12:25:58 +02:00
Martin Marmsoler 497673d83b make createProperty methods static, because they can be used also outside of this class 2020-10-10 12:21:37 +02:00
Martin Marmsoler f18e6bd50f remove default parameter, because it leads only to confusion and errors 2020-10-10 12:02:38 +02:00
Martin Marmsoler 9b8c0101be new method to load properties must be used, otherwise nothing valid will be read 2020-10-10 11:17:15 +02:00
Martin Marmsoler 0cc6558281 Fix issue that conductors where connected wrong. This was, because instead of reusing the id's stored in the Terminal, new id's where created 2020-10-08 19:05:30 +02:00
Martin Marmsoler 52f886e34b add comment 2020-10-08 18:39:11 +02:00
Martin Marmsoler a1cf3711a1 Fix issues 2020-10-07 08:05:01 +02:00
Martin Marmsoler b958848194 Update conductorproperties.cpp and conductor.cpp 2020-10-06 21:40:48 +02:00
Martin Marmsoler 2d21391a09 - AlignBottom shoud be the default
- move inital values to header file
2020-10-06 18:44:14 +02:00
Martin Marmsoler beeeb252b4 fix problem of not showing reference labels 2020-10-06 17:07:16 +02:00
Martin Marmsoler 6d2a88e85f use default value if the parameter is not available 2020-10-06 12:48:39 +02:00
Martin Marmsoler 8ef8a71680 add comment 2020-10-05 21:54:26 +02:00
Martin Marmsoler 8829974852 add comment 2020-10-04 09:34:34 +02:00
Martin Marmsoler 871a2642f4 use m_pos as value to store 2020-10-04 09:34:25 +02:00
Martin Marmsoler 9153588c94 store position when exporting to xml, because terminalData will create the document from m_pos 2020-10-04 09:33:16 +02:00
Martin Marmsoler f3368f159d Fix problem that not all childs were added to the xml document 2020-10-03 20:50:08 +02:00
Martin Marmsoler 9521a8aa0b WIP 2020-10-02 15:49:35 +02:00
Martin Marmsoler c8691b243b if no uuid for the terminal is available, use write the id of the terminal to the xml file, otherwise no connection can be done after saving 2020-10-02 14:58:33 +02:00
Martin Marmsoler 9684d753ec write uuid only in partterminal to xml, because in the other case it is not needed 2020-10-02 14:57:06 +02:00
Martin Marmsoler 15ca6096ca rename f to conductor for better readability 2020-10-02 14:56:15 +02:00
Martin Marmsoler a92683f3fa add comment 2020-10-01 16:51:17 +02:00
Martin Marmsoler 9e54137224 add explanation 2020-10-01 16:39:12 +02:00
Martin Marmsoler 91a56799a7 Solves problem that terminals are not placed at the correct place 2020-10-01 16:31:15 +02:00
Martin Marmsoler 10e767c3e0 add comments 2020-10-01 16:28:48 +02:00
Martin Marmsoler 27a63bbf2b WIP 2020-10-01 14:38:08 +02:00
Martin Marmsoler adc28d32b9 revert saving title block properties in it's own child, because it makes more sense directly in the diagram 2020-09-28 16:29:09 +02:00
Martin Marmsoler 48cce42cfe fix wrong position of segments when loading file. This was, because not the segment property is asked, but the parent and this will not work
additionally support legacy orientation
2020-09-28 15:42:57 +02:00
Martin Marmsoler 6080a7b9c9 WIP 2020-09-14 21:21:32 +02:00
Martin Marmsoler c5f1705745 go on with the work 2020-08-25 20:14:38 +02:00
Martin Marmsoler a10709157d update 2020-08-24 20:34:18 +02:00
Martin Marmsoler 385d0ffd69 initial work to move everything into the propertiesinterface which is related to it 2020-08-13 23:27:11 +02:00
153 changed files with 28230 additions and 32546 deletions
-67
View File
@@ -1,67 +0,0 @@
---
BasedOnStyle: LLVM
AlignAfterOpenBracket: AlwaysBreak
AlignConsecutiveMacros: 'true'
AlignConsecutiveAssignments: 'true'
AlignConsecutiveDeclarations: 'true'
AlignEscapedNewlines: Right
AlignOperands: 'true'
AlignTrailingComments: 'true'
AllowAllArgumentsOnNextLine: 'false'
AllowAllConstructorInitializersOnNextLine: 'true'
AllowAllParametersOfDeclarationOnNextLine: 'true'
AllowShortBlocksOnASingleLine: 'true'
AllowShortCaseLabelsOnASingleLine: 'true'
AllowShortFunctionsOnASingleLine: All
AllowShortIfStatementsOnASingleLine: Always
AllowShortLambdasOnASingleLine: All
AllowShortLoopsOnASingleLine: 'true'
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: 'true'
AlwaysBreakTemplateDeclarations: 'Yes'
BinPackArguments: 'false'
BinPackParameters: 'false'
BreakAfterJavaFieldAnnotations: 'true'
BreakBeforeBinaryOperators: NonAssignment
BreakBeforeBraces: Allman
BreakBeforeTernaryOperators: 'false'
BreakConstructorInitializers: AfterColon
BreakInheritanceList: AfterColon
BreakStringLiterals: 'true'
ColumnLimit: '80'
CompactNamespaces: 'false'
ConstructorInitializerAllOnOneLineOrOnePerLine: 'true'
Cpp11BracedListStyle: 'true'
FixNamespaceComments: 'true'
IncludeBlocks: Regroup
IndentCaseLabels: 'false'
IndentPPDirectives: AfterHash
IndentWidth: '4'
JavaScriptWrapImports: 'true'
Language: Cpp
MaxEmptyLinesToKeep: '1'
NamespaceIndentation: All
PointerAlignment: Left
ReflowComments: 'true'
SortIncludes: 'true'
SortUsingDeclarations: 'true'
SpaceAfterCStyleCast: 'true'
SpaceAfterLogicalNot: 'true'
SpaceAfterTemplateKeyword: 'true'
SpaceBeforeAssignmentOperators: 'true'
SpaceBeforeCpp11BracedList: 'true'
SpaceBeforeCtorInitializerColon: 'true'
SpaceBeforeInheritanceColon: 'true'
SpaceBeforeParens: ControlStatements
SpaceBeforeRangeBasedForLoopColon: 'true'
SpaceInEmptyParentheses: 'false'
SpacesInAngles: 'false'
SpacesInCStyleCastParentheses: 'false'
SpacesInContainerLiterals: 'false'
SpacesInParentheses: 'false'
SpacesInSquareBrackets: 'false'
Standard: Cpp11
TabWidth: '4'
UseTab: Always
...
@@ -1,43 +0,0 @@
<definition version="0.80" link_type="slave" hotspot_x="70" height="60" width="80" type="element" hotspot_y="29">
<uuid uuid="{9c311281-af7f-432e-9306-bbc95b1c6a69}"/>
<names>
<name lang="en">Contactor 1 changeover 3 poles</name>
<name lang="fr">Contacteur 1 inverseur 3 poles</name>
</names>
<kindInformations>
<kindInformation name="number" show="1">3</kindInformation>
<kindInformation name="state" show="1">NO</kindInformation>
<kindInformation name="type" show="1">power</kindInformation>
</kindInformations>
<informations>Author: The QElectroTech team
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<text rotation="0" color="#000000" text="3&#xa;L2" y="-20" x="-35" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="5&#xa;L3" y="-20" x="-15" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="4&#xa;T2" y="19" x="-36" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="2&#xa;T1" y="19" x="-56" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="6&#xa;T3" y="19" x="-16" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<polygon y1="-10" x3="-20" closed="false" antialias="true" y2="10" x1="-25" y3="20" x2="-20" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<polygon y1="-10" x3="-60" closed="false" antialias="true" y2="10" x1="-65" y3="20" x2="-60" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="0" length2="1.48" antialias="false" end1="none" y2="0" length1="1.5" end2="none" x1="-62" x2="-3" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<polygon y1="-10" x3="-40" closed="false" antialias="true" y2="10" x1="-45" y3="20" x2="-40" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="10" text_width="-1" y="-10" uuid="{cf89cd93-26be-471d-aaae-5af0536b9bb9}" Valignment="AlignTop" x="-84" text_from="ElementInfo" Halignment="AlignLeft" font="Sans Serif,9,-1,5,50,0,0,0,0,0">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="-60" x2="-60" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="-62.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="-40" x2="-40" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="-42.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="-20" x2="-20" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="-22.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="1&#xa;L1" y="-20" x="-56" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<polygon y1="-2" y4="-2" x3="0" antialias="false" x4="-4" y2="-2" x1="-4" y3="3" x2="4" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<terminal name="2" orientation="s" y="20" uuid="{a30378fb-df7f-41fc-9ebf-e6237d0a70e0}" x="-60"/>
<terminal name="4" orientation="s" y="20" uuid="{4392a21d-fad7-40af-8dd1-fbdda0e000c8}" x="-40"/>
<terminal name="5" orientation="n" y="-20" uuid="{b5400f6b-82b1-41b7-b3cd-fe403daec5fc}" x="-20"/>
<terminal name="3" orientation="n" y="-20" uuid="{0a462fcf-680f-43dc-a9f9-05b790362d13}" x="-40"/>
<terminal name="5" orientation="s" y="20" uuid="{c25f281a-3b5c-4323-a71c-79504dd62e4d}" x="-20"/>
<terminal name="1" orientation="n" y="-20" uuid="{611c6946-9a08-4c22-9704-f2cf240ff731}" x="-60"/>
</description>
</definition>
@@ -1,42 +0,0 @@
<definition version="0.80" link_type="slave" hotspot_x="33" height="60" width="80" type="element" hotspot_y="29">
<uuid uuid="{5d1646da-9823-448b-9e9f-e63e783ef11a}"/>
<names>
<name lang="en">Contactor 2 changeover 3 poles</name>
<name lang="fr">Contacteur 2 inverseur 3 poles </name>
</names>
<kindInformations>
<kindInformation name="number" show="1">3</kindInformation>
<kindInformation name="state" show="1">NO</kindInformation>
<kindInformation name="type" show="1">power</kindInformation>
</kindInformations>
<informations>Author: The QElectroTech team
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<line y1="0" length2="1.48" antialias="false" end1="none" y2="0" length1="1.5" end2="none" x1="-27" x2="27" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="3&#xa;L2" y="-20" x="15" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="5&#xa;L3" y="-20" x="35" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="4&#xa;T2" y="19" x="14" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="2&#xa;T1" y="19" x="-6" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="6&#xa;T3" y="19" x="34" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<polygon y1="-10" x3="30" closed="false" antialias="true" y2="10" x1="25" y3="20" x2="30" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<polygon y1="-10" x3="-10" closed="false" antialias="true" y2="10" x1="-15" y3="20" x2="-10" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="10" text_width="-1" y="-10" uuid="{cf89cd93-26be-471d-aaae-5af0536b9bb9}" Valignment="AlignTop" x="35" text_from="ElementInfo" Halignment="AlignLeft" font="Sans Serif,9,-1,5,50,0,0,0,0,0">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<polygon y1="-10" x3="10" closed="false" antialias="true" y2="10" x1="5" y3="20" x2="10" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="-10" x2="-10" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="-12.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="10" x2="10" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="7.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="30" x2="30" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="27.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="1&#xa;L1" y="-20" x="-6" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<terminal name="3" orientation="n" y="-20" uuid="{08bb8a28-2da4-4630-91f2-4eb87e5850e5}" x="10"/>
<terminal name="1" orientation="n" y="-20" uuid="{3b66052a-252f-49f1-bca6-5b735daf2a84}" x="-10"/>
<terminal name="4" orientation="s" y="20" uuid="{cc6d7085-3b57-460c-8c18-b97dfce67dc3}" x="10"/>
<terminal name="2" orientation="s" y="20" uuid="{7e0fa384-4a72-42de-8563-cb8feda81215}" x="-10"/>
<terminal name="5" orientation="n" y="-20" uuid="{3942e18d-c67f-4728-9272-e96e278d5693}" x="30"/>
<terminal name="6" orientation="s" y="20" uuid="{5eda0853-bd77-487b-8ec1-568e80d15c65}" x="30"/>
</description>
</definition>
@@ -1,50 +0,0 @@
<definition version="0.80" link_type="slave" hotspot_x="90" height="60" width="100" type="element" hotspot_y="29">
<uuid uuid="{baa1b63b-88e4-4d36-bf15-73a7b845b60b}"/>
<names>
<name lang="en">Contactor 1 changeover 4 poles</name>
<name lang="fr">Contacteur 1 inverseur 4 poles</name>
</names>
<kindInformations>
<kindInformation name="number" show="1">4</kindInformation>
<kindInformation name="state" show="1">NO</kindInformation>
<kindInformation name="type" show="1">power</kindInformation>
</kindInformations>
<informations>Author: The QElectroTech team
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<line y1="0" length2="1.48" antialias="false" end1="none" y2="0" length1="1.5" end2="none" x1="-83" x2="-3" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="6&#xa;T3" y="18" x="-36" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="4&#xa;T2" y="18" x="-56" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="8&#xa;T4" y="18" x="-16" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<polygon y1="-10" x3="-20" closed="false" antialias="true" y2="10" x1="-25" y3="20" x2="-20" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<polygon y1="-10" x3="-40" closed="false" antialias="true" y2="10" x1="-45" y3="20" x2="-40" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<polygon y1="-10" x3="-60" closed="false" antialias="true" y2="10" x1="-65" y3="20" x2="-60" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="-40" x2="-40" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="-60" x2="-60" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="10" text_width="-1" y="-10" uuid="{cf89cd93-26be-471d-aaae-5af0536b9bb9}" Valignment="AlignTop" x="-100" text_from="ElementInfo" Halignment="AlignLeft" font="Sans Serif,9,-1,5,50,0,0,0,0,0">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="-20" x2="-20" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="2&#xa;T1" y="18" x="-76" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="-42.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="-22.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="-62.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="3&#xa;L2" y="-20" x="-55" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="5&#xa;L3" y="-20" x="-36" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="7&#xa;L4" y="-20" x="-16" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<polygon y1="-10" x3="-80" closed="false" antialias="true" y2="10" x1="-85" y3="20" x2="-80" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="-80" x2="-80" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="-82.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="1&#xa;L1" y="-20" x="-76" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<polygon y1="-2" y4="-2" x3="0" antialias="false" x4="-4" y2="-2" x1="-4" y3="3" x2="4" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<terminal name="7" orientation="n" y="-20" uuid="{aef20556-47cf-474c-8766-ff7d847b000a}" x="-20"/>
<terminal name="3" orientation="n" y="-20" uuid="{4c167395-1a48-4105-bf26-a9498814a1f3}" x="-60"/>
<terminal name="6" orientation="s" y="20" uuid="{80aa01e9-8810-42e4-a39f-9f097cec5126}" x="-40"/>
<terminal name="1" orientation="n" y="-20" uuid="{611c6946-9a08-4c22-9704-f2cf240ff731}" x="-80"/>
<terminal name="4" orientation="s" y="20" uuid="{a82fb8b8-00ad-4fa9-bbe3-a7ef6527b523}" x="-60"/>
<terminal name="5" orientation="n" y="-20" uuid="{f4e10dc4-bf5f-41a7-8623-240a3d1ad917}" x="-40"/>
<terminal name="2" orientation="s" y="20" uuid="{a30378fb-df7f-41fc-9ebf-e6237d0a70e0}" x="-80"/>
<terminal name="8" orientation="s" y="20" uuid="{5277858a-4998-4df0-b3df-38835be0b1d0}" x="-20"/>
</description>
</definition>
@@ -1,49 +0,0 @@
<definition version="0.80" link_type="slave" hotspot_x="53" height="60" width="100" type="element" hotspot_y="29">
<uuid uuid="{ab335ee8-298b-48bb-82f8-e16a83f0d4cf}"/>
<names>
<name lang="en">Contactor 2 changeover 4 poles</name>
<name lang="fr">Contacteur 2 inverseur 4 poles</name>
</names>
<kindInformations>
<kindInformation name="number" show="1">4</kindInformation>
<kindInformation name="state" show="1">NO</kindInformation>
<kindInformation name="type" show="1">power</kindInformation>
</kindInformations>
<informations>Author: The QElectroTech team
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<text rotation="0" color="#000000" text="8&#xa;T4" y="18" x="34" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="6&#xa;T3" y="18" x="14" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="4&#xa;T2" y="18" x="-6" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="2&#xa;T1" y="18" x="-26" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<polygon y1="-10" x3="30" closed="false" antialias="true" y2="10" x1="25" y3="20" x2="30" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<polygon y1="-10" x3="10" closed="false" antialias="true" y2="10" x1="5" y3="20" x2="10" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<polygon y1="-10" x3="-10" closed="false" antialias="true" y2="10" x1="-15" y3="20" x2="-10" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<polygon y1="-10" x3="-30" closed="false" antialias="true" y2="10" x1="-35" y3="20" x2="-30" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="-30" x2="-30" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="10" text_width="-1" y="-10" uuid="{cf89cd93-26be-471d-aaae-5af0536b9bb9}" Valignment="AlignTop" x="35" text_from="ElementInfo" Halignment="AlignLeft" font="Sans Serif,9,-1,5,50,0,0,0,0,0">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="-10" x2="-10" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="10" x2="10" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-10" length1="1.5" end2="none" x1="30" x2="30" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="7.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="27.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="-12.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-14.5" height="5" width="5" x="-32.5" start="-90" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="1&#xa;L1" y="-20" x="-26" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="3&#xa;L2" y="-20" x="-5" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="5&#xa;L3" y="-20" x="14" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="7&#xa;L4" y="-20" x="34" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<line y1="0" length2="1.5" antialias="false" end1="none" y2="0" length1="1.5" end2="none" x1="27" x2="-47" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<terminal name="2" orientation="s" y="20" uuid="{e7e9a1aa-663a-436e-a0db-1ea39bd52dc3}" x="-30"/>
<terminal name="8" orientation="s" y="20" uuid="{7ef9a0ec-d821-4219-819d-55f81620a221}" x="30"/>
<terminal name="4" orientation="s" y="20" uuid="{35ddbfa0-4ebc-4950-b948-cf206179a7dc}" x="-10"/>
<terminal name="6" orientation="s" y="20" uuid="{dc7f94cf-2452-410e-885e-1e6b6d9af658}" x="10"/>
<terminal name="7" orientation="n" y="-20" uuid="{f1181042-eebf-437d-aa07-ad82c9c9ef25}" x="30"/>
<terminal name="5" orientation="n" y="-20" uuid="{0eca74f7-8a2c-4314-abbe-9aed863da29c}" x="10"/>
<terminal name="3" orientation="n" y="-20" uuid="{b82787b8-68cb-419e-b563-64999d49d051}" x="-10"/>
<terminal name="1" orientation="n" y="-20" uuid="{0e7d0032-21d0-4f98-9146-5719c760411f}" x="-30"/>
</description>
</definition>
@@ -1,25 +0,0 @@
<definition link_type="simple" type="element" version="0.80" width="50" hotspot_y="16" hotspot_x="24" height="30">
<uuid uuid="{3a401a8c-2087-4a75-b13b-ef6474f241c8}"/>
<names>
<name lang="fr">Transformateur</name>
<name lang="cs">Tlumivka s jádrem</name>
</names>
<elementInformations/>
<informations></informations>
<description>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-5" start="0" x="-20" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-5" start="0" x="-10" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-5" start="0" x="0" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-5" start="0" x="10" height="10" angle="180"/>
<line antialias="false" x1="-20" style="line-style:normal;line-weight:eleve;filling:none;color:black" length2="1.5" end1="none" y1="-10" end2="none" y2="-10" length1="1.5" x2="-4"/>
<line antialias="false" x1="4" style="line-style:normal;line-weight:eleve;filling:none;color:black" length2="1.5" end1="none" y1="-10" end2="none" y2="-10" length1="1.5" x2="20"/>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="ElementInfo" y="-20" rotation="0" x="-46" font="Sans Serif,9,-1,5,50,0,0,0,0,0" z="7" uuid="{5c02f2f0-17c0-4d09-8dca-24b1182962ad}" frame="false" Halignment="AlignLeft">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<line antialias="false" x1="-20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="0" end2="none" y2="5" length1="1.5" x2="-20"/>
<line antialias="false" x1="20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="0" end2="none" y2="5" length1="1.5" x2="20"/>
<terminal y="5" x="-20" uuid="{4be4ef83-90c0-42ea-bb99-46ec8279a815}" name="" orientation="s"/>
<terminal y="5" x="20" uuid="{93686765-ccb3-4dff-a58b-04814173e817}" name="" orientation="s"/>
</description>
</definition>
@@ -1,56 +0,0 @@
<definition link_type="simple" type="element" version="0.80" width="50" hotspot_y="19" hotspot_x="24" height="40">
<uuid uuid="{a86902d2-4aae-4be5-a22a-c099817573fc}"/>
<names>
<name lang="fr">
Transformateur à deux enroulements</name>
<name lang="cs">Trafo se dvěma vinutími</name>
</names>
<elementInformations/>
<informations></informations>
<description>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="-20" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="-20" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="-10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="-10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="0" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="0" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="90" x="-20" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="-20" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="90" x="-10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="-10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="90" x="0" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="0" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="90" x="10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="10" height="10" angle="90"/>
<line antialias="false" x1="-18" style="line-style:normal;line-weight:eleve;filling:none;color:black" length2="1.5" end1="none" y1="0" end2="none" y2="0" length1="1.5" x2="18"/>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="-22" rotation="0" x="-23" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="18" uuid="{cf8ce068-aa1f-48d3-b287-0e648121d35a}" frame="false" Halignment="AlignLeft">
<text>1</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="-22" rotation="0" x="17" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="19" uuid="{a89a3e01-8ea3-4c45-a954-f1f49b690cd0}" frame="false" Halignment="AlignLeft">
<text>2</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="5" rotation="0" x="-23" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="20" uuid="{2b0f9c48-cb72-494e-867c-1a200959d8d2}" frame="false" Halignment="AlignLeft">
<text>3</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="5" rotation="0" x="17" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="21" uuid="{e01ede6a-4b4c-42d4-8ecb-312650f07bc4}" frame="false" Halignment="AlignLeft">
<text>4</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="ElementInfo" y="-13" rotation="0" x="-46" font="Sans Serif,9,-1,5,50,0,0,0,0,0" z="22" uuid="{a4b3aa7f-d028-4f2d-84ec-23b276264e48}" frame="false" Halignment="AlignLeft">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="-7.5" rotation="0" x="22" font="Sans Serif,7,-1,5,50,0,0,0,0,0" z="23" uuid="{5d047a8d-0164-41d5-96ae-f4a53c0d6d35}" frame="false" Halignment="AlignLeft">
<text>_</text>
</dynamic_text>
<line antialias="false" x1="-20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="-15" end2="none" y2="-10" length1="1.5" x2="-20"/>
<line antialias="false" x1="20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="-15" end2="none" y2="-10" length1="1.5" x2="20"/>
<line antialias="false" x1="20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="10" end2="none" y2="15" length1="1.5" x2="20"/>
<line antialias="false" x1="-20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="10" end2="none" y2="15" length1="1.5" x2="-20"/>
<terminal y="15" x="20" uuid="{9cb09037-535c-4480-a4a7-db3f3bad1151}" name="4" orientation="s"/>
<terminal y="-15" x="-20" uuid="{bb3642bb-ebd5-4bc0-8235-966591fad320}" name="1" orientation="n"/>
<terminal y="-15" x="20" uuid="{d79d49ea-e09d-4686-a7d8-9a8bf99d521e}" name="2" orientation="n"/>
<terminal y="15" x="-20" uuid="{b83a2645-754a-4e05-987b-33180e32a364}" name="3" orientation="s"/>
</description>
</definition>
@@ -1,82 +0,0 @@
<definition link_type="simple" type="element" version="0.80" width="70" hotspot_y="19" hotspot_x="24" height="40">
<uuid uuid="{2f2b3de7-39a5-468c-9e85-62d1b1098cac}"/>
<names>
<name lang="fr">Transformateur à trois enroulements</name>
<name lang="cs">Trafo se třemi vinutími</name>
</names>
<elementInformations/>
<informations></informations>
<description>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="-21" rotation="0" x="37" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="1" uuid="{56935e11-5d97-48e4-ac04-fd8063083040}" frame="false" Halignment="AlignLeft">
<text>4</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="-21" rotation="0" x="27" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="2" uuid="{de73ca80-7ccf-43d2-be1f-d6bd09c71a80}" frame="false" Halignment="AlignLeft">
<text>3</text>
</dynamic_text>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="30" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="-20" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="-10" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="20" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="30" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="-20" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="-20" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="-10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="-10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="0" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="0" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="10" height="10" angle="90"/>
<line antialias="false" x1="-18" style="line-style:normal;line-weight:eleve;filling:none;color:black" length2="1.5" end1="none" y1="0" end2="none" y2="0" length1="1.5" x2="38"/>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="-21" rotation="0" x="-23" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="17" uuid="{c44877af-791e-4316-93cc-689e2b323dd0}" frame="false" Halignment="AlignLeft">
<text>1</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="-21" rotation="0" x="7" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="18" uuid="{8c370f9f-530a-453c-8f9f-be4ea5e2204f}" frame="false" Halignment="AlignLeft">
<text>2</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="5" rotation="0" x="-3" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="19" uuid="{f96dfefb-7921-4764-bc25-85b25e85a78c}" frame="false" Halignment="AlignLeft">
<text>6</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="ElementInfo" y="-13" rotation="0" x="-46" font="Sans Serif,9,-1,5,50,0,0,0,0,0" z="20" uuid="{c786a125-3f40-4953-af28-372282964128}" frame="false" Halignment="AlignLeft">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="10.5" rotation="0" x="-42" font="Sans Serif,7,-1,5,50,0,0,0,0,0" z="21" uuid="{2070a050-464b-40d5-ba88-7b98dc7dc15f}" frame="false" Halignment="AlignLeft">
<text>_</text>
</dynamic_text>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="20" height="10" angle="180"/>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="5" rotation="0" x="-23" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="23" uuid="{310aeac2-baf0-49a7-bec8-1f9d0a9f4431}" frame="false" Halignment="AlignLeft">
<text>5</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="5" rotation="0" x="17" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="24" uuid="{794abaee-627f-48be-be63-5d4617008888}" frame="false" Halignment="AlignLeft">
<text>7</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="5" rotation="0" x="37" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="25" uuid="{1c35324d-bcc4-4fa8-982e-3365ea054986}" frame="false" Halignment="AlignLeft">
<text>8</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="6" rotation="0" x="-18" font="Sans Serif,4,-1,5,25,0,0,0,0,0" z="26" uuid="{6eaa911a-6dc2-4851-a347-e1a35e77ec31}" frame="false" Halignment="AlignLeft">
<text>12V</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="6" rotation="0" x="23" font="Sans Serif,4,-1,5,25,0,0,0,0,0" z="27" uuid="{418e2800-549d-4af3-9720-7bff12dbe7fb}" frame="false" Halignment="AlignLeft">
<text>24V</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="-27" rotation="0" x="10" font="Sans Serif,4,-1,5,25,0,0,0,0,0" z="28" uuid="{b57864dc-0c10-406c-9df6-a421b99dfdd9}" frame="false" Halignment="AlignLeft">
<text>230V</text>
</dynamic_text>
<line antialias="false" x1="-20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="-10" end2="none" y2="-15" length1="1.5" x2="-20"/>
<line antialias="false" x1="10" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="-10" end2="none" y2="-15" length1="1.5" x2="10"/>
<line antialias="false" x1="30" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="-10" end2="none" y2="-15" length1="1.5" x2="30"/>
<line antialias="false" x1="40" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="-10" end2="none" y2="-15" length1="1.5" x2="40"/>
<line antialias="false" x1="40" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="10" end2="none" y2="15" length1="1.5" x2="40"/>
<line antialias="false" x1="20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="10" end2="none" y2="15" length1="1.5" x2="20"/>
<line antialias="false" x1="0" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="10" end2="none" y2="15" length1="1.5" x2="0"/>
<line antialias="false" x1="-20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="10" end2="none" y2="15" length1="1.5" x2="-20"/>
<terminal y="-15" x="40" uuid="{dcfd8182-81f7-4a66-bd64-e28522197d2d}" name="4" orientation="n"/>
<terminal y="15" x="-20" uuid="{16a0d955-d63b-4478-a214-f841f9fc1a73}" name="5" orientation="s"/>
<terminal y="15" x="0" uuid="{8b1e81f3-f187-47a3-8971-fcbe7d30baa5}" name="6" orientation="s"/>
<terminal y="-15" x="10" uuid="{d6826dd2-61eb-4dc0-9e4a-b6e5078e4e9b}" name="2" orientation="n"/>
<terminal y="-15" x="-20" uuid="{1d6d33ac-d71c-4307-82f5-8f74aec0b049}" name="1" orientation="n"/>
<terminal y="15" x="40" uuid="{df979790-07e1-4299-9596-6e102cb76d58}" name="8" orientation="s"/>
<terminal y="-15" x="30" uuid="{cea66c19-9140-4df0-8b3f-6827050dd23b}" name="3" orientation="n"/>
<terminal y="15" x="20" uuid="{bcac8f72-35c2-4df2-8a80-22e376f5636b}" name="7" orientation="s"/>
</description>
</definition>
@@ -1,72 +0,0 @@
<definition link_type="simple" type="element" version="0.80" width="70" hotspot_y="19" hotspot_x="24" height="40">
<uuid uuid="{2ae3c800-50c5-4303-8979-2456b356b147}"/>
<names>
<name lang="fr">Transformateur à trois enroulements sans prises</name>
<name lang="cs">Trafo se třemi vinutími bez odboček</name>
</names>
<elementInformations/>
<informations></informations>
<description>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="-21" rotation="0" x="37" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="1" uuid="{951664ed-0649-4c2c-be03-701e01896985}" frame="false" Halignment="AlignLeft">
<text>2</text>
</dynamic_text>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="30" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="-20" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="-10" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="5" start="0" x="20" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="30" height="10" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="-20" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="-20" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="-10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="-10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="0" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="0" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="270" x="10" height="10" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="10" height="10" angle="90"/>
<line antialias="false" x1="-18" style="line-style:normal;line-weight:eleve;filling:none;color:black" length2="1.5" end1="none" y1="0" end2="none" y2="0" length1="1.5" x2="38"/>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="-21" rotation="0" x="-23" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="16" uuid="{b8794432-4dc6-4984-87e2-eb09a7baf2a1}" frame="false" Halignment="AlignLeft">
<text>1</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="5" rotation="0" x="-3" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="17" uuid="{a20eca6e-78a0-4ed8-b0ad-ca07203ee3ae}" frame="false" Halignment="AlignLeft">
<text>4</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="ElementInfo" y="-13" rotation="0" x="-46" font="Sans Serif,9,-1,5,50,0,0,0,0,0" z="18" uuid="{76e3b5f2-bca2-4f03-a65d-41ea3b3e6313}" frame="false" Halignment="AlignLeft">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="10.5" rotation="0" x="-42" font="Sans Serif,7,-1,5,50,0,0,0,0,0" z="19" uuid="{370f084a-20f3-472f-aab4-5c057bc63906}" frame="false" Halignment="AlignLeft">
<text>_</text>
</dynamic_text>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="-15" start="180" x="20" height="10" angle="180"/>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="5" rotation="0" x="-23" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="21" uuid="{0ebacc11-8225-4f76-ab04-ae4c47e0c0cb}" frame="false" Halignment="AlignLeft">
<text>3</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="5" rotation="0" x="17" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="22" uuid="{2a177faf-bfae-452d-9f0e-0e5c895569f3}" frame="false" Halignment="AlignLeft">
<text>5</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="5" rotation="0" x="37" font="Sans Serif,5,-1,5,25,0,0,0,0,0" z="23" uuid="{b388f1b5-e993-4008-8a94-80ad3ab7ef6c}" frame="false" Halignment="AlignLeft">
<text>6</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="6" rotation="0" x="-18" font="Sans Serif,4,-1,5,25,0,0,0,0,0" z="24" uuid="{6f93a423-4b65-4765-9516-d10c27938696}" frame="false" Halignment="AlignLeft">
<text>12V</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="6" rotation="0" x="22" font="Sans Serif,4,-1,5,25,0,0,0,0,0" z="25" uuid="{7aef2072-7376-4943-a7b6-cf0281f59040}" frame="false" Halignment="AlignLeft">
<text>30V</text>
</dynamic_text>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="UserText" y="-27" rotation="0" x="0" font="Sans Serif,4,-1,5,25,0,0,0,0,0" z="26" uuid="{6a05ec77-a746-4a32-abd6-17a7014de9c9}" frame="false" Halignment="AlignLeft">
<text>230V</text>
</dynamic_text>
<line antialias="false" x1="-20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="-10" end2="none" y2="-15" length1="1.5" x2="-20"/>
<line antialias="false" x1="40" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="-10" end2="none" y2="-15" length1="1.5" x2="40"/>
<line antialias="false" x1="40" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="10" end2="none" y2="15" length1="1.5" x2="40"/>
<line antialias="false" x1="20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="10" end2="none" y2="15" length1="1.5" x2="20"/>
<line antialias="false" x1="0" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="10" end2="none" y2="15" length1="1.5" x2="0"/>
<line antialias="false" x1="-20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="10" end2="none" y2="15" length1="1.5" x2="-20"/>
<terminal y="-15" x="-20" uuid="{c73e0147-e2ce-4cea-b765-b86575e14a72}" name="1" orientation="n"/>
<terminal y="15" x="20" uuid="{ba5f46a2-933b-4dc7-8020-9d4d54f2b453}" name="5" orientation="s"/>
<terminal y="15" x="40" uuid="{39d9179f-ff80-494c-a266-1fb1aab768c2}" name="6" orientation="s"/>
<terminal y="15" x="0" uuid="{a9c1575b-a75a-4d87-9fa6-a41d1afea141}" name="4" orientation="s"/>
<terminal y="-15" x="40" uuid="{c9f77521-a3e6-46b4-ba26-31b91685453a}" name="2" orientation="n"/>
<terminal y="15" x="-20" uuid="{36a6036f-5cde-4f6b-9ddb-d26330350fbc}" name="3" orientation="s"/>
</description>
</definition>
@@ -0,0 +1,66 @@
<definition version="0.70" height="80" hotspot_x="50" link_type="simple" hotspot_y="39" width="100" type="element">
<uuid uuid="{c4ecef4b-8696-443d-9548-83590289d1f6}"/>
<names>
<name lang="es">Fuente de poder AC/DC 3 polos</name>
<name lang="de">Netzteil AC/DC 3-polig</name>
<name lang="pl">Zasilacz trójfazowy</name>
<name lang="fr">ABL8RPS24050</name>
<name lang="en">Power supply AC/DC 3 poles</name>
</names>
<elementInformations>
<elementInformation name="unity" show="1"></elementInformation>
<elementInformation name="supplier" show="1"></elementInformation>
<elementInformation name="manufacturer_reference" show="1"></elementInformation>
<elementInformation name="label" show="1"></elementInformation>
<elementInformation name="designation" show="1">ABL8RPS24050</elementInformation>
<elementInformation name="machine_manufacturer_reference" show="1"></elementInformation>
<elementInformation name="comment" show="1"></elementInformation>
<elementInformation name="plant" show="1"></elementInformation>
<elementInformation name="manufacturer" show="1">schneider</elementInformation>
<elementInformation name="quantity" show="1"></elementInformation>
<elementInformation name="description" show="1"></elementInformation>
</elementInformations>
<informations>EN 60617: 06-14-03</informations>
<description>
<text text="AC 3~" y="-7" font="Sans Serif,5,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" x="-28"/>
<circle diameter="5" y="-32.5" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" x="27.5"/>
<text text="-" y="24" font="Sans Serif,6,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" x="9"/>
<text text="-" y="24" font="Sans Serif,6,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" x="29"/>
<text text="LV" y="-20" font="Sans Serif,6,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" x="-14"/>
<line length1="1.5" y2="30" length2="1.5" end1="none" antialias="false" x1="13" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="30" x2="27" end2="none"/>
<text text="DC" y="12" font="Sans Serif,5,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" x="18"/>
<line length1="1.5" y2="30" length2="1.5" end1="none" antialias="false" x1="-7" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="30" x2="7" end2="none"/>
<line length1="1.5" y2="30" length2="1.5" end1="none" antialias="false" x1="-27" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="30" x2="-13" end2="none"/>
<text text="+" y="24" font="Sans Serif,6,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" x="-12"/>
<text text="C" y="-20" font="Sans Serif,6,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" x="6"/>
<circle diameter="5" y="-32.5" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" x="-12.5"/>
<text text="PE" y="-20" font="Sans Serif,6,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" x="-34"/>
<text text="HV" y="-20" font="Sans Serif,6,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" x="28"/>
<circle diameter="5" y="-32.5" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" x="7.5"/>
<circle diameter="5" y="27.5" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" x="-32.5"/>
<circle diameter="5" y="27.5" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" x="27.5"/>
<circle diameter="5" y="27.5" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" x="-12.5"/>
<circle diameter="5" y="27.5" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" x="7.5"/>
<dynamic_text Valignment="AlignTop" Halignment="AlignLeft" text_width="-1" y="-30" uuid="{85ca85a9-4d65-41f0-bf73-bacf801bfd0e}" text_from="ElementInfo" frame="false" z="20" rotation="0" font="Sans Serif,9,-1,5,50,0,0,0,0,0" x="-80">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<text text="+" y="24" font="Sans Serif,6,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" x="-32"/>
<polygon x3="-45" y2="30" y4="-29.8785" y5="-29.8785" closed="false" x4="-33" y6="-29.8785" x5="-33" x6="-33" antialias="false" x1="-33" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="30" x2="-45" y3="-29.8785"/>
<polygon x3="45" y2="-30.1383" y4="30" y5="30" closed="false" x4="33" y6="30" x5="33" x6="33" antialias="false" x1="33" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="-30.1383" x2="45" y3="30"/>
<line length1="1.5" y2="-30" length2="1.5" end1="none" antialias="false" x1="-27" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="-30" x2="-13" end2="none"/>
<line length1="1.5" y2="-30" length2="1.5" end1="none" antialias="false" x1="-7" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="-30" x2="7" end2="none"/>
<line length1="1.5" y2="-30" length2="1.5" end1="none" antialias="false" x1="13" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="-30" x2="27" end2="none"/>
<rect height="30" rx="0" y="-15" width="60" antialias="false" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" x="-30"/>
<line length1="1.5" y2="15" length2="1.5" end1="none" antialias="false" x1="30" style="line-style:normal;line-weight:thin;filling:none;color:black" y1="-15" x2="-30" end2="none"/>
<circle diameter="5" y="-32.5" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" x="-32.5"/>
<terminal orientation="n" y="-33" x="-10"/>
<terminal orientation="n" y="-33" x="-30"/>
<terminal orientation="s" y="33" x="-30"/>
<terminal orientation="s" y="33" x="-10"/>
<terminal orientation="n" y="-33" x="10"/>
<terminal orientation="s" y="33" x="10"/>
<terminal orientation="s" y="33" x="30"/>
<terminal orientation="n" y="-33" x="30"/>
</description>
</definition>
@@ -1,38 +0,0 @@
<definition version="0.80" link_type="simple" hotspot_x="19" height="50" width="30" type="element" hotspot_y="24">
<uuid uuid="{751b403e-f048-44ed-ac01-210d4e00bacc}"/>
<names>
<name lang="es">Paro de emergencia con pedal (NC)</name>
<name lang="nl">Voetschakelaar (NC)</name>
<name lang="el">Ποδοδιακόπτης, κλειστή επαφή</name>
<name lang="en">Foot Switch (NC)</name>
<name lang="ar">مفتاح بدوّاسة (NC)</name>
<name lang="it">Comando a pedale (NC)</name>
<name lang="cs">Pedálový spínač (NC)</name>
<name lang="fr">Interrupteur à pedale (NC)</name>
<name lang="pl">Łącznik wielozestykowy napędzany nogą NC</name>
<name lang="de">Fußschalter 2-polig Öffner</name>
</names>
<elementInformations/>
<informations>Author: The QElectroTech team
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<line y1="0" length2="1.5" antialias="false" end1="none" y2="0" length1="1.5" end2="none" x1="-12" x2="3" style="line-style:dashed;line-weight:thin;filling:none;color:black"/>
<line y1="-9" length2="1.5" antialias="false" end1="none" y2="-9" length1="1.5" end2="none" x1="0" x2="7" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-5" length2="1.5" antialias="false" end1="none" y2="5" length1="1.5" end2="none" x1="-9.7256" x2="-13.9133" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="4" text_width="-1" y="-24" uuid="{50d62516-a25d-4431-b4bb-ee70971dad6f}" Valignment="AlignTop" x="-3" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,3,-1,5,50,0,0,0,0,0">
<text>21</text>
</dynamic_text>
<dynamic_text frame="false" rotation="0" z="5" text_width="-1" y="10" uuid="{d91a2d31-da0e-47e2-8236-82b8c18f7c08}" Valignment="AlignTop" x="-3" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,3,-1,5,50,0,0,0,0,0">
<text>22</text>
</dynamic_text>
<line y1="5" length2="1.5" antialias="false" end1="none" y2="3" length1="1.5" end2="none" x1="-13.9059" x2="-16.4185" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<polygon y1="20" x3="6" closed="false" antialias="true" y2="10" x1="0" y3="-10" x2="0" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-9" length1="1.5" end2="none" x1="0" x2="0" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="12" text_width="-1" y="5" uuid="{7cef0658-2571-4a65-b7e6-c14252e4b178}" Valignment="AlignTop" x="-10" text_from="ElementInfo" Halignment="AlignLeft" font="Sans Serif,9,-1,5,50,0,0,0,0,0">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<terminal name="21" orientation="n" y="-20" uuid="{faae3ab0-3906-402d-8782-ef9d0ac0413b}" x="0"/>
<terminal name="22" orientation="s" y="20" uuid="{3f32169a-026a-43e8-af61-efa7268f5512}" x="0"/>
</description>
</definition>
@@ -1,37 +0,0 @@
<definition version="0.80" link_type="simple" hotspot_x="21" height="50" width="30" type="element" hotspot_y="24">
<uuid uuid="{4cae0bd5-396b-4dc4-9f73-f4d86cfcdc5c}"/>
<names>
<name lang="es">Paro de emergencia con pedal (NA)</name>
<name lang="nl">Voetschakelaar (NO)</name>
<name lang="el">Ποδοδιακόπτης, ανοιχτή</name>
<name lang="en">Foot Switch (NO)</name>
<name lang="ar">مفتاح بدوّاسة (NO)</name>
<name lang="it">Comando a pedale (NO)</name>
<name lang="cs">Pedálový spínač (NO)</name>
<name lang="fr">Interrupteur à pedale (NO)</name>
<name lang="pl">Łącznik wielozestykowy napędzany nogą NO</name>
<name lang="de">Fußschalter 2-polig NO</name>
</names>
<elementInformations/>
<informations>Author: The QElectroTech team
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<line y1="0" length2="1.5" antialias="false" end1="none" y2="0" length1="1.5" end2="none" x1="-12" x2="-3" style="line-style:dashed;line-weight:thin;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="2" text_width="-1" y="-23" uuid="{103311ab-7139-4ca2-a914-9e89bc4ec8a7}" Valignment="AlignTop" x="-3" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,3,-1,5,50,0,0,0,0,0">
<text>13</text>
</dynamic_text>
<line y1="-5" length2="1.5" antialias="false" end1="none" y2="5" length1="1.5" end2="none" x1="-9.7256" x2="-13.9133" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<line y1="5" length2="1.5" antialias="false" end1="none" y2="3" length1="1.5" end2="none" x1="-13.9059" x2="-16.4185" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="6" text_width="-1" y="9" uuid="{f625d933-1de1-4066-bad0-ac16003441e6}" Valignment="AlignTop" x="-3" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,3,-1,5,50,0,0,0,0,0">
<text>14</text>
</dynamic_text>
<polygon y1="20" x3="-6" closed="false" antialias="true" y2="10" x1="0" y3="-10" x2="0" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-9" length1="1.5" end2="none" x1="0" x2="0" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="12" text_width="-1" y="5" uuid="{7cef0658-2571-4a65-b7e6-c14252e4b178}" Valignment="AlignTop" x="-10" text_from="ElementInfo" Halignment="AlignLeft" font="Sans Serif,9,-1,5,50,0,0,0,0,0">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<terminal name="13" orientation="n" y="-20" uuid="{209816c7-3f76-4f05-84d1-722f15518734}" x="0"/>
<terminal name="14" orientation="s" y="20" uuid="{f8e508cc-0ac1-420b-9b64-b9f012fbd7de}" x="0"/>
</description>
</definition>
@@ -1,48 +1,37 @@
<definition version="0.80" link_type="simple" hotspot_x="19" height="50" width="50" type="element" hotspot_y="24">
<uuid uuid="{990f5268-dfca-4943-b1d9-e82c0d4ae841}"/>
<names>
<name lang="es">Paro de emergencia con pedal (NA/NC)</name>
<name lang="nl">Voetschakelaar (NO/NC)</name>
<definition width="70" version="0.3" hotspot_x="25" hotspot_y="30" height="60" type="element" orientation="dnny">
<uuid uuid="{F412BF99-0EAC-4BD7-B0D8-3C38D1BA4B6D}"/><names>
<name lang="ar">مفتاح بدوّاسة (NO/NC)</name>
<name lang="el">Ποδοδιακόπτης, ανοικτή και κλειστή επαφή</name>
<name lang="en">Foot Switch (NO/NC)</name>
<name lang="ar">مفتاح بدوّاسة (NO/NC)</name>
<name lang="es">Paro de emergencia con pedal (NA/NC)</name>
<name lang="de">Fußschalter 2-polig Schliesser/Öffner</name>
<name lang="it">Comando a pedale (NO/NC)</name>
<name lang="cs">Pedálový spínač (NO/NC)</name>
<name lang="fr">Interrupteur à pedale (NO/NC)</name>
<name lang="pl">Łącznik wielozestykowy napędzany nogą</name>
<name lang="de">Fußschalter 2-polig Schliesser/Öffner</name>
<name lang="cs">Pedálový spínač (NO/NC)</name>
<name lang="nl">Voetschakelaar (NO/NC)</name>
</names>
<elementInformations/>
<kindInformations>
<kindInformation show="1" name="type">commutator</kindInformation>
</kindInformations>
<informations>Author: The QElectroTech team
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<line y1="0" length2="1.5" antialias="false" end1="none" y2="0" length1="1.5" end2="none" x1="-12" x2="23" style="line-style:dashed;line-weight:thin;filling:none;color:black"/>
<line y1="-9" length2="1.5" antialias="false" end1="none" y2="-9" length1="1.5" end2="none" x1="20" x2="27" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="2" text_width="-1" y="-23" uuid="{103311ab-7139-4ca2-a914-9e89bc4ec8a7}" Valignment="AlignTop" x="-3" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,3,-1,5,50,0,0,0,0,0">
<text>13</text>
</dynamic_text>
<line y1="-5" length2="1.5" antialias="false" end1="none" y2="5" length1="1.5" end2="none" x1="-9.7256" x2="-13.9133" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="4" text_width="-1" y="-23" uuid="{50d62516-a25d-4431-b4bb-ee70971dad6f}" Valignment="AlignTop" x="17" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,3,-1,5,50,0,0,0,0,0">
<text>21</text>
</dynamic_text>
<dynamic_text frame="false" rotation="0" z="5" text_width="-1" y="9" uuid="{d91a2d31-da0e-47e2-8236-82b8c18f7c08}" Valignment="AlignTop" x="17" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,3,-1,5,50,0,0,0,0,0">
<text>22</text>
</dynamic_text>
<dynamic_text frame="false" rotation="0" z="6" text_width="-1" y="9" uuid="{f625d933-1de1-4066-bad0-ac16003441e6}" Valignment="AlignTop" x="-3" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,3,-1,5,50,0,0,0,0,0">
<text>14</text>
</dynamic_text>
<line y1="5" length2="1.5" antialias="false" end1="none" y2="3" length1="1.5" end2="none" x1="-13.9059" x2="-16.4185" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<polygon y1="20" x3="26" closed="false" antialias="true" y2="10" x1="20" y3="-10" x2="20" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-9" length1="1.5" end2="none" x1="20" x2="20" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<polygon y1="20" x3="-6" closed="false" antialias="true" y2="10" x1="0" y3="-10" x2="0" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-20" length2="1.5" antialias="false" end1="none" y2="-9" length1="1.5" end2="none" x1="0" x2="0" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="12" text_width="-1" y="-8" uuid="{7cef0658-2571-4a65-b7e6-c14252e4b178}" Valignment="AlignTop" x="26" text_from="ElementInfo" Halignment="AlignLeft" font="Sans Serif,9,-1,5,50,0,0,0,0,0">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<terminal name="21" orientation="n" y="-20" uuid="{faae3ab0-3906-402d-8782-ef9d0ac0413b}" x="20"/>
<terminal name="13" orientation="n" y="-20" uuid="{209816c7-3f76-4f05-84d1-722f15518734}" x="0"/>
<terminal name="22" orientation="s" y="20" uuid="{3f32169a-026a-43e8-af61-efa7268f5512}" x="20"/>
<terminal name="14" orientation="s" y="20" uuid="{f8e508cc-0ac1-420b-9b64-b9f012fbd7de}" x="0"/>
<line length1="1.5" length2="1.5" antialias="false" end1="none" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="-9" x1="20" y2="-9" x2="27"/>
<input x="-2" y="-14.5" size="5" rotate="true" text="13"/>
<polygon antialias="true" style="line-style:normal;line-weight:thin;filling:none;color:black" closed="false" y1="2" x1="-19" y2="-4" x2="-13" y3="4" x3="-13"/>
<input x="17" y="-14.5" size="5" rotate="true" text="21"/>
<input x="18" y="17.5" size="5" rotate="true" text="22"/>
<input x="-2" y="17.5" size="5" rotate="true" text="14"/>
<polygon antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" closed="false" y1="20" x1="20" y2="10" x2="20" y3="-10" x3="26"/>
<line length1="1.5" length2="1.5" antialias="false" end1="none" end2="none" style="line-style:dashed;line-weight:thin;filling:none;color:black" y1="0" x1="-13" y2="0" x2="23"/>
<line length1="1.5" length2="1.5" antialias="false" end1="none" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="-20" x1="20" y2="-9" x2="20"/>
<polygon antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" closed="false" y1="20" x1="0" y2="10" x2="0" y3="-10" x3="-6"/>
<line length1="1.5" length2="1.5" antialias="false" end1="none" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="-20" x1="0" y2="-9" x2="0"/>
<input x="26" y="3.6666" size="9" text="_" tagg="label"/>
<terminal x="0" y="-20" orientation="n"/>
<terminal x="0" y="20" orientation="s"/>
<terminal x="20" y="-20" orientation="n"/>
<terminal x="20" y="20" orientation="s"/>
</description>
</definition>
@@ -1,39 +0,0 @@
<definition type="element" link_type="simple" height="70" width="50" hotspot_y="34" version="0.80" hotspot_x="28">
<uuid uuid="{ff3971b1-115b-4ccc-bcd6-8a6c51a2760b}"/>
<names>
<name lang="it">Eccitazione separata del motore CC</name>
<name lang="pt">Excitação separada do motor DC</name>
<name lang="ru">Раздельное возбуждение двигателя постоянного тока</name>
<name lang="de">Gleichstrommotor Fremderregt</name>
<name lang="en">Separate excitation DC motor</name>
<name lang="es">Excitación separada del motor DC</name>
<name lang="fr">Moteur DC excitation séparée</name>
</names>
<elementInformations/>
<informations>Author: The QElectroTech team
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<rect x="-3" height="2" antialias="false" width="6" rx="0" style="line-style:normal;line-weight:normal;filling:none;color:black" y="-17" ry="0"/>
<text x="-6" text="M" rotation="0" y="5" font="Sans Serif,11,-1,5,50,0,0,0,0,0" color="#000000"/>
<text x="-18" text="K" rotation="0" y="26" font="Sans Serif,4,-1,5,50,0,0,0,0,0" color="#000000"/>
<arc x="-23.5" angle="-180" height="5" antialias="true" width="7" start="-90" style="line-style:normal;line-weight:normal;filling:none;color:black" y="8"/>
<circle x="-15" diameter="30" antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="-15"/>
<text x="2" text="A2" rotation="0" y="26" font="Sans Serif,4,-1,5,50,0,0,0,0,0" color="#000000"/>
<text x="-18" text="I" rotation="0" y="-22" font="Sans Serif,4,-1,5,50,0,0,0,0,0" color="#000000"/>
<text x="2" text="A1" rotation="0" y="-22" font="Sans Serif,4,-1,5,50,0,0,0,0,0" color="#000000"/>
<arc x="-23.5" angle="-180" height="5" antialias="true" width="7" start="-90" style="line-style:normal;line-weight:normal;filling:none;color:black" y="-12"/>
<line x1="0" end1="none" y2="30" antialias="false" y1="17" length1="1.5" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" x2="0"/>
<arc x="-23.5" angle="-180" height="5" antialias="true" width="7" start="-90" style="line-style:normal;line-weight:normal;filling:none;color:black" y="-2"/>
<arc x="-23.5" angle="-180" height="5" antialias="true" width="7" start="-90" style="line-style:normal;line-weight:normal;filling:none;color:black" y="3"/>
<arc x="-23.5" angle="-180" height="5" antialias="true" width="7" start="-90" style="line-style:normal;line-weight:normal;filling:none;color:black" y="-7"/>
<line x1="0" end1="none" y2="-17" antialias="false" y1="-30" length1="1.5" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" x2="0"/>
<line x1="-20" end1="none" y2="-12" antialias="false" y1="-30" length1="1.5" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" x2="-20"/>
<line x1="-20" end1="none" y2="13" antialias="false" y1="30" length1="1.5" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" x2="-20"/>
<line x1="-6" end1="none" y2="8" antialias="false" y1="8" length1="1.5" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" x2="6"/>
<rect x="-3" height="2" antialias="false" width="6" rx="0" style="line-style:normal;line-weight:normal;filling:none;color:black" y="15" ry="0"/>
<terminal x="0" orientation="n" uuid="{ebcfbf4f-3065-4c64-901a-4f6c8f69a6e9}" name="A1" y="-30"/>
<terminal x="-20" orientation="n" uuid="{a5e81d4a-16bc-4a34-8b34-dc0fd7b44196}" name="I" y="-30"/>
<terminal x="-20" orientation="s" uuid="{739f6f62-22e8-43bc-aecf-b454a2c2b90e}" name="K" y="30"/>
<terminal x="0" orientation="s" uuid="{8152411b-db39-4479-abd1-02ca189b041f}" name="A2" y="30"/>
</description>
</definition>
@@ -1,45 +1,40 @@
<definition version="0.80" width="60" height="60" hotspot_y="37" type="element" hotspot_x="26" link_type="simple">
<uuid uuid="{c7ea8bc8-4b15-4956-8680-e289d805ba44}"/>
<names>
<name lang="pt">Motor trifásico</name>
<name lang="pl">Silnik trójfazowy</name>
<name lang="en">Three-phase engine</name>
<name lang="fr">Moteur triphasé</name>
<name lang="cs">Trojfázový motor</name>
<name lang="ru">Трёхфазный эл. мотор</name>
<name lang="it">Motore trifase</name>
<definition width="60" version="0.4" hotspot_x="24" hotspot_y="28" height="60" link_type="simple" type="element" ic="true">
<uuid uuid="{275C2EA0-C854-407D-967D-EDAD6D31E049}"/><names>
<name lang="ar">محرّك ثلاثي الأوجه</name>
<name lang="es">Motor trifásico</name>
<name lang="de">Drehstrom Motor</name>
<name lang="ru">Трёхфазный эл. мотор</name>
<name lang="pt">Motor trifásico</name>
<name lang="en">Three-phase engine</name>
<name lang="es">Motor trifásico</name>
<name lang="it">Motore trifase</name>
<name lang="fr">Moteur triphasé</name>
<name lang="pl">Silnik trójfazowy</name>
<name lang="nl">Draaistroommotor</name>
<name lang="cs">Trojfázový motor</name>
</names>
<elementInformations/>
<informations>Author: The QElectroTech team&#xd;
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<circle antialias="true" x="-15" diameter="30" style="line-style:normal;line-weight:normal;filling:none;color:black" y="-15"/>
<arc width="32" antialias="true" x="-14.5" height="32" angle="-80" style="line-style:normal;line-weight:normal;filling:none;color:black" y="-15.5" start="20"/>
<text x="21" y="-24" font="Sans Serif,4,-1,5,50,0,0,0,0,0" text="W1" rotation="0" color="#000000"/>
<text x="2" y="-24" font="Sans Serif,4,-1,5,50,0,0,0,0,0" text="V1" rotation="0" color="#000000"/>
<text x="-6" y="0" font="Sans Serif,11,-1,5,50,0,0,0,0,0" text="M" rotation="0" color="#000000"/>
<dynamic_text Halignment="AlignLeft" x="21" text_from="ElementInfo" frame="false" z="6" uuid="{1df13766-b38e-4417-9aac-1b5844595696}" y="-12" font="Sans Serif,9,-1,5,50,0,0,0,0,0" Valignment="AlignTop" rotation="0" text_width="-1">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<line end1="none" y2="-15" antialias="false" x1="0" x2="0" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="-30" end2="none" length2="1.5" length1="1.5"/>
<polygon y2="-20" antialias="false" y3="-11" x1="-20" x2="-20" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="-30" closed="false" x3="-11"/>
<polygon y2="-20" antialias="false" y3="-11" x1="20" x2="20" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="-30" closed="false" x3="11"/>
<text x="-19" y="-24" font="Sans Serif,4,-1,5,50,0,0,0,0,0" text="U1" rotation="0" color="#000000"/>
<line end1="none" y2="13" antialias="false" x1="17" x2="25" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="13" end2="none" length2="1.5" length1="1.5"/>
<line end1="none" y2="15" antialias="false" x1="18" x2="24" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="15" end2="none" length2="1.5" length1="1.5"/>
<line end1="none" y2="17" antialias="false" x1="19.6115" x2="22.4209" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="17" end2="none" length2="1.5" length1="1.5"/>
<polygon y2="6" antialias="false" y3="13" x1="18" x2="21" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="4" closed="false" x3="21"/>
<text x="-8" y="10" font="Sans Serif,9,-1,5,50,0,0,0,0,0" text="3" rotation="0" color="#000000"/>
<arc width="4" antialias="true" x="0" height="5" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black" y="3.5" start="0"/>
<arc width="4" antialias="true" x="4" height="5" angle="-180" style="line-style:normal;line-weight:normal;filling:none;color:black" y="3.5" start="-180"/>
<terminal name="" x="20" uuid="{1f50d3c6-4d98-41f8-b0d7-f30322bc7d01}" orientation="n" y="-30"/>
<terminal name="" x="-20" uuid="{fa49658e-170d-415d-8556-43ee3ef5a156}" orientation="n" y="-30"/>
<terminal name="" x="21" uuid="{14bcbcca-193a-4564-a5b2-07b4fda7e862}" orientation="n" y="7"/>
<terminal name="" x="0" uuid="{25b65584-e2f6-4c45-9a60-8b5287289312}" orientation="n" y="-30"/>
<circle x="-15" y="-7" antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" diameter="30"/>
<arc width="32" x="-14.5" y="-7.5" antialias="true" height="32" style="line-style:normal;line-weight:normal;filling:none;color:black" start="20" angle="-80"/>
<text x="24" y="-15" size="4" text="W1"/>
<text x="4" y="-16" size="4" text="V1"/>
<text x="-6" y="8" size="11" text="M"/>
<input x="40" y="10.5" size="9" text="M_" tagg="label"/>
<line length1="1.5" length2="1.5" antialias="false" end1="none" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="-22" x1="0" y2="-7" x2="0"/>
<polygon antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" closed="false" y1="-22" x1="-20" y2="-12" x2="-20" y3="-3" x3="-11"/>
<polygon antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" closed="false" y1="-22" x1="20" y2="-12" x2="20" y3="-3" x3="11"/>
<text x="-16" y="-15" size="4" text="U1"/>
<line length1="1.5" length2="1.5" antialias="false" end1="none" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="25" x1="16" y2="25" x2="24"/>
<line length1="1.5" length2="1.5" antialias="false" end1="none" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="27" x1="17" y2="27" x2="23"/>
<line length1="1.5" length2="1.5" antialias="false" end1="none" end2="none" style="line-style:normal;line-weight:normal;filling:none;color:black" y1="29" x1="18.6115" y2="29" x2="21.4209"/>
<polygon antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" closed="false" y1="16" x1="16" y2="20" x2="20" y3="25" x3="20"/>
<text x="-8" y="18" size="9" text="3"/>
<arc width="4" x="0" y="11.5" antialias="true" height="5" style="line-style:normal;line-weight:normal;filling:none;color:black" start="0" angle="-180"/>
<arc width="4" x="4" y="11.5" antialias="true" height="5" style="line-style:normal;line-weight:normal;filling:none;color:black" start="-180" angle="-180"/>
<terminal x="-20" y="-22" orientation="n"/>
<terminal x="20" y="-22" orientation="n"/>
<terminal x="0" y="-23" orientation="n"/>
<terminal x="20" y="20" orientation="n"/>
</description>
</definition>
@@ -1,181 +0,0 @@
<definition link_type="simple" type="element" version="0.80" width="160" hotspot_y="15" hotspot_x="6" height="120">
<uuid uuid="{15ca4668-4676-4b6f-acf0-1858e44f4525}"/>
<names>
<name lang="fr">Micro830</name>
<name lang="en">Micro830</name>
<name lang="cs">Micro830</name>
</names>
<elementInformations>
<elementInformation show="1" name="supplier"></elementInformation>
<elementInformation show="1" name="machine_manufacturer_reference"></elementInformation>
<elementInformation show="1" name="description"></elementInformation>
<elementInformation show="1" name="manufacturer-reference"></elementInformation>
<elementInformation show="1" name="machine-manufacturer-reference"></elementInformation>
<elementInformation show="1" name="comment"></elementInformation>
<elementInformation show="1" name="designation">Micro830</elementInformation>
<elementInformation show="1" name="label"></elementInformation>
<elementInformation show="1" name="unity"></elementInformation>
<elementInformation show="1" name="manufacturer_reference"></elementInformation>
<elementInformation show="1" name="manufacturer">Allen Bradley</elementInformation>
<elementInformation show="1" name="quantity"></elementInformation>
<elementInformation show="1" name="plant"></elementInformation>
</elementInformations>
<informations></informations>
<description>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:white;color:black" width="148" y="0" x="0" ry="0" height="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="96" start="180" x="10" height="4" angle="180"/>
<line antialias="false" x1="134" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="0" end2="none" y2="-5" length1="1.5" x2="134"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="96" start="180" x="142" height="4" angle="180"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="24" y="60" x="110" ry="0" height="8"/>
<line antialias="false" x1="134" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="90" end2="none" y2="97" length1="1.5" x2="134"/>
<line antialias="false" x1="146" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="-5" end2="none" y2="0" length1="1.5" x2="146"/>
<line antialias="false" x1="94" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="15" end2="none" y2="17" length1="1.5" x2="94"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="12" y="-11" start="0" x="134" height="12" angle="180"/>
<line antialias="false" x1="146" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="97" end2="none" y2="90" length1="1.5" x2="146"/>
<text text="Allen Bradley" color="#000000" y="42" rotation="0" x="110" font="Sans Serif,3,-1,5,50,0,0,0,0,0"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="96" start="180" x="134" height="4" angle="180"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="24" y="68" x="110" ry="0" height="8"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="51" diameter="4"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="94" start="0" x="138" height="4" angle="180"/>
<text text="Allen Bradley" color="#000000" y="42" rotation="0" x="76" font="Sans Serif,3,-1,5,50,0,0,0,0,0"/>
<line antialias="false" x1="138" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="98" end2="none" y2="97" length1="1.5" x2="138"/>
<text text="Allen Bradley" color="#000000" y="42" rotation="0" x="44" font="Sans Serif,3,-1,5,50,0,0,0,0,0"/>
<line antialias="false" x1="142" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="98" end2="none" y2="97" length1="1.5" x2="142"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="24" y="68" x="76" ry="0" height="8"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="76" diameter="4"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="61" diameter="4"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="24" y="60" x="76" ry="0" height="8"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="17" x="73" ry="0" height="7"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="66" diameter="4"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="17" x="107" ry="0" height="7"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="101" diameter="4"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="56" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="121" diameter="4"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="121" diameter="4"/>
<line antialias="false" x1="128" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="15" end2="none" y2="17" length1="1.5" x2="128"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="24" y="60" x="42" ry="0" height="8"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="32" y="14" x="70" ry="0" height="62"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="32" y="14" x="104" ry="0" height="62"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="111" diameter="4"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="86" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="110" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="110" diameter="4"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="24" x="73" ry="0" height="7"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="24" x="107" ry="0" height="7"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="42" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="56" diameter="4"/>
<line antialias="false" x1="35" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="0" end2="none" y2="90" length1="1.5" x2="35"/>
<line antialias="false" x1="135" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="22" end2="none" y2="22" length1="1.5" x2="132"/>
<line antialias="false" x1="101" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="22" end2="none" y2="22" length1="1.5" x2="98"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="101" diameter="4"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="116" diameter="4"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="91" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="114" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="46" diameter="4"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="8" y="14" start="180" x="128" height="8" angle="90"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="8" y="14" start="180" x="94" height="8" angle="90"/>
<line antialias="false" x1="137" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="0" end2="none" y2="90" length1="1.5" x2="137"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="114" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="50" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="16" x="96" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="66" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="16" x="130" diameter="4"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="106" diameter="4"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="15" y="15" x="20" ry="0" height="75"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="118" diameter="4"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="81" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="118" diameter="4"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="20" y="62" x="0" ry="0" height="16"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="122" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="122" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="61" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="54" diameter="4"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="71" diameter="4"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="96" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="126" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="51" diameter="4"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="20" y="45" x="0" ry="0" height="17"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="58" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="126" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="62" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="76" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="130" diameter="4"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="32" y="14" x="36" ry="0" height="62"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="130" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="86" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="4" x="46" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="111" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="116" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="91" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="106" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="81" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="96" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="71" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="81" x="46" diameter="4"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="83" y="2" x="44" ry="0" height="8"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="83" y="79" x="44" ry="0" height="8"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="39" x="21" ry="0" height="2"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="43" x="21" ry="0" height="2"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="47" x="21" ry="0" height="2"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="51" x="21" ry="0" height="2"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="55" x="21" ry="0" height="2"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="48" x="4" diameter="12"/>
<polygon antialias="false" x1="6" style="line-style:normal;line-weight:normal;filling:none;color:black" x7="6" y3="74" y4="73" x3="12" closed="false" x5="13" x6="12" y6="66" y7="66" y1="66" x4="13" y2="74" y5="67" x2="6"/>
<polygon antialias="false" x1="4" style="line-style:normal;line-weight:normal;filling:none;color:black" x7="4" y3="76" y4="73" x3="12" closed="false" x5="15" x6="12" y6="64" y7="64" y1="64" x4="15" y2="76" y5="67" x2="4"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="12" y="82" x="4" ry="0" height="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="82" x="8" diameter="4"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="11" y="14" x="137" ry="0" height="62"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="24" y="68" x="42" ry="0" height="8"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="42" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="46" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="50" diameter="4"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="54" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="58" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="62" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="76" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="80" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="84" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="88" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="92" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="62" x="96" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="84" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="80" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="76" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="88" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="92" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="70" x="96" diameter="4"/>
<line antialias="false" x1="60" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="15" end2="none" y2="17" length1="1.5" x2="60"/>
<line antialias="false" x1="67" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="22" end2="none" y2="22" length1="1.5" x2="64"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="8" y="14" start="180" x="60" height="8" angle="90"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="16" x="62" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="71" x="37" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="71" x="71" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="71" x="105" diameter="4"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="17" x="39" ry="0" height="7"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="24" x="39" ry="0" height="7"/>
<text text="Allen Bradley" color="#000000" y="8" rotation="0" x="11" font="Sans Serif,3,-1,5,50,0,0,0,0,0"/>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="ElementInfo" y="9" rotation="0" x="2" font="Sans Serif,9,-1,5,50,0,0,0,0,0" z="133" uuid="{0088d25a-d5a7-491e-86e5-5ca54af4b001}" frame="false" Halignment="AlignLeft">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="50" x="6" diameter="2"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="50" x="9" diameter="2"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="50" x="12" diameter="2"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="53" x="5" diameter="2"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="53" x="9" diameter="2"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="53" x="13" diameter="2"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="56" x="7" diameter="2"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="56" x="11" diameter="2"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="-7" x="6" diameter="4"/>
<circle antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" y="-7" x="138" diameter="4"/>
<line antialias="false" x1="2" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="0" end2="none" y2="-5" length1="1.5" x2="2"/>
<line antialias="false" x1="14" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="-5" end2="none" y2="0" length1="1.5" x2="14"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="12" y="-11" start="0" x="2" height="12" angle="180"/>
<line antialias="false" x1="2" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="90" end2="none" y2="97" length1="1.5" x2="2"/>
<line antialias="false" x1="14" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="97" end2="none" y2="90" length1="1.5" x2="14"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="96" start="180" x="2" height="4" angle="180"/>
<arc antialias="true" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="94" start="0" x="6" height="4" angle="180"/>
<line antialias="false" x1="6" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="98" end2="none" y2="97" length1="1.5" x2="6"/>
<line antialias="false" x1="10" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="98" end2="none" y2="97" length1="1.5" x2="10"/>
</description>
</definition>
@@ -1,5 +0,0 @@
<qet-directory>
<names>
<name lang="fr">Cynergy 3</name>
</names>
</qet-directory>
@@ -1,97 +0,0 @@
<definition link_type="simple" type="element" version="0.80" width="80" hotspot_y="2" hotspot_x="6" height="130">
<uuid uuid="{1e4508e4-6cab-4fb7-a766-88f6bd8133fa}"/>
<names>
<name lang="fr">Frenic Ace</name>
<name lang="cs">Frenic Ace</name>
</names>
<elementInformations>
<elementInformation show="1" name="supplier"></elementInformation>
<elementInformation show="1" name="machine_manufacturer_reference"></elementInformation>
<elementInformation show="1" name="description"></elementInformation>
<elementInformation show="1" name="comment"></elementInformation>
<elementInformation show="1" name="designation">Frenic Ace</elementInformation>
<elementInformation show="1" name="label"></elementInformation>
<elementInformation show="1" name="unity"></elementInformation>
<elementInformation show="1" name="manufacturer_reference"></elementInformation>
<elementInformation show="1" name="manufacturer">Fuji</elementInformation>
<elementInformation show="1" name="quantity"></elementInformation>
<elementInformation show="1" name="plant"></elementInformation>
</elementInformations>
<informations></informations>
<description>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="68" y="0" x="0" ry="0" height="125"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="14" x="40" diameter="6"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="14" x="22" diameter="10"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="14" x="52" diameter="10"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="27" x="22" diameter="10"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="117" x="0" ry="0" height="8"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="31" x="40" diameter="6"/>
<line antialias="false" x1="45" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="12" end2="none" y2="12" length1="1.5" x2="50"/>
<line antialias="false" x1="37" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="12" end2="none" y2="12" length1="1.5" x2="42"/>
<line antialias="false" x1="29" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="12" end2="none" y2="12" length1="1.5" x2="34"/>
<line antialias="false" x1="38" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="7" end2="none" y2="7" length1="1.5" x2="43"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="68" y="0" x="0" ry="0" height="40"/>
<line antialias="false" x1="46" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="7" end2="none" y2="7" length1="1.5" x2="51"/>
<line antialias="false" x1="30" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="7" end2="none" y2="7" length1="1.5" x2="35"/>
<line antialias="false" x1="39" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="2" length1="1.5" x2="44"/>
<line antialias="false" x1="47" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="2" length1="1.5" x2="52"/>
<line antialias="false" x1="31" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="2" length1="1.5" x2="36"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="34" x="2" diameter="4"/>
<line antialias="false" x1="36" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="7" length1="1.5" x2="35"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="0" x="58" ry="0" height="8"/>
<line antialias="false" x1="52" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="7" length1="1.5" x2="51"/>
<line antialias="false" x1="44" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="7" length1="1.5" x2="43"/>
<line antialias="false" x1="51" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="7" end2="none" y2="12" length1="1.5" x2="50"/>
<line antialias="false" x1="43" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="7" end2="none" y2="12" length1="1.5" x2="42"/>
<line antialias="false" x1="35" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="7" end2="none" y2="12" length1="1.5" x2="34"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="27" x="52" diameter="10"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="22" x="34" diameter="6"/>
<line antialias="false" x1="39" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="7" length1="1.5" x2="38"/>
<line antialias="false" x1="31" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="7" length1="1.5" x2="30"/>
<line antialias="false" x1="47" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="7" length1="1.5" x2="46"/>
<line antialias="false" x1="45" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="12" end2="none" y2="7" length1="1.5" x2="46"/>
<line antialias="false" x1="37" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="12" end2="none" y2="7" length1="1.5" x2="38"/>
<line antialias="false" x1="29" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="12" end2="none" y2="7" length1="1.5" x2="30"/>
<line antialias="false" x1="20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="12" end2="none" y2="12" length1="1.5" x2="25"/>
<line antialias="false" x1="21" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="7" end2="none" y2="7" length1="1.5" x2="26"/>
<line antialias="false" x1="22" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="2" length1="1.5" x2="27"/>
<line antialias="false" x1="27" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="7" length1="1.5" x2="26"/>
<line antialias="false" x1="26" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="7" end2="none" y2="12" length1="1.5" x2="25"/>
<line antialias="false" x1="22" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="2" end2="none" y2="7" length1="1.5" x2="21"/>
<line antialias="false" x1="20" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="12" end2="none" y2="7" length1="1.5" x2="21"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="7" x="4" ry="0" height="2"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="12" x="4" ry="0" height="2"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="17" x="4" ry="0" height="2"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="22" x="4" ry="0" height="2"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="4" y="27" x="4" ry="0" height="2"/>
<text text="KEYPAD&#xa;CONTROL&#xa;" color="#000000" y="7.59552" rotation="0" x="9.79776" font="Sans Serif,1,-1,5,50,0,0,0,0,0"/>
<text text="x10" color="#000000" y="23.2584" rotation="0" x="10" font="Sans Serif,1,-1,5,50,0,0,0,0,0"/>
<text text="Hz" color="#000000" y="28.3933" rotation="0" x="9.86517" font="Sans Serif,1,-1,5,50,0,0,0,0,0"/>
<text text="A" color="#000000" y="33.3371" rotation="0" x="10" font="Sans Serif,1,-1,5,50,0,0,0,0,0"/>
<text text="kW" color="#000000" y="38.3259" rotation="0" x="9.93259" font="Sans Serif,1,-1,5,50,0,0,0,0,0"/>
<polygon antialias="false" x1="12" style="line-style:normal;line-weight:thin;filling:none;color:black" y3="22" y4="22" x3="14" closed="false" y1="18" x4="12" y2="18" x2="14"/>
<polygon antialias="false" x1="12" style="line-style:normal;line-weight:thin;filling:none;color:black" y3="28" y4="28" x3="14" closed="false" y1="24" x4="12" y2="24" x2="14"/>
<polygon antialias="false" x1="15" style="line-style:normal;line-weight:thin;filling:none;color:black" y3="28" y4="28" x3="18" closed="false" y1="18" x4="15" y2="18" x2="18"/>
<polygon x6="22" closed="false" x7="22" y3="46" y8="60" x4="30" y4="46" y7="60" x8="2" x5="30" style="line-style:normal;line-weight:normal;filling:none;color:black" y6="52" y9="42" y5="52" antialias="false" y2="42" y1="42" x2="22" x1="2" x9="2" x3="22"/>
<rect rx="0" antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" width="10" y="72" x="0" ry="0" height="6"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="73" x="4" diameter="4"/>
<text text="Fuji Electric&#xa;FRENIC - Ace" color="#000000" y="52" rotation="0" x="34" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="1" x="60" diameter="6"/>
<circle antialias="false" style="line-style:normal;line-weight:normal;filling:none;color:black" y="118" x="2" diameter="6"/>
<text text=" PRG&#xa;RESET" color="#000000" y="17.8348" rotation="0" x="22.4736" font="Sans Serif,2,-1,5,50,0,0,0,0,0"/>
<text text="RUN" color="#000000" y="33" rotation="0" x="54" font="Sans Serif,2,-1,5,50,0,0,0,0,0"/>
<text text="STOP" color="#000000" y="42.0821" rotation="0" x="52.9946" font="Sans Serif,2,-1,5,50,0,0,0,0,0"/>
<text text="FUNC&#xa;DATA" color="#000000" y="40.1438" rotation="0" x="22.9994" font="Sans Serif,2,-1,5,50,0,0,0,0,0"/>
<polygon antialias="false" x1="36" style="line-style:normal;line-weight:normal;filling:none;color:black" y3="26" y4="26" x3="36" closed="false" y1="24" x4="36" y2="25" x2="37"/>
<polygon antialias="false" x1="38" style="line-style:normal;line-weight:normal;filling:none;color:black" y3="26" x3="38" closed="false" y1="24" y2="25" x2="39"/>
<polygon antialias="false" x1="42" style="line-style:normal;line-weight:normal;filling:none;color:black" y3="17" x3="44" closed="false" y1="17" y2="16" x2="43"/>
<polygon antialias="false" x1="42" style="line-style:normal;line-weight:normal;filling:none;color:black" y3="34" x3="44" closed="false" y1="34" y2="35" x2="43"/>
<line antialias="false" x1="24" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="19" end2="none" y2="19" length1="1.5" x2="30"/>
<line antialias="false" x1="24" style="line-style:normal;line-weight:normal;filling:none;color:black" length2="1.5" end1="none" y1="32" end2="none" y2="32" length1="1.5" x2="30"/>
<text text="PRG" color="#000000" y="23.2333" rotation="0" x="14.8899" font="Sans Serif,1,-1,5,50,0,0,0,0,0"/>
<dynamic_text Valignment="AlignTop" text_width="-1" text_from="ElementInfo" y="68.5" rotation="0" x="20" font="Sans Serif,9,-1,5,50,0,0,0,0,0" z="71" uuid="{b3940c5d-51b3-4df3-8548-e9ca000b0960}" frame="false" Halignment="AlignLeft">
<text></text>
<info_name>label</info_name>
</dynamic_text>
</description>
</definition>
@@ -1,5 +0,0 @@
<qet-directory>
<names>
<name lang="cs">Fuji</name>
</names>
</qet-directory>
@@ -1,46 +0,0 @@
<definition version="0.80" link_type="simple" hotspot_x="95" height="150" width="190" type="element" hotspot_y="75">
<uuid uuid="{3989d96e-d09a-4925-806b-c776f794b191}"/>
<names>
<name lang="fr">KINCO GL043E</name>
</names>
<elementInformations>
<elementInformation name="comment" show="1"></elementInformation>
<elementInformation name="label" show="1"></elementInformation>
<elementInformation name="plant" show="1"></elementInformation>
<elementInformation name="machine_manufacturer_reference" show="1"></elementInformation>
<elementInformation name="description" show="1"></elementInformation>
<elementInformation name="manufacturer_reference" show="1"></elementInformation>
<elementInformation name="quantity" show="1"></elementInformation>
<elementInformation name="manufacturer" show="1">KINCO</elementInformation>
<elementInformation name="designation" show="1">GL043E</elementInformation>
<elementInformation name="supplier" show="1"></elementInformation>
<elementInformation name="unity" show="1"></elementInformation>
</elementInformations>
<informations></informations>
<description>
<rect antialias="false" y="50" height="16" rx="0" ry="0" width="30" x="55" style="line-style:dashed;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="58" x="58" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="58" x="-62" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="58" x="-42" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="58" x="78" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="1" y="57" x="59" font="Sans Serif,5,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="6" y="57" x="78" font="Sans Serif,5,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="COM0/COM2" y="50" x="55" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="GND" y="58" x="-65" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="FG" y="58" x="-43" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<rect antialias="false" y="-70" height="140" rx="2" ry="2" width="180" x="-90" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="KINCO GL043E" y="35" x="-35" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
<rect antialias="false" y="-60" height="80" rx="5" ry="5" width="160" x="-80" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="DC24V" y="58" x="-85" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<rect antialias="false" y="50" height="16" rx="0" ry="0" width="53" x="-87" style="line-style:dashed;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="58" x="-82" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="46" text_width="-1" y="-70" uuid="{26fb43e7-0761-4dad-8f01-d845169a34c7}" Valignment="AlignTop" x="90" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal">
<text>_</text>
</dynamic_text>
<terminal name="" orientation="s" y="64" uuid="{9071f08c-b9bf-4923-862e-6949363e71e0}" x="80"/>
<terminal name="" orientation="s" y="64" uuid="{6ea53f6a-1b01-4c53-b56d-311af40fe016}" x="60"/>
<terminal name="" orientation="s" y="64" uuid="{f73c7b51-76f6-4c32-b981-cff7dac72933}" x="-40"/>
<terminal name="" orientation="s" y="64" uuid="{d44152aa-f747-4224-b6e5-06f35c7ea13c}" x="-60"/>
<terminal name="" orientation="s" y="64" uuid="{b54aebb1-7913-4439-9d06-7c4170ddcca7}" x="-80"/>
</description>
</definition>
@@ -1,118 +0,0 @@
<definition version="0.80" link_type="simple" hotspot_x="175" height="110" width="320" type="element" hotspot_y="55">
<uuid uuid="{bc851738-c5d2-4126-8333-7ed6e8ddfbe5}"/>
<names>
<name lang="fr">KINCO HP043-20DT</name>
</names>
<elementInformations>
<elementInformation name="comment" show="1"></elementInformation>
<elementInformation name="label" show="1"></elementInformation>
<elementInformation name="plant" show="1"></elementInformation>
<elementInformation name="machine_manufacturer_reference" show="1"></elementInformation>
<elementInformation name="description" show="1"></elementInformation>
<elementInformation name="manufacturer_reference" show="1"></elementInformation>
<elementInformation name="quantity" show="1"></elementInformation>
<elementInformation name="manufacturer" show="1">Kinco</elementInformation>
<elementInformation name="designation" show="1">HP043-20DT</elementInformation>
<elementInformation name="supplier" show="1"></elementInformation>
<elementInformation name="unity" show="1"></elementInformation>
</elementInformations>
<informations></informations>
<description>
<text rotation="0" color="#000000" text="A-" y="35" x="77" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="Q1.0" y="-29" x="42" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="Q0.7" y="-29" x="21" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="Q0.6" y="-29" x="1" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<rect antialias="false" y="-46" height="20" rx="0" ry="0" width="60" x="70" style="line-style:dashed;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="24V" y="-30" x="113" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<rect antialias="false" y="25" height="20" rx="0" ry="0" width="80" x="50" style="line-style:dashed;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="98" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="I0.6" y="35" x="-17" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="AI" y="20" x="80" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="I1.0" y="35" x="23" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="I0.7" y="35" x="3" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="B-" y="35" x="116" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<circle diameter="4" antialias="false" y="-42" x="28" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="28" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="8" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="8" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="48" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="25" height="20" rx="0" ry="0" width="200" x="-160" style="line-style:dashed;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-12" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="B+" y="35" x="96" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<rect antialias="false" y="-46" height="20" rx="0" ry="0" width="220" x="-160" style="line-style:dashed;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="78" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="-50" height="100" rx="2" ry="2" width="309.609" x="-170" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="98" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="Q0.3" y="-29" x="-59" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<circle diameter="4" antialias="false" y="38" x="118" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="A+" y="35" x="56" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="I" y="23" x="-60" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<circle diameter="4" antialias="false" y="38" x="58" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="I0.4" y="35" x="-56.625" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="I0.5" y="35" x="-37" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="Q0.4" y="-29" x="-39" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="I0.2" y="35" x="-97" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="I0.0" y="35" x="-137" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="I0.3" y="35" x="-77.2188" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="M" y="35" x="-153" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="Q0.5" y="-29" x="-19" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0V" y="-30" x="95" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="1L+" y="-29" x="-136" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="Q0.2" y="-29" x="-78.4063" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="Q0.1" y="-29" x="-99" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="Q0.0" y="-29" x="-118.656" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="FG" y="-30" x="75" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="1L-" y="-29" x="-156" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="I0.1" y="35" x="-117" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<dynamic_text frame="false" rotation="0" z="46" text_width="-1" y="-50" uuid="{26fb43e7-0761-4dad-8f01-d845169a34c7}" Valignment="AlignTop" x="140" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal">
<text>_</text>
</dynamic_text>
<text rotation="0" color="#000000" text="Q" y="-18" x="-60" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<circle diameter="4" antialias="false" y="38" x="-152" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="78" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-52" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-72" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-112" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-132" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="118" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-132" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-112" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-92" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-12" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-152" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-92" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-32" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-52" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-72" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-32" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="KINCO HP043-20DT" y="0" x="30" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
<terminal name="" orientation="s" y="44" uuid="{ff6ea49c-e25b-48cf-ba32-24ebcba9073a}" x="-30"/>
<terminal name="" orientation="n" y="-44" uuid="{a8d73d73-d37e-4f7f-a46a-eaecfa4b034d}" x="-30"/>
<terminal name="" orientation="n" y="-44" uuid="{d9c6337d-73fc-43b6-95e2-d7632f75d762}" x="100"/>
<terminal name="" orientation="s" y="44" uuid="{31ecd94c-11c9-48e2-9760-76b134fc938f}" x="-110"/>
<terminal name="" orientation="n" y="-44" uuid="{00102e54-6876-4c92-b9a7-3a9093122103}" x="-70"/>
<terminal name="" orientation="s" y="44" uuid="{2ca08b4d-9518-4e58-a130-1c01d8aa0f8d}" x="-130"/>
<terminal name="" orientation="n" y="-44" uuid="{072cb10d-6896-41df-9ffe-c0788548ce86}" x="-10"/>
<terminal name="" orientation="n" y="-44" uuid="{0c775bdd-d6b8-4f7b-aafe-39acddfadd81}" x="80"/>
<terminal name="" orientation="s" y="44" uuid="{0db9669d-c07e-44ad-b645-1955aa2a8f7b}" x="-50"/>
<terminal name="" orientation="n" y="-44" uuid="{9593af59-33d6-4469-a16d-beccc096d479}" x="120"/>
<terminal name="" orientation="s" y="44" uuid="{410025fa-cbf1-4916-916f-b61f43e78c1e}" x="-70"/>
<terminal name="" orientation="n" y="-44" uuid="{b78819b6-7419-41f9-b34b-f2e71295c3b9}" x="-90"/>
<terminal name="" orientation="n" y="-44" uuid="{61601629-f237-4be2-88bf-651d3f973d88}" x="-130"/>
<terminal name="" orientation="s" y="44" uuid="{e7976a0f-67dd-4797-8258-9ad3dc4c793a}" x="-150"/>
<terminal name="" orientation="n" y="-44" uuid="{c0caf5dd-9de2-4c42-9ec8-d2cef6a0a68a}" x="-150"/>
<terminal name="" orientation="n" y="-44" uuid="{ec406181-38ea-42c5-a4e5-764394dcf809}" x="-50"/>
<terminal name="" orientation="s" y="44" uuid="{2fe4768b-45b7-4c92-a706-144e047624b9}" x="-90"/>
<terminal name="" orientation="n" y="-44" uuid="{663d9fc8-88ea-4c5a-af5c-f047a59e620e}" x="-110"/>
<terminal name="" orientation="s" y="44" uuid="{8d1e8fd1-37a1-4768-902c-c187b04ca8ef}" x="30"/>
<terminal name="" orientation="s" y="44" uuid="{eec8f9f4-f913-4082-8e45-8c080954c9d6}" x="10"/>
<terminal name="" orientation="s" y="44" uuid="{35add1ec-6331-4991-aa22-555a2e91c684}" x="-10"/>
<terminal name="" orientation="n" y="-44" uuid="{588ef957-2f9f-4bdc-8787-e5478f037c3d}" x="10"/>
<terminal name="" orientation="n" y="-44" uuid="{f2b4fdbb-9c13-477f-baee-ec12baf4e0cb}" x="30"/>
<terminal name="" orientation="n" y="-44" uuid="{44f40ecd-b45f-4043-bf3e-6c34a9efe88e}" x="50"/>
<terminal name="" orientation="s" y="44" uuid="{1d90862e-3bf8-4060-9ecc-9bf99ea60271}" x="60"/>
<terminal name="" orientation="s" y="44" uuid="{3247fdc0-9dec-4a87-a1f6-b548b73324d5}" x="120"/>
<terminal name="" orientation="s" y="44" uuid="{23b64560-b245-4c24-a7e8-18b1a369275d}" x="100"/>
<terminal name="" orientation="s" y="44" uuid="{5ea06185-8896-4c5c-8446-75feec5a6c00}" x="80"/>
</description>
</definition>
@@ -1,134 +0,0 @@
<definition version="0.80" link_type="simple" hotspot_x="185" height="110" width="330" type="element" hotspot_y="55">
<uuid uuid="{181599c5-3db6-4f4a-80b4-62a149b74cdf}"/>
<names>
<name lang="fr">KINCO K205-16DT</name>
</names>
<elementInformations>
<elementInformation name="comment" show="1"></elementInformation>
<elementInformation name="label" show="1"></elementInformation>
<elementInformation name="plant" show="1"></elementInformation>
<elementInformation name="machine_manufacturer_reference" show="1"></elementInformation>
<elementInformation name="description" show="1"></elementInformation>
<elementInformation name="manufacturer_reference" show="1"></elementInformation>
<elementInformation name="quantity" show="1"></elementInformation>
<elementInformation name="manufacturer" show="1">Kinco</elementInformation>
<elementInformation name="designation" show="1">K205-16DT</elementInformation>
<elementInformation name="supplier" show="1"></elementInformation>
<elementInformation name="unity" show="1"></elementInformation>
</elementInformations>
<informations></informations>
<description>
<line y1="-34" length2="1.5" antialias="false" end1="none" y2="-30" length1="1.5" end2="none" x1="90" x2="90" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="25" height="20" rx="0" ry="0" width="136" x="-136" style="line-style:dashed;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="-45" height="20" rx="0" ry="0" width="160" x="-80" style="line-style:dashed;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="-50" height="100" rx="2" ry="2" width="320" x="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="I/Q" y="20" x="70" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.3" y="-29" x="25" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="I" y="20" x="-71" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="1.1" y="35" x="125.797" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.4" y="35" x="-34.625" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.5" y="35" x="-15.0313" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.4" y="-29" x="45" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.2" y="35" x="-75" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="1.0" y="35" x="106.125" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="2L+" y="35" x="24" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.0" y="35" x="-115" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="2L-" y="35" x="44" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.3" y="35" x="-55.2188" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="M" y="35" x="-133" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.6" y="35" x="65" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.5" y="-29" x="65" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0V" y="-29" x="105" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="1L+" y="-29" x="-56" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.2" y="-29" x="4.5937" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="B" y="-29" x="-112" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.1" y="-29" x="-15" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.0" y="-29" x="-34.6563" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="24V" y="-29" x="123.391" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="1L-" y="-29" x="-76" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="PORT2" y="-20" x="-132" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.7" y="35" x="85" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0.1" y="35" x="-95" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="Q" y="-15" x="-3" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="PORT1" y="-20" x="-172" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<line y1="-30" length2="1.5" antialias="false" end1="none" y2="-30" length1="1.5" end2="none" x1="87" x2="93" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-132" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-28" length2="1.5" antialias="false" end1="none" y2="-28" length1="1.5" end2="none" x1="88" x2="92" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="88" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-26" length2="1.5" antialias="false" end1="none" y2="-26" length1="1.5" end2="none" x1="89" x2="91" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="88" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="108" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="28" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="8" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="68" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="28" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="108" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="46" text_width="-1" y="-50" uuid="{26fb43e7-0761-4dad-8f01-d845169a34c7}" Valignment="AlignTop" x="140" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal">
<text>_</text>
</dynamic_text>
<circle diameter="4" antialias="false" y="38" x="-92" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-112" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="48" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="128" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="128" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-112" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-152" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-52" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-92" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-32" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-72" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="8" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="68" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-132" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-72" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="-12" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="-42" x="48" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-32" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-52" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<circle diameter="4" antialias="false" y="38" x="-12" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="A" y="-29" x="-132" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="B" y="-29" x="-152" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<circle diameter="4" antialias="false" y="-42" x="-172" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="A" y="-29" x="-172" font="Sans Serif,7,-1,5,50,0,0,0,0,0"/>
<line y1="-34" length2="1.5" antialias="false" end1="none" y2="-30" length1="1.5" end2="none" x1="-90" x2="-90" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-30" length2="1.5" antialias="false" end1="none" y2="-30" length1="1.5" end2="none" x1="-93" x2="-87" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-28" length2="1.5" antialias="false" end1="none" y2="-28" length1="1.5" end2="none" x1="-92" x2="-88" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-26" length2="1.5" antialias="false" end1="none" y2="-26" length1="1.5" end2="none" x1="-91" x2="-89" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="30" length2="1.5" antialias="false" end1="none" y2="34" length1="1.5" end2="none" x1="8" x2="12" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="34" length2="1.5" antialias="false" end1="none" y2="30" length1="1.5" end2="none" x1="8" x2="12" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="32" length2="1.5" antialias="false" end1="none" y2="32" length1="1.5" end2="none" x1="7" x2="13" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="29" length2="1.5" antialias="false" end1="none" y2="35" length1="1.5" end2="none" x1="10" x2="10" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="25" height="20" rx="0" ry="0" width="113" x="22" style="line-style:dashed;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="KINCO K205-16DT" y="0" x="30" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
<terminal name="" orientation="s" y="44" uuid="{3910ddbd-6fc1-49ff-b901-adc5d4877e0f}" x="70"/>
<terminal name="" orientation="s" y="44" uuid="{8ccd3919-59ce-44ec-9ccc-11bec7983a73}" x="130"/>
<terminal name="" orientation="s" y="44" uuid="{67e15415-514e-42d0-b7c3-a03bece502ea}" x="-110"/>
<terminal name="" orientation="n" y="-44" uuid="{85eca80d-22c8-4606-9cf4-e241a312c919}" x="50"/>
<terminal name="" orientation="s" y="44" uuid="{8b388c3b-b795-45a0-91f1-31e96b5db111}" x="30"/>
<terminal name="" orientation="n" y="-44" uuid="{7fb04575-3e43-47e0-b3af-af7f9824a7e4}" x="-50"/>
<terminal name="" orientation="s" y="44" uuid="{a6a477ad-e66d-49df-aac4-32993187280f}" x="-10"/>
<terminal name="" orientation="n" y="-44" uuid="{99ba231a-9c8b-43e1-9eac-6393c59c47b8}" x="-170"/>
<terminal name="" orientation="n" y="-44" uuid="{5ffe7b7c-2a35-4786-a7e7-955cfcca9a66}" x="90"/>
<terminal name="" orientation="n" y="-44" uuid="{b2d97b48-e028-41ae-8c9d-9e19a8cd569b}" x="10"/>
<terminal name="" orientation="s" y="44" uuid="{2c63b2c2-ea1c-493a-9e79-ab9fb8868811}" x="10"/>
<terminal name="" orientation="s" y="44" uuid="{0efb7eae-0dec-47de-9b35-186c33722401}" x="90"/>
<terminal name="" orientation="s" y="44" uuid="{fb6ccfcb-0b1d-49dd-84c3-515ad40d5de9}" x="50"/>
<terminal name="" orientation="n" y="-44" uuid="{613df199-7b81-460b-9e7a-8f1ade0286a3}" x="-10"/>
<terminal name="" orientation="s" y="44" uuid="{36f06c95-c4cb-4bc5-891c-a061a507199c}" x="-50"/>
<terminal name="" orientation="n" y="-44" uuid="{38c38b37-c58f-4656-a1c4-3aa3f6aa1177}" x="130"/>
<terminal name="" orientation="s" y="44" uuid="{474e3457-673f-4b2d-aeb4-c983b53e544f}" x="-30"/>
<terminal name="" orientation="n" y="-44" uuid="{7b77f683-dc35-43f1-a8c2-c39fa08e198c}" x="70"/>
<terminal name="" orientation="n" y="-44" uuid="{e1ea8ff1-21fc-4477-91ef-52c93be5f246}" x="110"/>
<terminal name="" orientation="s" y="44" uuid="{1c5695c5-6ced-4865-b348-c3aebfd81e74}" x="-90"/>
<terminal name="" orientation="n" y="-44" uuid="{8a21e16a-8381-4e81-a705-e2f2db3054b7}" x="-150"/>
<terminal name="" orientation="n" y="-44" uuid="{79cff81c-ba35-4073-be13-de69e865d159}" x="-90"/>
<terminal name="" orientation="s" y="44" uuid="{f3ff763b-cf7c-4080-87ec-f186b6f03d11}" x="-70"/>
<terminal name="" orientation="n" y="-44" uuid="{786fc99b-95af-432d-9fb8-79faa7166cf8}" x="-130"/>
<terminal name="" orientation="n" y="-44" uuid="{57bbe0f0-56bb-4d3b-9a3c-bf64861c4ae7}" x="-30"/>
<terminal name="" orientation="s" y="44" uuid="{0228b31d-876d-49cd-8168-75898bf37a1f}" x="110"/>
<terminal name="" orientation="n" y="-44" uuid="{f6f5e348-8ad9-4f32-bec4-bf5b83e4da47}" x="-110"/>
<terminal name="" orientation="s" y="44" uuid="{69cd6080-9509-4603-989f-7a09f27566ef}" x="-130"/>
<terminal name="" orientation="n" y="-44" uuid="{1b69151b-346c-4f1c-8e34-8317583ba7e8}" x="-70"/>
<terminal name="" orientation="n" y="-44" uuid="{20134804-8df7-48ea-968c-f3a6e02fddf5}" x="30"/>
</description>
</definition>
@@ -1,5 +0,0 @@
<qet-directory>
<names>
<name lang="fr">Kinco</name>
</names>
</qet-directory>
@@ -1,182 +1,182 @@
<definition link_type="simple" hotspot_x="4" hotspot_y="34" version="0.80" type="element" height="200" width="80">
<uuid uuid="{242ad528-5973-447f-bc6b-aeaa66e0b730}"/>
<definition type="element" width="80" hotspot_y="35" link_type="simple" hotspot_x="4" height="200" version="0.80">
<uuid uuid="{007cd236-b3b7-4114-9869-58f1dc955e8d}"/>
<names>
<name lang="fr">4 AI</name>
</names>
<elementInformations>
<elementInformation show="1" name="unity"></elementInformation>
<elementInformation show="1" name="designation">4-Ai</elementInformation>
<elementInformation show="1" name="description">Carte d'entrées analogiques</elementInformation>
<elementInformation show="1" name="manufacturer">Sofrel</elementInformation>
<elementInformation show="1" name="quantity"></elementInformation>
<elementInformation show="1" name="supplier"></elementInformation>
<elementInformation show="1" name="comment"></elementInformation>
<elementInformation show="1" name="plant"></elementInformation>
<elementInformation show="1" name="label">4-AI</elementInformation>
<elementInformation name="manufacturer" show="1">Sofrel</elementInformation>
<elementInformation name="quantity" show="1"></elementInformation>
<elementInformation name="plant" show="1"></elementInformation>
<elementInformation name="supplier" show="1"></elementInformation>
<elementInformation name="label" show="1">4-AI</elementInformation>
<elementInformation name="comment" show="1"></elementInformation>
<elementInformation name="designation" show="1">4-Ai</elementInformation>
<elementInformation name="description" show="1">Carte d'entrées analogiques</elementInformation>
<elementInformation name="unity" show="1"></elementInformation>
</elementInformations>
<informations>s.deffaux</informations>
<description>
<rect ry="0" x="38.2803" rx="0" height="15" antialias="false" width="3.01939" style="line-style:normal;line-weight:thin;filling:none;color:black" y="7"/>
<text x="5.45433" text="CARTE AO" font="MS Shell Dlg 2,9,-1,5,75,0,0,0,0,0,Gras" rotation="0" color="#000000" y="-16.0774"/>
<rect ry="0" x="34.2544" rx="0" height="15" antialias="false" width="3.01939" style="line-style:normal;line-weight:thin;filling:none;color:black" y="7"/>
<text x="22.3236" text="S550" font="MS Shell Dlg 2,9,-1,5,75,0,0,0,0,0,Gras" rotation="0" color="#000000" y="-4.32019"/>
<rect ry="0" x="22" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="7"/>
<rect ry="0" x="42.3061" rx="0" height="15" antialias="false" width="3.01939" style="line-style:normal;line-weight:thin;filling:none;color:black" y="7"/>
<rect ry="0" x="26" rx="0" height="8" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="14"/>
<rect ry="0" x="34.2544" rx="0" height="8" antialias="false" width="3.01939" style="line-style:normal;line-weight:thin;filling:black;color:black" y="14"/>
<rect ry="0" x="22" rx="0" height="8" antialias="false" width="3.01" style="line-style:normal;line-weight:thin;filling:black;color:black" y="14"/>
<rect ry="0" x="42.3061" rx="0" height="7.5" antialias="false" width="3.01939" style="line-style:normal;line-weight:thin;filling:black;color:black" y="7"/>
<rect ry="0" x="41" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="47"/>
<rect ry="0" x="41" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="87"/>
<rect ry="0" x="41.5" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="127.5"/>
<rect ry="0" x="41.5" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="135"/>
<rect ry="0" x="41" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="54.5"/>
<rect ry="0" x="41" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="94.5"/>
<rect ry="0" x="37" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="87"/>
<rect ry="0" x="37" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="47"/>
<rect ry="0" x="37.5" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="127.5"/>
<rect ry="0" x="33" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="47"/>
<rect ry="0" x="33" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="87"/>
<rect ry="0" x="33.5" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="127.5"/>
<rect ry="0" x="33" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="94.5"/>
<rect ry="0" x="33" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="54.5"/>
<rect ry="0" x="33.5" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="135"/>
<rect ry="0" x="25" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:none;filling:black;color:black" y="94.5"/>
<rect ry="0" x="25.5" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:none;filling:black;color:black" y="135"/>
<rect ry="0" x="25" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:none;filling:black;color:black" y="54.5"/>
<rect ry="0" x="37" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="47"/>
<rect ry="0" x="37" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="87"/>
<rect ry="0" x="38.2803" rx="0" height="8" antialias="false" width="3.01939" style="line-style:normal;line-weight:thin;filling:black;color:black" y="14"/>
<text x="29.5" text="C" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="44"/>
<text x="29.5" text="C" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="84"/>
<rect ry="0" x="37.5" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="127.5"/>
<text x="21.5" text="A" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="44"/>
<text x="21.5" text="A" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="84"/>
<text x="41.5" text="F" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="44"/>
<text x="31" text="C" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="4"/>
<text x="41.5" text="F" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="84"/>
<text x="60" text="2A&#xa;" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="110"/>
<text x="60" text="3A&#xa;" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="70"/>
<rect ry="0" x="29" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="47"/>
<rect ry="0" x="29" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="87"/>
<text x="33.5" text="D" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="84"/>
<text x="33.5" text="D" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="44"/>
<text x="25.5" text="B" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="44"/>
<text x="25.5" text="B" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="84"/>
<text x="23" text="A" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="4"/>
<text x="31" text="G" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="116"/>
<text x="35" text="G" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="75"/>
<text x="30" text="C" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="124"/>
<text x="37.5" text="E" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="84"/>
<text x="37.5" text="E" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="44"/>
<text x="12" text="H" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="84"/>
<text x="12" text="H" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="44"/>
<text x="43" text="F" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="4"/>
<text x="33.5" text="4" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="105"/>
<text x="33.5" text="4" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="65"/>
<rect ry="0" x="25" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="87"/>
<rect ry="0" x="25" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="47"/>
<text x="21.5" text="1" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="105"/>
<text x="21.5" text="1" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="65"/>
<text x="29.5" text="3" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="105"/>
<text x="22" text="A" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="124"/>
<text x="29.5" text="3" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="65"/>
<text x="25.5" text="2" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="65"/>
<text x="25.5" text="2" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="105"/>
<text x="41.5" text="6" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="65"/>
<text x="41.5" text="6" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="105"/>
<text x="37.5" text="5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="65"/>
<text x="37.5" text="5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="105"/>
<rect ry="0" x="50" rx="1" height="40" antialias="false" width="20" style="line-style:normal;line-weight:normal;filling:none;color:black" y="80"/>
<rect ry="0" x="50" rx="1" height="40" antialias="false" width="20" style="line-style:normal;line-weight:normal;filling:none;color:black" y="40"/>
<text x="60" text="2B" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="90"/>
<text x="60" text="3B" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="50"/>
<text x="5" text="B" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="65"/>
<text x="4.5" text="B" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="105"/>
<rect ry="0" x="0" rx="0" height="40" antialias="false" width="50" style="line-style:normal;line-weight:normal;filling:none;color:black" y="80"/>
<rect ry="0" x="0" rx="0" height="40" antialias="false" width="50" style="line-style:normal;line-weight:normal;filling:none;color:black" y="40"/>
<text x="42" text="F" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="124"/>
<rect ry="0" x="10" rx="0" height="20" antialias="false" width="5" style="line-style:normal;line-weight:normal;filling:none;color:black" y="45"/>
<rect ry="0" x="10" rx="0" height="20" antialias="false" width="5" style="line-style:normal;line-weight:normal;filling:none;color:black" y="85"/>
<text x="60" text="4A" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="30"/>
<text x="4.5" text="A" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="92"/>
<text x="5" text="A" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="52"/>
<rect ry="0" x="10" rx="0" height="10" antialias="false" width="5" style="line-style:normal;line-weight:normal;filling:black;color:black" y="55"/>
<rect ry="0" x="10" rx="0" height="10" antialias="false" width="5" style="line-style:normal;line-weight:normal;filling:black;color:black" y="95"/>
<rect ry="0" x="30.1518" rx="0" height="15" antialias="false" width="3.01184" style="line-style:normal;line-weight:thin;filling:none;color:black" y="7"/>
<rect ry="0" x="9.5" rx="0" height="5" antialias="false" width="20" style="line-style:normal;line-weight:normal;filling:none;color:black" y="112"/>
<rect ry="0" x="10" rx="0" height="5" antialias="false" width="20" style="line-style:normal;line-weight:normal;filling:none;color:black" y="72"/>
<rect ry="0" x="9.5" rx="0" height="5" antialias="false" width="10" style="line-style:normal;line-weight:normal;filling:black;color:black" y="72"/>
<rect ry="0" x="9.5" rx="0" height="5" antialias="false" width="10" style="line-style:normal;line-weight:normal;filling:black;color:black" y="112"/>
<rect ry="0" x="19" rx="0" height="21" antialias="false" width="27" style="line-style:normal;line-weight:thin;filling:none;color:black" y="85"/>
<rect ry="0" x="19" rx="0" height="21" antialias="false" width="27" style="line-style:normal;line-weight:thin;filling:none;color:black" y="45"/>
<text x="35" text="D" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="4"/>
<rect ry="0" x="21" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="47"/>
<rect ry="0" x="21" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="87"/>
<text x="27" text="B" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="4"/>
<rect ry="0" x="29" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="87"/>
<rect ry="0" x="29" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="47"/>
<rect ry="0" x="21" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:none;filling:black;color:black" y="94.5"/>
<rect ry="0" x="21" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:none;filling:black;color:black" y="54.5"/>
<text x="32" text="G" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="36"/>
<text x="39" text="E" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="4"/>
<text x="12" text="H" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="4"/>
<text x="35.2609" text="4" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="25"/>
<rect ry="0" x="26" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="7"/>
<text x="59.5" text="1A&#xa;" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="150.5"/>
<text x="22" text="1" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="25"/>
<rect ry="0" x="29.5" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="127.5"/>
<text x="31.1558" text="3" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="25"/>
<text x="26.136" text="2" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="25"/>
<text x="34" text="D" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="124"/>
<text x="43.3126" text="6" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="25"/>
<text x="39.2867" text="5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="25"/>
<rect ry="0" x="50" rx="1" height="40" antialias="false" width="20" style="line-style:normal;line-weight:normal;filling:none;color:black" y="0"/>
<text x="26" text="B" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="124"/>
<text x="31.5" text="G" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="156.5"/>
<text x="59.416" text="4B" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="10"/>
<text x="5" text="B" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="25"/>
<text x="38" text="E" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="124"/>
<rect ry="0" x="0" rx="0" height="40" antialias="false" width="50" style="line-style:normal;line-weight:normal;filling:none;color:black" y="0"/>
<text x="11.17" text="H" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="124"/>
<rect ry="0" x="10" rx="0" height="20" antialias="false" width="5" style="line-style:normal;line-weight:normal;filling:none;color:black" y="5"/>
<text x="5" text="A" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="10"/>
<text x="34" text="4" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="145.5"/>
<rect ry="0" x="10" rx="0" height="10" antialias="false" width="5" style="line-style:normal;line-weight:normal;filling:black;color:black" y="15"/>
<rect ry="0" x="9.5" rx="0" height="5" antialias="false" width="20" style="line-style:normal;line-weight:normal;filling:none;color:black" y="32"/>
<rect ry="0" x="25.5" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="127.5"/>
<rect ry="0" x="8.5896" rx="0" height="5" antialias="false" width="10.0646" style="line-style:normal;line-weight:normal;filling:black;color:black" y="32"/>
<rect ry="0" x="20" rx="0" height="20" antialias="false" width="27" style="line-style:normal;line-weight:thin;filling:none;color:black" y="5"/>
<text x="22" text="1" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="145.5"/>
<rect ry="0" x="30.1518" rx="0" height="8" antialias="false" width="3.01184" style="line-style:normal;line-weight:thin;filling:black;color:black" y="14"/>
<text x="30" text="3" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="145.5"/>
<text x="26" text="2" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="145.5"/>
<text x="42" text="6" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="145.5"/>
<text x="38" text="5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="145.5"/>
<rect ry="0" x="50" rx="1" height="40" antialias="false" width="20" style="line-style:normal;line-weight:normal;filling:none;color:black" y="120"/>
<text x="59.5" text="1B" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="130.5"/>
<text x="5" text="B" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="145.5"/>
<rect ry="0" x="0" rx="0" height="40" antialias="false" width="50" style="line-style:normal;line-weight:normal;filling:none;color:black" y="120"/>
<rect ry="0" x="9.5" rx="0" height="20" antialias="false" width="5" style="line-style:normal;line-weight:normal;filling:none;color:black" y="125.5"/>
<text x="5" text="A" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" color="#000000" y="132.5"/>
<rect ry="0" x="9.5" rx="0" height="10" antialias="false" width="5" style="line-style:normal;line-weight:normal;filling:black;color:black" y="135.5"/>
<rect ry="0" x="9.5" rx="0" height="5" antialias="false" width="20" style="line-style:normal;line-weight:normal;filling:none;color:black" y="152"/>
<rect ry="0" x="9.5" rx="0" height="5" antialias="false" width="10" style="line-style:normal;line-weight:normal;filling:black;color:black" y="152"/>
<rect ry="0" x="19.5" rx="0" height="21" antialias="false" width="27" style="line-style:normal;line-weight:thin;filling:none;color:black" y="125.5"/>
<rect ry="0" x="21.5" rx="0" height="15" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:none;color:black" y="127.5"/>
<rect ry="0" x="29.5" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:thin;filling:black;color:black" y="127.5"/>
<dynamic_text x="20" uuid="{8657c0ee-49f9-445f-9272-149d9ea58486}" text_from="ElementInfo" Halignment="AlignLeft" Valignment="AlignTop" rotation="0" font="MS Shell Dlg 2,8,-1,5,50,0,0,0,0,0,Normal" z="149" frame="false" text_width="-1" y="170">
<rect x="38.2803" width="3.01939" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="7"/>
<text x="5.45433" font="MS Shell Dlg 2,9,-1,5,75,0,0,0,0,0,Gras" rotation="0" text="CARTE AO" color="#000000" y="-16.0774"/>
<rect x="34.2544" width="3.01939" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="7"/>
<text x="22.3236" font="MS Shell Dlg 2,9,-1,5,75,0,0,0,0,0,Gras" rotation="0" text="S550" color="#000000" y="-4.32019"/>
<rect x="22" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="7"/>
<rect x="42.3061" width="3.01939" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="7"/>
<rect x="26" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="8" y="14"/>
<rect x="34.2544" width="3.01939" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="8" y="14"/>
<rect x="22" width="3.01" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="8" y="14"/>
<rect x="42.3061" width="3.01939" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="7"/>
<rect x="41" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="47"/>
<rect x="41" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="87"/>
<rect x="41.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="127.5"/>
<rect x="41.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="135"/>
<rect x="41" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="54.5"/>
<rect x="41" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="94.5"/>
<rect x="37" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="87"/>
<rect x="37" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="47"/>
<rect x="37.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="127.5"/>
<rect x="33" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="47"/>
<rect x="33" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="87"/>
<rect x="33.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="127.5"/>
<rect x="33" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="94.5"/>
<rect x="33" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="54.5"/>
<rect x="33.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="135"/>
<rect x="25" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:none;filling:black;color:black" height="7.5" y="94.5"/>
<rect x="25.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:none;filling:black;color:black" height="7.5" y="135"/>
<rect x="25" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:none;filling:black;color:black" height="7.5" y="54.5"/>
<rect x="37" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="47"/>
<rect x="37" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="87"/>
<rect x="38.2803" width="3.01939" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="8" y="14"/>
<text x="29.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="C" color="#000000" y="44"/>
<text x="29.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="C" color="#000000" y="84"/>
<rect x="37.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="127.5"/>
<text x="21.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="A" color="#000000" y="44"/>
<text x="21.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="A" color="#000000" y="84"/>
<text x="41.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="F" color="#000000" y="44"/>
<text x="31" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="C" color="#000000" y="4"/>
<text x="41.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="F" color="#000000" y="84"/>
<text x="60" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="2A&#xa;" color="#000000" y="110"/>
<text x="60" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="3A&#xa;" color="#000000" y="70"/>
<rect x="29" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="47"/>
<rect x="29" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="87"/>
<text x="33.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="D" color="#000000" y="84"/>
<text x="33.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="D" color="#000000" y="44"/>
<text x="25.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="B" color="#000000" y="44"/>
<text x="25.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="B" color="#000000" y="84"/>
<text x="23" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="A" color="#000000" y="4"/>
<text x="31" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="G" color="#000000" y="116"/>
<text x="35" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="G" color="#000000" y="75"/>
<text x="30" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="C" color="#000000" y="124"/>
<text x="37.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="E" color="#000000" y="84"/>
<text x="37.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="E" color="#000000" y="44"/>
<text x="12" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="H" color="#000000" y="84"/>
<text x="12" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="H" color="#000000" y="44"/>
<text x="43" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="F" color="#000000" y="4"/>
<text x="33.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="4" color="#000000" y="105"/>
<text x="33.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="4" color="#000000" y="65"/>
<rect x="25" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="87"/>
<rect x="25" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="47"/>
<text x="21.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="1" color="#000000" y="105"/>
<text x="21.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="1" color="#000000" y="65"/>
<text x="29.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="3" color="#000000" y="105"/>
<text x="22" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="A" color="#000000" y="124"/>
<text x="29.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="3" color="#000000" y="65"/>
<text x="25.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="2" color="#000000" y="65"/>
<text x="25.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="2" color="#000000" y="105"/>
<text x="41.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="6" color="#000000" y="65"/>
<text x="41.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="6" color="#000000" y="105"/>
<text x="37.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="5" color="#000000" y="65"/>
<text x="37.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="5" color="#000000" y="105"/>
<rect x="50" width="20" antialias="false" rx="1" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="40" y="80"/>
<rect x="50" width="20" antialias="false" rx="1" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="40" y="40"/>
<text x="60" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="2B" color="#000000" y="90"/>
<text x="60" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="3B" color="#000000" y="50"/>
<text x="5" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="B" color="#000000" y="65"/>
<text x="4.5" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="B" color="#000000" y="105"/>
<rect x="0" width="50" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="40" y="80"/>
<rect x="0" width="50" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="40" y="40"/>
<text x="42" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="F" color="#000000" y="124"/>
<rect x="10" width="5" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="20" y="45"/>
<rect x="10" width="5" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="20" y="85"/>
<text x="60" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="4A" color="#000000" y="30"/>
<text x="4.5" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="A" color="#000000" y="92"/>
<text x="5" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="A" color="#000000" y="52"/>
<rect x="10" width="5" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:black;color:black" height="10" y="55"/>
<rect x="10" width="5" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:black;color:black" height="10" y="95"/>
<rect x="30.1518" width="3.01184" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="7"/>
<rect x="9.5" width="20" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="5" y="112"/>
<rect x="10" width="20" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="5" y="72"/>
<rect x="9.5" width="10" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:black;color:black" height="5" y="72"/>
<rect x="9.5" width="10" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:black;color:black" height="5" y="112"/>
<rect x="19" width="27" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="21" y="85"/>
<rect x="19" width="27" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="21" y="45"/>
<text x="35" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="D" color="#000000" y="4"/>
<rect x="21" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="47"/>
<rect x="21" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="87"/>
<text x="27" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="B" color="#000000" y="4"/>
<rect x="29" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="87"/>
<rect x="29" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="47"/>
<rect x="21" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:none;filling:black;color:black" height="7.5" y="94.5"/>
<rect x="21" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:none;filling:black;color:black" height="7.5" y="54.5"/>
<text x="32" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="G" color="#000000" y="36"/>
<text x="39" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="E" color="#000000" y="4"/>
<text x="12" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="H" color="#000000" y="4"/>
<text x="35.2609" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="4" color="#000000" y="25"/>
<rect x="26" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="7"/>
<text x="59.5" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="1A&#xa;" color="#000000" y="150.5"/>
<text x="22" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="1" color="#000000" y="25"/>
<rect x="29.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="127.5"/>
<text x="31.1558" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="3" color="#000000" y="25"/>
<text x="26.136" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="2" color="#000000" y="25"/>
<text x="34" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="D" color="#000000" y="124"/>
<text x="43.3126" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="6" color="#000000" y="25"/>
<text x="39.2867" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="5" color="#000000" y="25"/>
<rect x="50" width="20" antialias="false" rx="1" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="40" y="0"/>
<text x="26" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="B" color="#000000" y="124"/>
<text x="31.5" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="G" color="#000000" y="156.5"/>
<text x="59.416" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="4B" color="#000000" y="10"/>
<text x="5" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="B" color="#000000" y="25"/>
<text x="38" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="E" color="#000000" y="124"/>
<rect x="0" width="50" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="40" y="0"/>
<text x="11.17" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="H" color="#000000" y="124"/>
<rect x="10" width="5" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="20" y="5"/>
<text x="5" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="A" color="#000000" y="10"/>
<text x="34" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="4" color="#000000" y="145.5"/>
<rect x="10" width="5" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:black;color:black" height="10" y="15"/>
<rect x="9.5" width="20" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="5" y="32"/>
<rect x="25.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="127.5"/>
<rect x="8.5896" width="10.0646" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:black;color:black" height="5" y="32"/>
<rect x="20" width="27" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="20" y="5"/>
<text x="22" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="1" color="#000000" y="145.5"/>
<rect x="30.1518" width="3.01184" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="8" y="14"/>
<text x="30" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="3" color="#000000" y="145.5"/>
<text x="26" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="2" color="#000000" y="145.5"/>
<text x="42" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="6" color="#000000" y="145.5"/>
<text x="38" font="Sans Serif,2,-1,5,50,0,0,0,0,0" rotation="0" text="5" color="#000000" y="145.5"/>
<rect x="50" width="20" antialias="false" rx="1" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="40" y="120"/>
<text x="59.5" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="1B" color="#000000" y="130.5"/>
<text x="5" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="B" color="#000000" y="145.5"/>
<rect x="0" width="50" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="40" y="120"/>
<rect x="9.5" width="5" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="20" y="125.5"/>
<text x="5" font="Sans Serif,4,-1,5,50,0,0,0,0,0" rotation="0" text="A" color="#000000" y="132.5"/>
<rect x="9.5" width="5" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:black;color:black" height="10" y="135.5"/>
<rect x="9.5" width="20" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" height="5" y="152"/>
<rect x="9.5" width="10" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:normal;filling:black;color:black" height="5" y="152"/>
<rect x="19.5" width="27" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="21" y="125.5"/>
<rect x="21.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:none;color:black" height="15" y="127.5"/>
<rect x="29.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:thin;filling:black;color:black" height="7.5" y="127.5"/>
<rect x="21.5" width="3" antialias="false" rx="0" ry="0" style="line-style:normal;line-weight:none;filling:black;color:black" height="7.5" y="135"/>
<dynamic_text x="20" z="149" font="MS Shell Dlg 2,8,-1,5,50,0,0,0,0,0,Normal" Valignment="AlignTop" rotation="0" frame="false" Halignment="AlignLeft" text_width="-1" text_from="ElementInfo" uuid="{8657c0ee-49f9-445f-9272-149d9ea58486}" y="170">
<text>4-AI</text>
<info_name>label</info_name>
</dynamic_text>
<rect ry="0" x="21.5" rx="0" height="7.5" antialias="false" width="3" style="line-style:normal;line-weight:none;filling:black;color:black" y="135"/>
<terminal x="70" uuid="{81de53db-75f5-474c-bab6-e258e2b8c371}" name="3A" y="70" orientation="e"/>
<terminal x="70" uuid="{91c0d9a2-5815-497a-bc87-99e19b98795e}" name="4A" y="30" orientation="e"/>
<terminal x="69.5" uuid="{59ec38a0-8c11-4117-82f3-74d1b3f31aa9}" name="2A" y="110" orientation="e"/>
<terminal x="69.5" uuid="{e658a9e2-0a3f-414f-9c88-e8c618f5ea97}" name="2B" y="90" orientation="e"/>
<terminal x="69.5" uuid="{a4e771d1-c748-496e-bf2b-e4a2cf1084e8}" name="3B" y="50" orientation="e"/>
<terminal x="70" uuid="{10c8d23f-02c6-4efe-97e7-156b4595f8c7}" name="4B" y="10" orientation="e"/>
<terminal x="69.5" uuid="{0daea7b6-b0c9-4400-9748-24f8554546f5}" name="1A" y="150" orientation="e"/>
<terminal x="69.5" uuid="{da340c7e-9dba-4bdb-bdb5-a4b94d0a932b}" name="1B" y="130" orientation="e"/>
<terminal x="69.5" orientation="e" y="70"/>
<terminal x="70" orientation="e" y="30"/>
<terminal x="69.5" orientation="e" y="110"/>
<terminal x="69.5" orientation="e" y="90"/>
<terminal x="69.5" orientation="e" y="50"/>
<terminal x="70" orientation="e" y="10"/>
<terminal x="69.5" orientation="e" y="150"/>
<terminal x="69.5" orientation="e" y="130"/>
</description>
</definition>
@@ -1,104 +0,0 @@
<definition version="0.80" link_type="slave" hotspot_x="200" height="180" width="300" type="element" hotspot_y="89">
<uuid uuid="{863883e5-387a-410f-b4e4-08da560f2f5f}"/>
<names>
<name lang="fr">Façade S550 implantation</name>
</names>
<kindInformations>
<kindInformation name="number" show="1">1</kindInformation>
<kindInformation name="state" show="1">NO</kindInformation>
<kindInformation name="type" show="1">simple</kindInformation>
</kindInformations>
<informations>Author: The QElectroTech team
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<rect antialias="false" y="-67.4598" height="149.6" rx="0" ry="0" width="271.763" x="-194.712" style="line-style:normal;line-weight:normal;filling:white;color:black"/>
<polygon y1="51.3402" x5="-169.472" y4="59.3402" x3="-155.642" closed="false" antialias="false" x4="-166.015" y2="51.3402" x1="-169.472" y5="51.3402" y3="59.3402" x2="-152.185" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="71.3402" height="6.8" rx="0" ry="0" width="17.2877" x="46.97" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="71.3402" height="6.8" rx="0" ry="0" width="17.2877" x="15.1606" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="71.3402" height="6.8" rx="0" ry="0" width="17.2877" x="-17.3403" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="71.3402" height="6.8" rx="0" ry="0" width="17.2877" x="-49.4955" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="71.3402" height="6.8" rx="0" ry="0" width="15.559" x="-83.7252" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="7" y="69.7402" x="44.5497" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="6" y="69.7402" x="12.3946" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="5" y="69.7402" x="-20.4521" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="4" y="69.7402" x="-52.6073" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="3" y="69.7402" x="-86.4912" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="2" y="69.7402" x="-119.684" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="1" y="69.7402" x="-152.185" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
<rect antialias="false" y="-61.0598" height="12.4" rx="0" ry="0" width="23.8571" x="48.6988" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<arc antialias="true" y="-60.6598" height="80" width="345.754" x="-143.886" start="-74" angle="-50" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<arc antialias="true" y="-31.8598" height="80" width="345.754" x="-195.058" start="-55" angle="-120" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="GND" y="20" x="84" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="V+" y="13" x="84" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="REF" y="5" x="84" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="T-" y="-3" x="84" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="T+" y="-9" x="84" font="Sans Serif,4,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="0" y="69.7402" x="-183.648" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
<line y1="15.3402" length2="1.5" antialias="false" end1="none" y2="15.3402" length1="1.5" end2="none" x1="77.0507" x2="82.9285" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<line y1="7.3402" length2="1.5" antialias="false" end1="none" y2="7.3402" length1="1.5" end2="none" x1="77.0507" x2="82.9285" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<line y1="-0.6598" length2="1.5" antialias="false" end1="none" y2="-0.6598" length1="1.5" end2="none" x1="77.0507" x2="82.9285" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<line y1="-8.6598" length2="1.5" antialias="false" end1="none" y2="-8.6598" length1="1.5" end2="none" x1="77.0507" x2="82.9285" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<line y1="-16.6598" length2="1.5" antialias="false" end1="none" y2="23.3402" length1="1.5" end2="none" x1="82.9285" x2="82.9285" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="-16.6598" length2="1.5" antialias="false" end1="none" y2="-16.6598" length1="1.5" end2="none" x1="77.0507" x2="82.9285" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="23.3402" length2="1.5" antialias="false" end1="none" y2="23.3402" length1="1.5" end2="none" x1="77.0507" x2="82.9285" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="71.3402" height="6.8" rx="0" ry="0" width="17.2877" x="-116.572" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="71.3402" height="6.8" rx="0" ry="0" width="17.2877" x="-149.073" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="70" height="6.8" rx="0" ry="0" width="15.559" x="-180" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<text rotation="0" color="#000000" text="550" y="-40" x="-10" font="Sans Serif,17,-1,5,50,0,0,0,0,0"/>
<text rotation="0" color="#000000" text="s" y="-40" x="-30" font="Sans Serif,30,-1,5,50,0,0,0,0,0"/>
<ellipse antialias="true" height="4.52548" y="-6.9226" width="3.91176" x="22.6486" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<ellipse antialias="true" height="4.52548" y="-6.9226" width="3.91176" x="0.411761" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<rect antialias="false" y="-36.2598" height="22.4" rx="0" ry="0" width="51.1717" x="-12.154" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="39" text_width="-1" y="59" uuid="{d247c0c9-d5c8-4ca6-a555-252c3fac578b}" Valignment="AlignTop" x="-20" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal">
<text>_</text>
</dynamic_text>
<dynamic_text frame="false" rotation="0" z="40" text_width="-1" y="66" uuid="{854541e9-02ba-436c-9979-b774ee21b8fb}" Valignment="AlignTop" x="14" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,5,-1,5,0,0,0,0,0,0,normal">
<text>4AI</text>
</dynamic_text>
<dynamic_text frame="false" rotation="0" z="41" text_width="-1" y="66" uuid="{57f68c93-e25b-472e-9884-549e6de5bf27}" Valignment="AlignTop" x="45" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,5,-1,5,0,0,0,0,0,0,normal">
<text>4AO</text>
</dynamic_text>
<dynamic_text frame="false" rotation="0" z="42" text_width="-1" y="59" uuid="{62e7462d-6d1b-451d-bb63-f805c15990e8}" Valignment="AlignTop" x="-87" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal">
<text>_</text>
</dynamic_text>
<dynamic_text frame="false" rotation="0" z="43" text_width="-1" y="59" uuid="{3d6f7117-d5ac-4a59-9d5b-c320540eeb64}" Valignment="AlignTop" x="-52" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal">
<text>_</text>
</dynamic_text>
<ellipse antialias="true" height="30" y="17.9402" width="25.9316" x="18.791" style="line-style:normal;line-weight:normal;filling:black;color:black"/>
<line y1="30.9402" length2="1.5" antialias="false" end1="none" y2="-67.4598" length1="1.5" end2="none" x1="-163.767" x2="-163.767" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="38.9402" length2="1.5" antialias="false" end1="none" y2="-67.4598" length1="1.5" end2="none" x1="-131.785" x2="-131.785" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text frame="false" rotation="0" z="47" text_width="-1" y="59" uuid="{945b8039-7fa4-4dcd-927a-0be59d0b9e87}" Valignment="AlignTop" x="-119" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal">
<text>_</text>
</dynamic_text>
<dynamic_text frame="false" rotation="0" z="48" text_width="-1" y="59" uuid="{ed382d19-3991-42aa-98b1-84fad4c9d172}" Valignment="AlignTop" x="-151" text_from="UserText" Halignment="AlignLeft" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal">
<text>_</text>
</dynamic_text>
<line y1="43.3402" length2="1.5" antialias="false" end1="none" y2="-67.4598" length1="1.5" end2="none" x1="-99.8028" x2="-99.8028" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line y1="46.4402" length2="1.5" antialias="false" end1="none" y2="-67.4598" length1="1.5" end2="none" x1="-68.1662" x2="-68.1662" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<ellipse antialias="true" height="28" y="18.9402" width="24.2028" x="19.6554" style="line-style:normal;line-weight:normal;filling:white;color:black"/>
<dynamic_text frame="false" rotation="0" z="52" text_width="-1" y="-55.8598" uuid="{f0bbdd51-767d-454f-8459-586856d862ea}" Valignment="AlignTop" x="86.7318" text_from="ElementInfo" Halignment="AlignLeft" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<terminal name="" orientation="s" y="82" uuid="{bc8c4d49-bf0d-4a60-a1ca-adb572889f5a}" x="15"/>
<terminal name="" orientation="s" y="82" uuid="{ea831128-209c-40f1-8297-36c6ab3d0c69}" x="-170"/>
<terminal name="" orientation="e" y="12.5402" uuid="{5ef6ae41-c7b5-4fa1-9fc9-a1aa7c3a8971}" x="83.2742"/>
<terminal name="" orientation="e" y="-3.4598" uuid="{19cfafc5-fbec-4202-b73b-01a5728d3549}" x="83.2742"/>
<terminal name="" orientation="s" y="82.1402" uuid="{bdbb57d3-509c-4258-a0bb-83f01b51b387}" x="-104.816"/>
<terminal name="" orientation="s" y="82" uuid="{f7912032-0101-4bcb-b8fa-77efabdc1736}" x="25"/>
<terminal name="" orientation="s" y="82" uuid="{db180fbd-bf61-4508-a29e-de94aef615d3}" x="50"/>
<terminal name="" orientation="s" y="82" uuid="{6eac4dcc-3b12-4763-956a-3ee88967bfee}" x="20"/>
<terminal name="" orientation="s" y="82.1402" uuid="{1c4a2e28-e236-4ce6-a9b5-146e9eea0f75}" x="-142.849"/>
<terminal name="" orientation="s" y="82.1402" uuid="{955b05d2-4254-4087-9939-ee6175348acd}" x="-135.934"/>
<terminal name="" orientation="e" y="-11.4598" uuid="{c287b014-ec5f-45af-b982-a8242b71de4f}" x="83.2742"/>
<terminal name="" orientation="s" y="82" uuid="{a072c608-8d19-4ef0-afc0-0d7114388be0}" x="30"/>
<terminal name="" orientation="s" y="82" uuid="{c3de5ad8-40d2-4a6f-98d7-b0e16b088721}" x="60"/>
<terminal name="" orientation="e" y="20.5402" uuid="{15522d63-25f5-4950-bad6-fc00e8ebd08c}" x="83.2742"/>
<terminal name="" orientation="e" y="40.5402" uuid="{67913dd7-b584-4156-b12b-021060bfa548}" x="78.4337"/>
<terminal name="" orientation="s" y="82" uuid="{807b3392-9630-4efd-bf2e-e3f2a7af3808}" x="-80"/>
<terminal name="" orientation="e" y="4.5402" uuid="{c3e57ef4-cced-4dfd-ba2b-0433db4cf505}" x="83.2742"/>
<terminal name="" orientation="s" y="82.1402" uuid="{5057d5d9-a5e4-4a13-9aa0-f965b887f93a}" x="-73.6983"/>
<terminal name="" orientation="s" y="82" uuid="{68583810-41f5-4818-a34b-f24b367c7217}" x="-110"/>
<terminal name="" orientation="s" y="82.1402" uuid="{a651bae7-1771-423d-a226-4e0160c97278}" x="-177.425"/>
</description>
</definition>
@@ -1,40 +0,0 @@
<definition type="element" hotspot_x="5" link_type="terminal" hotspot_y="4" width="30" height="130" version="0.80">
<uuid uuid="{b8d4522e-81ed-48b7-a0af-8b2fb06e04a8}"/>
<names>
<name lang="fr">Borne grise</name>
</names>
<elementInformations>
<elementInformation name="unity" show="1"></elementInformation>
<elementInformation name="manufacturer" show="1">Legrand</elementInformation>
<elementInformation name="supplier" show="1"></elementInformation>
<elementInformation name="plant" show="1"></elementInformation>
<elementInformation name="comment" show="1"></elementInformation>
<elementInformation name="machine_manufacturer_reference" show="1"></elementInformation>
<elementInformation name="description" show="1"></elementInformation>
<elementInformation name="label" show="1"></elementInformation>
<elementInformation name="manufacturer_reference" show="1"></elementInformation>
<elementInformation name="designation" show="1"></elementInformation>
<elementInformation name="quantity" show="1"></elementInformation>
</elementInformations>
<informations>Author: The QElectroTech team&#xd;
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<rect y="0" x="0" ry="0" rx="0" width="20" height="120" antialias="false" style="line-style:normal;line-weight:normal;filling:gray;color:black"/>
<line end2="none" end1="none" x1="10" length2="1.5" length1="1.5" x2="10" y1="11" antialias="false" y2="19" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<line end2="none" end1="none" x1="6" length2="1.5" length1="1.5" x2="14" y1="15" antialias="false" y2="15" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<line end2="none" end1="none" x1="10" length2="1.5" length1="1.5" x2="10" y1="101" antialias="false" y2="109" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<circle y="101" x="6" antialias="true" diameter="8" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<line end2="none" end1="none" x1="6" length2="1.5" length1="1.5" x2="14" y1="105" antialias="false" y2="105" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<line end2="none" end1="none" x1="0" length2="1.5" length1="1.5" x2="20" y1="10" antialias="false" y2="10" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<line end2="none" end1="none" x1="0" length2="1.5" length1="1.5" x2="20" y1="110" antialias="false" y2="110" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<line end2="none" end1="none" x1="1" length2="1.5" length1="1.5" x2="20" y1="100" antialias="false" y2="100" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<line end2="none" end1="none" x1="1" length2="1.5" length1="1.5" x2="20" y1="20" antialias="false" y2="20" style="line-style:normal;line-weight:thin;filling:none;color:black"/>
<circle y="11" x="6" antialias="true" diameter="8" style="line-style:normal;line-weight:normal;filling:none;color:black"/>
<dynamic_text y="150" x="0" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal" text_from="ElementInfo" rotation="270" frame="false" Valignment="AlignTop" uuid="{b96ddaf4-2da5-4443-aed8-8933dd2fca18}" z="13" text_width="-1" Halignment="AlignLeft">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<terminal y="0" name="" x="10" orientation="n" uuid="{4ea09df9-1cfe-4632-a4af-703c14d5f1a8}"/>
<terminal y="120" name="" x="10" orientation="s" uuid="{f442a6ce-3820-4349-9e3d-669ec4888a7a}"/>
</description>
</definition>
@@ -1,48 +0,0 @@
<definition link_type="terminal" type="element" height="130" hotspot_y="4" hotspot_x="5" version="0.80" width="30">
<uuid uuid="{e25aaf3d-23ef-4a75-ae0b-30dd57c09269}"/>
<names>
<name lang="it">Base P2RF 1</name>
<name lang="fr">Borne de terre</name>
<name lang="el">Βάση P2RF 1</name>
<name lang="nl">Basis P2RF 1</name>
<name lang="pl">Podstawa P2RF 1</name>
<name lang="cs">Patice P2RF 1</name>
<name lang="en">Base P2RF 1</name>
</names>
<elementInformations>
<elementInformation show="1" name="manufacturer">Legrand</elementInformation>
<elementInformation show="1" name="quantity"></elementInformation>
<elementInformation show="1" name="manufacturer_reference"></elementInformation>
<elementInformation show="1" name="supplier"></elementInformation>
<elementInformation show="1" name="plant"></elementInformation>
<elementInformation show="1" name="machine_manufacturer_reference"></elementInformation>
<elementInformation show="1" name="description"></elementInformation>
<elementInformation show="1" name="designation"></elementInformation>
<elementInformation show="1" name="comment"></elementInformation>
<elementInformation show="1" name="unity"></elementInformation>
<elementInformation show="1" name="label"></elementInformation>
</elementInformations>
<informations>Author: The QElectroTech team&#xd;
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<rect y="0" ry="0" style="line-style:normal;line-weight:normal;filling:yellow;color:yellow" x="10.5" height="120" rx="0" antialias="false" width="9"/>
<rect y="0" ry="0" style="line-style:normal;line-weight:normal;filling:green;color:green" x="0.5" height="120" rx="0" antialias="false" width="9"/>
<rect y="0" ry="0" style="line-style:normal;line-weight:normal;filling:none;color:black" x="0" height="120" rx="0" antialias="false" width="20"/>
<line y2="19" end2="none" style="line-style:normal;line-weight:thin;filling:none;color:black" length1="1.5" x1="10" y1="11" antialias="false" end1="none" length2="1.5" x2="10"/>
<line y2="15" end2="none" style="line-style:normal;line-weight:thin;filling:none;color:black" length1="1.5" x1="6" y1="15" antialias="false" end1="none" length2="1.5" x2="14"/>
<line y2="109" end2="none" style="line-style:normal;line-weight:thin;filling:none;color:black" length1="1.5" x1="10" y1="101" antialias="false" end1="none" length2="1.5" x2="10"/>
<circle y="101" style="line-style:normal;line-weight:normal;filling:none;color:black" x="6" diameter="8" antialias="true"/>
<line y2="105" end2="none" style="line-style:normal;line-weight:thin;filling:none;color:black" length1="1.5" x1="6" y1="105" antialias="false" end1="none" length2="1.5" x2="14"/>
<line y2="10" end2="none" style="line-style:normal;line-weight:thin;filling:none;color:black" length1="1.5" x1="0" y1="10" antialias="false" end1="none" length2="1.5" x2="20"/>
<line y2="110" end2="none" style="line-style:normal;line-weight:thin;filling:none;color:black" length1="1.5" x1="0" y1="110" antialias="false" end1="none" length2="1.5" x2="20"/>
<line y2="100" end2="none" style="line-style:normal;line-weight:thin;filling:none;color:black" length1="1.5" x1="1" y1="100" antialias="false" end1="none" length2="1.5" x2="20"/>
<line y2="20" end2="none" style="line-style:normal;line-weight:thin;filling:none;color:black" length1="1.5" x1="1" y1="20" antialias="false" end1="none" length2="1.5" x2="20"/>
<dynamic_text frame="false" Halignment="AlignLeft" Valignment="AlignTop" y="150" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal" z="13" x="0" text_width="-1" text_from="ElementInfo" rotation="270" uuid="{b96ddaf4-2da5-4443-aed8-8933dd2fca18}">
<text></text>
<info_name>label</info_name>
</dynamic_text>
<circle y="11" style="line-style:normal;line-weight:normal;filling:none;color:black" x="6" diameter="8" antialias="true"/>
<terminal orientation="s" y="120" x="10" name="" uuid="{f442a6ce-3820-4349-9e3d-669ec4888a7a}"/>
<terminal orientation="n" y="0" x="10" name="" uuid="{4ea09df9-1cfe-4632-a4af-703c14d5f1a8}"/>
</description>
</definition>
@@ -1,29 +0,0 @@
<definition type="element" hotspot_x="2" link_type="terminal" hotspot_y="5" width="10" height="130" version="0.80">
<uuid uuid="{1b3a998d-3ecf-49e9-8b7c-bfb3c7bd3d7c}"/>
<names>
<name lang="fr">Cloison terminale</name>
</names>
<elementInformations>
<elementInformation name="unity" show="1"></elementInformation>
<elementInformation name="manufacturer" show="1">Legrand</elementInformation>
<elementInformation name="supplier" show="1"></elementInformation>
<elementInformation name="plant" show="1"></elementInformation>
<elementInformation name="comment" show="1"></elementInformation>
<elementInformation name="machine_manufacturer_reference" show="1"></elementInformation>
<elementInformation name="description" show="1"></elementInformation>
<elementInformation name="label" show="1"></elementInformation>
<elementInformation name="manufacturer_reference" show="1"></elementInformation>
<elementInformation name="designation" show="1"></elementInformation>
<elementInformation name="quantity" show="1"></elementInformation>
</elementInformations>
<informations>S.DEFFAUX
Author: The QElectroTech team
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<rect y="0" x="0" ry="0" rx="0" width="5" height="120" antialias="false" style="line-style:normal;line-weight:normal;filling:HTMLGrayLightSlateGray;color:black"/>
<dynamic_text y="150" x="0" font="Sans Serif,9,-1,5,0,0,0,0,0,0,normal" text_from="ElementInfo" rotation="270" frame="false" Valignment="AlignTop" uuid="{b96ddaf4-2da5-4443-aed8-8933dd2fca18}" z="13" text_width="-1" Halignment="AlignLeft">
<text></text>
<info_name>label</info_name>
</dynamic_text>
</description>
</definition>
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+443 -507
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+1033 -1102
View File
File diff suppressed because it is too large Load Diff
+443 -507
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+612 -677
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+492 -556
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+515 -581
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+500 -564
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+454 -516
View File
File diff suppressed because it is too large Load Diff
+445 -509
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+440 -504
View File
File diff suppressed because it is too large Load Diff
+443 -507
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+444 -508
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+7948 -8016
View File
File diff suppressed because it is too large Load Diff
+445 -509
View File
File diff suppressed because it is too large Load Diff
+439 -503
View File
File diff suppressed because it is too large Load Diff
+445 -509
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+445 -509
View File
File diff suppressed because it is too large Load Diff
+445 -509
View File
File diff suppressed because it is too large Load Diff
+443 -510
View File
File diff suppressed because it is too large Load Diff
+445 -509
View File
File diff suppressed because it is too large Load Diff
+443 -507
View File
File diff suppressed because it is too large Load Diff
+444 -508
View File
File diff suppressed because it is too large Load Diff
+439 -503
View File
File diff suppressed because it is too large Load Diff
+439 -503
View File
File diff suppressed because it is too large Load Diff
+439 -503
View File
File diff suppressed because it is too large Load Diff
+445 -509
View File
File diff suppressed because it is too large Load Diff
+439 -503
View File
File diff suppressed because it is too large Load Diff
-47
View File
@@ -1,47 +0,0 @@
#!/bin/bash
#set -x
#delete old qet.h
rm sources/qet.h
cd sources
git reset --hard origin/master
cd ..
# get updates
git pull --recurse-submodules
sed -i 's/DEFINES += QET_EXPORT_PROJECT_DB/#DEFINES += QET_EXPORT_PROJECT_DB/' qelectrotech.pro
GITCOMMIT=$(git rev-parse --short HEAD)
A=$(git rev-list HEAD --count)
HEAD=$(($A+473))
# We recover the version number of the original
tagName=$(sed -n "s/const QString displayedVersion =\(.*\)/\1/p" sources/qet.h | cut -d\" -f2 | cut -d\" -f1 )
# On modifie l'originale avec le numéro de révision du dépôt GIT
sed -i 's/'"const QString displayedVersion =.*/const QString displayedVersion = \"$tagName+$GITCOMMIT\";"'/' sources/qet.h
rm -Rf build/
mkdir build && cd build
qmake ../qelectrotech.pro
make -j48
cd ../appdir/
rm qelectrotech/usr/bin/qelectrotech
rm -Rf qelectrotech/usr/{lib,plugins}
rm -Rf qelectrotech/usr/share/{elements,examples,titleblocks,lang,man,doc}
cp ../build/qelectrotech qelectrotech/usr/bin/
cp -r ../{elements,examples,titleblocks,lang,man} qelectrotech/usr/share/
./linuxdeployqt-continuous-x86_64.AppImage qelectrotech/usr/share/qelectrotech.desktop -appimage -bundle-non-qt-libs -verbose=1 -extra-plugins=iconengines
rm qelectrotech/AppRun
sed -i 's/'"QElectroTech_0.8-DEV.*/QElectroTech_0.8-DEV-r"$HEAD""'/' qelectrotech/qelectrotech.desktop
cp AppRun qelectrotech/
rm QElectroTech_*.AppImage
ARCH=x86_64 ./appimagetool-x86_64.AppImage qelectrotech
chmod -x QElectroTech_0.8-DEV-r$HEAD-x86_64.AppImage
-374
View File
@@ -1,374 +0,0 @@
#!/bin/bash
#nettoyage des chroots
#set -x
eval $(gpg-agent --daemon)
#variables repertoires de travail
DEFAULT_DIR="$HOME/paquet_qet"
TEMP_DIR="$HOME"
SSH_TARGET='scorpio810@ssh.tuxfamily.org:/home/qet/qelectrotech.org-web/htdocs/dl_link.inc.php'
SSH_OPTIONS=-B
cd $DEFAULT_DIR
cd qet_git
# get updates
git pull --recurse-submodules
GITCOMMIT=$(git rev-parse --short HEAD)
#Find Subversion revision number in trunk branch
if [ -z "$HEAD" ] ; then
A=$(git rev-list HEAD --count)
HEAD=$(($A+473))
# force displayed number
fi
VERSION=$(cat sources/qet.h | grep "const QString version" | cut -d\" -f2 | cut -d\" -f1) #Find version tag in Subversion sources/qet.h
tagName=$(cat sources/qet.h | grep displayedVersion | cut -d\" -f2 | cut -d\" -f1) #Find displayedVersion tag in Subversion sources/qet.h
#clean /var/cache/pbuilder/ .. / result/debs
echo -e "\033[1;31mWould you like to clean all debs n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
echo -e "\033[1;31mClean_all_base_environment.\033[m"
cd /var/cache/pbuilder/stable-amd64/result/ && sudo rm qe*
cd /var/cache/pbuilder/unstable-amd64/result/ && sudo rm qe*
cd /var/cache/pbuilder/stable-i386/result/ && sudo rm qe*
cd /var/cache/pbuilder/unstable-i386/result/ && sudo rm qe*
else
echo -e "\033[1;33mNo Clean_all_base_environment.\033[m"
fi
#clean all apt cache
echo -e "\033[1;31mWould you like to clean all pbuilder n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
echo -e "\033[1;31mClean_all_pbuilder_environment.\033[m"
DIST=stable ARCH=i386 sudo pbuilder --clean
DIST=stable ARCH=amd64 sudo pbuilder --clean
DIST=unstable ARCH=i386 sudo pbuilder --clean
DIST=unstable ARCH=amd64 sudo pbuilder --clean
else
echo -e "\033[1;33mNo Clean_all_pbuilder_environment.\033[m"
fi
#Update des chroots
echo -e "\033[1;31mWould you like to update all chroots n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
echo -e "\033[1;33mUpdate_all_base_environment..\033[m"
sudo DIST=stable ARCH=i386 pbuilder update --override-config --configfile /home/laurent/.pbuilderrc
sudo DIST=sid ARCH=i386 pbuilder update --override-config --configfile /home/laurent/.pbuilderrc
sudo DIST=stable pbuilder update --override-config --configfile /home/laurent/.pbuilderrc
sudo DIST=sid pbuilder update --override-config --configfile /home/laurent/.pbuilderrc
else
echo -e "\033[1;33mNo Update_all_base_environment.\033[m"
fi
echo -e "\033[1;34mdownload source qelectrotech-$VERSION.r$HEAD.\033[m"
cd $TEMP_DIR
cp -r $DEFAULT_DIR/qet_git/ $TEMP_DIR/qelectrotech-$VERSION.r$HEAD/
rm -rf qelectrotech-$VERSION.r$HEAD/.git
#create svn tarball
tar cfvz qelectrotech-$VERSION.r$HEAD.tar.gz qelectrotech-$VERSION.r$HEAD/
#copy tarball in $DEFAULT_DIR
cp qelectrotech-$VERSION.r$HEAD.tar.gz $DEFAULT_DIR
clean $TEMP_DIR
rm -Rf qelectrotech-$VERSION.r$HEAD/ && rm qelectrotech-$VERSION.r$HEAD.tar.gz
#return to working directory
cd $DEFAULT_DIR
#extract tarball and go to archive
tar zxvf qelectrotech-$VERSION.r$HEAD.tar.gz && cd qelectrotech-$VERSION.r$HEAD/
#create origin.tar.gz
dh_make -e scorpio@qelectrotech.org -c gpl2 -f ../qelectrotech-$VERSION.r$HEAD.tar.gz
#clean debian folder
cd /
rm -Rf debian/
#return to working directory
cd $DEFAULT_DIR
#copy debian folder
cp -r debian/ qelectrotech-$VERSION.r$HEAD/
#update changelog to new release
cd qelectrotech-$VERSION.r$HEAD/
dch -d -D unstable "New upstream subversion version "
#edit changelog
echo -e "\033[1;31mWould you like to edit changelog n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
echo -e "\033[1;31mEdit debian changelog..\033[m"
dch --edit
else
echo -e "\033[1;33mNo edit changelog.\033[m"
fi
cd debian/ && rm -rf *ex *EX README*
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/debian/patches/
sed -i 's/'"$tagName+[0-9]*"'/'"$tagName+$GITCOMMIT"'/' 03_qet.diff
#deplacement dans le paquet_qet
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/
quilt push
quilt push
quilt refresh
echo -e "\033[1;31mWould you like to build Debian packages n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
#build
echo -e "\033[1;34mBuild_all_environements.\033[m"
sudo DIST=sid ARCH=amd64 pdebuild --configfile /home/laurent/.pbuilderrc
sudo DIST=sid ARCH=i386 pdebuild --configfile /home/laurent/.pbuilderrc
dch -i -D stable "Backport stable " &&
sudo DIST=stable ARCH=amd64 pdebuild --configfile /home/laurent/.pbuilderrc
sudo DIST=stable ARCH=i386 pdebuild --configfile /home/laurent/.pbuilderrc
STRING="Build_all_environements is ready!!!"
echo $STRING
#prepare download copys
cd $DEFAULT_DIR
mkdir -p $HEAD/stable/amd64
mkdir -p $HEAD/stable/i386
mkdir -p $HEAD/sid/amd64
mkdir -p $HEAD/sid/i386
#copie des debs des results vers $HEAD
find /var/cache/pbuilder/stable-amd64/result -name "qe*" -exec cp {} $DEFAULT_DIR/$HEAD/stable/amd64 \;
find /var/cache/pbuilder/stable-i386/result -name "qe*" -exec cp {} $DEFAULT_DIR/$HEAD/stable/i386 \;
find /var/cache/pbuilder/unstable-amd64/result -name "qe*" -exec cp {} $DEFAULT_DIR/$HEAD/sid/amd64 \;
find /var/cache/pbuilder/unstable-i386/result -name "qe*" -exec cp {} $DEFAULT_DIR/$HEAD/sid/i386 \;
#debsign
echo -e "\033[1;31mWould you like to sign all packages n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
#debsign stable amd64
cd $DEFAULT_DIR/$HEAD/stable/amd64
debsign -k D3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1 *.changes
echo -e "\033[1;33mAll stable amd64 are sign.\033[m"
#debsign sid amd64
cd $DEFAULT_DIR/$HEAD/sid/amd64
debsign -k D3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1 *.changes
echo -e "\033[1;33mAll sid amd64 are sign.\033[m"
#debsign stable i386
cd $DEFAULT_DIR/$HEAD/stable/i386
debsign -k D3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1 *.changes
echo -e "\033[1;33mAll stable i386 are sign.\033[m"
#debsign sid i386
cd $DEFAULT_DIR/$HEAD/sid/i386
debsign -k D3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1 *.changes
echo -e "\033[1;33mAll sid i386 are sign.\033[m"
else
echo -e "\033[1;33mExit.\033[m"
fi
#upload vers incoming
echo -e "\033[1;31mWould you like to upload to incoming n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
echo -e "\033[1;33mUpload qelectrotech-$VERSION.r$HEAD.\033[m"
cd ~/apt
reprepro -vb . include unstable $DEFAULT_DIR/$HEAD/sid/amd64/*.changes
reprepro -vb . includedeb unstable $DEFAULT_DIR/$HEAD/sid/i386/*i386.deb
reprepro -vb . include stable $DEFAULT_DIR/$HEAD/stable/amd64/*.changes
reprepro -vb . includedeb stable $DEFAULT_DIR/$HEAD/stable/i386/*i386.deb
reprepro -b . export
else
echo -e "\033[1;33mExit.\033[m"
fi
#rsync to TF
echo -e "\033[1;31mWould you like to RSYNC Debian packages to TF n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
echo -e "\033[1;33mRsync to TF qelectrotech-$VERSION.r$HEAD .\033[m"
echo -e "\033[1;31mrsync to TF password ssh and TF\033[m"
cd $DEFAULT_DIR/script
rsync -e ssh -av --delete-after --no-owner --no-g --chmod=g+w --progress --exclude-from=ExclusionRSync ~/apt/ scorpio810@ssh.tuxfamily.org:/home/qet/qet-repository/debian/
if [ $? != 0 ]; then
{
echo "RSYNC ERROR: problem syncing qelectrotech-$VERSION.r$HEAD "
rsync -e ssh -av --delete-after --no-owner --no-g --chmod=g+w --progress --exclude-from=ExclusionRSync ~/apt/ scorpio810@ssh.tuxfamily.org:/home/qet/qet-repository/debian/
} fi
else
echo -e "\033[1;33mExit.\033[m"
fi
else
echo -e "\033[1;33mExit.\033[m"
fi
############# Ubuntu packages ################################################################################################
echo -e "\033[1;31mWould you like to build Ubuntu PPA packages n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
#deplacement dans le paquet_qet
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/
dch -i -D bionic "Bionic Upload to ppa"
debuild -S -sa -kD3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1
dch -i -D eoan "Eoan Upload to ppa"
debuild -S -kD3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1
dch -i -D disco "Disco Upload to ppa"
debuild -S -kD3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1
cd $DEFAULT_DIR/
dput my-ppa-dev qelectrotech_$VERSION.r$HEAD-*ubuntu1_source.changes
dput my-ppa-dev qelectrotech_$VERSION.r$HEAD-*ubuntu2_source.changes
dput my-ppa-dev qelectrotech_$VERSION.r$HEAD-*ubuntu3_source.changes
else
echo -e "\033[1;33mExit.\033[m"
fi
############# Windows packages ################################################################################################
#copy and update folders of nsis_base skeleton
echo -e "\033[1;31mWould you like to build Window packages n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
# 32 bits
cd $DEFAULT_DIR
cp -r qelectrotech-$VERSION.r$HEAD/ qelectrotech-$VERSION.r$HEAD-XP/
cp -r nsis_base nsis_base$HEAD
cd qelectrotech-$VERSION.r$HEAD/
cp -r {elements,examples,titleblocks} /$DEFAULT_DIR/nsis_base$HEAD/files
cp -r lang/*.qm /$DEFAULT_DIR/nsis_base$HEAD/files/lang
cd $DEFAULT_DIR
cd qelectrotech-$VERSION.r$HEAD/build-aux/windows/
cp {lang_extra.nsh,QET.nsi,lang_extra_fr.nsh} /$DEFAULT_DIR/nsis_base$HEAD/
# 64 bits
cd $DEFAULT_DIR
cp -r nsis_base nsis_base64$HEAD
cd qelectrotech-$VERSION.r$HEAD/
cp -r {elements,examples,titleblocks} /$DEFAULT_DIR/nsis_base64$HEAD/files
cp -r lang/*.qm /$DEFAULT_DIR/nsis_base64$HEAD/files/lang
cd $DEFAULT_DIR
cd qelectrotech-$VERSION.r$HEAD/build-aux/windows/
cp {lang_extra.nsh,QET64.nsi,lang_extra_fr.nsh} /$DEFAULT_DIR/nsis_base64$HEAD/
#copy and update folders of readytouse_base skeleton
cd $DEFAULT_DIR
cp -r readytouse_base qelectrotech-$tagName+git$HEAD-x86-win32-readytouse
cd qelectrotech-$VERSION.r$HEAD/
cp -r {elements,examples,titleblocks} /$DEFAULT_DIR/qelectrotech-$tagName+git$HEAD-x86-win32-readytouse
cp -r lang/*.qm /$DEFAULT_DIR/qelectrotech-$tagName+git$HEAD-x86-win32-readytouse/lang
#################################################################################################################
export PATH=/media/backup6/digikam_new2/project/bundles/mxe/build.win32/usr/bin:$PATH
#cross-compil 32 bits
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD
mkdir build/ && cd build
/media/backup6/digikam_new2/project/bundles/mxe/build.win32/usr/bin/i686-w64-mingw32.static-qmake-qt5 $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/qelectrotech.pro
make -j$(nproc)
#copy 32 bits binarie to /bin Windows packages
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/build/release/
cp qelectrotech.exe /$DEFAULT_DIR/nsis_base$HEAD/files/bin
cp qelectrotech.exe /$DEFAULT_DIR/qelectrotech-$tagName+git$HEAD-x86-win32-readytouse/bin
#tag $HEAD by sed for nsis script
cd $DEFAULT_DIR/nsis_base$HEAD
sed -i 's/'"0.5-dev+[0-9]*"'/'"$tagName"+git"$HEAD"'/' QET.nsi
#build Windows installer
makensis QET.nsi
#################################################################################################################
export PATH=/media/backup6/digikam_new2/project/bundles/mxe/build.win64/usr/bin:$PATH
#cross-compil 64 bits
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD
rm -r build/
mkdir build/ && cd build
#mxe: qmake-qt5 x86_64-w64
/media/backup6/digikam_new2/project/bundles/mxe/build.win64/usr/bin/x86_64-w64-mingw32.static-qmake-qt5 $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/qelectrotech.pro
make -j$(nproc)
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/build/release/
mv qelectrotech.exe /$DEFAULT_DIR/nsis_base64$HEAD/files/bin
cd $DEFAULT_DIR/nsis_base64$HEAD
sed -i 's/'"0.5-dev_x86_64-win64+[0-9]*"'/'"$tagName"_x86_64-win64+git"$HEAD"'/' QET64.nsi
makensis QET64.nsi
#crompress readytouse
cd $DEFAULT_DIR
7za a -m0=lzma qelectrotech-$tagName+git$HEAD-x86-win32-readytouse.7z qelectrotech-$tagName+git$HEAD-x86-win32-readytouse/
echo -e "\033[1;31mWould you like to prepare to RSYNC Windows packages /Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
cd /home/laurent/builds/nightly/
name=$(date +%Y-%m-%d-) #defined a name based on the date
#start increment to 1
i=1
#increment by i if the builds have already been created
while [ "$(ls /home/$USER/builds/nightly/ | grep $name$i)" != "" ]; do
((i++))
done
#create a new folder incremented by 1
mkdir /home/$USER/builds/nightly/$name$i
cd $DEFAULT_DIR/
cp qelectrotech-$tagName+git$HEAD-x86-win32-readytouse.7z /home/laurent/builds/nightly/$name$i
cd /$DEFAULT_DIR/nsis_base$HEAD
cp Installer_QElectroTech-$tagName+git$HEAD-1.exe /home/laurent/builds/nightly/$name$i
cd $DEFAULT_DIR/nsis_base64$HEAD
cp Installer_QElectroTech-$tagName"_x86_64-win64+git"$HEAD-1.exe /home/laurent/builds/nightly/$name$i
else
echo -e "\033[1;33mExit.\033[m"
fi
#rsync to TF Windows builds
echo -e "\033[1;31mWould you like to upload Windows packages n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
rsync -e ssh -av --delete-after --no-owner --no-g --chmod=g+w --progress /home/laurent/builds/nightly/ scorpio810@ssh.tuxfamily.org:/home/qet/qet-repository/builds/nightly/
if [ $? != 0 ]; then
{
echo "RSYNC ERROR: problem syncing qelectrotech-$VERSION.r$HEAD "
rsync -e ssh -av --delete-after --no-owner --no-g --chmod=g+w --progress /home/laurent/builds/nightly/ scorpio810@ssh.tuxfamily.org:/home/qet/qet-repository/builds/nightly/
} fi
else
echo -e "\033[1;33mExit.\033[m"
fi
else
echo -e "\033[1;33mExit.\033[m"
fi
exit
-31
View File
@@ -1,31 +0,0 @@
#!/bin/bash
#set -x
#delete old qet.h
rm sources/qet.h
cd sources
git reset --hard origin/master
cd ..
# get updates
git pull --recurse-submodules
sed -i 's/DEFINES += QET_EXPORT_PROJECT_DB/#DEFINES += QET_EXPORT_PROJECT_DB/' qelectrotech.pro
# get the number of the new revision
GITCOMMIT=$(git rev-parse --short HEAD)
tagName=$(cat sources/qet.h | grep displayedVersion | cut -d\" -f2 | cut -d\" -f1) #Find displayedVersion tag in GIT sources/qet.h
# We recover the version number of the original
tagName=$(sed -n "s/const QString displayedVersion =\(.*\)/\1/p" sources/qet.h | cut -d\" -f2 | cut -d\" -f1 )
# We modify the original with the revision number of the svn repository
sed -i 's/'"const QString displayedVersion =.*/const QString displayedVersion = \"$tagName+$GITCOMMIT\";"'/' sources/qet.h
cd ~
flatpak-builder --force-clean --ccache --repo=qet_git/0.8-dev qet_git/build-dir qet_git/build-aux/flatpak/org.qelectrotech.QElectroTech.json --gpg-sign=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --gpg-homedir=gpg
flatpak build-update-repo qet_git/0.8-dev --title="Development builds of QElectroTech" --prune --prune-depth=4 --generate-static-deltas --gpg-sign=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --gpg-homedir=gpg
rsync -e ssh -av --delete-after --no-owner --no-g --chmod=g+w --progress qet_git/0.8-dev/ scorpio810@ssh.tuxfamily.org:/home/qet/qet-repository/builds/Flatpak/
+15 -10
View File
@@ -24,6 +24,7 @@
#include "element.h"
#include "qetxml.h"
#include <QPicture>
#include <QDebug>
// make this class usable with QVariant
int ElementsLocation::MetaTypeId = qRegisterMetaType<ElementsLocation>("ElementsLocation");
@@ -675,24 +676,28 @@ pugi::xml_document ElementsLocation::pugiXml() const
#endif
if (!m_project)
{
if (docu.load_file(m_file_system_path.toStdString().c_str()))
{
#ifndef Q_OS_LINUX
if (docu.load_file(m_file_system_path.toStdString().c_str())) {
docu.save(m_string_stream);
}
#else
docu.load_file(m_file_system_path.toStdString().c_str());
#endif
}
}
else
{
//Get the xml dom from Qt xml and copie to pugi xml
QDomDocument qdoc;
QString str = m_collection_path;
if (isElement()) {
QDomElement element = m_project->embeddedElementCollection()->element(str.remove("embed://"));
qdoc.appendChild(qdoc.importNode(element.firstChildElement("definition"),true));
//Get the xml dom from Qt xml and copie to pugi xml
QDomElement element = m_project
->embeddedElementCollection()
->element(str.remove("embed://"));
QDomDocument qdoc;
if (isElement())
{
qdoc.appendChild(qdoc.importNode(
element.firstChildElement(
"definition"),
true));
} else {
QDomElement element = m_project->embeddedElementCollection()->directory(str.remove("embed://"));
qdoc.appendChild(qdoc.importNode(element, true));
}
docu.load_string(qdoc.toString(4).toStdString().c_str());
@@ -69,9 +69,10 @@ void ElementsTreeView::startDrag(Qt::DropActions supportedActions)
*/
void ElementsTreeView::startElementDrag(const ElementsLocation &location)
{
if (! location.exist()) return;
if (!location.exist())
return;
QScopedPointer<QDrag> drag(new QDrag(this));
QDrag *drag = new QDrag(this);
QString location_str = location.toString();
QMimeData *mime_data = new QMimeData();
@@ -90,12 +91,14 @@ void ElementsTreeView::startElementDrag(const ElementsLocation &location)
//Build the element for set the pixmap of the QDrag
int elmt_creation_state;
QScopedPointer<Element> temp_elmt(
ElementFactory::Instance()->createElement(
location,
nullptr,
&elmt_creation_state));
if (elmt_creation_state) { return; }
Element *temp_elmt = ElementFactory::Instance()->createElement(
location, nullptr,
&elmt_creation_state);
if (elmt_creation_state)
{
delete temp_elmt;
return;
}
QPixmap elmt_pixmap(temp_elmt->pixmap());
QPoint elmt_hotspot(temp_elmt->hotspot());
@@ -120,6 +123,9 @@ void ElementsTreeView::startElementDrag(const ElementsLocation &location)
drag->setPixmap(elmt_pixmap);
drag->setHotSpot(elmt_hotspot);
delete temp_elmt;
}
drag->setMimeData(mime_data);
@@ -40,8 +40,8 @@ FileElementCollectionItem::FileElementCollectionItem()
@return true if path exist.
*/
bool FileElementCollectionItem::setRootPath(const QString& path,
bool set_data,
bool hide_element)
bool set_data,
bool hide_element)
{
QDir dir(path);
if (dir.exists())
@@ -190,16 +190,16 @@ QString FileElementCollectionItem::name() const
*/
QString FileElementCollectionItem::collectionPath() const
{
QStandardItem* parent_ = parent();
if (isCollectionRoot()) {
if (m_path == QETApp::commonElementsDirN())
return "common://";
else
return "custom://";
}
else if (parent() && parent()->type()
== FileElementCollectionItem::Type) {
ElementCollectionItem *eci =
static_cast<ElementCollectionItem*>(parent());
else if (parent_ && parent()->type() == FileElementCollectionItem::Type)
{
ElementCollectionItem *eci = static_cast<ElementCollectionItem*>(parent());
if (eci->isCollectionRoot())
return eci->collectionPath() + m_path;
else
@@ -276,14 +276,15 @@ void FileElementCollectionItem::setUpData()
setFlags(Qt::ItemIsSelectable
| Qt::ItemIsDragEnabled
| Qt::ItemIsEnabled);
//Set the local name and all informations of the element
//in the data Qt::UserRole+1, these data will be use for search.
ElementsLocation loc(collectionPath());
DiagramContext context = loc.elementInformations();
QStringList search_list;
for (QString& key : context.keys())
{ search_list.append(context.value(key).toString()); }
for (QString key : context.keys()) {
search_list.append(context.value(key).toString());
}
search_list.append(localName(loc));
setData(search_list.join(" "));
}
@@ -330,8 +331,8 @@ void FileElementCollectionItem::setUpIcon()
@param hide_element
*/
void FileElementCollectionItem::setPathName(const QString& path_name,
bool set_data,
bool hide_element)
bool set_data,
bool hide_element)
{
m_path = path_name;
@@ -351,8 +352,8 @@ void FileElementCollectionItem::populate(bool set_data, bool hide_element)
QDir dir (fileSystemPath());
//Get all directory in this directory.
for (auto& str :
dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot, QDir::Name))
for(auto str : dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot,
QDir::Name))
{
FileElementCollectionItem *feci = new FileElementCollectionItem();
appendRow(feci);
@@ -366,8 +367,8 @@ void FileElementCollectionItem::populate(bool set_data, bool hide_element)
//Get all elmt file in this directory
dir.setNameFilters(QStringList() << "*.elmt");
for (auto& str :
dir.entryList(QDir::Files | QDir::NoDotAndDotDot, QDir::Name))
for(auto str : dir.entryList(QDir::Files | QDir::NoDotAndDotDot,
QDir::Name))
{
FileElementCollectionItem *feci = new FileElementCollectionItem();
appendRow(feci);
+21 -18
View File
@@ -229,25 +229,28 @@ bool NamesList::operator==(const NamesList &nl) const
}
/**
* @brief NamesList::name
* Return the adequate name regarding the current system locale.
* By order of preference, this function chooses:
* - the name in the system language
* - the English name
* - the provided fallback name if non-empty
* - the first language encountered in the list
* - an empty string
* @param fallback_name
* name to be returned when no adequate name has been found
* @return The adequate name regarding the current system locale.
*/
Return the adequate name regarding the current system locale.
By order of preference, this function chooses:
- the name in the system language
- the English name
- the provided fallback name if non-empty
- the first language encountered in the list
- an empty string
@param fallback_name name to be returned when no adequate name has been found
@return The adequate name regarding the current system locale.
*/
QString NamesList::name(const QString &fallback_name) const
{
QString system_language = QETApp::langFromSetting();
if (! hash_names[system_language].isEmpty())
return (hash_names[system_language]);
if (! hash_names["en"].isEmpty()) return (hash_names["en"]);
if (! fallback_name.isEmpty()) return (fallback_name);
if (hash_names.count()) return (hash_names.begin().value());
return (QString(""));
QString returned_name;
if (!hash_names[system_language].isEmpty()) {
returned_name = hash_names[system_language];
} else if (!hash_names["en"].isEmpty()) {
returned_name = hash_names["en"];
} else if (!fallback_name.isEmpty()) {
returned_name = fallback_name;
} else if (hash_names.count()) {
returned_name = hash_names.value(hash_names.keys().first());
}
return(returned_name);
}
@@ -25,17 +25,17 @@
@param size : the size of the handler
*/
QetGraphicsHandlerItem::QetGraphicsHandlerItem(qreal size) :
m_size(size)
m_size(size)
{
setFlag(QGraphicsItem::ItemIgnoresTransformations);
m_handler_rect.setRect(0-m_size/2, 0-m_size/2, m_size, m_size);
m_br.setRect(-1-m_size/2, -1-m_size/2, m_size+2, m_size+2);
}
/**
@brief QetGraphicsHandlerItem::boundingRect
@return
@return
*/
QRectF QetGraphicsHandlerItem::boundingRect() const
{
@@ -38,10 +38,10 @@ class QetGraphicsHandlerItem : public QGraphicsItem
public:
QetGraphicsHandlerItem(qreal size = 10);
QRectF boundingRect() const override;
enum { Type = UserType + 1200};
int type() const override {return Type;}
void setColor(QColor color);
protected:
@@ -50,12 +50,11 @@ class QetGraphicsHandlerItem : public QGraphicsItem
QWidget *widget) override;
private:
QRectF m_handler_rect,
m_br;
QRectF m_handler_rect,m_br;
qreal m_size;
QColor m_color;
QColor m_color{Qt::black};
QPen m_pen;
public:
static QVector<QetGraphicsHandlerItem *> handlerForPoint(
const QVector<QPointF> &points, int size = 10);
+4 -4
View File
@@ -603,14 +603,14 @@ namespace autonum
for (int j=i; j<= dirLevel; j = j +1)
{
//if there is a prefix available apply prefix
if(rxml.name().toString()=="prefix")
if(rxml.name()=="prefix")
{
return rxml.readElementText();
}
//if there isn't a prefix available, find parent prefix in parent folder
else
{
while (rxml.readNextStartElement() && rxml.name().toString()!="prefix")
while (rxml.readNextStartElement() && rxml.name()!="prefix")
{
rxml.skipCurrentElement();
rxml.readNext();
@@ -646,14 +646,14 @@ namespace autonum
for (int j=i; j<= dirLevel; j = j +1)
{
//if there is a prefix available apply prefix
if(rxml.name().toString()=="prefix")
if(rxml.name()=="prefix")
{
return rxml.readElementText();
}
//if there isn't a prefix available, find parent prefix in parent folder
else
{
while (rxml.readNextStartElement() && rxml.name().toString()!="prefix")
while (rxml.readNextStartElement() && rxml.name()!="prefix")
{
rxml.skipCurrentElement();
rxml.readNext();
+44 -37
View File
@@ -1,17 +1,17 @@
/*
Copyright 2006-2020 The QElectroTech Team
This file is part of QElectroTech.
QElectroTech is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
QElectroTech is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with QElectroTech. If not, see <http://www.gnu.org/licenses/>.
*/
@@ -32,15 +32,7 @@
- 17 colonnes affichees de 60.0 px de large pour 20.0px de haut
- 8 lignes affichees de 80.0 px de haut pour 20.0px de large
*/
BorderProperties::BorderProperties() :
columns_count(17),
columns_width(60.0),
columns_header_height(20.0),
display_columns(true),
rows_count(8),
rows_height(80.0),
rows_header_width(20.0),
display_rows(true)
BorderProperties::BorderProperties()
{
}
@@ -86,27 +78,26 @@ bool BorderProperties::operator==(const BorderProperties &bp) {
bool BorderProperties::operator!=(const BorderProperties &bp) {
return(!(*this == bp));
}
/**
@brief BorderProperties::toXml
Exports dimensions as XML attributes added to element e.
\~French Exporte les dimensions sous formes d'attributs XML ajoutes a l'element e.
\~ @param e :
XML element to which attributes will be added
\~French Element XML auquel seront ajoutes des attributs
@param dom_doc
@return
*/
void BorderProperties::toXml(QDomElement &e) const
{
e.setAttribute("cols", columns_count);
e.setAttribute("colsize", QString("%1").arg(columns_width));
e.setAttribute("rows", rows_count);
e.setAttribute("rowsize", QString("%1").arg(rows_height));
e.setAttribute("displaycols", display_columns ? "true" : "false");
e.setAttribute("displayrows", display_rows ? "true" : "false");
QDomElement BorderProperties::toXml(QDomDocument &dom_doc) const {
QDomElement e = dom_doc.createElement("border");
e.appendChild(createXmlProperty(dom_doc, "cols", columns_count));
e.appendChild(createXmlProperty(dom_doc, "colsize", columns_width));
e.appendChild(createXmlProperty(dom_doc, "rows", rows_count));
e.appendChild(createXmlProperty(dom_doc, "rowsize", rows_height));
e.appendChild(createXmlProperty(dom_doc, "displayrows", display_rows));
e.appendChild(createXmlProperty(dom_doc, "displaycols", display_columns));
return e;
}
/**
/**RETURNS True
@brief BorderProperties::fromXml
Import dimensions from XML attributes of element e
\~French Importe les dimensions a partir des attributs XML de l'element e
@@ -115,13 +106,29 @@ void BorderProperties::toXml(QDomElement &e) const
XML element whose attributes will be read
\~French Element XML dont les attributs seront lus
*/
void BorderProperties::fromXml(QDomElement &e) {
if (e.hasAttribute("cols")) columns_count = e.attribute("cols").toInt();
if (e.hasAttribute("colsize")) columns_width = e.attribute("colsize").toInt();
if (e.hasAttribute("rows")) rows_count = e.attribute("rows").toInt();
if (e.hasAttribute("rowsize")) rows_height = e.attribute("rowsize").toInt();
if (e.hasAttribute("displaycols")) display_columns = e.attribute("displaycols") == "true";
if (e.hasAttribute("displayrows")) display_rows = e.attribute("displayrows") == "true";
bool BorderProperties::fromXml(const QDomElement &e) {
if (propertyInteger(e, "cols", &columns_count) == PropertyFlags::NoValidConversion ||
propertyDouble(e, "colsize", &columns_width) == PropertyFlags::NoValidConversion ||
propertyInteger(e, "rows", &rows_count) == PropertyFlags::NoValidConversion ||
propertyDouble(e, "rowsize", &rows_height) == PropertyFlags::NoValidConversion ||
propertyBool(e, "displaycols", &display_columns) == PropertyFlags::NoValidConversion ||
propertyBool(e, "displayrows", &display_rows) == PropertyFlags::NoValidConversion)
return false;
return true;
}
bool BorderProperties::valideXml(QDomElement& e) {
if (propertyInteger(e, "cols") == PropertyFlags::Success ||
propertyDouble(e, "colsize") == PropertyFlags::Success ||
propertyInteger(e, "rows") == PropertyFlags::Success ||
propertyDouble(e, "rowsize") == PropertyFlags::Success ||
propertyBool(e, "displaycols") == PropertyFlags::Success ||
propertyBool(e, "displayrows") == PropertyFlags::Success)
return true;
return false;
}
/**
@@ -155,11 +162,11 @@ void BorderProperties::toSettings(QSettings &settings, const QString &prefix) co
\~ @param prefix : prefix to be added before the names of the parameters
\~French prefixe a ajouter devant les noms des parametres
*/
void BorderProperties::fromSettings(QSettings &settings, const QString &prefix) {
void BorderProperties::fromSettings(const QSettings &settings, const QString &prefix) {
columns_count = settings.value(prefix + "cols", columns_count).toInt();
columns_width = qRound(settings.value(prefix + "colsize", columns_width).toDouble());
display_columns = settings.value(prefix + "displaycols", display_columns).toBool();
rows_count = settings.value(prefix + "rows", rows_count).toInt();
rows_height = qRound(settings.value(prefix + "rowsize", rows_height).toDouble());
display_rows = settings.value(prefix + "displayrows", display_rows).toBool();
+16 -13
View File
@@ -20,13 +20,15 @@
#include <QtCore>
#include <QtXml>
#include "propertiesinterface.h"
/**
@brief The BorderProperties class
This class is a container for dimensions and display properties of a
diagram.
@remark Attributes are public
*/
class BorderProperties {
class BorderProperties : public PropertiesInterface {
public:
// constructor, destructor, operators
BorderProperties();
@@ -35,22 +37,23 @@ class BorderProperties {
bool operator==(const BorderProperties &);
bool operator!=(const BorderProperties &);
void toXml(QDomElement &) const;
void fromXml(QDomElement &);
void toSettings(QSettings &, const QString & = QString()) const;
void fromSettings(QSettings &, const QString & = QString());
QDomElement toXml(QDomDocument &dom_doc) const override;
bool fromXml(const QDomElement &) override;
static bool valideXml(QDomElement& e);
void toSettings(QSettings &, const QString & = QString()) const override;
void fromSettings(const QSettings &, const QString & = QString()) override;
static BorderProperties defaultProperties();
// attributes
int columns_count; ///< Columns count
qreal columns_width; ///< Columns width
qreal columns_header_height; ///< Column headers height
bool display_columns; ///< Whether to display column headers
int columns_count{17}; ///< Columns count
qreal columns_width{60.0}; ///< Columns width
qreal columns_header_height{20.0}; ///< Column headers height
bool display_columns{true}; ///< Whether to display column headers
int rows_count; ///< Rows count
qreal rows_height; ///< Rows height
qreal rows_header_width; ///< Row headers width
bool display_rows; ///< Whether to display row headers
int rows_count{8}; ///< Rows count
qreal rows_height{80.0}; ///< Rows height
qreal rows_header_width{20.0}; ///< Row headers width
bool display_rows{true}; ///< Whether to display row headers
};
#endif
+2 -2
View File
@@ -206,8 +206,8 @@ QRectF BorderTitleBlock::insideBorderRect() const
Exports the title block current values to XML.
@param xml_elmt the XML element attributes will be added to
*/
void BorderTitleBlock::titleBlockToXml(QDomElement &xml_elmt) {
exportTitleBlock().toXml(xml_elmt);
void BorderTitleBlock::titleBlockToXml(QDomElement& doc) {
exportTitleBlock().toXml(doc);
}
/**
+1 -1
View File
@@ -173,7 +173,7 @@ class BorderTitleBlock : public QObject
void setPreviousFolioNum(const QString &previous);
void setNextFolioNum(const QString &next);
void titleBlockToXml(QDomElement &);
void titleBlockToXml(QDomElement &doc);
void titleBlockFromXml(const QDomElement &);
void borderToXml(QDomElement &);
void borderFromXml(const QDomElement &);
+192 -138
View File
@@ -23,11 +23,7 @@
/**
Constructeur par defaut
*/
SingleLineProperties::SingleLineProperties() :
hasGround(true),
hasNeutral(true),
is_pen(false),
phases(1)
SingleLineProperties::SingleLineProperties()
{
}
@@ -123,9 +119,9 @@ void SingleLineProperties::draw(QPainter *painter,
@param size taille du segment
*/
void SingleLineProperties::drawGround(QPainter *painter,
QET::ConductorSegmentType direction,
QPointF center,
qreal size) {
QET::ConductorSegmentType direction,
QPointF center,
qreal size) {
painter -> save();
// prepare le QPainter
@@ -211,16 +207,21 @@ void SingleLineProperties::drawPen(QPainter *painter,
}
/**
Exporte les parametres du conducteur unifilaire sous formes d'attributs XML
ajoutes a l'element e.
@param e Element XML auquel seront ajoutes des attributs
@brief SingleLineProperties::toXml
@param doc
@return
*/
void SingleLineProperties::toXml(QDomElement &e) const
QDomElement SingleLineProperties::toXml(QDomDocument &doc) const
{
e.setAttribute("ground", hasGround ? "true" : "false");
e.setAttribute("neutral", hasNeutral ? "true" : "false");
e.setAttribute("phase", phases);
if (isPen()) e.setAttribute("pen", "true");
QDomElement e = doc.createElement("SingleLine");
e.appendChild(createXmlProperty(doc, "ground", hasGround));
e.appendChild(createXmlProperty(doc, "neutral", hasNeutral));
e.appendChild(createXmlProperty(doc, "phase", phases));
if (isPen())
e.appendChild(createXmlProperty(doc, "pen", true));
return e;
}
/**
@@ -228,11 +229,36 @@ void SingleLineProperties::toXml(QDomElement &e) const
de l'element e
@param e Element XML dont les attributs seront lus
*/
void SingleLineProperties::fromXml(QDomElement &e) {
hasGround = e.attribute("ground") == "true";
hasNeutral = e.attribute("neutral") == "true";
setPhasesCount(e.attribute("phase").toInt());
is_pen = (hasGround && hasNeutral && e.attribute("pen", "false") == "true");
bool SingleLineProperties::fromXml(const QDomElement &e) {
if (propertyBool(e, "ground", &hasGround) != PropertyFlags::Success ||
propertyBool(e, "neutral", &hasNeutral) != PropertyFlags::Success)
return false;
int phase;
if (propertyInteger(e, "phase", &phase) != PropertyFlags::Success)
return false;
setPhasesCount(phase);
bool pen;
if (propertyBool(e, "pen", &pen) != PropertyFlags::Success)
return false;
is_pen = (hasGround && hasNeutral && pen);
return true;
}
bool SingleLineProperties::valideXml(QDomElement& e) {
if (propertyBool(e, "ground") != PropertyFlags::Success ||
propertyBool(e, "neutral") != PropertyFlags::Success)
return false;
if (propertyInteger(e, "phase") != PropertyFlags::Success)
return false;
if (propertyBool(e, "pen") != PropertyFlags::Success)
return false;
return true;
}
/**
@@ -266,116 +292,142 @@ ConductorProperties::~ConductorProperties()
Export conductor propertie, in the XML element 'e'
@param e the xml element
*/
void ConductorProperties::toXml(QDomElement &e) const
QDomElement ConductorProperties::toXml(QDomDocument& doc) const
{
e.setAttribute("type", typeToString(type));
QDomElement e = doc.createElement("defaultconductor");
if (color != QColor(Qt::black))
e.setAttribute("color", color.name());
e.appendChild(createXmlProperty(doc, "type", typeToString(type)));
e.appendChild(createXmlProperty(doc, "color", color));
e.setAttribute("bicolor", m_bicolor? "true" : "false");
e.setAttribute("color2", m_color_2.name());
e.setAttribute("dash-size", QString::number(m_dash_size));
e.appendChild(createXmlProperty(doc, "bicolor", m_bicolor));
e.appendChild(createXmlProperty(doc, "color2", m_color_2));
e.appendChild(createXmlProperty(doc, "dash-size", m_dash_size));
if (type == Single)
singleLineProperties.toXml(e);
e.appendChild(singleLineProperties.toXml(doc));
e.setAttribute("num", text);
e.setAttribute("text_color", text_color.name());
e.setAttribute("formula", m_formula);
e.setAttribute("cable", m_cable);
e.setAttribute("bus", m_bus);
e.setAttribute("function", m_function);
e.setAttribute("tension_protocol", m_tension_protocol);
e.setAttribute("conductor_color", m_wire_color);
e.setAttribute("conductor_section", m_wire_section);
e.setAttribute("numsize", QString::number(text_size));
e.setAttribute("condsize", QString::number(cond_size));
e.setAttribute("displaytext", m_show_text);
e.setAttribute("onetextperfolio", m_one_text_per_folio);
e.setAttribute("vertirotatetext", QString::number(verti_rotate_text));
e.setAttribute("horizrotatetext", QString::number(horiz_rotate_text));
e.appendChild(createXmlProperty(doc, "num", text));
e.appendChild(createXmlProperty(doc, "text_color", text_color));
e.appendChild(createXmlProperty(doc, "formula", m_formula));
e.appendChild(createXmlProperty(doc, "function", m_function));
e.appendChild(createXmlProperty(doc, "tension_protocol", m_tension_protocol));
e.appendChild(createXmlProperty(doc, "conductor_color", m_wire_color));
e.appendChild(createXmlProperty(doc, "conductor_section", m_wire_section));
e.appendChild(createXmlProperty(doc, "numsize", text_size));
e.appendChild(createXmlProperty(doc, "condsize", cond_size));
e.appendChild(createXmlProperty(doc, "displaytext", m_show_text));
e.appendChild(createXmlProperty(doc, "onetextperfolio", m_one_text_per_folio));
e.appendChild(createXmlProperty(doc, "onetextperfolio", verti_rotate_text));
e.appendChild(createXmlProperty(doc, "horizrotatetext", horiz_rotate_text));
QMetaEnum me = QMetaEnum::fromType<Qt::Alignment>();
e.setAttribute("horizontal-alignment", me.valueToKey(m_horizontal_alignment));
e.setAttribute("vertical-alignment", me.valueToKey(m_vertical_alignment));
e.appendChild(createXmlProperty(doc, "horizontal-alignment", me.valueToKey(m_horizontal_alignment)));
e.appendChild(createXmlProperty(doc, "vertical-alignment", me.valueToKey(m_vertical_alignment)));
QString conductor_style = writeStyle();
if (!conductor_style.isEmpty())
e.setAttribute("style", conductor_style);
e.appendChild(createXmlProperty(doc, "style", conductor_style));
return e;
}
/**
/** RETURNS True
@brief ConductorProperties::fromXml
Import conductor propertie, from the attribute of the xml element 'e'
@param e the xml document
*/
void ConductorProperties::fromXml(QDomElement &e)
bool ConductorProperties::fromXml(const QDomElement &e)
{
// get conductor color
QColor xml_color= QColor(e.attribute("color"));
color = (xml_color.isValid()? xml_color : QColor(Qt::black));
// get conductor color
propertyColor(e, "color", &color);
propertyBool(e, "bicolor", &m_bicolor);
propertyColor(e, "color2", &m_color_2);
propertyInteger(e, "dash-size", &m_dash_size);
QString bicolor_str = e.attribute("bicolor", "false");
m_bicolor = bicolor_str == "true"? true : false;
// read style of conductor
QString style_string;
propertyString(e, "style", &style_string);
readStyle(style_string);
QColor xml_color_2 = QColor(e.attribute("color2"));
m_color_2 = xml_color_2.isValid()? xml_color_2 : QColor(Qt::black);
m_dash_size = e.attribute("dash-size", QString::number(1)).toInt();
// read style of conductor
readStyle(e.attribute("style"));
if (e.attribute("type") == typeToString(Single))
QString type_t;
if (propertyString(e, "type", &type_t) == PropertyFlags::Success)
{
if (type_t == typeToString(Single))
{
// get specific properties for single conductor
singleLineProperties.fromXml(e);
type = Single;
}
else
type = Multi;
text = e.attribute("num");
// get text color
QColor xml_text_color= QColor(e.attribute("text_color"));
text_color = (xml_text_color.isValid()? xml_text_color : QColor(Qt::black));
m_formula = e.attribute("formula");
m_cable = e.attribute("cable");
m_bus = e.attribute("bus");
m_function = e.attribute("function");
m_tension_protocol = e.attribute("tension_protocol");
m_wire_color = e.attribute("conductor_color");
m_wire_section = e.attribute("conductor_section");
text_size = e.attribute("numsize", QString::number(9)).toInt();
cond_size = e.attribute("condsize", QString::number(1)).toDouble();
m_show_text = e.attribute("displaytext", QString::number(1)).toInt();
m_one_text_per_folio = e.attribute("onetextperfolio", QString::number(0)).toInt();
verti_rotate_text = e.attribute("vertirotatetext").toDouble();
horiz_rotate_text = e.attribute("horizrotatetext").toDouble();
QMetaEnum me = QMetaEnum::fromType<Qt::Alignment>();
m_horizontal_alignment = Qt::Alignment(
me.keyToValue(
e.attribute(
"horizontal-alignment",
"AlignBottom"
).toStdString().data()));
m_vertical_alignment = Qt::Alignment(
me.keyToValue(
e.attribute(
"vertical-alignment",
"AlignRight"
).toStdString().data()));
//Keep retrocompatible with version older than 0,4
//If the propertie @type is simple (removed since QET 0,4), we set text no visible.
//@TODO remove this code for qet 0.6 or later
singleLineProperties.fromXml(e);
type = Single;
}
else if (type_t == typeToString(Multi))
type = Multi;
else {
//Keep retrocompatible with version older than 0,4
//If the propertie @type is simple (removed since QET 0,4), we set text no visible.
//@TODO remove this code for qet 0.6 or later
#if TODO_LIST
#pragma message("@TODO remove this code for qet 0.6 or later")
#endif
if (e.attribute("type") == "simple") m_show_text = false;
if (type_t == "simple") m_show_text = false;
}
}
propertyString(e, "num", &text);
// get text color
propertyColor(e, "text_color", &text_color);
propertyString(e, "formula", &m_formula);
propertyString(e, "function", &m_function);
propertyString(e, "tension_protocol", &m_tension_protocol);
propertyString(e, "conductor_color", &m_wire_color);
propertyString(e, "conductor_section", &m_wire_section);
propertyInteger(e, "numsize", &text_size);
propertyDouble(e, "condsize", &cond_size);
propertyBool(e, "displaytext", &m_show_text);
propertyBool(e, "onetextperfolio", &m_one_text_per_folio);
propertyDouble(e, "vertirotatetext", &verti_rotate_text);
propertyDouble(e, "horizrotatetext", &horiz_rotate_text);
QMetaEnum me = QMetaEnum::fromType<Qt::Alignment>();
QString alinment_temp;
if (propertyString(e, "horizontal-alignment", &alinment_temp) == PropertyFlags::Success)
m_horizontal_alignment = Qt::Alignment(me.keyToValue(alinment_temp.toStdString().data()));
if (propertyString(e, "vertical-alignment", &alinment_temp) == PropertyFlags::Success)
m_vertical_alignment = Qt::Alignment(me.keyToValue(alinment_temp.toStdString().data()));
return true;
}
/**
@brief ConductorProperties::valideXml
@param e
@return
*/
bool ConductorProperties::valideXml(QDomElement& e)
{
if (propertyColor(e, "color") ||
propertyBool(e, "bicolor") ||
propertyColor(e, "color2") ||
propertyInteger(e, "dash-size") ||
propertyString(e, "type") ||
propertyString(e, "num") ||
propertyColor(e, "text_color") ||
propertyString(e, "formula") ||
propertyString(e, "function") ||
propertyString(e, "tension_protocol") ||
propertyString(e, "conductor_color") ||
propertyString(e, "conductor_section") ||
propertyInteger(e, "numsize") ||
propertyDouble(e, "condsize") ||
propertyBool(e, "displaytext") ||
propertyBool(e, "onetextperfolio") ||
propertyDouble(e, "vertirotatetext") ||
propertyDouble(e, "horizrotatetext") ||
propertyString(e, "horizontal-alignment") ||
propertyString(e, "vertical-alignment"))
return false;
return true;
}
/**
@@ -393,8 +445,8 @@ void ConductorProperties::toSettings(QSettings &settings, const QString &prefix)
settings.setValue(prefix + "text", text);
settings.setValue(prefix + "text_color", text_color.name());
settings.setValue(prefix + "formula", m_formula);
settings.setValue(prefix + "cable", m_cable);
settings.setValue(prefix + "bus", m_bus);
//settings.setValue(prefix + "cable", m_cable);
//settings.setValue(prefix + "bus", m_bus);
settings.setValue(prefix + "function", m_function);
settings.setValue(prefix + "tension_protocol", m_tension_protocol);
settings.setValue(prefix + "conductor_color", m_wire_color);
@@ -417,7 +469,7 @@ void ConductorProperties::toSettings(QSettings &settings, const QString &prefix)
@param settings Parametres a lire
@param prefix prefixe a ajouter devant les noms des parametres
*/
void ConductorProperties::fromSettings(QSettings &settings, const QString &prefix)
void ConductorProperties::fromSettings(const QSettings &settings, const QString &prefix)
{
QColor settings_color = QColor(settings.value(prefix + "color").toString());
color = (settings_color.isValid()? settings_color : QColor(Qt::black));
@@ -437,8 +489,8 @@ void ConductorProperties::fromSettings(QSettings &settings, const QString &prefi
QColor settings_text_color = QColor(settings.value(prefix + "text_color").toString());
text_color = (settings_text_color.isValid()? settings_text_color : QColor(Qt::black));
m_formula = settings.value(prefix + "formula", "").toString();
m_cable = settings.value(prefix + "cable", "").toString();
m_bus = settings.value(prefix + "bus", "").toString();
//m_cable = settings.value(prefix + "cable", "").toString();
//m_bus = settings.value(prefix + "bus", "").toString();
m_function = settings.value(prefix + "function", "").toString();
m_tension_protocol = settings.value(prefix + "tension_protocol", "").toString();
m_wire_color = settings.value(prefix + "conductor_color", "").toString();
@@ -448,7 +500,7 @@ void ConductorProperties::fromSettings(QSettings &settings, const QString &prefi
m_show_text = settings.value(prefix + "displaytext", true).toBool();
m_one_text_per_folio = settings.value(prefix + "onetextperfolio", false).toBool();
verti_rotate_text = settings.value((prefix + "vertirotatetext"), "270").toDouble();
horiz_rotate_text = settings.value((prefix + "horizrotatetext"), "0").toDouble();
horiz_rotate_text = settings.value((prefix + "horizrotatetext"), "0").toDouble();
QMetaEnum me = QMetaEnum::fromType<Qt::Alignment>();
m_horizontal_alignment = Qt::Alignment(me.keyToValue(settings.value(prefix + "horizontal-alignment", "AlignBottom").toString().toStdString().data()));
@@ -493,8 +545,8 @@ void ConductorProperties::applyForEqualAttributes(QList<ConductorProperties> lis
text = cp.text;
text_color = cp.text_color;
m_formula = cp.m_formula;
m_cable = cp.m_cable;
m_bus = cp.m_bus;
//m_cable = cp.m_cable;
//m_bus = cp.m_bus;
m_function = cp.m_function;
m_tension_protocol = cp.m_tension_protocol;
m_wire_color = cp.m_wire_color;
@@ -596,27 +648,27 @@ void ConductorProperties::applyForEqualAttributes(QList<ConductorProperties> lis
m_formula = s_value;
equal = true;
//cable
s_value = clist.first().m_cable;
for(ConductorProperties cp : clist)
{
if (cp.m_cable != s_value)
equal = false;
}
if (equal)
m_cable = s_value;
equal = true;
// //cable
// s_value = clist.first().m_cable;
// for(ConductorProperties cp : clist)
// {
// if (cp.m_cable != s_value)
// equal = false;
// }
// if (equal)
// m_cable = s_value;
// equal = true;
//bus
s_value = clist.first().m_bus;
for(ConductorProperties cp : clist)
{
if (cp.m_bus != s_value)
equal = false;
}
if (equal)
m_bus = s_value;
equal = true;
// //bus
// s_value = clist.first().m_bus;
// for(ConductorProperties cp : clist)
// {
// if (cp.m_bus != s_value)
// equal = false;
// }
// if (equal)
// m_bus = s_value;
// equal = true;
//function
s_value = clist.first().m_function;
@@ -783,8 +835,9 @@ bool ConductorProperties::operator==(const ConductorProperties &other) const
other.text == text &&\
other.text_color == text_color &&\
other.m_formula == m_formula &&\
other.m_cable == m_cable &&\
/* other.m_cable == m_cable &&\
other.m_bus == m_bus &&\
*/
other.m_function == m_function &&\
other.m_tension_protocol == m_tension_protocol &&\
other.m_wire_color == m_wire_color && \
@@ -842,7 +895,7 @@ void ConductorProperties::readStyle(const QString &style_string) {
if (!match.hasMatch())
{
qDebug()<<"no Match"
<<style_str;
<<style_str;
} else {
QString style_name = match.captured("name");
QString style_value = match.captured("value");
@@ -902,7 +955,7 @@ int SingleLineProperties::operator!=(const SingleLineProperties &other) const
@param prefix prefix a ajouter devant les noms des parametres
*/
void SingleLineProperties::toSettings(QSettings &settings,
const QString &prefix) const
const QString &prefix) const
{
settings.setValue(prefix + "hasGround", hasGround);
settings.setValue(prefix + "hasNeutral", hasNeutral);
@@ -914,8 +967,9 @@ void SingleLineProperties::toSettings(QSettings &settings,
@param settings Parametres a lire
@param prefix prefix a ajouter devant les noms des parametres
*/
void SingleLineProperties::fromSettings(QSettings &settings,
const QString &prefix) {
void SingleLineProperties::fromSettings(
const QSettings &settings, const QString &prefix)
{
hasGround = settings.value(prefix + "hasGround", true).toBool();
hasNeutral = settings.value(prefix + "hasNeutral", true).toBool();
phases = settings.value(prefix + "phases", 1).toInt();
+43 -46
View File
@@ -22,13 +22,15 @@
#include <QColor>
#include <QSettings>
#include "propertiesinterface.h"
class QPainter;
/**
@brief The SingleLineProperties class
This class represents the properties of a singleline conductor.
*/
class SingleLineProperties {
class SingleLineProperties: public PropertiesInterface {
public:
SingleLineProperties();
virtual ~SingleLineProperties();
@@ -37,23 +39,25 @@ class SingleLineProperties {
unsigned short int phasesCount();
bool isPen() const;
void draw(QPainter *, QET::ConductorSegmentType, const QRectF &);
void toXml(QDomElement &) const;
void fromXml(QDomElement &);
void toSettings(QSettings &, const QString & = QString()) const;
void fromSettings(QSettings &, const QString & = QString());
QDomElement toXml(QDomDocument& doc) const override;
bool fromXml(const QDomElement &) override;
static bool valideXml(QDomElement& element);
void toSettings(QSettings &, const QString & = QString()) const override;
void fromSettings(const QSettings &, const QString & = QString()) override;
/// Whether the singleline conductor should display the ground symbol
bool hasGround;
bool hasGround{true};
/// Whether the singleline conductor should display the neutral symbol
bool hasNeutral;
bool hasNeutral{true};
/// Protective Earth Neutral: visually merge neutral and ground
bool is_pen;
bool is_pen{false};
int operator==(const SingleLineProperties &) const;
int operator!=(const SingleLineProperties &) const;
private:
unsigned short int phases;
unsigned short int phases{1};
void drawGround (QPainter *, QET::ConductorSegmentType, QPointF, qreal);
void drawNeutral(QPainter *, QPointF, qreal);
void drawPen(QPainter *, QET::ConductorSegmentType, QPointF, qreal);
@@ -64,7 +68,7 @@ class SingleLineProperties {
This class represents the functional properties of a particular conductor,
i.e. properties other than path and terminals.
*/
class ConductorProperties
class ConductorProperties: public PropertiesInterface
{
public:
ConductorProperties();
@@ -78,52 +82,45 @@ class ConductorProperties
*/
enum ConductorType { Single, Multi };
//Attributes
ConductorType type{ConductorType::Single};
//Attributes
ConductorType type;
// TODO: set default values!
QColor color{QColor(Qt::black)},
m_color_2{QColor(Qt::black)},
text_color{QColor(Qt::black)};
QColor
color,
m_color_2,
text_color;
QString text,
m_function,
m_tension_protocol,
m_wire_color,
m_wire_section,
m_formula;
QString
text,
m_function,
m_tension_protocol,
m_wire_color,
m_wire_section,
m_formula,
m_bus,
m_cable;
int text_size{9},
m_dash_size = 1;
int
text_size,
m_dash_size = 1;
double cond_size{1},
verti_rotate_text,
horiz_rotate_text;
double
cond_size,
verti_rotate_text,
horiz_rotate_text;
bool m_show_text{true},
m_one_text_per_folio{true},
m_bicolor = false;
bool
m_show_text,
m_one_text_per_folio,
m_bicolor = false;
Qt::Alignment m_horizontal_alignment = Qt::AlignBottom,
m_vertical_alignment = Qt::AlignRight;
Qt::Alignment
m_horizontal_alignment = Qt::AlignBottom,
m_vertical_alignment = Qt::AlignRight;
Qt::PenStyle style;
Qt::PenStyle style{Qt::PenStyle::SolidLine};
SingleLineProperties singleLineProperties;
// methods
void toXml(QDomElement &) const;
void fromXml(QDomElement &);
void toSettings(QSettings &, const QString & = QString()) const;
void fromSettings(QSettings &, const QString & = QString());
// methods
QDomElement toXml(QDomDocument &doc) const override;
bool fromXml(const QDomElement &) override;
static bool valideXml(QDomElement& element);
void toSettings(QSettings &, const QString & = QString()) const override;
void fromSettings(const QSettings &, const QString & = QString()) override;
static QString typeToString(ConductorType);
void applyForEqualAttributes(QList<ConductorProperties> list);
+39 -90
View File
@@ -1,4 +1,4 @@
/*
/*
Copyright 2006-2020 QElectroTech Team
This file is part of QElectroTech.
@@ -42,28 +42,6 @@ projectDataBase::projectDataBase(QETProject *project, QObject *parent) :
m_project(project)
{
createDataBase();
connect(m_project, &QETProject::diagramAdded, [this](QETProject *, Diagram *diagram) {
this->addDiagram(diagram);
});
connect(m_project, &QETProject::diagramRemoved, [this](QETProject *, Diagram *diagram) {
this->removeDiagram(diagram);
});
connect(m_project, &QETProject::projectDiagramsOrderChanged, [this]()
{
for (auto diagram : m_project->diagrams())
{
m_diagram_order_changed.bindValue(":pos", m_project->folioIndex(diagram)+1);
m_diagram_order_changed.bindValue(":uuid", diagram->uuid());
m_diagram_order_changed.exec();
m_diagram_info_order_changed.bindValue(":folio", diagram->border_and_titleblock.titleblockInformation().value("folio"));
m_diagram_info_order_changed.bindValue(":uuid", diagram->uuid());
m_diagram_info_order_changed.exec();
}
emit dataBaseUpdated();
});
}
/**
@@ -173,29 +151,34 @@ void projectDataBase::elementInfoChanged(Element *element)
void projectDataBase::addDiagram(Diagram *diagram)
{
m_insert_diagram_query.bindValue(":uuid", diagram->uuid().toString());
m_insert_diagram_query.bindValue(":pos", m_project->folioIndex(diagram)+1);
m_insert_diagram_query.bindValue(":pos", m_project->folioIndex(diagram));
if(!m_insert_diagram_query.exec()) {
qDebug() << "projectDataBase::addDiagram insert error : " << m_insert_diagram_query.lastError();
}
bindDiagramInfoValues(m_insert_diagram_info_query, diagram);
m_insert_diagram_info_query.bindValue(":uuid", diagram->uuid());
auto infos = diagram->border_and_titleblock.titleblockInformation();
for (auto key : QETApp::diagramInfoKeys())
{
if (key == "date") {
m_insert_diagram_info_query.bindValue(
":date",
QLocale::system().toString(
infos.value("date").toDate(),
QLocale::ShortFormat));
} else {
auto value = infos.value(key);
auto bind = key.prepend(":");
m_insert_diagram_info_query.bindValue(bind, value);
}
}
if (!m_insert_diagram_info_query.exec()) {
qDebug() << "projectDataBase::addDiagram insert info error : " << m_insert_diagram_info_query.lastError();
} else {
emit dataBaseUpdated();
}
//The information "folio" of other existing diagram can have the variable %total,
//so when a new diagram is added this variable change.
//We need to update this information in the database.
for (auto diagram : project()->diagrams())
{
m_diagram_info_order_changed.bindValue(":folio", diagram->border_and_titleblock.titleblockInformation().value("folio"));
m_diagram_info_order_changed.bindValue(":uuid", diagram->uuid());
if (!m_diagram_info_order_changed.exec()) {
qDebug() << "projectDataBase::addDiagram update diagram infp order error : " << m_diagram_info_order_changed.lastError();
}
}
emit dataBaseUpdated();
}
void projectDataBase::removeDiagram(Diagram *diagram)
@@ -208,21 +191,6 @@ void projectDataBase::removeDiagram(Diagram *diagram)
}
}
void projectDataBase::diagramInfoChanged(Diagram *diagram)
{
bindDiagramInfoValues(m_update_diagram_info_query, diagram);
if (!m_update_diagram_info_query.exec()) {
qDebug() << "projectDataBase::diagramInfoChanged update error : " << m_update_diagram_info_query.lastError();
} else {
emit dataBaseUpdated();
}
}
void projectDataBase::diagramOrderChanged()
{
}
/**
@brief projectDataBase::createDataBase
Create the data base
@@ -375,7 +343,7 @@ void projectDataBase::populateDiagramTable()
for (auto diagram : m_project->diagrams())
{
m_insert_diagram_query.bindValue(":uuid", diagram->uuid().toString());
m_insert_diagram_query.bindValue(":pos", m_project->folioIndex(diagram)+1);
m_insert_diagram_query.bindValue(":pos", m_project->folioIndex(diagram));
if(!m_insert_diagram_query.exec()) {
qDebug() << "projectDataBase::populateDiagramTable insert error : " << m_insert_diagram_query.lastError();
}
@@ -450,7 +418,23 @@ void projectDataBase::populateDiagramInfoTable()
for (auto *diagram : m_project->diagrams())
{
bindDiagramInfoValues(m_insert_diagram_info_query, diagram);
m_insert_diagram_info_query.bindValue(":uuid", diagram->uuid());
auto infos = diagram->border_and_titleblock.titleblockInformation();
for (auto key : QETApp::diagramInfoKeys())
{
if (key == "date") {
m_insert_diagram_info_query.bindValue(
":date",
QLocale::system().toString(
infos.value("date").toDate(),
QLocale::ShortFormat));
} else {
auto value = infos.value(key);
auto bind = key.prepend(":");
m_insert_diagram_info_query.bindValue(bind, value);
}
}
if (!m_insert_diagram_info_query.exec()) {
qDebug() << "projectDataBase::populateDiagramInfoTable insert error : " << m_insert_diagram_info_query.lastError();
@@ -481,22 +465,6 @@ void projectDataBase::prepareQuery()
")");
m_insert_diagram_info_query.prepare(insert_diag_info);
//UPDATE DIAGRAM INFO
QString update_diagram_str("UPDATE diagram_info SET ");
for (auto str : QETApp::diagramInfoKeys()) {
update_diagram_str.append(str + " = :" + str + ", ");
}
update_diagram_str.remove(update_diagram_str.length()-2, 2); //Remove the last ", "
update_diagram_str.append(" WHERE diagram_uuid = :uuid");
m_update_diagram_info_query = QSqlQuery(m_data_base);
m_update_diagram_info_query.prepare(update_diagram_str);
//UPDATE DIAGRAM ORDER
m_diagram_order_changed = QSqlQuery(m_data_base);
m_diagram_order_changed.prepare("UPDATE diagram SET pos = :pos WHERE uuid = :uuid");
m_diagram_info_order_changed = QSqlQuery(m_data_base);
m_diagram_info_order_changed.prepare("UPDATE diagram_info SET folio = :folio WHERE diagram_uuid = :uuid");
//INSERT ELEMENT
QString insert_element_query("INSERT INTO element (uuid, diagram_uuid, pos, type, sub_type) VALUES (:uuid, :diagram_uuid, :pos, :type, :sub_type)");
m_insert_elements_query = QSqlQuery(m_data_base);
@@ -553,25 +521,6 @@ QHash<QString, QString> projectDataBase::elementInfoToString(Element *elmt)
return hash;
}
void projectDataBase::bindDiagramInfoValues(QSqlQuery &query, Diagram *diagram)
{
query.bindValue(":uuid", diagram->uuid());
auto infos = diagram->border_and_titleblock.titleblockInformation();
for (auto key : QETApp::diagramInfoKeys())
{
if (key == "date") {
query.bindValue( ":date",
QLocale::system().toDate(infos.value("date").toString(),
QLocale::ShortFormat));
} else {
auto value = infos.value(key);
auto bind = key.prepend(":");
query.bindValue(bind, value);
}
}
}
#ifdef QET_EXPORT_PROJECT_DB
/**
@brief projectDataBase::sqliteHandle
+6 -14
View File
@@ -47,15 +47,11 @@ class projectDataBase : public QObject
void updateDB();
QETProject *project() const;
QSqlQuery newQuery(const QString &query = QString());
void addElement (Element *element);
void removeElement (Element *element);
void elementInfoChanged (Element *element);
void addDiagram (Diagram *diagram);
void removeDiagram (Diagram *diagram);
void diagramInfoChanged (Diagram *diagram);
void diagramOrderChanged();
void addElement(Element *element);
void removeElement(Element *element);
void elementInfoChanged(Element *element);
void addDiagram(Diagram *diagram);
void removeDiagram(Diagram *diagram);
signals:
void dataBaseUpdated();
@@ -71,7 +67,6 @@ class projectDataBase : public QObject
void prepareQuery();
static QHash<QString, QString> elementInfoToString(
Element *elmt);
void bindDiagramInfoValues(QSqlQuery &query, Diagram *diagram);
private:
QPointer<QETProject> m_project;
@@ -82,10 +77,7 @@ class projectDataBase : public QObject
m_update_element_query,
m_insert_diagram_query,
m_remove_diagram_query,
m_insert_diagram_info_query,
m_update_diagram_info_query,
m_diagram_order_changed,
m_diagram_info_order_changed;
m_insert_diagram_info_query;
#ifdef QET_EXPORT_PROJECT_DB
public:
+1 -4
View File
@@ -61,7 +61,6 @@ QString SummaryQueryWidget::queryStr() const
QStringList keys = selectedKeys();
QString select ="SELECT ";
QString order_by = " ORDER BY ";
QString column;
bool first = true;
@@ -70,15 +69,13 @@ QString SummaryQueryWidget::queryStr() const
first = false;
} else {
column += ", ";
order_by +=", ";
}
column += key;
order_by += key;
}
QString from = " FROM project_summary_view";
QString q(select + column + from + order_by);
QString q(select + column + from);
return q;
}
+159 -160
View File
@@ -178,7 +178,7 @@ void Diagram::drawBackground(QPainter *p, const QRectF &r) {
*/
QPen pen;
Diagram::background_color == Qt::black? pen.setColor(Qt::white)
: pen.setColor(Qt::black);
: pen.setColor(Qt::black);
pen.setCosmetic(true);
p->setPen(pen);
@@ -324,9 +324,9 @@ void Diagram::keyPressEvent(QKeyEvent *event)
{
QSettings settings;
int xKeyGrid = settings.value("diagrameditor/key_Xgrid",
Diagram::xKeyGrid).toInt();
Diagram::xKeyGrid).toInt();
int yKeyGrid = settings.value("diagrameditor/key_Ygrid",
Diagram::yKeyGrid).toInt();
Diagram::yKeyGrid).toInt();
int xKeyGridFine = settings.value("diagrameditor/key_fine_Xgrid",
Diagram::xKeyGridFine).toInt();
int yKeyGridFine = settings.value("diagrameditor/key_fine_Ygrid",
@@ -581,9 +581,9 @@ void Diagram::setConductorsAutonumName(const QString &name) {
@return Une QImage representant le schema
*/
bool Diagram::toPaintDevice(QPaintDevice &pix,
int width,
int height,
Qt::AspectRatioMode aspectRatioMode) {
int width,
int height,
Qt::AspectRatioMode aspectRatioMode) {
// determine the source area = schema content + margins
// determine la zone source = contenu du schema + marges
QRectF source_area;
@@ -630,9 +630,9 @@ bool Diagram::toPaintDevice(QPaintDevice &pix,
// renders itself
// effectue le rendu lui-meme
render(&p,
QRect(QPoint(0, 0),image_size),
source_area,
aspectRatioMode);
QRect(QPoint(0, 0),image_size),
source_area,
aspectRatioMode);
p.end();
// restore selected items
@@ -734,30 +734,30 @@ QDomDocument Diagram::toXml(bool whole_content) {
// schema properties
// proprietes du schema
if (whole_content) {
if (whole_content)
{
// TODO: compare with old version
border_and_titleblock.titleBlockToXml(dom_root);
border_and_titleblock.borderToXml(dom_root);
// Default conductor properties
QDomElement default_conductor =
document.createElement("defaultconductor");
defaultConductorProperties.toXml(default_conductor);
dom_root.appendChild(default_conductor);
dom_root.appendChild(defaultConductorProperties.toXml(document));
// Conductor autonum
if (!m_conductors_autonum_name.isEmpty()) {
dom_root.setAttribute("conductorAutonum",
m_conductors_autonum_name);
if (!m_conductors_autonum_name.isEmpty())
{
dom_root.setAttribute(
"conductorAutonum",m_conductors_autonum_name);
}
//Default New Element
dom_root.setAttribute("freezeNewElement",
m_freeze_new_elements ? "true" : "false");
m_freeze_new_elements ? "true" : "false");
//Default New Conductor
dom_root.setAttribute("freezeNewConductor",
m_freeze_new_conductors_
? "true" : "false");
m_freeze_new_conductors_
? "true" : "false");
//Element Folio Sequential Variables
if (!m_elmt_unitfolio_max.isEmpty()
@@ -771,10 +771,10 @@ QDomDocument Diagram::toXml(bool whole_content) {
document.createElement(
"elementunitfolioseq");
folioSequentialsToXml(&m_elmt_unitfolio_max,
&elmtfolioseq,
"sequf_",
"unitfolioseq",
&document);
&elmtfolioseq,
"sequf_",
"unitfolioseq",
&document);
elmtfoliosequential.appendChild(elmtfolioseq);
}
if (!m_elmt_tenfolio_max.isEmpty()) {
@@ -782,10 +782,10 @@ QDomDocument Diagram::toXml(bool whole_content) {
document.createElement(
"elementtenfolioseq");
folioSequentialsToXml(&m_elmt_tenfolio_max,
&elmtfolioseq,
"seqtf_",
"tenfolioseq",
&document);
&elmtfolioseq,
"seqtf_",
"tenfolioseq",
&document);
elmtfoliosequential.appendChild(elmtfolioseq);
}
if (!m_elmt_hundredfolio_max.isEmpty()) {
@@ -793,10 +793,10 @@ QDomDocument Diagram::toXml(bool whole_content) {
document.createElement(
"elementhundredfolioseq");
folioSequentialsToXml(&m_elmt_hundredfolio_max,
&elmtfolioseq,
"seqhf_",
"hundredfolioseq",
&document);
&elmtfolioseq,
"seqhf_",
"hundredfolioseq",
&document);
elmtfoliosequential.appendChild(elmtfolioseq);
}
dom_root.appendChild(elmtfoliosequential);
@@ -814,10 +814,10 @@ QDomDocument Diagram::toXml(bool whole_content) {
document.createElement(
"conductorunitfolioseq");
folioSequentialsToXml(&m_cnd_unitfolio_max,
&cndfolioseq,
"sequf_",
"unitfolioseq",
&document);
&cndfolioseq,
"sequf_",
"unitfolioseq",
&document);
cndfoliosequential.appendChild(cndfolioseq);
}
if (!m_cnd_tenfolio_max.isEmpty()) {
@@ -825,10 +825,10 @@ QDomDocument Diagram::toXml(bool whole_content) {
document.createElement(
"conductortenfolioseq");
folioSequentialsToXml(&m_cnd_tenfolio_max,
&cndfolioseq,
"seqtf_",
"tenfolioseq",
&document);
&cndfolioseq,
"seqtf_",
"tenfolioseq",
&document);
cndfoliosequential.appendChild(cndfolioseq);
}
if (!m_cnd_hundredfolio_max.isEmpty()) {
@@ -836,10 +836,10 @@ QDomDocument Diagram::toXml(bool whole_content) {
document.createElement(
"conductorhundredfolioseq");
folioSequentialsToXml(&m_cnd_hundredfolio_max,
&cndfolioseq,
"seqhf_",
"hundredfolioseq",
&document);
&cndfolioseq,
"seqhf_",
"hundredfolioseq",
&document);
cndfoliosequential.appendChild(cndfolioseq);
}
dom_root.appendChild(cndfoliosequential);
@@ -914,24 +914,22 @@ QDomDocument Diagram::toXml(bool whole_content) {
}
}
// correspondence table between the addresses of the terminals and their ids
// table de correspondance entre les adresses des bornes et leurs ids
QHash<Terminal *, int> table_adr_id;
// table de correspondance entre les adresses des bornes et leurs ids
if (!list_elements.isEmpty()) {
auto dom_elements = document.createElement("elements");
for (auto elmt : list_elements) {
dom_elements.appendChild(elmt->toXml(document,
table_adr_id));
for (auto elmt : list_elements)
{
dom_elements.appendChild(elmt->toXml(document));
}
dom_root.appendChild(dom_elements);
}
if (!list_conductors.isEmpty()) {
auto dom_conductors = document.createElement("conductors");
for (auto cond : list_conductors) {
dom_conductors.appendChild(cond->toXml(document,
table_adr_id));
for (auto cond : list_conductors)
{
dom_conductors.appendChild(cond->toXml(document));
}
dom_root.appendChild(dom_conductors);
}
@@ -981,18 +979,18 @@ QDomDocument Diagram::toXml(bool whole_content) {
@param doc
*/
void Diagram::folioSequentialsToXml(QHash<QString,
QStringList> *hash,
QDomElement *domElement,
const QString& seq_type,
const QString& type,
QDomDocument *doc) {
QStringList> *hash,
QDomElement *domElement,
const QString& seq_type,
const QString& type,
QDomDocument *doc) {
QHash<QString, QStringList>::iterator i;
for (i = hash->begin(); i != hash->end(); i++) {
QDomElement folioseq = doc->createElement(type);
folioseq.setAttribute("title", i.key());
for (int j = 0; j < i.value().size(); j++) {
folioseq.setAttribute(seq_type + QString::number(j+1),
i.value().at(j));
i.value().at(j));
}
domElement->appendChild(folioseq);
}
@@ -1030,9 +1028,9 @@ void Diagram::folioSequentialsToXml(QHash<QString,
\~French true si l'import a reussi, false sinon
*/
bool Diagram::fromXml(QDomDocument &document,
QPointF position,
bool consider_informations,
DiagramContent *content_ptr) {
QPointF position,
bool consider_informations,
DiagramContent *content_ptr) {
QDomElement root = document.documentElement();
return(fromXml(root, position, consider_informations, content_ptr));
}
@@ -1086,25 +1084,28 @@ bool Diagram::initFromXml(QDomElement &document,
/**
@brief findTerminal
Find terminal to which the conductor should be connected
@param conductor_index 1 or 2 depending on which terminal is searched
@param f Conductor xml element
@param table_adr_id Hash table to all terminal id assignement (legacy)
@param added_elements Elements found in the xml file
@param conductor_index
@param conductor
@param table_adr_id
@param added_elements
@return
*/
Terminal* findTerminal(int conductor_index,
QDomElement& f,
QHash<int,
Terminal *>& table_adr_id,
QList<Element *>& added_elements) {
Terminal* findTerminal(
int conductor_index,
QDomElement& conductor,
QHash<int, Terminal *>& table_adr_id,
QList<Element *>& added_elements)
{
assert(conductor_index == 1 || conductor_index == 2);
QString element_index = "element" + QString::number(conductor_index);
QString terminal_index = "terminal" + QString::number(conductor_index);
if (f.hasAttribute(element_index)) {
QUuid element_uuid = QUuid(f.attribute(element_index));
QUuid element_uuid;
if (PropertiesInterface::propertyUuid(
conductor, element_index, &element_uuid)
== PropertiesInterface::PropertyFlags::Success)
{
// element1 did not exist in the conductor part of the xml until prior 0.7
// It is used as an indicator that uuid's are used to identify terminals
bool element_found = false;
@@ -1112,7 +1113,9 @@ Terminal* findTerminal(int conductor_index,
if (element->uuid() != element_uuid)
continue;
element_found = true;
QUuid terminal_uuid = QUuid(f.attribute(terminal_index));
QUuid terminal_uuid;
PropertiesInterface::propertyUuid(
conductor, terminal_index, &terminal_uuid);
for (auto terminal: element->terminals()) {
if (terminal->uuid() != terminal_uuid)
continue;
@@ -1136,9 +1139,15 @@ Terminal* findTerminal(int conductor_index,
<< element_uuid
<< "not found";
} else {
// Backward compatibility.
// Until version 0.7 a generated id is used to link the terminal.
int id_p1 = f.attribute(terminal_index).toInt();
// Backward compatibility. Until version 0.7 a generated id is used to link the terminal.
int id_p1 = -1;
if (
PropertiesInterface::propertyInteger(
conductor, terminal_index, &id_p1)
!= PropertiesInterface::PropertyFlags::Success)
{
qDebug() << "diagramm.cpp:findTerminal(): Reading Id was not successfull";
}
if (!table_adr_id.contains(id_p1)) {
qDebug() << "Diagram::fromXml() : terminal id "
<< id_p1
@@ -1146,51 +1155,39 @@ Terminal* findTerminal(int conductor_index,
} else
return table_adr_id.value(id_p1);
}
qDebug() << "Diagram::findTerminal(): No terminal found.";
return nullptr;
}
/**
@brief Diagram::fromXml
Imports the described schema in an XML element. If a position is
specified, the imported elements are positioned in such a way that the
upper left corner of the smallest rectangle that can surround them all
(the bounding rect) either at this position.
\~French Importe le schema decrit dans un element XML.
Si une position est precisee,
les elements importes sont positionnes de maniere a ce que le
coin superieur gauche du plus petit rectangle pouvant les entourant tous
(le bounding rect) soit a cette position.
\~ @param document :
The XML document to analyze
\~French Le document XML a analyser
\~ @param position :
The position of the diagram matters
\~French La position du schema importe
\~ @param consider_informations :
If true, additional information
(author, title, ...) will be taken into account
\~French Si vrai, les informations complementaires
(auteur, titre, ...) seront prises en compte
\~ @param content_ptr :
if this pointer to a DiagramContent is different from 0,
it will be filled with the content added to the schema by the fromXml
\~French si ce pointeur vers un DiagramContent est different de 0,
il sera rempli avec le contenu ajoute au schema par le fromXml
\~ @return
true if the import was successful, false otherwise
\~French true si l'import a reussi, false sinon
@param document
@param position
@param consider_informations
@param content_ptr
@return
*/
bool Diagram::fromXml(QDomElement &document,
QPointF position,
bool consider_informations,
DiagramContent *content_ptr) {
bool Diagram::fromXml(
QDomElement &document,
QPointF position,
bool consider_informations,
DiagramContent *content_ptr)
{
const QDomElement& root = document;
// The first element must be a diagram
if (root.tagName() != "diagram") return(false);
// Read attributes of this diagram
if (consider_informations)
{
qDebug() << "Diagram::fromXml; Diagram: " << root.attribute("title");
// Read attributes of this diagram
if (consider_informations) {
// Version of diagram
bool conv_ok;
qreal version_value = root.attribute("version").toDouble(&conv_ok);
if (conv_ok) {
diagram_qet_version_ = version_value;
}
// Load border and titleblock
border_and_titleblock.titleBlockFromXml(root);
border_and_titleblock.borderFromXml(root);
@@ -1203,6 +1200,7 @@ bool Diagram::fromXml(QDomElement &document,
defaultConductorProperties.fromXml(default_conductor_elmt);
}
// Load the autonum
m_conductors_autonum_name = root.attribute("conductorAutonum");
@@ -1256,7 +1254,7 @@ bool Diagram::fromXml(QDomElement &document,
if (root.hasAttribute("projectId")) {
QETProject *other_project = QETApp::project(
root.attribute("projectId",
"-1").toInt());
"-1").toInt());
/* We try to paste from another project,
* then befor paste elements,
@@ -1268,8 +1266,8 @@ bool Diagram::fromXml(QDomElement &document,
ElementCollectionHandler ech;
foreach (QDomElement element_xml,
QET::findInDomElement(root,
"elements",
"element")) {
"elements",
"element")) {
if (!Element::valideXml(element_xml)) continue;
QString type_id = element_xml.attribute("type");
@@ -1279,16 +1277,16 @@ bool Diagram::fromXml(QDomElement &document,
type_id,
other_project);
ech.importFromProject(m_project,
location);
location);
}
}
}
}
//Load all elements from the XML
//Load all elements from the collection in the XML
QList<Element *> added_elements;
QHash<int, Terminal *> table_adr_id;
foreach (QDomElement element_xml,
QET::findInDomElement(root, "elements", "element"))
QET::findInDomElement(root, "elements", "element")) // read all elements from the diagram
{
if (!Element::valideXml(element_xml)) continue;
@@ -1303,9 +1301,9 @@ bool Diagram::fromXml(QDomElement &document,
}
int state = 0;
Element *nvel_elmt =
ElementFactory::Instance() -> createElement(
element_location, nullptr, &state);
// Create element from the collection
Element *nvel_elmt = ElementFactory::Instance() -> createElement(element_location, nullptr, &state); // read element definition from the collection!
if (state)
{
QString debug_message =
@@ -1319,13 +1317,14 @@ bool Diagram::fromXml(QDomElement &document,
}
addItem(nvel_elmt);
//Loading fail, remove item from the diagram
if (!nvel_elmt->fromXml(element_xml, table_adr_id))
//Loading fail, remove item from the diagram
if (!nvel_elmt->fromXml(element_xml, table_adr_id)) // load element definition from the diagram
{
removeItem(nvel_elmt);
delete nvel_elmt;
qDebug() << "Diagram::fromXml() : Le chargement des "
"parametres d'un element a echoue";
"parametres d'un element a echoue";
} else {
added_elements << nvel_elmt;
}
@@ -1334,8 +1333,8 @@ bool Diagram::fromXml(QDomElement &document,
// Load text
QList<IndependentTextItem *> added_texts;
foreach (QDomElement text_xml, QET::findInDomElement(root,
"inputs",
"input")) {
"inputs",
"input")) {
IndependentTextItem *iti = new IndependentTextItem();
iti -> fromXml(text_xml);
addItem(iti);
@@ -1345,8 +1344,8 @@ bool Diagram::fromXml(QDomElement &document,
// Load image
QList<DiagramImageItem *> added_images;
foreach (QDomElement image_xml, QET::findInDomElement(root,
"images",
"image")) {
"images",
"image")) {
DiagramImageItem *dii = new DiagramImageItem ();
dii -> fromXml(image_xml);
addItem(dii);
@@ -1356,8 +1355,8 @@ bool Diagram::fromXml(QDomElement &document,
// Load shape
QList<QetShapeItem *> added_shapes;
foreach (QDomElement shape_xml, QET::findInDomElement(root,
"shapes",
"shape")) {
"shapes",
"shape")) {
QetShapeItem *dii = new QetShapeItem (QPointF(0,0));
dii -> fromXml(shape_xml);
addItem(dii);
@@ -1366,35 +1365,37 @@ bool Diagram::fromXml(QDomElement &document,
// Load conductor
QList<Conductor *> added_conductors;
foreach (QDomElement f, QET::findInDomElement(root,
"conductors",
"conductor"))
foreach (QDomElement conductorElement,
QET::findInDomElement(root, "conductors", "conductor"))
{
if (!Conductor::valideXml(f)) continue;
if (!Conductor::valideXml(conductorElement)) continue;
//Check if terminal that conductor must be linked is know
Terminal* p1 = findTerminal(1, f, table_adr_id, added_elements);
Terminal* p2 = findTerminal(2, f, table_adr_id, added_elements);
Terminal* p1 = findTerminal(1, conductorElement, table_adr_id, added_elements);
Terminal* p2 = findTerminal(2, conductorElement, table_adr_id, added_elements);
if (p1 && p2 && p1 != p2)
if (p1 && p2 && p1 != p2) // why the condition for unequal is required?
{
Conductor *c = new Conductor(p1, p2);
if (c->isValid())
{
addItem(c);
c -> fromXml(f);
c -> fromXml(conductorElement);
added_conductors << c;
}
else
delete c;
} else {
qDebug() << "Diagramm::fromXML(): No matching terminals found.";
}
}
//Load tables
QVector<QetGraphicsTableItem *> added_tables;
for (auto dom_table
: QETXML::subChild(root,
: QETXML::subChild(root,
"tables",
QetGraphicsTableItem::xmlTagName()))
{
@@ -1473,23 +1474,23 @@ bool Diagram::fromXml(QDomElement &document,
@param autonumFolioSeqType
*/
void Diagram::folioSequentialsFromXml(const QDomElement &root,
QHash<QString,
QStringList>* hash,
const QString& folioSeq,
const QString& seq,
const QString& type,
const QString& autonumFolioSeqType) {
QHash<QString,
QStringList>* hash,
const QString& folioSeq,
const QString& seq,
const QString& type,
const QString& autonumFolioSeqType) {
foreach (QDomElement folioSeqAutoNum,
QET::findInDomElement(root, autonumFolioSeqType, folioSeq)) {
for(QDomElement folioseq
= folioSeqAutoNum.firstChildElement(type);
!folioseq.isNull();
folioseq = folioseq.nextSiblingElement(type)) {
= folioSeqAutoNum.firstChildElement(type);
!folioseq.isNull();
folioseq = folioseq.nextSiblingElement(type)) {
QString title = folioseq.attribute("title");
QStringList list;
int i = 1;
while (folioseq.hasAttribute(seq
+ QString::number(i))) {
+ QString::number(i))) {
list << folioseq.attribute(
seq + QString::number(i));
i++;
@@ -1650,8 +1651,6 @@ void Diagram::setTitleBlockTemplate(const QString &template_name)
if (template_name != current_name)
emit(usedTitleBlockTemplateChanged(template_name));
project()->dataBase()->diagramInfoChanged(this);
}
/**
@@ -1747,10 +1746,10 @@ void Diagram::insertFolioSeqHash(QHash<QString,
@param nc : Context to be manipulated
*/
void Diagram::loadFolioSeqHash(QHash<QString,
QStringList> *hash,
const QString& title,
const QString& type,
NumerotationContext *nc) {
QStringList> *hash,
const QString& title,
const QString& type,
NumerotationContext *nc) {
int j = 0;
for (int i = 0; i < nc->size(); i++) {
if (nc->itemAt(i).at(0) == type) {
@@ -1775,9 +1774,9 @@ void Diagram::changeZValue(QET::DepthOption option)
DiagramContent dc(this);
QUndoCommand *undo = new QUndoCommand(tr("Modifier la profondeur"));
QList<QGraphicsItem *> l = dc.items(DiagramContent::SelectedOnly | \
DiagramContent::Elements | \
DiagramContent::Shapes | \
DiagramContent::Images);
DiagramContent::Elements | \
DiagramContent::Shapes | \
DiagramContent::Images);
QList<QGraphicsObject *> list;
for(QGraphicsItem *item : l)
list << item->toGraphicsObject();
@@ -2166,7 +2165,7 @@ void Diagram::adjustSceneRect()
{
QRectF old_rect = sceneRect();
setSceneRect(border_and_titleblock.borderAndTitleBlockRect().united(
itemsBoundingRect()));
itemsBoundingRect()));
update(old_rect.united(sceneRect()));
}
+40 -51
View File
@@ -1,17 +1,17 @@
/*
Copyright 2006-2020 The QElectroTech Team
This file is part of QElectroTech.
QElectroTech is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
QElectroTech is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with QElectroTech. If not, see <http://www.gnu.org/licenses/>.
*/
@@ -58,13 +58,13 @@ class Diagram : public QGraphicsScene
friend QETProject;
Q_OBJECT
// constructors, destructor
private:
Diagram(QETProject *project);
~Diagram() override;
Diagram(const Diagram &diagram);
// ATTRIBUTES
public:
/**
@@ -96,7 +96,7 @@ class Diagram : public QGraphicsScene
/// margin around the diagram
static const qreal margin;
/// background color of diagram
static QColor background_color;
static QColor background_color; // default value set in cpp file
/// Hash containing max values for folio sequential autonums in this diagram
QHash <QString, QStringList> m_elmt_unitfolio_max;
QHash <QString, QStringList> m_elmt_tenfolio_max;
@@ -128,7 +128,7 @@ class Diagram : public QGraphicsScene
bool m_freeze_new_elements;
bool m_freeze_new_conductors_;
QUuid m_uuid = QUuid::createUuid();
// METHODS
protected:
void drawBackground(QPainter *, const QRectF &) override;
@@ -142,7 +142,7 @@ class Diagram : public QGraphicsScene
void wheelEvent (QGraphicsSceneWheelEvent *event) override;
void keyPressEvent (QKeyEvent *event) override;
void keyReleaseEvent (QKeyEvent *) override;
public:
QUuid uuid();
void setEventInterface (DiagramEventInterface *event_interface);
@@ -153,53 +153,42 @@ class Diagram : public QGraphicsScene
void setConductorsAutonumName(const QString &name);
static bool clipboardMayContainDiagram();
// methods related to parent project
QETProject *project() const;
int folioIndex() const;
void showMe() {emit showDiagram(this);}
bool isReadOnly() const;
// methods related to conductor creation
void setConductor(bool);
void setConductorStart (QPointF);
void setConductorStop(QPointF);
QList < QSet <Conductor *> > potentials();
// methods related to XML import/export
QDomDocument toXml(bool = true);
bool initFromXml(QDomElement &,
QPointF = QPointF(),
bool = true,
DiagramContent * = nullptr);
bool fromXml(QDomDocument &,
QPointF = QPointF(),
bool = true,
DiagramContent * = nullptr);
bool fromXml(QDomElement &,
QPointF = QPointF(),
bool = true,
DiagramContent * = nullptr);
void folioSequentialsToXml(QHash<QString,
QStringList>*,
QDomElement *,
const QString&,
const QString&,
QDomDocument *);
void folioSequentialsFromXml(const QDomElement&,
QHash<QString,
QStringList>*,
const QString&,
const QString&,
const QString&,
const QString&);
bool initFromXml(QDomElement &, QPointF = QPointF(),
bool = true, DiagramContent * = nullptr);
bool fromXml(
QDomDocument &, QPointF = QPointF(),
bool = true, DiagramContent * = nullptr);
bool fromXml(
QDomElement &, QPointF = QPointF(),
bool = true, DiagramContent * = nullptr);
void folioSequentialsToXml(
QHash<QString, QStringList>*, QDomElement *, const QString&,
const QString&, QDomDocument *);
void folioSequentialsFromXml(
const QDomElement&, QHash<QString,QStringList>*, const QString&,
const QString&, const QString&,const QString&);
void refreshContents();
// methods related to graphics items addition/removal on the diagram
virtual void addItem (QGraphicsItem *item);
virtual void removeItem (QGraphicsItem *item);
// methods related to graphics options
ExportProperties applyProperties(const ExportProperties &);
void setDisplayGrid(bool);
@@ -210,19 +199,19 @@ class Diagram : public QGraphicsScene
BorderOptions borderOptions();
DiagramPosition convertPosition(const QPointF &);
static QPointF snapToGrid(const QPointF &p);
bool drawTerminals() const;
void setDrawTerminals(bool);
bool drawColoredConductors() const;
void setDrawColoredConductors(bool);
QString title() const;
bool toPaintDevice(QPaintDevice &, int = -1, int = -1,
Qt::AspectRatioMode = Qt::KeepAspectRatio);
QSize imageSize() const;
bool isEmpty() const;
QList<Element *> elements() const;
QList<Conductor *> conductors() const;
QSet<Conductor *> selectedConductors() const;
@@ -232,29 +221,29 @@ class Diagram : public QGraphicsScene
ElementTextsMover &elementTextsMover();
bool usesElement(const ElementsLocation &);
bool usesTitleBlockTemplate(const QString &);
QUndoStack &undoStack();
QGIManager &qgiManager();
//methods related to element label Update Policy
void freezeElements(bool freeze);
void unfreezeElements();
void setFreezeNewElements(bool);
bool freezeNewElements();
//methods related to conductor label Update Policy
void freezeConductors(bool freeze);
void setFreezeNewConductors(bool);
bool freezeNewConductors();
//methods related to insertion and loading of folio sequential
void insertFolioSeqHash (QHash<QString, QStringList> *hash,
const QString& title,
const QString& seq,
NumerotationContext *nc);
void loadFolioSeqHash (QHash<QString, QStringList> *hash,
const QString& title, const QString& seq,
NumerotationContext *nc);
const QString& title, const QString& seq,
NumerotationContext *nc);
void changeZValue(QET::DepthOption option);
public slots:
@@ -262,12 +251,12 @@ class Diagram : public QGraphicsScene
void titleChanged(const QString &);
void titleBlockTemplateChanged(const QString &);
void titleBlockTemplateRemoved(const QString &,
const QString & = QString());
const QString & = QString());
void setTitleBlockTemplate(const QString &);
void updateLabels();
void loadElmtFolioSeq();
void loadCndFolioSeq();
// methods related to graphics items selection
void selectAll();
void deselectAll();
+6 -4
View File
@@ -209,15 +209,17 @@ void DiagramContext::toSettings(QSettings &settings, const QString &array_name)
Read this context properties from \a settings by running through the array
named \a array_name.
*/
void DiagramContext::fromSettings(QSettings &settings, const QString &array_name) {
int size = settings.beginReadArray(array_name);
void DiagramContext::fromSettings(const QSettings &settings, const QString &array_name) {
// TODO: find better solution than const cast
QSettings& s = const_cast<QSettings&>(settings);
int size = s.beginReadArray(array_name);
for (int i = 0 ; i < size; ++ i) {
settings.setArrayIndex(i);
s.setArrayIndex(i);
QString key = settings.value("name").toString();
if (key.isEmpty()) continue;
addValue(key, settings.value("value").toString());
}
settings.endArray();
s.endArray();
}
/**
+1 -1
View File
@@ -79,7 +79,7 @@ class DiagramContext
void fromXml(const QDomElement &, const QString & = "property");
void fromXml(const pugi::xml_node &dom_element, const QString &tag_name = "property");
void toSettings(QSettings &, const QString &) const;
void fromSettings(QSettings &, const QString &);
void fromSettings(const QSettings &, const QString &);
static QString validKeyRegExp();
@@ -161,7 +161,8 @@ void CustomElementGraphicPart::setAntialiased(const bool b)
Each style separate by ; and name-style/value are separate by :
@param qde : QDOmElement used to write the style.
*/
void CustomElementGraphicPart::stylesToXml(QDomElement &qde) const
void CustomElementGraphicPart::stylesToXml(
QDomDocument &xml_document, QDomElement &qde) const
{
QString css_like_styles;
@@ -496,9 +497,8 @@ void CustomElementGraphicPart::stylesToXml(QDomElement &qde) const
else if (_color == HTMLGrayBlackColor) css_like_styles += "HTMLGrayBlack";
else if (_color == NoneColor) css_like_styles += "none";
qde.setAttribute("style", css_like_styles);
qde.setAttribute("antialias", _antialiased ? "true" : "false");
qde.appendChild(createXmlProperty(xml_document, "style", css_like_styles));
qde.appendChild(createXmlProperty(xml_document, "antialias", _antialiased ? "true" : "false"));
}
@@ -511,28 +511,24 @@ void CustomElementGraphicPart::stylesFromXml(const QDomElement &qde)
{
resetStyles();
QString style_string;
propertyString(qde, "style", &style_string);
//Get the list of pair style/value
#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0) // ### Qt 6: remove
QStringList styles = qde.attribute("style").split(";", QString::SkipEmptyParts);
QStringList styles = style_string.split(";", QString::SkipEmptyParts);
#else
#if TODO_LIST
#pragma message("@TODO remove code for QT 5.14 or later")
#endif
QStringList styles = qde.attribute("style").split(";", Qt::SkipEmptyParts);
#endif
//Check each pair of style
QRegularExpression rx("^\\s*([a-z-]+)\\s*:\\s*([a-zA-Z-]+)\\s*$");
for (auto style : styles)
foreach (QString style, styles)
{
auto rx_match = rx.match(style);
if (!rx_match.hasMatch()) {
continue;
}
auto style_name = rx_match.captured(1);
auto style_value = rx_match.captured(2);
if (rx!=QRegularExpression(style)) continue;
QString style_name = rx.namedCaptureGroups().at(1);
QString style_value = rx.namedCaptureGroups().at(2);
if (style_name == "line-style")
{
if (style_value == "dashed") _linestyle = DashedStyle;
@@ -868,7 +864,9 @@ void CustomElementGraphicPart::stylesFromXml(const QDomElement &qde)
}
}
//Get antialiasing
_antialiased = qde.attribute("antialias") == "true";
QString a;
propertyString(qde, "antialias", &a);
_antialiased = a == "true";
}
@@ -303,7 +303,7 @@ class CustomElementGraphicPart : public QGraphicsObject, public CustomElementPar
virtual void resetAllHandlerColor() {}
protected:
void stylesToXml (QDomElement &) const;
void stylesToXml (QDomDocument &xml_document, QDomElement &) const;
void stylesFromXml(const QDomElement &);
void resetStyles ();
void applyStylesToQPainter(QPainter &) const;
@@ -19,6 +19,7 @@
#define CUSTOM_ELEMENT_PART_H
#include "qet.h"
#include "propertiesinterface.h"
class CustomElement;
class ElementPrimitiveDecorator;
@@ -37,7 +38,7 @@ class QGraphicsSceneMouseEvent;
there is no point for those classes to store their visual representation
with anything more complex than a QImage.
*/
class CustomElementPart {
class CustomElementPart: public PropertiesInterface {
// constructors, destructor
public:
/**
@@ -61,14 +62,6 @@ class CustomElementPart {
// methods
public:
/**
Load the primitive from an XML element that describes it
*/
virtual void fromXml(const QDomElement &) = 0;
/**
Export the primitive as an XML element
*/
virtual const QDomElement toXml(QDomDocument &) const = 0;
/**
Set a specific property of the primitive
*/
+56 -26
View File
@@ -97,40 +97,70 @@ void PartArc::paint(QPainter *painter, const QStyleOptionGraphicsItem *options,
}
/**
@brief PartArc::toXml
Export this arc in xml
@param xml_document : Xml document to use for create the xml element.
@return : an xml element that describe this arc
*/
const QDomElement PartArc::toXml(QDomDocument &xml_document) const
{
* @brief PartArc::toXml
* Export this arc in xml
* @param xml_document : Xml document to use for create the xml element.
* @return : an xml element that describe this arc
*/
QDomElement PartArc::toXml(QDomDocument &xml_document) const
{
QDomElement xml_element = xml_document.createElement("arc");
QPointF top_left(sceneTopLeft());
xml_element.setAttribute("x", QString("%1").arg(top_left.x()));
xml_element.setAttribute("y", QString("%1").arg(top_left.y()));
xml_element.setAttribute("width", QString("%1").arg(rect().width()));
xml_element.setAttribute("height", QString("%1").arg(rect().height()));
//to maintain compatibility with the previous version, we write the angle in degrees.
xml_element.setAttribute("start", QString("%1").arg(m_start_angle / 16));
xml_element.setAttribute("angle", QString("%1").arg(m_span_angle / 16));
stylesToXml(xml_element);
xml_element.appendChild(createXmlProperty(xml_document, "x", top_left.x()));
xml_element.appendChild(createXmlProperty(xml_document, "y", top_left.y()));
xml_element.appendChild(createXmlProperty(xml_document, "width", rect().width()));
xml_element.appendChild(createXmlProperty(xml_document, "height", rect().height()));
//to maintain compatibility with the previous version, we write the angle in degrees.
xml_element.appendChild(createXmlProperty(xml_document, "start", m_start_angle / 16));
xml_element.appendChild(createXmlProperty(xml_document, "angle", m_span_angle / 16));
stylesToXml(xml_document, xml_element);
return(xml_element);
}
/**
@brief PartArc::fromXml
Import the properties of this arc from a xml element.
@param qde : Xml document to use.
*/
void PartArc::fromXml(const QDomElement &qde) {
* @brief PartArc::fromXml
* Import the properties of this arc from a xml element.
* @param qde : Xml document to use.
*/
bool PartArc::fromXml(const QDomElement &qde) {
stylesFromXml(qde);
m_rect = QRectF(mapFromScene(qde.attribute("x", "0").toDouble(),
qde.attribute("y", "0").toDouble()),
QSizeF(qde.attribute("width", "0").toDouble(),
qde.attribute("height", "0").toDouble()) );
m_start_angle = qde.attribute("start", "0").toDouble() * 16;
m_span_angle = qde.attribute("angle", "-1440").toDouble() * 16;
double x=0, y=0, w=0, h=0;
if (propertyDouble(qde, "x", &x) == PropertyFlags::NoValidConversion ||
propertyDouble(qde, "y", &y) == PropertyFlags::NoValidConversion ||
propertyDouble(qde, "width", &w) == PropertyFlags::NoValidConversion ||
propertyDouble(qde, "height", &h) == PropertyFlags::NoValidConversion)
return false;
m_rect = QRectF(mapFromScene(x, y), QSizeF(w, h) );
m_start_angle = 0;
if (propertyDouble(qde, "start", &m_start_angle) == PropertyFlags::NoValidConversion)
return false;
m_start_angle *= 16;
m_span_angle = -1440;
if (propertyDouble(qde, "angle", &m_span_angle) == PropertyFlags::NoValidConversion)
return false;
m_span_angle *= 16;
return true;
}
bool PartArc::valideXml(QDomElement& element) {
if (propertyDouble(element, "x") == PropertyFlags::NoValidConversion ||
propertyDouble(element, "y") == PropertyFlags::NoValidConversion ||
propertyDouble(element, "width") == PropertyFlags::NoValidConversion ||
propertyDouble(element, "height") == PropertyFlags::NoValidConversion ||
propertyDouble(element, "start") == PropertyFlags::NoValidConversion ||
propertyDouble(element, "angle") == PropertyFlags::NoValidConversion)
return false;
return true;
}
/**
+3 -2
View File
@@ -51,8 +51,9 @@ class PartArc : public AbstractPartEllipse
//Name and XML
QString name() const override { return(QObject::tr("arc", "element part name")); }
QString xmlName() const override { return(QString("arc")); }
const QDomElement toXml (QDomDocument &) const override;
void fromXml (const QDomElement &) override;
QDomElement toXml (QDomDocument &) const override;
bool fromXml (const QDomElement &) override;
static bool valideXml(QDomElement& element);
QPainterPath shape() const override;
QPainterPath shadowShape() const override;
@@ -88,45 +88,46 @@ void PartDynamicTextField::handleUserTransformation(
}
/**
@brief PartDynamicTextField::toXml
@param dom_doc
@return
*/
const QDomElement PartDynamicTextField::toXml(QDomDocument &dom_doc) const
* @brief PartDynamicTextField::toXml
* @param document
* @return
*/
QDomElement PartDynamicTextField::toXml(QDomDocument &dom_doc) const
{
QDomElement root_element = dom_doc.createElement(xmlName());
root_element.setAttribute("x", QString::number(pos().x()));
root_element.setAttribute("y", QString::number(pos().y()));
root_element.setAttribute("z", QString::number(zValue()));
root_element.setAttribute("rotation", QString::number(QET::correctAngle(rotation())));
root_element.setAttribute("font", font().toString());
root_element.setAttribute("uuid", m_uuid.toString());
root_element.setAttribute("frame", m_frame? "true" : "false");
root_element.setAttribute("text_width", QString::number(m_text_width));
root_element.appendChild(createXmlProperty(dom_doc, "x", pos().x()));
root_element.appendChild(createXmlProperty(dom_doc, "y", pos().y()));
root_element.appendChild(createXmlProperty(dom_doc, "z", zValue()));
root_element.appendChild(createXmlProperty(dom_doc, "rotation", QET::correctAngle(rotation())));
root_element.appendChild(createXmlProperty(dom_doc, "font", font().toString()));
root_element.appendChild(createXmlProperty(dom_doc, "uuid", m_uuid));
root_element.appendChild(createXmlProperty(dom_doc, "frame", m_frame));
root_element.appendChild(createXmlProperty(dom_doc, "text_width", m_text_width));
QMetaEnum me = DynamicElementTextItem::textFromMetaEnum();
root_element.setAttribute("text_from", me.valueToKey(m_text_from));
root_element.appendChild(createXmlProperty(dom_doc, "text_from", me.valueToKey(m_text_from)));
me = QMetaEnum::fromType<Qt::Alignment>();
if(this -> alignment() &Qt::AlignRight)
root_element.setAttribute("Halignment", me.valueToKey(Qt::AlignRight));
else if(this -> alignment() &Qt::AlignLeft)
root_element.setAttribute("Halignment", me.valueToKey(Qt::AlignLeft));
else if(this -> alignment() &Qt::AlignHCenter)
root_element.setAttribute("Halignment", me.valueToKey(Qt::AlignHCenter));
if(this->alignment() &Qt::AlignRight)
root_element.appendChild(createXmlProperty(dom_doc, "Halignment", me.valueToKey(Qt::AlignRight)));
else if(this->alignment() &Qt::AlignLeft)
root_element.appendChild(createXmlProperty(dom_doc, "Halignment", me.valueToKey(Qt::AlignLeft)));
else if(this->alignment() &Qt::AlignHCenter)
root_element.appendChild(createXmlProperty(dom_doc, "Halignment", me.valueToKey(Qt::AlignHCenter)));
if(this -> alignment() &Qt::AlignBottom)
root_element.setAttribute("Valignment", me.valueToKey(Qt::AlignBottom));
else if(this -> alignment() & Qt::AlignTop)
root_element.setAttribute("Valignment", me.valueToKey(Qt::AlignTop));
else if(this -> alignment() &Qt::AlignVCenter)
root_element.setAttribute("Valignment", me.valueToKey(Qt::AlignVCenter));
if(this->alignment() &Qt::AlignBottom)
root_element.appendChild(createXmlProperty(dom_doc, "Valignment", me.valueToKey(Qt::AlignBottom)));
else if(this->alignment() & Qt::AlignTop)
root_element.appendChild(createXmlProperty(dom_doc, "Valignment", me.valueToKey(Qt::AlignTop)));
else if(this->alignment() &Qt::AlignVCenter)
root_element.appendChild(createXmlProperty(dom_doc, "Valignment", me.valueToKey(Qt::AlignVCenter)));
QDomElement dom_text = dom_doc.createElement("text");
dom_text.appendChild(dom_doc.createTextNode(toPlainText()));
root_element.appendChild(dom_text);
//Info name
if(!m_info_name.isEmpty()) {
QDomElement dom_info_name = dom_doc.createElement("info_name");
@@ -152,25 +153,32 @@ const QDomElement PartDynamicTextField::toXml(QDomDocument &dom_doc) const
}
/**
@brief PartDynamicTextField::fromXml
@param dom_elmt
*/
void PartDynamicTextField::fromXml(const QDomElement &dom_elmt) {
* @brief PartDynamicTextField::fromXml
* @param element
*/
bool PartDynamicTextField::fromXml(const QDomElement &dom_elmt)
{
if (dom_elmt.tagName() != xmlName()) {
qDebug() << "PartDynamicTextField::fromXml : Wrong tagg name";
return;
return false;
}
double x=0, y=0, z=0, rot=0;
QGraphicsTextItem::setPos(
dom_elmt.attribute("x", QString::number(0)).toDouble(),
dom_elmt.attribute("y", QString::number(0)).toDouble()
);
setZValue(dom_elmt.attribute("z", QString::number(zValue())).toDouble());
QGraphicsTextItem::setRotation(dom_elmt.attribute("rotation", QString::number(0)).toDouble());
if (propertyDouble(dom_elmt, "x", &x) == PropertyFlags::NoValidConversion ||
propertyDouble(dom_elmt, "y", &y) == PropertyFlags::NoValidConversion ||
propertyDouble(dom_elmt, "z", &z) == PropertyFlags::NoValidConversion ||
propertyDouble(dom_elmt, "rotation", &rot) == PropertyFlags::NoValidConversion)
return false;
if (dom_elmt.hasAttribute("font")) {
QGraphicsTextItem::setPos(x, y);
setZValue(z);
QGraphicsTextItem::setRotation(rot);
QString font;
if (propertyString(dom_elmt, "font", &font) == PropertyFlags::Success)
{
QFont font_;
font_.fromString(dom_elmt.attribute("font"));
font_.fromString(font);
setFont(font_);
}
else {
@@ -181,21 +189,25 @@ void PartDynamicTextField::fromXml(const QDomElement &dom_elmt) {
setFont(QETApp::dynamicTextsItemFont(9));
}
m_uuid = QUuid(dom_elmt.attribute("uuid", QUuid::createUuid().toString()));
setFrame(dom_elmt.attribute("frame", "false") == "true"? true : false);
setTextWidth(dom_elmt.attribute("text_width", QString::number(-1)).toDouble());
propertyUuid(dom_elmt, "uuid", &m_uuid);
bool frame;
propertyBool(dom_elmt, "frame", &frame);
double text_width=-1;
propertyDouble(dom_elmt, "text_width", &text_width);
setTextWidth(text_width);
QMetaEnum me = DynamicElementTextItem::textFromMetaEnum();
m_text_from = DynamicElementTextItem::TextFrom(
me.keyToValue(dom_elmt.attribute("text_from").toStdString().data()));
QString text_from;
propertyString(dom_elmt, "text_from", &text_from);
m_text_from = DynamicElementTextItem::TextFrom(me.keyToValue(text_from.toStdString().data()));
me = QMetaEnum::fromType<Qt::Alignment>();
if(dom_elmt.hasAttribute("Halignment"))
setAlignment(Qt::Alignment(
me.keyToValue(dom_elmt.attribute("Halignment").toStdString().data())));
if(dom_elmt.hasAttribute(("Valignment")))
setAlignment(Qt::Alignment(
me.keyToValue(dom_elmt.attribute("Valignment").toStdString().data())) | this -> alignment());
QString alignment;
if(propertyString(dom_elmt, "Halignment", &alignment) != PropertyFlags::NotFound)
setAlignment(Qt::Alignment(me.keyToValue(alignment.toStdString().data())));
if(propertyString(dom_elmt, "Valignment", &alignment) != PropertyFlags::NotFound)
setAlignment(Qt::Alignment(me.keyToValue(alignment.toStdString().data())) | this->alignment());
//Text
QDomElement dom_text = dom_elmt.firstChildElement("text");
@@ -220,6 +232,29 @@ void PartDynamicTextField::fromXml(const QDomElement &dom_elmt) {
QDomElement dom_color = dom_elmt.firstChildElement("color");
if(!dom_color.isNull())
setColor(QColor(dom_color.text()));
return true;
}
bool PartDynamicTextField::valideXml(QDomElement& dom_elmt) {
if (propertyDouble(dom_elmt, "x") == PropertyFlags::NoValidConversion ||
propertyDouble(dom_elmt, "y") == PropertyFlags::NoValidConversion ||
propertyDouble(dom_elmt, "z") == PropertyFlags::NoValidConversion ||
propertyDouble(dom_elmt, "rotation") == PropertyFlags::NoValidConversion)
return false;
if (propertyUuid(dom_elmt, "uuid") == PropertyFlags::NoValidConversion)
return false;
if (propertyString(dom_elmt, "text_from"))
return false;
if(propertyString(dom_elmt, "Halignment") == PropertyFlags::NotFound)
return false;
if(propertyString(dom_elmt, "Valignment") == PropertyFlags::NotFound)
return false;
return true;
}
/**
@@ -1,17 +1,17 @@
/*
Copyright 2006-2020 The QElectroTech Team
This file is part of QElectroTech.
QElectroTech is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
QElectroTech is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with QElectroTech. If not, see <http://www.gnu.org/licenses/>.
*/
@@ -75,10 +75,10 @@ class PartDynamicTextField : public QGraphicsTextItem, public CustomElementPart
void startUserTransformation(const QRectF &initial_selection_rect) override;
void handleUserTransformation(const QRectF &initial_selection_rect, const QRectF &new_selection_rect) override;
const QDomElement toXml(QDomDocument &dom_doc) const override;
void fromXml(const QDomElement &dom_elmt) override;
QDomElement toXml(QDomDocument &dom_doc) const override;
bool fromXml(const QDomElement &dom_elmt) override;
void fromTextFieldXml(const QDomElement &dom_element);
static bool valideXml(QDomElement& dom_elmt);
DynamicElementTextItem::TextFrom textFrom() const;
void setTextFrom (DynamicElementTextItem::TextFrom text_from);
QString text() const;
@@ -116,7 +116,7 @@ class PartDynamicTextField : public QGraphicsTextItem, public CustomElementPart
m_info_name,
m_composite_text;
DynamicElementTextItem::TextFrom m_text_from = DynamicElementTextItem::UserText;
QUuid m_uuid;
QUuid m_uuid{QUuid::createUuid()};
bool m_frame = false,
m_first_add = true,
m_block_alignment = false;
+54 -25
View File
@@ -78,56 +78,85 @@ void PartEllipse::paint(QPainter *painter, const QStyleOptionGraphicsItem *optio
}
/**
@brief PartEllipse::toXml
Export this ellipse in xml
@param xml_document : Xml document to use for create the xml element.
@return : an xml element that describe this ellipse
*/
const QDomElement PartEllipse::toXml(QDomDocument &xml_document) const
* @brief PartEllipse::toXml
* Export this ellipse in xml
* @param xml_document : Xml document to use for create the xml element.
* @return : an xml element that describe this ellipse
*/
QDomElement PartEllipse::toXml(QDomDocument &xml_document) const
{
QDomElement xml_element;
if (qFuzzyCompare(rect().width(), rect().height()))
{
xml_element = xml_document.createElement("circle");
xml_element.setAttribute("diameter", QString("%1").arg(rect().width()));
xml_element.appendChild(createXmlProperty(xml_document, "diameter", rect().width()));
}
else
{
xml_element = xml_document.createElement("ellipse");
xml_element.setAttribute("width", QString("%1").arg(rect().width()));
xml_element.setAttribute("height", QString("%1").arg(rect().height()));
xml_element.appendChild(createXmlProperty(xml_document, "width", rect().width()));
xml_element.appendChild(createXmlProperty(xml_document, "height", rect().height()));
}
QPointF top_left(sceneTopLeft());
xml_element.setAttribute("x", QString("%1").arg(top_left.x()));
xml_element.setAttribute("y", QString("%1").arg(top_left.y()));
xml_element.appendChild(createXmlProperty(xml_document, "x", top_left.x()));
xml_element.appendChild(createXmlProperty(xml_document, "y", top_left.y()));
stylesToXml(xml_element);
stylesToXml(xml_document, xml_element);
return(xml_element);
}
/**
@brief PartEllipse::fromXml
Import the properties of this ellipse from a xml element.
@param qde : Xml document to use.
*/
void PartEllipse::fromXml(const QDomElement &qde)
* @brief PartEllipse::fromXml
* Import the properties of this ellipse from a xml element.
* @param qde : Xml document to use.
*/
bool PartEllipse::fromXml(const QDomElement &qde)
{
stylesFromXml(qde);
qreal width, height;
double x=0, y=0, width=0, height=0;
if (qde.tagName() == "ellipse")
{
width = qde.attribute("width", "0").toDouble();
height = qde.attribute("height", "0").toDouble();
if (propertyDouble(qde, "width", &width) == PropertyFlags::NoValidConversion ||
propertyDouble(qde, "height", &height) == PropertyFlags::NoValidConversion)
return false;
}
else {
if (propertyDouble(qde, "diameter", &width) == PropertyFlags::NoValidConversion)
return false;
height = width;
}
else
width = height = qde.attribute("diameter", "0").toDouble();
m_rect = QRectF(mapFromScene(qde.attribute("x", "0").toDouble(),
qde.attribute("y", "0").toDouble()),
QSizeF(width, height));
if (propertyDouble(qde, "x", &x) == PropertyFlags::NoValidConversion ||
propertyDouble(qde, "y", &y) == PropertyFlags::NoValidConversion)
return false;
m_rect = QRectF(mapFromScene(x, y), QSizeF(width, height));
return true;
}
bool PartEllipse::valideXml(QDomElement& element) {
if (element.tagName() == "ellipse")
{
if (propertyDouble(element, "width") & PropertyFlags::NoValidConversion ||
propertyDouble(element, "height") & PropertyFlags::NoValidConversion)
return false;
}
else {
if (propertyDouble(element, "diameter") & PropertyFlags::NoValidConversion)
return false;
}
if ((propertyDouble(element, "x") & PropertyFlags::NoValidConversion) ||
(propertyDouble(element, "y") & PropertyFlags::NoValidConversion))
return false;
return true;
}
/**
+3 -2
View File
@@ -52,8 +52,9 @@ class PartEllipse : public AbstractPartEllipse
//Name and XML
QString name() const override { return(QObject::tr("ellipse", "element part name")); }
QString xmlName() const override { return(QString("ellipse")); }
const QDomElement toXml (QDomDocument &) const override;
void fromXml (const QDomElement &) override;
QDomElement toXml (QDomDocument &) const override;
bool fromXml (const QDomElement &) override;
static bool valideXml(QDomElement& element);
QPainterPath shape() const override;
QPainterPath shadowShape() const override;
void setRect(const QRectF &rect) override {AbstractPartEllipse::setRect(rect); adjusteHandlerPos();}

Some files were not shown because too many files have changed in this diff Show More