Compare commits

..

59 Commits

Author SHA1 Message Date
Simon De Backer f613f7fcdc Mod git pull
this works for git pull since Git 2.15
2020-11-13 18:51:30 +01:00
Simon De Backer 0bfbc37bc9 Add git submodule instruction 2020-11-07 22:38:28 +01:00
Simon De Backer e3b98001f3 Fix indentation restored 2020-11-07 22:19:54 +01:00
Simon De Backer d1c969b723 Purge old comment 2020-11-07 22:18:53 +01:00
Simon De Backer acf9c17969 Add packaging script's
info of packaging_script Debian, Ubuntu, Windows
https://qelectrotech.org/wiki_new/doc/packaging_debian#packaging_script_debian_ubuntu_windows

Laurent,
can you check the scripts if they work now,
I'll then change them to scripts that can handle git Submodules
2020-11-07 18:38:35 +01:00
artgg7300 862dbede24 updated hungarian files 2020-11-07 09:56:33 +01:00
dlee99 be3421f8c9 modified: lang/qet_nl.qm
modified:   lang/qet_nl.ts
2020-11-06 20:08:46 +01:00
Laurent Trinques 4ad4e75132 Update TS files and update it translation, thanks Marco 2020-11-06 08:01:14 +01:00
pavelfric d2c4bf4ec7 Updated Czech translation. 2020-11-02 22:05:38 +01:00
pavelfric a97ee8ddba Merge branch 'master' of ssh://git.tuxfamily.org/gitroot/qet/qet 2020-11-02 22:04:40 +01:00
Claveau Joshua ca0dcc9b7b Fix crash 2020-11-02 19:31:52 +01:00
Claveau Joshua 62333506f1 Improve update of the project database 2020-11-02 19:13:56 +01:00
Ole Carlsen 98de247a4d Minor danish translation update 2020-11-02 18:47:53 +01:00
Claveau Joshua a0efad18ab Merge branch 'master' of ssh://git.tuxfamily.org/gitroot/qet/qet into master 2020-11-01 21:28:06 +01:00
Claveau Joshua b514c39883 Improve update of the project database 2020-11-01 21:27:40 +01:00
Simon De Backer 859bf7f645 Mod clazy checks range-loop
you're using C++11 range-loops with non-const Qt containers
(potential detach).

adding missing &
2020-11-01 19:10:30 +01:00
Simon De Backer 1b10fe3b7f Mod container-anti-pattern
Finds when temporary containers are being created needlessly.
These cases are usually easy to fix by using iterators,
avoiding memory allocations.

And mod to return on first true

can we test if the Elements collection reload faster or not?
2020-11-01 18:44:14 +01:00
Simon De Backer 41c7cde8ca Mod overlapping comparisons
warning: overlapping comparisons always evaluate to true

valid for a project made before 0.7
probably it will be better to delete the code completely.
2020-11-01 18:11:55 +01:00
Simon De Backer 69adb10bcc Add clang-format file (WIP) 2020-11-01 16:57:19 +01:00
pavelfric 239a7daf7f Updated Czech translation. 2020-11-01 15:20:39 +01:00
pavelfric f73f71c0aa Merge branch 'master' of ssh://git.tuxfamily.org/gitroot/qet/qet 2020-11-01 15:16:13 +01:00
Laurent Trinques 23764c0e11 Update be-nl translations, thanks Ronny 2020-11-01 11:40:17 +01:00
Laurent Trinques beec556a55 Update qet_en.qm 2020-11-01 07:10:46 +01:00
M. Buijs 3a0da97878 Update qet_en.ts
The first letter of the word needs to be in upper case to align with the rest of the menu.
2020-11-01 07:09:11 +01:00
pavelfric 2afac1e56d Updated Czech translation. 2020-10-31 22:20:13 +01:00
Claveau Joshua 72271cfc69 Improve format of save date
3 formats : local, eu (dd mm yyyy) and us (yyyy mm dd)
2020-10-31 14:22:06 +01:00
Simon De Backer 24c930d727 Mod raw Pointer to QScopedPointer
Clang-Tidy and Clazy said
"drag" leaks memory
2020-10-30 21:07:12 +01:00
Simon De Backer 87845ef0ee Add failed to load message of languages on log file
compiler complained about non return value of
bool QTranslator::load
2020-10-29 20:41:24 +01:00
Ole Carlsen 8c51725c71 Danish translation update 2020-10-29 17:19:29 +01:00
Laurent Trinques dbf4315deb Update de translation, thanks Lars 2020-10-29 02:10:05 +01:00
Laurent Trinques 099dc614bd Update en qm 2020-10-28 10:57:12 +01:00
M. Buijs 96450ce19f Update qet_en.ts
Small language updates
2020-10-27 23:56:20 +01:00
dlee99 1d606c574b modified: lang/qet_nl.qm
modified:   lang/qet_nl.ts
2020-10-27 21:46:54 +01:00
Claveau Joshua 8ba982f6cc improve code readability 2020-10-27 21:05:29 +01:00
Claveau Joshua 329ceb4594 Bug fix : directory of embedded element collection is not translated
Bug introduced at commit 995066916b
2020-10-27 20:49:16 +01:00
Laurent Trinques 50de125787 Update en translations 2020-10-27 12:07:44 +01:00
M. Buijs 2839a4009c Update qet_en.ts
Added missing translation
2020-10-27 12:07:01 +01:00
Simon De Backer 6bfb2b95d2 QT6: QStringref replaced to QStringView in QT6
as a result this additional instruction is required
2020-10-26 23:01:45 +01:00
sdeffaux 0dba97ef6a Add symbols and fix bux 193 2020-10-26 21:23:33 +01:00
Simon De Backer c5c3dfb07b Mod Maximum Size of configureQET widget 2020-10-25 12:24:43 +01:00
sdeffaux 1c91a6300a Add symbols 2020-10-24 20:31:45 +02:00
Claveau Joshua b1eb59f3ea Improve previous comit 2020-10-22 21:07:41 +02:00
Laurent Trinques cb29a4d383 Fix date on summary pages 2020-10-22 18:28:52 +02:00
artgg7300 077c4f578a translated hungarian files 2020-10-21 18:24:05 +02:00
aitolos 752f31513c Update Greek Lang 2020-10-19 18:29:29 +03:00
aitolos 756fc845a5 Merge branch 'master' of ssh://git.tuxfamily.org/gitroot/qet/qet 2020-10-19 18:14:08 +03:00
aitolos 9d89719c21 Merge branch 'master' of ssh://git.tuxfamily.org/gitroot/qet/qet 2020-10-19 18:12:26 +03:00
aitolos 785c5884e8 Update Greek Lang 2020-10-19 18:11:32 +03:00
Laurent Trinques 87425d70ce Update * TS files 2020-10-19 14:21:02 +02:00
Laurent Trinques 9c267d673d Fix %{saveddate} titleblock variable and
add new %{saveddate-eu} variable dd-MM-yyyy date format
2020-10-19 14:09:26 +02:00
Claveau Joshua 69f775aa0f Minor fix : can't move diagram to top from element panel widget 2020-10-18 11:50:04 +02:00
Ole Carlsen 2619d96998 Danish translation updated 2020-10-18 11:03:34 +02:00
Claveau Joshua 74ee2fd82c minor 2020-10-18 10:49:45 +02:00
Claveau Joshua ec0b92ec1d Fix : Filling color is not apply to polyline. 2020-10-18 10:45:05 +02:00
artgg7300 a65675b53e translated hungarian files 2020-10-15 20:17:03 +02:00
Laurent Trinques c39ef0a999 Update en fr translation 2020-10-15 18:54:08 +02:00
dlee99 ff84a71d97 modified: lang/qet_nl.qm
modified:   lang/qet_nl.ts
2020-10-14 23:15:59 +02:00
Laurent Trinques 434c3dfbfb Update TS files 2020-10-14 21:00:33 +02:00
Laurent Trinques 096f8f58e1 Updatre de translation, thanks Lars 2020-10-14 20:58:35 +02:00
153 changed files with 32601 additions and 28285 deletions
+67
View File
@@ -0,0 +1,67 @@
---
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
...
@@ -0,0 +1,43 @@
<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>
@@ -0,0 +1,42 @@
<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>
@@ -0,0 +1,50 @@
<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>
@@ -0,0 +1,49 @@
<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>
@@ -0,0 +1,25 @@
<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>
@@ -0,0 +1,56 @@
<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>
@@ -0,0 +1,82 @@
<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>
@@ -0,0 +1,72 @@
<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>
@@ -1,66 +0,0 @@
<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>
@@ -0,0 +1,38 @@
<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>
@@ -0,0 +1,37 @@
<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,37 +1,48 @@
<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>
<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>
<name lang="el">Ποδοδιακόπτης, ανοικτή και κλειστή επαφή</name>
<name lang="en">Foot Switch (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="ar">مفتاح بدوّاسة (NO/NC)</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="cs">Pedálový spínač (NO/NC)</name>
<name lang="nl">Voetschakelaar (NO/NC)</name>
<name lang="de">Fußschalter 2-polig Schliesser/Öffner</name>
</names>
<kindInformations>
<kindInformation show="1" name="type">commutator</kindInformation>
</kindInformations>
<elementInformations/>
<informations>Author: The QElectroTech team
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<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"/>
<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"/>
</description>
</definition>
@@ -0,0 +1,39 @@
<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,40 +1,45 @@
<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="de">Drehstrom Motor</name>
<name lang="ru">Трёхфазный эл. мотор</name>
<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="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="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>
<name lang="ar">محرّك ثلاثي الأوجه</name>
<name lang="es">Motor trifásico</name>
<name lang="de">Drehstrom Motor</name>
<name lang="nl">Draaistroommotor</name>
</names>
<elementInformations/>
<informations>Author: The QElectroTech team&#xd;
License: see http://qelectrotech.org/wiki/doc/elements_license</informations>
<description>
<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"/>
<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"/>
</description>
</definition>
@@ -0,0 +1,181 @@
<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>
@@ -0,0 +1,5 @@
<qet-directory>
<names>
<name lang="fr">Cynergy 3</name>
</names>
</qet-directory>
@@ -0,0 +1,97 @@
<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>
@@ -0,0 +1,5 @@
<qet-directory>
<names>
<name lang="cs">Fuji</name>
</names>
</qet-directory>
@@ -0,0 +1,46 @@
<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>
@@ -0,0 +1,118 @@
<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>
@@ -0,0 +1,134 @@
<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>
@@ -0,0 +1,5 @@
<qet-directory>
<names>
<name lang="fr">Kinco</name>
</names>
</qet-directory>
@@ -1,182 +1,182 @@
<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}"/>
<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}"/>
<names>
<name lang="fr">4 AI</name>
</names>
<elementInformations>
<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>
<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>
</elementInformations>
<informations>s.deffaux</informations>
<description>
<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">
<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">
<text>4-AI</text>
<info_name>label</info_name>
</dynamic_text>
<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"/>
<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"/>
</description>
</definition>
@@ -0,0 +1,104 @@
<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>
@@ -0,0 +1,40 @@
<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>
@@ -0,0 +1,48 @@
<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>
@@ -0,0 +1,29 @@
<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
+513 -449
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+1103 -1034
View File
File diff suppressed because it is too large Load Diff
+513 -449
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+677 -612
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+556 -492
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+581 -515
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+564 -500
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+516 -454
View File
File diff suppressed because it is too large Load Diff
+509 -445
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+518 -454
View File
File diff suppressed because it is too large Load Diff
+513 -449
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+508 -444
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+7951 -7883
View File
File diff suppressed because it is too large Load Diff
+509 -445
View File
File diff suppressed because it is too large Load Diff
+517 -453
View File
File diff suppressed because it is too large Load Diff
+509 -445
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+509 -445
View File
File diff suppressed because it is too large Load Diff
+509 -445
View File
File diff suppressed because it is too large Load Diff
+516 -449
View File
File diff suppressed because it is too large Load Diff
+509 -445
View File
File diff suppressed because it is too large Load Diff
+513 -449
View File
File diff suppressed because it is too large Load Diff
+514 -450
View File
File diff suppressed because it is too large Load Diff
+517 -453
View File
File diff suppressed because it is too large Load Diff
+517 -453
View File
File diff suppressed because it is too large Load Diff
+517 -453
View File
File diff suppressed because it is too large Load Diff
+509 -445
View File
File diff suppressed because it is too large Load Diff
+517 -453
View File
File diff suppressed because it is too large Load Diff
+47
View File
@@ -0,0 +1,47 @@
#!/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
@@ -0,0 +1,374 @@
#!/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
@@ -0,0 +1,31 @@
#!/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/
+10 -15
View File
@@ -24,7 +24,6 @@
#include "element.h"
#include "qetxml.h"
#include <QPicture>
#include <QDebug>
// make this class usable with QVariant
int ElementsLocation::MetaTypeId = qRegisterMetaType<ElementsLocation>("ElementsLocation");
@@ -676,28 +675,24 @@ 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);
#endif
}
#else
docu.load_file(m_file_system_path.toStdString().c_str());
#endif
}
else
{
QString str = m_collection_path;
//Get the xml dom from Qt xml and copie to pugi xml
QDomElement element = m_project
->embeddedElementCollection()
->element(str.remove("embed://"));
//Get the xml dom from Qt xml and copie to pugi xml
QDomDocument qdoc;
if (isElement())
{
qdoc.appendChild(qdoc.importNode(
element.firstChildElement(
"definition"),
true));
QString str = m_collection_path;
if (isElement()) {
QDomElement element = m_project->embeddedElementCollection()->element(str.remove("embed://"));
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,10 +69,9 @@ void ElementsTreeView::startDrag(Qt::DropActions supportedActions)
*/
void ElementsTreeView::startElementDrag(const ElementsLocation &location)
{
if (!location.exist())
return;
if (! location.exist()) return;
QDrag *drag = new QDrag(this);
QScopedPointer<QDrag> drag(new QDrag(this));
QString location_str = location.toString();
QMimeData *mime_data = new QMimeData();
@@ -91,14 +90,12 @@ void ElementsTreeView::startElementDrag(const ElementsLocation &location)
//Build the element for set the pixmap of the QDrag
int elmt_creation_state;
Element *temp_elmt = ElementFactory::Instance()->createElement(
location, nullptr,
&elmt_creation_state);
if (elmt_creation_state)
{
delete temp_elmt;
return;
}
QScopedPointer<Element> temp_elmt(
ElementFactory::Instance()->createElement(
location,
nullptr,
&elmt_creation_state));
if (elmt_creation_state) { return; }
QPixmap elmt_pixmap(temp_elmt->pixmap());
QPoint elmt_hotspot(temp_elmt->hotspot());
@@ -123,9 +120,6 @@ 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
@@ -282,9 +282,8 @@ void FileElementCollectionItem::setUpData()
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(" "));
}
@@ -331,8 +330,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;
@@ -352,8 +351,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);
@@ -367,8 +366,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);
+18 -21
View File
@@ -229,28 +229,25 @@ bool NamesList::operator==(const NamesList &nl) const
}
/**
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.
*/
* @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.
*/
QString NamesList::name(const QString &fallback_name) const
{
QString system_language = QETApp::langFromSetting();
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);
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(""));
}
@@ -25,7 +25,7 @@
@param size : the size of the handler
*/
QetGraphicsHandlerItem::QetGraphicsHandlerItem(qreal size) :
m_size(size)
m_size(size)
{
setFlag(QGraphicsItem::ItemIgnoresTransformations);
@@ -50,9 +50,10 @@ 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{Qt::black};
QColor m_color;
QPen m_pen;
public:
+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()=="prefix")
if(rxml.name().toString()=="prefix")
{
return rxml.readElementText();
}
//if there isn't a prefix available, find parent prefix in parent folder
else
{
while (rxml.readNextStartElement() && rxml.name()!="prefix")
while (rxml.readNextStartElement() && rxml.name().toString()!="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()=="prefix")
if(rxml.name().toString()=="prefix")
{
return rxml.readElementText();
}
//if there isn't a prefix available, find parent prefix in parent folder
else
{
while (rxml.readNextStartElement() && rxml.name()!="prefix")
while (rxml.readNextStartElement() && rxml.name().toString()!="prefix")
{
rxml.skipCurrentElement();
rxml.readNext();
+33 -40
View File
@@ -32,7 +32,15 @@
- 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()
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)
{
}
@@ -78,26 +86,27 @@ bool BorderProperties::operator==(const BorderProperties &bp) {
bool BorderProperties::operator!=(const BorderProperties &bp) {
return(!(*this == bp));
}
/**
@brief BorderProperties::toXml
@param dom_doc
@return
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
*/
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;
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");
}
/**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
@@ -106,29 +115,13 @@ QDomElement BorderProperties::toXml(QDomDocument &dom_doc) const {
XML element whose attributes will be read
\~French Element XML dont les attributs seront lus
*/
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;
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";
}
/**
@@ -162,7 +155,7 @@ 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(const QSettings &settings, const QString &prefix) {
void BorderProperties::fromSettings(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();
+13 -16
View File
@@ -20,15 +20,13 @@
#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 : public PropertiesInterface {
class BorderProperties {
public:
// constructor, destructor, operators
BorderProperties();
@@ -37,23 +35,22 @@ class BorderProperties : public PropertiesInterface {
bool operator==(const BorderProperties &);
bool operator!=(const BorderProperties &);
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;
void toXml(QDomElement &) const;
void fromXml(QDomElement &);
void toSettings(QSettings &, const QString & = QString()) const;
void fromSettings(QSettings &, const QString & = QString());
static BorderProperties defaultProperties();
// attributes
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 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 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
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
};
#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& doc) {
exportTitleBlock().toXml(doc);
void BorderTitleBlock::titleBlockToXml(QDomElement &xml_elmt) {
exportTitleBlock().toXml(xml_elmt);
}
/**
+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 &doc);
void titleBlockToXml(QDomElement &);
void titleBlockFromXml(const QDomElement &);
void borderToXml(QDomElement &);
void borderFromXml(const QDomElement &);
+138 -192
View File
@@ -23,7 +23,11 @@
/**
Constructeur par defaut
*/
SingleLineProperties::SingleLineProperties()
SingleLineProperties::SingleLineProperties() :
hasGround(true),
hasNeutral(true),
is_pen(false),
phases(1)
{
}
@@ -119,9 +123,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
@@ -207,21 +211,16 @@ void SingleLineProperties::drawPen(QPainter *painter,
}
/**
@brief SingleLineProperties::toXml
@param doc
@return
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
*/
QDomElement SingleLineProperties::toXml(QDomDocument &doc) const
void SingleLineProperties::toXml(QDomElement &e) const
{
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;
e.setAttribute("ground", hasGround ? "true" : "false");
e.setAttribute("neutral", hasNeutral ? "true" : "false");
e.setAttribute("phase", phases);
if (isPen()) e.setAttribute("pen", "true");
}
/**
@@ -229,36 +228,11 @@ QDomElement SingleLineProperties::toXml(QDomDocument &doc) const
de l'element e
@param e Element XML dont les attributs seront lus
*/
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;
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");
}
/**
@@ -292,142 +266,116 @@ ConductorProperties::~ConductorProperties()
Export conductor propertie, in the XML element 'e'
@param e the xml element
*/
QDomElement ConductorProperties::toXml(QDomDocument& doc) const
void ConductorProperties::toXml(QDomElement &e) const
{
QDomElement e = doc.createElement("defaultconductor");
e.setAttribute("type", typeToString(type));
e.appendChild(createXmlProperty(doc, "type", typeToString(type)));
e.appendChild(createXmlProperty(doc, "color", color));
if (color != QColor(Qt::black))
e.setAttribute("color", color.name());
e.appendChild(createXmlProperty(doc, "bicolor", m_bicolor));
e.appendChild(createXmlProperty(doc, "color2", m_color_2));
e.appendChild(createXmlProperty(doc, "dash-size", m_dash_size));
e.setAttribute("bicolor", m_bicolor? "true" : "false");
e.setAttribute("color2", m_color_2.name());
e.setAttribute("dash-size", QString::number(m_dash_size));
if (type == Single)
e.appendChild(singleLineProperties.toXml(doc));
singleLineProperties.toXml(e);
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));
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));
QMetaEnum me = QMetaEnum::fromType<Qt::Alignment>();
e.appendChild(createXmlProperty(doc, "horizontal-alignment", me.valueToKey(m_horizontal_alignment)));
e.appendChild(createXmlProperty(doc, "vertical-alignment", me.valueToKey(m_vertical_alignment)));
e.setAttribute("horizontal-alignment", me.valueToKey(m_horizontal_alignment));
e.setAttribute("vertical-alignment", me.valueToKey(m_vertical_alignment));
QString conductor_style = writeStyle();
if (!conductor_style.isEmpty())
e.appendChild(createXmlProperty(doc, "style", conductor_style));
return e;
e.setAttribute("style", conductor_style);
}
/** RETURNS True
/**
@brief ConductorProperties::fromXml
Import conductor propertie, from the attribute of the xml element 'e'
@param e the xml document
*/
bool ConductorProperties::fromXml(const QDomElement &e)
void ConductorProperties::fromXml(QDomElement &e)
{
// 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);
// get conductor color
QColor xml_color= QColor(e.attribute("color"));
color = (xml_color.isValid()? xml_color : QColor(Qt::black));
// read style of conductor
QString style_string;
propertyString(e, "style", &style_string);
readStyle(style_string);
QString bicolor_str = e.attribute("bicolor", "false");
m_bicolor = bicolor_str == "true"? true : false;
QString type_t;
if (propertyString(e, "type", &type_t) == PropertyFlags::Success)
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))
{
if (type_t == typeToString(Single))
{
// get specific properties for single conductor
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
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
#if TODO_LIST
#pragma message("@TODO remove this code for qet 0.6 or later")
#endif
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;
if (e.attribute("type") == "simple") m_show_text = false;
}
/**
@@ -445,8 +393,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);
@@ -469,7 +417,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(const QSettings &settings, const QString &prefix)
void ConductorProperties::fromSettings(QSettings &settings, const QString &prefix)
{
QColor settings_color = QColor(settings.value(prefix + "color").toString());
color = (settings_color.isValid()? settings_color : QColor(Qt::black));
@@ -489,8 +437,8 @@ void ConductorProperties::fromSettings(const QSettings &settings, const QString
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();
@@ -500,7 +448,7 @@ void ConductorProperties::fromSettings(const QSettings &settings, const QString
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()));
@@ -545,8 +493,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;
@@ -648,27 +596,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;
@@ -835,9 +783,8 @@ 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 && \
@@ -895,7 +842,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");
@@ -955,7 +902,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);
@@ -967,9 +914,8 @@ void SingleLineProperties::toSettings(QSettings &settings,
@param settings Parametres a lire
@param prefix prefix a ajouter devant les noms des parametres
*/
void SingleLineProperties::fromSettings(
const QSettings &settings, const QString &prefix)
{
void SingleLineProperties::fromSettings(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();
+46 -43
View File
@@ -22,15 +22,13 @@
#include <QColor>
#include <QSettings>
#include "propertiesinterface.h"
class QPainter;
/**
@brief The SingleLineProperties class
This class represents the properties of a singleline conductor.
*/
class SingleLineProperties: public PropertiesInterface {
class SingleLineProperties {
public:
SingleLineProperties();
virtual ~SingleLineProperties();
@@ -39,25 +37,23 @@ class SingleLineProperties: public PropertiesInterface {
unsigned short int phasesCount();
bool isPen() const;
void draw(QPainter *, QET::ConductorSegmentType, const QRectF &);
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;
void toXml(QDomElement &) const;
void fromXml(QDomElement &);
void toSettings(QSettings &, const QString & = QString()) const;
void fromSettings(QSettings &, const QString & = QString());
/// Whether the singleline conductor should display the ground symbol
bool hasGround{true};
bool hasGround;
/// Whether the singleline conductor should display the neutral symbol
bool hasNeutral{true};
bool hasNeutral;
/// Protective Earth Neutral: visually merge neutral and ground
bool is_pen{false};
bool is_pen;
int operator==(const SingleLineProperties &) const;
int operator!=(const SingleLineProperties &) const;
private:
unsigned short int phases{1};
unsigned short int phases;
void drawGround (QPainter *, QET::ConductorSegmentType, QPointF, qreal);
void drawNeutral(QPainter *, QPointF, qreal);
void drawPen(QPainter *, QET::ConductorSegmentType, QPointF, qreal);
@@ -68,7 +64,7 @@ class SingleLineProperties: public PropertiesInterface {
This class represents the functional properties of a particular conductor,
i.e. properties other than path and terminals.
*/
class ConductorProperties: public PropertiesInterface
class ConductorProperties
{
public:
ConductorProperties();
@@ -82,45 +78,52 @@ class ConductorProperties: public PropertiesInterface
*/
enum ConductorType { Single, Multi };
//Attributes
ConductorType type{ConductorType::Single};
// TODO: set default values!
QColor color{QColor(Qt::black)},
m_color_2{QColor(Qt::black)},
text_color{QColor(Qt::black)};
//Attributes
ConductorType type;
QString text,
m_function,
m_tension_protocol,
m_wire_color,
m_wire_section,
m_formula;
QColor
color,
m_color_2,
text_color;
int text_size{9},
m_dash_size = 1;
QString
text,
m_function,
m_tension_protocol,
m_wire_color,
m_wire_section,
m_formula,
m_bus,
m_cable;
double cond_size{1},
verti_rotate_text,
horiz_rotate_text;
int
text_size,
m_dash_size = 1;
bool m_show_text{true},
m_one_text_per_folio{true},
m_bicolor = false;
double
cond_size,
verti_rotate_text,
horiz_rotate_text;
Qt::Alignment m_horizontal_alignment = Qt::AlignBottom,
m_vertical_alignment = Qt::AlignRight;
bool
m_show_text,
m_one_text_per_folio,
m_bicolor = false;
Qt::PenStyle style{Qt::PenStyle::SolidLine};
Qt::Alignment
m_horizontal_alignment = Qt::AlignBottom,
m_vertical_alignment = Qt::AlignRight;
Qt::PenStyle style;
SingleLineProperties singleLineProperties;
// 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;
// methods
void toXml(QDomElement &) const;
void fromXml(QDomElement &);
void toSettings(QSettings &, const QString & = QString()) const;
void fromSettings(QSettings &, const QString & = QString());
static QString typeToString(ConductorType);
void applyForEqualAttributes(QList<ConductorProperties> list);
+90 -39
View File
@@ -1,4 +1,4 @@
/*
/*
Copyright 2006-2020 QElectroTech Team
This file is part of QElectroTech.
@@ -42,6 +42,28 @@ 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();
});
}
/**
@@ -151,34 +173,29 @@ 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));
m_insert_diagram_query.bindValue(":pos", m_project->folioIndex(diagram)+1);
if(!m_insert_diagram_query.exec()) {
qDebug() << "projectDataBase::addDiagram insert error : " << m_insert_diagram_query.lastError();
}
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);
}
}
bindDiagramInfoValues(m_insert_diagram_info_query, diagram);
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)
@@ -191,6 +208,21 @@ 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
@@ -343,7 +375,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));
m_insert_diagram_query.bindValue(":pos", m_project->folioIndex(diagram)+1);
if(!m_insert_diagram_query.exec()) {
qDebug() << "projectDataBase::populateDiagramTable insert error : " << m_insert_diagram_query.lastError();
}
@@ -418,23 +450,7 @@ void projectDataBase::populateDiagramInfoTable()
for (auto *diagram : m_project->diagrams())
{
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);
}
}
bindDiagramInfoValues(m_insert_diagram_info_query, diagram);
if (!m_insert_diagram_info_query.exec()) {
qDebug() << "projectDataBase::populateDiagramInfoTable insert error : " << m_insert_diagram_info_query.lastError();
@@ -465,6 +481,22 @@ 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);
@@ -521,6 +553,25 @@ 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
+14 -6
View File
@@ -47,11 +47,15 @@ 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 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();
signals:
void dataBaseUpdated();
@@ -67,6 +71,7 @@ class projectDataBase : public QObject
void prepareQuery();
static QHash<QString, QString> elementInfoToString(
Element *elmt);
void bindDiagramInfoValues(QSqlQuery &query, Diagram *diagram);
private:
QPointer<QETProject> m_project;
@@ -77,7 +82,10 @@ class projectDataBase : public QObject
m_update_element_query,
m_insert_diagram_query,
m_remove_diagram_query,
m_insert_diagram_info_query;
m_insert_diagram_info_query,
m_update_diagram_info_query,
m_diagram_order_changed,
m_diagram_info_order_changed;
#ifdef QET_EXPORT_PROJECT_DB
public:
+4 -1
View File
@@ -61,6 +61,7 @@ QString SummaryQueryWidget::queryStr() const
QStringList keys = selectedKeys();
QString select ="SELECT ";
QString order_by = " ORDER BY ";
QString column;
bool first = true;
@@ -69,13 +70,15 @@ 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);
QString q(select + column + from + order_by);
return q;
}
+160 -159
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)
{
// TODO: compare with old version
if (whole_content) {
border_and_titleblock.titleBlockToXml(dom_root);
border_and_titleblock.borderToXml(dom_root);
// Default conductor properties
dom_root.appendChild(defaultConductorProperties.toXml(document));
QDomElement default_conductor =
document.createElement("defaultconductor");
defaultConductorProperties.toXml(default_conductor);
dom_root.appendChild(default_conductor);
// 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,22 +914,24 @@ QDomDocument Diagram::toXml(bool whole_content) {
}
}
// table de correspondance entre les adresses des bornes et leurs ids
// 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;
if (!list_elements.isEmpty()) {
auto dom_elements = document.createElement("elements");
for (auto elmt : list_elements)
{
dom_elements.appendChild(elmt->toXml(document));
for (auto elmt : list_elements) {
dom_elements.appendChild(elmt->toXml(document,
table_adr_id));
}
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));
for (auto cond : list_conductors) {
dom_conductors.appendChild(cond->toXml(document,
table_adr_id));
}
dom_root.appendChild(dom_conductors);
}
@@ -979,18 +981,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);
}
@@ -1028,9 +1030,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));
}
@@ -1084,28 +1086,25 @@ bool Diagram::initFromXml(QDomElement &document,
/**
@brief findTerminal
@param conductor_index
@param conductor
@param table_adr_id
@param added_elements
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
@return
*/
Terminal* findTerminal(
int conductor_index,
QDomElement& conductor,
QHash<int, Terminal *>& table_adr_id,
QList<Element *>& added_elements)
{
Terminal* findTerminal(int conductor_index,
QDomElement& f,
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);
QUuid element_uuid;
if (PropertiesInterface::propertyUuid(
conductor, element_index, &element_uuid)
== PropertiesInterface::PropertyFlags::Success)
{
if (f.hasAttribute(element_index)) {
QUuid element_uuid = QUuid(f.attribute(element_index));
// 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;
@@ -1113,9 +1112,7 @@ Terminal* findTerminal(
if (element->uuid() != element_uuid)
continue;
element_found = true;
QUuid terminal_uuid;
PropertiesInterface::propertyUuid(
conductor, terminal_index, &terminal_uuid);
QUuid terminal_uuid = QUuid(f.attribute(terminal_index));
for (auto terminal: element->terminals()) {
if (terminal->uuid() != terminal_uuid)
continue;
@@ -1139,15 +1136,9 @@ Terminal* findTerminal(
<< element_uuid
<< "not found";
} else {
// 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";
}
// Backward compatibility.
// Until version 0.7 a generated id is used to link the terminal.
int id_p1 = f.attribute(terminal_index).toInt();
if (!table_adr_id.contains(id_p1)) {
qDebug() << "Diagram::fromXml() : terminal id "
<< id_p1
@@ -1155,39 +1146,51 @@ Terminal* findTerminal(
} else
return table_adr_id.value(id_p1);
}
qDebug() << "Diagram::findTerminal(): No terminal found.";
return nullptr;
}
/**
@brief Diagram::fromXml
@param document
@param position
@param consider_informations
@param content_ptr
@return
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
*/
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);
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;
}
// Read attributes of this diagram
if (consider_informations)
{
// Load border and titleblock
border_and_titleblock.titleBlockFromXml(root);
border_and_titleblock.borderFromXml(root);
@@ -1200,7 +1203,6 @@ bool Diagram::fromXml(
defaultConductorProperties.fromXml(default_conductor_elmt);
}
// Load the autonum
m_conductors_autonum_name = root.attribute("conductorAutonum");
@@ -1254,7 +1256,7 @@ bool Diagram::fromXml(
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,
@@ -1266,8 +1268,8 @@ bool Diagram::fromXml(
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");
@@ -1277,16 +1279,16 @@ bool Diagram::fromXml(
type_id,
other_project);
ech.importFromProject(m_project,
location);
location);
}
}
}
}
//Load all elements from the collection in the XML
//Load all elements from the XML
QList<Element *> added_elements;
QHash<int, Terminal *> table_adr_id;
foreach (QDomElement element_xml,
QET::findInDomElement(root, "elements", "element")) // read all elements from the diagram
QET::findInDomElement(root, "elements", "element"))
{
if (!Element::valideXml(element_xml)) continue;
@@ -1301,9 +1303,9 @@ bool Diagram::fromXml(
}
int state = 0;
// Create element from the collection
Element *nvel_elmt = ElementFactory::Instance() -> createElement(element_location, nullptr, &state); // read element definition from the collection!
Element *nvel_elmt =
ElementFactory::Instance() -> createElement(
element_location, nullptr, &state);
if (state)
{
QString debug_message =
@@ -1317,14 +1319,13 @@ bool Diagram::fromXml(
}
addItem(nvel_elmt);
//Loading fail, remove item from the diagram
if (!nvel_elmt->fromXml(element_xml, table_adr_id)) // load element definition from the diagram
//Loading fail, remove item from the diagram
if (!nvel_elmt->fromXml(element_xml, table_adr_id))
{
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;
}
@@ -1333,8 +1334,8 @@ bool Diagram::fromXml(
// 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);
@@ -1344,8 +1345,8 @@ bool Diagram::fromXml(
// 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);
@@ -1355,8 +1356,8 @@ bool Diagram::fromXml(
// 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);
@@ -1365,37 +1366,35 @@ bool Diagram::fromXml(
// Load conductor
QList<Conductor *> added_conductors;
foreach (QDomElement conductorElement,
QET::findInDomElement(root, "conductors", "conductor"))
foreach (QDomElement f, QET::findInDomElement(root,
"conductors",
"conductor"))
{
if (!Conductor::valideXml(conductorElement)) continue;
if (!Conductor::valideXml(f)) continue;
//Check if terminal that conductor must be linked is know
Terminal* p1 = findTerminal(1, conductorElement, table_adr_id, added_elements);
Terminal* p2 = findTerminal(2, conductorElement, table_adr_id, added_elements);
Terminal* p1 = findTerminal(1, f, table_adr_id, added_elements);
Terminal* p2 = findTerminal(2, f, table_adr_id, added_elements);
if (p1 && p2 && p1 != p2) // why the condition for unequal is required?
if (p1 && p2 && p1 != p2)
{
Conductor *c = new Conductor(p1, p2);
if (c->isValid())
{
addItem(c);
c -> fromXml(conductorElement);
c -> fromXml(f);
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()))
{
@@ -1474,23 +1473,23 @@ bool Diagram::fromXml(
@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++;
@@ -1651,6 +1650,8 @@ void Diagram::setTitleBlockTemplate(const QString &template_name)
if (template_name != current_name)
emit(usedTitleBlockTemplateChanged(template_name));
project()->dataBase()->diagramInfoChanged(this);
}
/**
@@ -1746,10 +1747,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) {
@@ -1774,9 +1775,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();
@@ -2165,7 +2166,7 @@ void Diagram::adjustSceneRect()
{
QRectF old_rect = sceneRect();
setSceneRect(border_and_titleblock.borderAndTitleBlockRect().united(
itemsBoundingRect()));
itemsBoundingRect()));
update(old_rect.united(sceneRect()));
}
+29 -18
View File
@@ -96,7 +96,7 @@ class Diagram : public QGraphicsScene
/// margin around the diagram
static const qreal margin;
/// background color of diagram
static QColor background_color; // default value set in cpp file
static QColor background_color;
/// 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;
@@ -168,20 +168,31 @@ class Diagram : public QGraphicsScene
// 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();
@@ -242,8 +253,8 @@ class Diagram : public QGraphicsScene
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:
@@ -251,7 +262,7 @@ 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();
+4 -6
View File
@@ -209,17 +209,15 @@ 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(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);
void DiagramContext::fromSettings(QSettings &settings, const QString &array_name) {
int size = settings.beginReadArray(array_name);
for (int i = 0 ; i < size; ++ i) {
s.setArrayIndex(i);
settings.setArrayIndex(i);
QString key = settings.value("name").toString();
if (key.isEmpty()) continue;
addValue(key, settings.value("value").toString());
}
s.endArray();
settings.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(const QSettings &, const QString &);
void fromSettings(QSettings &, const QString &);
static QString validKeyRegExp();
@@ -161,8 +161,7 @@ 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(
QDomDocument &xml_document, QDomElement &qde) const
void CustomElementGraphicPart::stylesToXml(QDomElement &qde) const
{
QString css_like_styles;
@@ -497,8 +496,9 @@ void CustomElementGraphicPart::stylesToXml(
else if (_color == HTMLGrayBlackColor) css_like_styles += "HTMLGrayBlack";
else if (_color == NoneColor) css_like_styles += "none";
qde.appendChild(createXmlProperty(xml_document, "style", css_like_styles));
qde.appendChild(createXmlProperty(xml_document, "antialias", _antialiased ? "true" : "false"));
qde.setAttribute("style", css_like_styles);
qde.setAttribute("antialias", _antialiased ? "true" : "false");
}
@@ -511,24 +511,28 @@ 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 = style_string.split(";", QString::SkipEmptyParts);
QStringList styles = qde.attribute("style").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*$");
foreach (QString style, styles)
for (auto style : styles)
{
if (rx!=QRegularExpression(style)) continue;
QString style_name = rx.namedCaptureGroups().at(1);
QString style_value = rx.namedCaptureGroups().at(2);
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 (style_name == "line-style")
{
if (style_value == "dashed") _linestyle = DashedStyle;
@@ -864,9 +868,7 @@ void CustomElementGraphicPart::stylesFromXml(const QDomElement &qde)
}
}
//Get antialiasing
QString a;
propertyString(qde, "antialias", &a);
_antialiased = a == "true";
_antialiased = qde.attribute("antialias") == "true";
}
@@ -303,7 +303,7 @@ class CustomElementGraphicPart : public QGraphicsObject, public CustomElementPar
virtual void resetAllHandlerColor() {}
protected:
void stylesToXml (QDomDocument &xml_document, QDomElement &) const;
void stylesToXml (QDomElement &) const;
void stylesFromXml(const QDomElement &);
void resetStyles ();
void applyStylesToQPainter(QPainter &) const;
@@ -19,7 +19,6 @@
#define CUSTOM_ELEMENT_PART_H
#include "qet.h"
#include "propertiesinterface.h"
class CustomElement;
class ElementPrimitiveDecorator;
@@ -38,7 +37,7 @@ class QGraphicsSceneMouseEvent;
there is no point for those classes to store their visual representation
with anything more complex than a QImage.
*/
class CustomElementPart: public PropertiesInterface {
class CustomElementPart {
// constructors, destructor
public:
/**
@@ -62,6 +61,14 @@ class CustomElementPart: public PropertiesInterface {
// 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
*/
+26 -56
View File
@@ -97,70 +97,40 @@ 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
*/
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
*/
const QDomElement PartArc::toXml(QDomDocument &xml_document) const
{
QDomElement xml_element = xml_document.createElement("arc");
QPointF top_left(sceneTopLeft());
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);
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);
return(xml_element);
}
/**
* @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) {
@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) {
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()) );
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;
m_start_angle = qde.attribute("start", "0").toDouble() * 16;
m_span_angle = qde.attribute("angle", "-1440").toDouble() * 16;
}
/**
+2 -3
View File
@@ -51,9 +51,8 @@ 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")); }
QDomElement toXml (QDomDocument &) const override;
bool fromXml (const QDomElement &) override;
static bool valideXml(QDomElement& element);
const QDomElement toXml (QDomDocument &) const override;
void fromXml (const QDomElement &) override;
QPainterPath shape() const override;
QPainterPath shadowShape() const override;
@@ -88,46 +88,45 @@ void PartDynamicTextField::handleUserTransformation(
}
/**
* @brief PartDynamicTextField::toXml
* @param document
* @return
*/
QDomElement PartDynamicTextField::toXml(QDomDocument &dom_doc) const
@brief PartDynamicTextField::toXml
@param dom_doc
@return
*/
const QDomElement PartDynamicTextField::toXml(QDomDocument &dom_doc) const
{
QDomElement root_element = dom_doc.createElement(xmlName());
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));
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));
QMetaEnum me = DynamicElementTextItem::textFromMetaEnum();
root_element.appendChild(createXmlProperty(dom_doc, "text_from", me.valueToKey(m_text_from)));
root_element.setAttribute("text_from", me.valueToKey(m_text_from));
me = QMetaEnum::fromType<Qt::Alignment>();
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::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::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)));
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));
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");
@@ -153,32 +152,25 @@ QDomElement PartDynamicTextField::toXml(QDomDocument &dom_doc) const
}
/**
* @brief PartDynamicTextField::fromXml
* @param element
*/
bool PartDynamicTextField::fromXml(const QDomElement &dom_elmt)
{
@brief PartDynamicTextField::fromXml
@param dom_elmt
*/
void PartDynamicTextField::fromXml(const QDomElement &dom_elmt) {
if (dom_elmt.tagName() != xmlName()) {
qDebug() << "PartDynamicTextField::fromXml : Wrong tagg name";
return false;
return;
}
double x=0, y=0, z=0, rot=0;
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;
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());
QGraphicsTextItem::setPos(x, y);
setZValue(z);
QGraphicsTextItem::setRotation(rot);
QString font;
if (propertyString(dom_elmt, "font", &font) == PropertyFlags::Success)
{
if (dom_elmt.hasAttribute("font")) {
QFont font_;
font_.fromString(font);
font_.fromString(dom_elmt.attribute("font"));
setFont(font_);
}
else {
@@ -189,25 +181,21 @@ bool PartDynamicTextField::fromXml(const QDomElement &dom_elmt)
setFont(QETApp::dynamicTextsItemFont(9));
}
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);
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());
QMetaEnum me = DynamicElementTextItem::textFromMetaEnum();
QString text_from;
propertyString(dom_elmt, "text_from", &text_from);
m_text_from = DynamicElementTextItem::TextFrom(me.keyToValue(text_from.toStdString().data()));
m_text_from = DynamicElementTextItem::TextFrom(
me.keyToValue(dom_elmt.attribute("text_from").toStdString().data()));
me = QMetaEnum::fromType<Qt::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());
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());
//Text
QDomElement dom_text = dom_elmt.firstChildElement("text");
@@ -232,29 +220,6 @@ bool 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;
}
/**
@@ -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;
QDomElement toXml(QDomDocument &dom_doc) const override;
bool fromXml(const QDomElement &dom_elmt) override;
const QDomElement toXml(QDomDocument &dom_doc) const override;
void 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::createUuid()};
QUuid m_uuid;
bool m_frame = false,
m_first_add = true,
m_block_alignment = false;
+25 -54
View File
@@ -78,85 +78,56 @@ 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
*/
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
*/
const QDomElement PartEllipse::toXml(QDomDocument &xml_document) const
{
QDomElement xml_element;
if (qFuzzyCompare(rect().width(), rect().height()))
{
xml_element = xml_document.createElement("circle");
xml_element.appendChild(createXmlProperty(xml_document, "diameter", rect().width()));
xml_element.setAttribute("diameter", QString("%1").arg(rect().width()));
}
else
{
xml_element = xml_document.createElement("ellipse");
xml_element.appendChild(createXmlProperty(xml_document, "width", rect().width()));
xml_element.appendChild(createXmlProperty(xml_document, "height", rect().height()));
xml_element.setAttribute("width", QString("%1").arg(rect().width()));
xml_element.setAttribute("height", QString("%1").arg(rect().height()));
}
QPointF top_left(sceneTopLeft());
xml_element.appendChild(createXmlProperty(xml_document, "x", top_left.x()));
xml_element.appendChild(createXmlProperty(xml_document, "y", top_left.y()));
xml_element.setAttribute("x", QString("%1").arg(top_left.x()));
xml_element.setAttribute("y", QString("%1").arg(top_left.y()));
stylesToXml(xml_document, xml_element);
stylesToXml(xml_element);
return(xml_element);
}
/**
* @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)
@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)
{
stylesFromXml(qde);
double x=0, y=0, width=0, height=0;
qreal width, height;
if (qde.tagName() == "ellipse")
{
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;
width = qde.attribute("width", "0").toDouble();
height = qde.attribute("height", "0").toDouble();
}
else
width = height = qde.attribute("diameter", "0").toDouble();
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;
m_rect = QRectF(mapFromScene(qde.attribute("x", "0").toDouble(),
qde.attribute("y", "0").toDouble()),
QSizeF(width, height));
}
/**
+2 -3
View File
@@ -52,9 +52,8 @@ 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")); }
QDomElement toXml (QDomDocument &) const override;
bool fromXml (const QDomElement &) override;
static bool valideXml(QDomElement& element);
const QDomElement toXml (QDomDocument &) const override;
void fromXml (const QDomElement &) override;
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