diff --git a/modeling/AVATAR/faulttreetest.xml b/modeling/AVATAR/faulttreetest.xml index 105564bf4b8772c8cbdad2418fed16d4d68969e8..772d6cb7c27ee74bf218948a251fe7b75c69f7b5 100644 --- a/modeling/AVATAR/faulttreetest.xml +++ b/modeling/AVATAR/faulttreetest.xml @@ -4,73 +4,73 @@ <Modeling type="AttackTree" nameTab="Attack Trees" > <AttackTreeDiagramPanel name="Attack Tree" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" > -<COMPONENT type="1401" id="105" > +<COMPONENT type="1401" id="25" > <cdparam x="380" y="276" /> <sizeparam width="100" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> <cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> <infoparam name="TGComponent" value="attack01" /> -<TGConnectingPoint num="0" id="106" /> -<TGConnectingPoint num="1" id="107" /> -<TGConnectingPoint num="2" id="108" /> -<TGConnectingPoint num="3" id="109" /> -<TGConnectingPoint num="4" id="110" /> -<TGConnectingPoint num="5" id="111" /> -<TGConnectingPoint num="6" id="112" /> -<TGConnectingPoint num="7" id="113" /> -<TGConnectingPoint num="8" id="114" /> -<TGConnectingPoint num="9" id="115" /> -<TGConnectingPoint num="10" id="116" /> -<TGConnectingPoint num="11" id="117" /> -<TGConnectingPoint num="12" id="118" /> -<TGConnectingPoint num="13" id="119" /> -<TGConnectingPoint num="14" id="120" /> -<TGConnectingPoint num="15" id="121" /> -<TGConnectingPoint num="16" id="122" /> -<TGConnectingPoint num="17" id="123" /> -<TGConnectingPoint num="18" id="124" /> -<TGConnectingPoint num="19" id="125" /> -<TGConnectingPoint num="20" id="126" /> -<TGConnectingPoint num="21" id="127" /> -<TGConnectingPoint num="22" id="128" /> -<TGConnectingPoint num="23" id="129" /> +<TGConnectingPoint num="0" id="1" /> +<TGConnectingPoint num="1" id="2" /> +<TGConnectingPoint num="2" id="3" /> +<TGConnectingPoint num="3" id="4" /> +<TGConnectingPoint num="4" id="5" /> +<TGConnectingPoint num="5" id="6" /> +<TGConnectingPoint num="6" id="7" /> +<TGConnectingPoint num="7" id="8" /> +<TGConnectingPoint num="8" id="9" /> +<TGConnectingPoint num="9" id="10" /> +<TGConnectingPoint num="10" id="11" /> +<TGConnectingPoint num="11" id="12" /> +<TGConnectingPoint num="12" id="13" /> +<TGConnectingPoint num="13" id="14" /> +<TGConnectingPoint num="14" id="15" /> +<TGConnectingPoint num="15" id="16" /> +<TGConnectingPoint num="16" id="17" /> +<TGConnectingPoint num="17" id="18" /> +<TGConnectingPoint num="18" id="19" /> +<TGConnectingPoint num="19" id="20" /> +<TGConnectingPoint num="20" id="21" /> +<TGConnectingPoint num="21" id="22" /> +<TGConnectingPoint num="22" id="23" /> +<TGConnectingPoint num="23" id="24" /> <extraparam> <info description="blah blah blah" root="false" /> </extraparam> </COMPONENT> -<COMPONENT type="1401" id="80" > +<COMPONENT type="1401" id="50" > <cdparam x="131" y="279" /> <sizeparam width="100" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> <cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> <infoparam name="TGComponent" value="attack01" /> -<TGConnectingPoint num="0" id="81" /> -<TGConnectingPoint num="1" id="82" /> -<TGConnectingPoint num="2" id="83" /> -<TGConnectingPoint num="3" id="84" /> -<TGConnectingPoint num="4" id="85" /> -<TGConnectingPoint num="5" id="86" /> -<TGConnectingPoint num="6" id="87" /> -<TGConnectingPoint num="7" id="88" /> -<TGConnectingPoint num="8" id="89" /> -<TGConnectingPoint num="9" id="90" /> -<TGConnectingPoint num="10" id="91" /> -<TGConnectingPoint num="11" id="92" /> -<TGConnectingPoint num="12" id="93" /> -<TGConnectingPoint num="13" id="94" /> -<TGConnectingPoint num="14" id="95" /> -<TGConnectingPoint num="15" id="96" /> -<TGConnectingPoint num="16" id="97" /> -<TGConnectingPoint num="17" id="98" /> -<TGConnectingPoint num="18" id="99" /> -<TGConnectingPoint num="19" id="100" /> -<TGConnectingPoint num="20" id="101" /> -<TGConnectingPoint num="21" id="102" /> -<TGConnectingPoint num="22" id="103" /> -<TGConnectingPoint num="23" id="104" /> +<TGConnectingPoint num="0" id="26" /> +<TGConnectingPoint num="1" id="27" /> +<TGConnectingPoint num="2" id="28" /> +<TGConnectingPoint num="3" id="29" /> +<TGConnectingPoint num="4" id="30" /> +<TGConnectingPoint num="5" id="31" /> +<TGConnectingPoint num="6" id="32" /> +<TGConnectingPoint num="7" id="33" /> +<TGConnectingPoint num="8" id="34" /> +<TGConnectingPoint num="9" id="35" /> +<TGConnectingPoint num="10" id="36" /> +<TGConnectingPoint num="11" id="37" /> +<TGConnectingPoint num="12" id="38" /> +<TGConnectingPoint num="13" id="39" /> +<TGConnectingPoint num="14" id="40" /> +<TGConnectingPoint num="15" id="41" /> +<TGConnectingPoint num="16" id="42" /> +<TGConnectingPoint num="17" id="43" /> +<TGConnectingPoint num="18" id="44" /> +<TGConnectingPoint num="19" id="45" /> +<TGConnectingPoint num="20" id="46" /> +<TGConnectingPoint num="21" id="47" /> +<TGConnectingPoint num="22" id="48" /> +<TGConnectingPoint num="23" id="49" /> <extraparam> <info description="blah blah blah" root="false" /> </extraparam> @@ -86,126 +86,189 @@ <Modeling type="FaultTree" nameTab="Fault Trees" > <FaultTreeDiagramPanel name="Fault Tree" minX="10" maxX="1600" minY="10" maxY="961" zoom="1.0000000000000016" > -<COMPONENT type="6101" id="55" > -<cdparam x="76" y="83" /> -<sizeparam width="112" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<CONNECTOR type="6001" id="52" > +<cdparam x="315" y="244" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="51" /> +<P1 x="315" y="244" id="122" /> +<P2 x="232" y="174" id="87" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="6001" id="54" > +<cdparam x="459" y="361" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="53" /> +<P1 x="459" y="361" id="139" /> +<P2 x="352" y="292" id="133" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="6001" id="56" > +<cdparam x="156" y="338" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="55" /> +<P1 x="156" y="338" id="64" /> +<P2 x="278" y="292" id="132" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="6002" id="58" > +<cdparam x="449" y="182" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="57" /> +<P1 x="534" y="370" id="154" /> +<P2 x="580" y="401" id="110" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<COMPONENT type="6101" id="83" > +<cdparam x="81" y="338" /> +<sizeparam width="100" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1601" minY="10" maxY="962" /> +<infoparam name="TGComponent" value="fault03" /> +<TGConnectingPoint num="0" id="59" /> +<TGConnectingPoint num="1" id="60" /> +<TGConnectingPoint num="2" id="61" /> +<TGConnectingPoint num="3" id="62" /> +<TGConnectingPoint num="4" id="63" /> +<TGConnectingPoint num="5" id="64" /> +<TGConnectingPoint num="6" id="65" /> +<TGConnectingPoint num="7" id="66" /> +<TGConnectingPoint num="8" id="67" /> +<TGConnectingPoint num="9" id="68" /> +<TGConnectingPoint num="10" id="69" /> +<TGConnectingPoint num="11" id="70" /> +<TGConnectingPoint num="12" id="71" /> +<TGConnectingPoint num="13" id="72" /> +<TGConnectingPoint num="14" id="73" /> +<TGConnectingPoint num="15" id="74" /> +<TGConnectingPoint num="16" id="75" /> +<TGConnectingPoint num="17" id="76" /> +<TGConnectingPoint num="18" id="77" /> +<TGConnectingPoint num="19" id="78" /> +<TGConnectingPoint num="20" id="79" /> +<TGConnectingPoint num="21" id="80" /> +<TGConnectingPoint num="22" id="81" /> +<TGConnectingPoint num="23" id="82" /> +<extraparam> +<info description="blah blah blah" root="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="6101" id="108" > +<cdparam x="173" y="134" /> +<sizeparam width="118" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> <cdrectangleparam minX="10" maxX="1601" minY="10" maxY="962" /> <infoparam name="TGComponent" value="fault01" /> -<TGConnectingPoint num="0" id="56" /> -<TGConnectingPoint num="1" id="57" /> -<TGConnectingPoint num="2" id="58" /> -<TGConnectingPoint num="3" id="59" /> -<TGConnectingPoint num="4" id="60" /> -<TGConnectingPoint num="5" id="61" /> -<TGConnectingPoint num="6" id="62" /> -<TGConnectingPoint num="7" id="63" /> -<TGConnectingPoint num="8" id="64" /> -<TGConnectingPoint num="9" id="65" /> -<TGConnectingPoint num="10" id="66" /> -<TGConnectingPoint num="11" id="67" /> -<TGConnectingPoint num="12" id="68" /> -<TGConnectingPoint num="13" id="69" /> -<TGConnectingPoint num="14" id="70" /> -<TGConnectingPoint num="15" id="71" /> -<TGConnectingPoint num="16" id="72" /> -<TGConnectingPoint num="17" id="73" /> -<TGConnectingPoint num="18" id="74" /> -<TGConnectingPoint num="19" id="75" /> -<TGConnectingPoint num="20" id="76" /> -<TGConnectingPoint num="21" id="77" /> -<TGConnectingPoint num="22" id="78" /> -<TGConnectingPoint num="23" id="79" /> +<TGConnectingPoint num="0" id="84" /> +<TGConnectingPoint num="1" id="85" /> +<TGConnectingPoint num="2" id="86" /> +<TGConnectingPoint num="3" id="87" /> +<TGConnectingPoint num="4" id="88" /> +<TGConnectingPoint num="5" id="89" /> +<TGConnectingPoint num="6" id="90" /> +<TGConnectingPoint num="7" id="91" /> +<TGConnectingPoint num="8" id="92" /> +<TGConnectingPoint num="9" id="93" /> +<TGConnectingPoint num="10" id="94" /> +<TGConnectingPoint num="11" id="95" /> +<TGConnectingPoint num="12" id="96" /> +<TGConnectingPoint num="13" id="97" /> +<TGConnectingPoint num="14" id="98" /> +<TGConnectingPoint num="15" id="99" /> +<TGConnectingPoint num="16" id="100" /> +<TGConnectingPoint num="17" id="101" /> +<TGConnectingPoint num="18" id="102" /> +<TGConnectingPoint num="19" id="103" /> +<TGConnectingPoint num="20" id="104" /> +<TGConnectingPoint num="21" id="105" /> +<TGConnectingPoint num="22" id="106" /> +<TGConnectingPoint num="23" id="107" /> <accessibility /> <extraparam> <info description="blah blah blah" root="true" /> </extraparam> </COMPONENT> -<CONNECTOR type="6002" id="2" > -<cdparam x="449" y="182" /> -<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<infoparam name="connector" value="" /> -<TGConnectingPoint num="0" id="1" /> -<P1 x="311" y="258" id="48" /> -<P2 x="396" y="133" id="4" /> -<AutomaticDrawing data="true" /> -</CONNECTOR> -<COMPONENT type="6103" id="15" > -<cdparam x="407" y="114" /> -<sizeparam width="153" height="39" minWidth="78" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="6103" id="121" > +<cdparam x="592" y="382" /> +<sizeparam width="164" height="39" minWidth="78" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1601" minY="10" maxY="962" /> <infoparam name="TGComponent" value="counter01" /> -<TGConnectingPoint num="0" id="3" /> -<TGConnectingPoint num="1" id="4" /> -<TGConnectingPoint num="2" id="5" /> -<TGConnectingPoint num="3" id="6" /> -<TGConnectingPoint num="4" id="7" /> -<TGConnectingPoint num="5" id="8" /> -<TGConnectingPoint num="6" id="9" /> -<TGConnectingPoint num="7" id="10" /> -<TGConnectingPoint num="8" id="11" /> -<TGConnectingPoint num="9" id="12" /> -<TGConnectingPoint num="10" id="13" /> -<TGConnectingPoint num="11" id="14" /> +<TGConnectingPoint num="0" id="109" /> +<TGConnectingPoint num="1" id="110" /> +<TGConnectingPoint num="2" id="111" /> +<TGConnectingPoint num="3" id="112" /> +<TGConnectingPoint num="4" id="113" /> +<TGConnectingPoint num="5" id="114" /> +<TGConnectingPoint num="6" id="115" /> +<TGConnectingPoint num="7" id="116" /> +<TGConnectingPoint num="8" id="117" /> +<TGConnectingPoint num="9" id="118" /> +<TGConnectingPoint num="10" id="119" /> +<TGConnectingPoint num="11" id="120" /> </COMPONENT> -<COMPONENT type="6102" id="28" > -<cdparam x="436" y="284" /> +<COMPONENT type="6102" id="134" > +<cdparam x="241" y="244" /> <sizeparam width="148" height="48" minWidth="99" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1601" minY="10" maxY="962" /> <infoparam name="TGComponent" value="<<XOR>>" /> -<TGConnectingPoint num="0" id="16" /> -<TGConnectingPoint num="1" id="17" /> -<TGConnectingPoint num="2" id="18" /> -<TGConnectingPoint num="3" id="19" /> -<TGConnectingPoint num="4" id="20" /> -<TGConnectingPoint num="5" id="21" /> -<TGConnectingPoint num="6" id="22" /> -<TGConnectingPoint num="7" id="23" /> -<TGConnectingPoint num="8" id="24" /> -<TGConnectingPoint num="9" id="25" /> -<TGConnectingPoint num="10" id="26" /> -<TGConnectingPoint num="11" id="27" /> +<TGConnectingPoint num="0" id="122" /> +<TGConnectingPoint num="1" id="123" /> +<TGConnectingPoint num="2" id="124" /> +<TGConnectingPoint num="3" id="125" /> +<TGConnectingPoint num="4" id="126" /> +<TGConnectingPoint num="5" id="127" /> +<TGConnectingPoint num="6" id="128" /> +<TGConnectingPoint num="7" id="129" /> +<TGConnectingPoint num="8" id="130" /> +<TGConnectingPoint num="9" id="131" /> +<TGConnectingPoint num="10" id="132" /> +<TGConnectingPoint num="11" id="133" /> <extraparam> <info equation="" index="1" /> </extraparam> </COMPONENT> -<COMPONENT type="6101" id="53" > -<cdparam x="212" y="249" /> +<COMPONENT type="6101" id="159" > +<cdparam x="435" y="361" /> <sizeparam width="99" height="39" minWidth="99" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> <cdrectangleparam minX="10" maxX="1601" minY="10" maxY="962" /> <infoparam name="TGComponent" value="fault02" /> -<TGConnectingPoint num="0" id="29" /> -<TGConnectingPoint num="1" id="30" /> -<TGConnectingPoint num="2" id="31" /> -<TGConnectingPoint num="3" id="32" /> -<TGConnectingPoint num="4" id="33" /> -<TGConnectingPoint num="5" id="34" /> -<TGConnectingPoint num="6" id="35" /> -<TGConnectingPoint num="7" id="36" /> -<TGConnectingPoint num="8" id="37" /> -<TGConnectingPoint num="9" id="38" /> -<TGConnectingPoint num="10" id="39" /> -<TGConnectingPoint num="11" id="40" /> -<TGConnectingPoint num="12" id="41" /> -<TGConnectingPoint num="13" id="42" /> -<TGConnectingPoint num="14" id="43" /> -<TGConnectingPoint num="15" id="44" /> -<TGConnectingPoint num="16" id="45" /> -<TGConnectingPoint num="17" id="46" /> -<TGConnectingPoint num="18" id="47" /> -<TGConnectingPoint num="19" id="48" /> -<TGConnectingPoint num="20" id="49" /> -<TGConnectingPoint num="21" id="50" /> -<TGConnectingPoint num="22" id="51" /> -<TGConnectingPoint num="23" id="52" /> +<TGConnectingPoint num="0" id="135" /> +<TGConnectingPoint num="1" id="136" /> +<TGConnectingPoint num="2" id="137" /> +<TGConnectingPoint num="3" id="138" /> +<TGConnectingPoint num="4" id="139" /> +<TGConnectingPoint num="5" id="140" /> +<TGConnectingPoint num="6" id="141" /> +<TGConnectingPoint num="7" id="142" /> +<TGConnectingPoint num="8" id="143" /> +<TGConnectingPoint num="9" id="144" /> +<TGConnectingPoint num="10" id="145" /> +<TGConnectingPoint num="11" id="146" /> +<TGConnectingPoint num="12" id="147" /> +<TGConnectingPoint num="13" id="148" /> +<TGConnectingPoint num="14" id="149" /> +<TGConnectingPoint num="15" id="150" /> +<TGConnectingPoint num="16" id="151" /> +<TGConnectingPoint num="17" id="152" /> +<TGConnectingPoint num="18" id="153" /> +<TGConnectingPoint num="19" id="154" /> +<TGConnectingPoint num="20" id="155" /> +<TGConnectingPoint num="21" id="156" /> +<TGConnectingPoint num="22" id="157" /> +<TGConnectingPoint num="23" id="158" /> <accessibility /> <extraparam> <info description="blah blah blah" root="false" /> diff --git a/modeling/SysMLSec/at_zeuszitmo.xml b/modeling/SysMLSec/at_zeuszitmo.xml index 3facbfdb4870118b15499ff8eb6055ff59b9341e..7dcc2df2be15dfce49ee7a3f0debc0bd779b6a37 100644 --- a/modeling/SysMLSec/at_zeuszitmo.xml +++ b/modeling/SysMLSec/at_zeuszitmo.xml @@ -9,7 +9,7 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="" /> <TGConnectingPoint num="0" id="1" /> -<P1 x="663" y="785" id="228" /> +<P1 x="663" y="785" id="303" /> <P2 x="757" y="658" id="203" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -36,8 +36,8 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> <TGConnectingPoint num="0" id="7" /> -<P1 x="938" y="416" id="614" /> -<P2 x="937" y="382" id="630" /> +<P1 x="938" y="416" id="651" /> +<P2 x="937" y="382" id="629" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="133" id="12" > @@ -46,8 +46,8 @@ <infoparam name="connector from TGComponent to TGComponent" value="2" /> <TGConnectingPoint num="0" id="10" /> <TGConnectingPoint num="1" id="11" /> -<P1 x="937" y="347" id="627" /> -<P2 x="892" y="314" id="612" /> +<P1 x="937" y="347" id="626" /> +<P2 x="892" y="314" id="675" /> <Point x="931" y="331" /> <AutomaticDrawing data="true" /> </CONNECTOR><SUBCOMPONENT type="-1" id="9" > @@ -64,8 +64,8 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> <TGConnectingPoint num="0" id="13" /> -<P1 x="861" y="279" id="601" /> -<P2 x="821" y="250" id="680" /> +<P1 x="861" y="279" id="664" /> +<P2 x="821" y="250" id="579" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="133" id="16" > @@ -73,7 +73,7 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="1" /> <TGConnectingPoint num="0" id="15" /> -<P1 x="663" y="840" id="303" /> +<P1 x="663" y="840" id="228" /> <P2 x="726" y="814" id="197" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -82,7 +82,7 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> <TGConnectingPoint num="0" id="17" /> -<P1 x="893" y="783" id="355" /> +<P1 x="893" y="783" id="405" /> <P2 x="917" y="682" id="184" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -92,7 +92,7 @@ <infoparam name="connector from TGComponent to TGComponent" value="" /> <TGConnectingPoint num="0" id="19" /> <P1 x="819" y="805" id="196" /> -<P2 x="838" y="800" id="352" /> +<P2 x="838" y="800" id="402" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="133" id="22" > @@ -109,7 +109,7 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> <TGConnectingPoint num="0" id="23" /> -<P1 x="983" y="720" id="406" /> +<P1 x="983" y="720" id="356" /> <P2 x="979" y="682" id="185" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -127,8 +127,8 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="1" /> <TGConnectingPoint num="0" id="27" /> -<P1 x="711" y="347" id="656" /> -<P2 x="830" y="314" id="611" /> +<P1 x="711" y="347" id="605" /> +<P2 x="830" y="314" id="674" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="133" id="30" > @@ -136,8 +136,8 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="0" /> <TGConnectingPoint num="0" id="29" /> -<P1 x="805" y="435" id="578" /> -<P2 x="877" y="433" id="615" /> +<P1 x="805" y="435" id="679" /> +<P2 x="877" y="433" id="652" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="133" id="32" > @@ -155,7 +155,7 @@ <infoparam name="connector from TGComponent to TGComponent" value="1" /> <TGConnectingPoint num="0" id="33" /> <P1 x="955" y="578" id="376" /> -<P2 x="938" y="451" id="617" /> +<P2 x="938" y="451" id="654" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="133" id="36" > @@ -164,7 +164,7 @@ <infoparam name="connector from TGComponent to TGComponent" value="" /> <TGConnectingPoint num="0" id="35" /> <P1 x="653" y="563" id="732" /> -<P2 x="676" y="373" id="660" /> +<P2 x="676" y="373" id="609" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="133" id="38" > @@ -181,7 +181,7 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> <TGConnectingPoint num="0" id="39" /> -<P1 x="600" y="733" id="253" /> +<P1 x="600" y="733" id="278" /> <P2 x="726" y="658" id="210" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -190,7 +190,7 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> <TGConnectingPoint num="0" id="41" /> -<P1 x="395" y="888" id="277" /> +<P1 x="395" y="888" id="252" /> <P2 x="342" y="888" id="215" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -199,7 +199,7 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> <TGConnectingPoint num="0" id="43" /> -<P1 x="244" y="830" id="479" /> +<P1 x="244" y="830" id="454" /> <P2 x="249" y="871" id="217" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -209,7 +209,7 @@ <infoparam name="connector from TGComponent to TGComponent" value="" /> <TGConnectingPoint num="0" id="45" /> <P1 x="311" y="871" id="218" /> -<P2 x="299" y="773" id="460" /> +<P2 x="299" y="773" id="485" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="133" id="48" > @@ -217,7 +217,7 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> <TGConnectingPoint num="0" id="47" /> -<P1 x="249" y="747" id="451" /> +<P1 x="249" y="747" id="476" /> <P2 x="259" y="678" id="529" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -518,12 +518,12 @@ </COMPONENT> <SUBCOMPONENT type="1401" id="250" > <father id="350" num="0" /> -<cdparam x="370" y="768" /> -<sizeparam width="293" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="340" y="823" /> +<sizeparam width="323" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> -<cdrectangleparam minX="0" maxX="10" minY="0" maxY="205" /> -<infoparam name="TGComponent" value="RedirectHTTPRequestFromBankToFakeBank" /> +<cdrectangleparam minX="0" maxX="-20" minY="0" maxY="205" /> +<infoparam name="TGComponent" value="RequestUserToInstallMobileFakeBankApplication" /> <TGConnectingPoint num="0" id="226" /> <TGConnectingPoint num="1" id="227" /> <TGConnectingPoint num="2" id="228" /> @@ -554,12 +554,12 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1401" id="275" > <father id="350" num="1" /> -<cdparam x="448" y="716" /> -<sizeparam width="152" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="395" y="871" /> +<sizeparam width="134" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> -<cdrectangleparam minX="0" maxX="151" minY="0" maxY="205" /> -<infoparam name="TGComponent" value="InstallMaliciousPlugin" /> +<cdrectangleparam minX="0" maxX="169" minY="0" maxY="205" /> +<infoparam name="TGComponent" value="ExploitVunerability" /> <TGConnectingPoint num="0" id="251" /> <TGConnectingPoint num="1" id="252" /> <TGConnectingPoint num="2" id="253" /> @@ -590,12 +590,12 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1401" id="300" > <father id="350" num="2" /> -<cdparam x="395" y="871" /> -<sizeparam width="134" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="448" y="716" /> +<sizeparam width="152" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> -<cdrectangleparam minX="0" maxX="169" minY="0" maxY="205" /> -<infoparam name="TGComponent" value="ExploitVunerability" /> +<cdrectangleparam minX="0" maxX="151" minY="0" maxY="205" /> +<infoparam name="TGComponent" value="InstallMaliciousPlugin" /> <TGConnectingPoint num="0" id="276" /> <TGConnectingPoint num="1" id="277" /> <TGConnectingPoint num="2" id="278" /> @@ -626,12 +626,12 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1401" id="325" > <father id="350" num="3" /> -<cdparam x="340" y="823" /> -<sizeparam width="323" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="370" y="768" /> +<sizeparam width="293" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> -<cdrectangleparam minX="0" maxX="-20" minY="0" maxY="205" /> -<infoparam name="TGComponent" value="RequestUserToInstallMobileFakeBankApplication" /> +<cdrectangleparam minX="0" maxX="10" minY="0" maxY="205" /> +<infoparam name="TGComponent" value="RedirectHTTPRequestFromBankToFakeBank" /> <TGConnectingPoint num="0" id="301" /> <TGConnectingPoint num="1" id="302" /> <TGConnectingPoint num="2" id="303" /> @@ -694,12 +694,12 @@ </COMPONENT> <SUBCOMPONENT type="1401" id="375" > <father id="450" num="0" /> -<cdparam x="838" y="783" /> -<sizeparam width="223" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="873" y="720" /> +<sizeparam width="147" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> -<cdrectangleparam minX="0" maxX="1" minY="0" maxY="296" /> -<infoparam name="TGComponent" value="UserInstallsFakeBankApplication" /> +<cdrectangleparam minX="0" maxX="77" minY="0" maxY="296" /> +<infoparam name="TGComponent" value="SilentlyInterceptSMS" /> <TGConnectingPoint num="0" id="351" /> <TGConnectingPoint num="1" id="352" /> <TGConnectingPoint num="2" id="353" /> @@ -766,12 +766,12 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1401" id="425" > <father id="450" num="2" /> -<cdparam x="873" y="720" /> -<sizeparam width="147" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="838" y="783" /> +<sizeparam width="223" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> -<cdrectangleparam minX="0" maxX="77" minY="0" maxY="296" /> -<infoparam name="TGComponent" value="SilentlyInterceptSMS" /> +<cdrectangleparam minX="0" maxX="1" minY="0" maxY="296" /> +<infoparam name="TGComponent" value="UserInstallsFakeBankApplication" /> <TGConnectingPoint num="0" id="401" /> <TGConnectingPoint num="1" id="402" /> <TGConnectingPoint num="2" id="403" /> @@ -834,12 +834,12 @@ </COMPONENT> <SUBCOMPONENT type="1401" id="475" > <father id="525" num="0" /> -<cdparam x="199" y="747" /> -<sizeparam width="100" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="176" y="795" /> +<sizeparam width="137" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> -<cdrectangleparam minX="0" maxX="44" minY="0" maxY="93" /> -<infoparam name="TGComponent" value="InstallTrojan" /> +<cdrectangleparam minX="0" maxX="7" minY="0" maxY="93" /> +<infoparam name="TGComponent" value="ExploitVulnerability" /> <TGConnectingPoint num="0" id="451" /> <TGConnectingPoint num="1" id="452" /> <TGConnectingPoint num="2" id="453" /> @@ -870,12 +870,12 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1401" id="500" > <father id="525" num="1" /> -<cdparam x="176" y="795" /> -<sizeparam width="137" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="199" y="747" /> +<sizeparam width="100" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> -<cdrectangleparam minX="0" maxX="7" minY="0" maxY="93" /> -<infoparam name="TGComponent" value="ExploitVulnerability" /> +<cdrectangleparam minX="0" maxX="44" minY="0" maxY="93" /> +<infoparam name="TGComponent" value="InstallTrojan" /> <TGConnectingPoint num="0" id="476" /> <TGConnectingPoint num="1" id="477" /> <TGConnectingPoint num="2" id="478" /> @@ -1006,12 +1006,12 @@ </COMPONENT> <SUBCOMPONENT type="1401" id="600" > <father id="726" num="0" /> -<cdparam x="674" y="418" /> -<sizeparam width="131" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="668" y="215" /> +<sizeparam width="306" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> -<cdrectangleparam minX="0" maxX="260" minY="0" maxY="264" /> -<infoparam name="TGComponent" value="SendTANToServer" /> +<cdrectangleparam minX="0" maxX="85" minY="0" maxY="264" /> +<infoparam name="TGComponent" value="IllegalBankAccountTransactionBasedOnToken" /> <TGConnectingPoint num="0" id="576" /> <TGConnectingPoint num="1" id="577" /> <TGConnectingPoint num="2" id="578" /> @@ -1036,17 +1036,19 @@ <TGConnectingPoint num="21" id="597" /> <TGConnectingPoint num="22" id="598" /> <TGConnectingPoint num="23" id="599" /> +<accessibility /> <extraparam> -<info description="blah blah blah" root="false" /> +<info description="blah blah blah" root="true" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1402" id="613" > +<SUBCOMPONENT type="1401" id="625" > <father id="726" num="1" /> -<cdparam x="800" y="279" /> -<sizeparam width="123" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="676" y="347" /> +<sizeparam width="141" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="245" minY="0" maxY="264" /> -<infoparam name="TGComponent" value="<<SEQUENCE>>" /> +<enabled value="true" /> +<cdrectangleparam minX="0" maxX="250" minY="0" maxY="264" /> +<infoparam name="TGComponent" value="LogOnBankAccount" /> <TGConnectingPoint num="0" id="601" /> <TGConnectingPoint num="1" id="602" /> <TGConnectingPoint num="2" id="603" /> @@ -1059,114 +1061,113 @@ <TGConnectingPoint num="9" id="610" /> <TGConnectingPoint num="10" id="611" /> <TGConnectingPoint num="11" id="612" /> +<TGConnectingPoint num="12" id="613" /> +<TGConnectingPoint num="13" id="614" /> +<TGConnectingPoint num="14" id="615" /> +<TGConnectingPoint num="15" id="616" /> +<TGConnectingPoint num="16" id="617" /> +<TGConnectingPoint num="17" id="618" /> +<TGConnectingPoint num="18" id="619" /> +<TGConnectingPoint num="19" id="620" /> +<TGConnectingPoint num="20" id="621" /> +<TGConnectingPoint num="21" id="622" /> +<TGConnectingPoint num="22" id="623" /> +<TGConnectingPoint num="23" id="624" /> <extraparam> -<info equation="" /> +<info description="blah blah blah" root="false" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1402" id="626" > +<SUBCOMPONENT type="1401" id="650" > <father id="726" num="2" /> -<cdparam x="877" y="416" /> -<sizeparam width="123" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<hidden value="false" /> -<cdrectangleparam minX="0" maxX="245" minY="0" maxY="264" /> -<infoparam name="TGComponent" value="<<BEFORE>>" /> -<TGConnectingPoint num="0" id="614" /> -<TGConnectingPoint num="1" id="615" /> -<TGConnectingPoint num="2" id="616" /> -<TGConnectingPoint num="3" id="617" /> -<TGConnectingPoint num="4" id="618" /> -<TGConnectingPoint num="5" id="619" /> -<TGConnectingPoint num="6" id="620" /> -<TGConnectingPoint num="7" id="621" /> -<TGConnectingPoint num="8" id="622" /> -<TGConnectingPoint num="9" id="623" /> -<TGConnectingPoint num="10" id="624" /> -<TGConnectingPoint num="11" id="625" /> -<extraparam> -<info equation="120" /> -</extraparam> -</SUBCOMPONENT> -<SUBCOMPONENT type="1401" id="651" > -<father id="726" num="3" /> <cdparam x="818" y="347" /> <sizeparam width="238" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> <cdrectangleparam minX="0" maxX="153" minY="0" maxY="264" /> <infoparam name="TGComponent" value="PerformTokenBasedAuthentication" /> -<TGConnectingPoint num="0" id="627" /> -<TGConnectingPoint num="1" id="628" /> -<TGConnectingPoint num="2" id="629" /> -<TGConnectingPoint num="3" id="630" /> -<TGConnectingPoint num="4" id="631" /> -<TGConnectingPoint num="5" id="632" /> -<TGConnectingPoint num="6" id="633" /> -<TGConnectingPoint num="7" id="634" /> -<TGConnectingPoint num="8" id="635" /> -<TGConnectingPoint num="9" id="636" /> -<TGConnectingPoint num="10" id="637" /> -<TGConnectingPoint num="11" id="638" /> -<TGConnectingPoint num="12" id="639" /> -<TGConnectingPoint num="13" id="640" /> -<TGConnectingPoint num="14" id="641" /> -<TGConnectingPoint num="15" id="642" /> -<TGConnectingPoint num="16" id="643" /> -<TGConnectingPoint num="17" id="644" /> -<TGConnectingPoint num="18" id="645" /> -<TGConnectingPoint num="19" id="646" /> -<TGConnectingPoint num="20" id="647" /> -<TGConnectingPoint num="21" id="648" /> -<TGConnectingPoint num="22" id="649" /> -<TGConnectingPoint num="23" id="650" /> +<TGConnectingPoint num="0" id="626" /> +<TGConnectingPoint num="1" id="627" /> +<TGConnectingPoint num="2" id="628" /> +<TGConnectingPoint num="3" id="629" /> +<TGConnectingPoint num="4" id="630" /> +<TGConnectingPoint num="5" id="631" /> +<TGConnectingPoint num="6" id="632" /> +<TGConnectingPoint num="7" id="633" /> +<TGConnectingPoint num="8" id="634" /> +<TGConnectingPoint num="9" id="635" /> +<TGConnectingPoint num="10" id="636" /> +<TGConnectingPoint num="11" id="637" /> +<TGConnectingPoint num="12" id="638" /> +<TGConnectingPoint num="13" id="639" /> +<TGConnectingPoint num="14" id="640" /> +<TGConnectingPoint num="15" id="641" /> +<TGConnectingPoint num="16" id="642" /> +<TGConnectingPoint num="17" id="643" /> +<TGConnectingPoint num="18" id="644" /> +<TGConnectingPoint num="19" id="645" /> +<TGConnectingPoint num="20" id="646" /> +<TGConnectingPoint num="21" id="647" /> +<TGConnectingPoint num="22" id="648" /> +<TGConnectingPoint num="23" id="649" /> <latencyCheck /> <extraparam> <info description="blah blah blah" root="false" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1401" id="676" > +<SUBCOMPONENT type="1402" id="663" > +<father id="726" num="3" /> +<cdparam x="877" y="416" /> +<sizeparam width="123" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="245" minY="0" maxY="264" /> +<infoparam name="TGComponent" value="<<BEFORE>>" /> +<TGConnectingPoint num="0" id="651" /> +<TGConnectingPoint num="1" id="652" /> +<TGConnectingPoint num="2" id="653" /> +<TGConnectingPoint num="3" id="654" /> +<TGConnectingPoint num="4" id="655" /> +<TGConnectingPoint num="5" id="656" /> +<TGConnectingPoint num="6" id="657" /> +<TGConnectingPoint num="7" id="658" /> +<TGConnectingPoint num="8" id="659" /> +<TGConnectingPoint num="9" id="660" /> +<TGConnectingPoint num="10" id="661" /> +<TGConnectingPoint num="11" id="662" /> +<extraparam> +<info equation="120" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1402" id="676" > <father id="726" num="4" /> -<cdparam x="676" y="347" /> -<sizeparam width="141" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="800" y="279" /> +<sizeparam width="123" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<enabled value="true" /> -<cdrectangleparam minX="0" maxX="250" minY="0" maxY="264" /> -<infoparam name="TGComponent" value="LogOnBankAccount" /> -<TGConnectingPoint num="0" id="652" /> -<TGConnectingPoint num="1" id="653" /> -<TGConnectingPoint num="2" id="654" /> -<TGConnectingPoint num="3" id="655" /> -<TGConnectingPoint num="4" id="656" /> -<TGConnectingPoint num="5" id="657" /> -<TGConnectingPoint num="6" id="658" /> -<TGConnectingPoint num="7" id="659" /> -<TGConnectingPoint num="8" id="660" /> -<TGConnectingPoint num="9" id="661" /> -<TGConnectingPoint num="10" id="662" /> -<TGConnectingPoint num="11" id="663" /> -<TGConnectingPoint num="12" id="664" /> -<TGConnectingPoint num="13" id="665" /> -<TGConnectingPoint num="14" id="666" /> -<TGConnectingPoint num="15" id="667" /> -<TGConnectingPoint num="16" id="668" /> -<TGConnectingPoint num="17" id="669" /> -<TGConnectingPoint num="18" id="670" /> -<TGConnectingPoint num="19" id="671" /> -<TGConnectingPoint num="20" id="672" /> -<TGConnectingPoint num="21" id="673" /> -<TGConnectingPoint num="22" id="674" /> -<TGConnectingPoint num="23" id="675" /> +<cdrectangleparam minX="0" maxX="245" minY="0" maxY="264" /> +<infoparam name="TGComponent" value="<<SEQUENCE>>" /> +<TGConnectingPoint num="0" id="664" /> +<TGConnectingPoint num="1" id="665" /> +<TGConnectingPoint num="2" id="666" /> +<TGConnectingPoint num="3" id="667" /> +<TGConnectingPoint num="4" id="668" /> +<TGConnectingPoint num="5" id="669" /> +<TGConnectingPoint num="6" id="670" /> +<TGConnectingPoint num="7" id="671" /> +<TGConnectingPoint num="8" id="672" /> +<TGConnectingPoint num="9" id="673" /> +<TGConnectingPoint num="10" id="674" /> +<TGConnectingPoint num="11" id="675" /> <extraparam> -<info description="blah blah blah" root="false" /> +<info equation="" /> </extraparam> </SUBCOMPONENT> <SUBCOMPONENT type="1401" id="701" > <father id="726" num="5" /> -<cdparam x="668" y="215" /> -<sizeparam width="306" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="674" y="418" /> +<sizeparam width="131" height="35" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <enabled value="true" /> -<cdrectangleparam minX="0" maxX="85" minY="0" maxY="264" /> -<infoparam name="TGComponent" value="IllegalBankAccountTransactionBasedOnToken" /> +<cdrectangleparam minX="0" maxX="260" minY="0" maxY="264" /> +<infoparam name="TGComponent" value="SendTANToServer" /> <TGConnectingPoint num="0" id="677" /> <TGConnectingPoint num="1" id="678" /> <TGConnectingPoint num="2" id="679" /> @@ -1191,9 +1192,8 @@ <TGConnectingPoint num="21" id="698" /> <TGConnectingPoint num="22" id="699" /> <TGConnectingPoint num="23" id="700" /> -<accessibility /> <extraparam> -<info description="blah blah blah" root="true" /> +<info description="blah blah blah" root="false" /> </extraparam> </SUBCOMPONENT> diff --git a/src/main/java/faulttrees/Fault.java b/src/main/java/faulttrees/Fault.java index de3ea725998c30d130e551e8b52ed2fa3832c308..2333388cfb041ada32788bba2b606c5c602364a0 100755 --- a/src/main/java/faulttrees/Fault.java +++ b/src/main/java/faulttrees/Fault.java @@ -49,18 +49,15 @@ import java.util.ArrayList; * @author Ludovic APVRILLE * @version 1.0 24/01/2018 */ -public class Fault { +public class Fault extends FaultElement { private FaultNode originNode; // If no origin node -> leaf attack private ArrayList<FaultNode> destinationNodes; - private String name; - private Object referenceObject; private boolean isRoot; private boolean isEnabled = true; public Fault(String _name, Object _referenceObject) { - name = _name; - referenceObject = _referenceObject; + super(_name, _referenceObject); destinationNodes = new ArrayList<FaultNode>(); } @@ -88,9 +85,6 @@ public class Fault { destinationNodes.add(_node); } - public String getName() { - return name; - } public boolean isLeaf() { return (originNode == null); diff --git a/src/main/java/faulttrees/FaultElement.java b/src/main/java/faulttrees/FaultElement.java new file mode 100755 index 0000000000000000000000000000000000000000..65725907a4355967767571fea6ad7c47d31bcb78 --- /dev/null +++ b/src/main/java/faulttrees/FaultElement.java @@ -0,0 +1,68 @@ +/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille + * + * ludovic.apvrille AT enst.fr + * + * This software is a computer program whose purpose is to allow the + * edition of TURTLE analysis, design and deployment diagrams, to + * allow the generation of RT-LOTOS or Java code from this diagram, + * and at last to allow the analysis of formal validation traces + * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP + * from INRIA Rhone-Alpes. + * + * This software is governed by the CeCILL license under French law and + * abiding by the rules of distribution of free software. You can use, + * modify and/ or redistribute the software under the terms of the CeCILL + * license as circulated by CEA, CNRS and INRIA at the following URL + * "http://www.cecill.info". + * + * As a counterpart to the access to the source code and rights to copy, + * modify and redistribute granted by the license, users are provided only + * with a limited warranty and the software's author, the holder of the + * economic rights, and the successive licensors have only limited + * liability. + * + * In this respect, the user's attention is drawn to the risks associated + * with loading, using, modifying and/or developing or reproducing the + * software by the user in light of its specific status of free software, + * that may mean that it is complicated to manipulate, and that also + * therefore means that it is reserved for developers and experienced + * professionals having in-depth computer knowledge. Users are therefore + * encouraged to load and test the software's suitability as regards their + * requirements in conditions enabling the security of their systems and/or + * data to be ensured and, more generally, to use and operate it in the + * same conditions as regards security. + * + * The fact that you are presently reading this means that you have had + * knowledge of the CeCILL license and that you accept its terms. + */ + + +package faulttrees; + +import java.util.ArrayList; + + +/** + * Class AttackElement + * Creation: 31/01/2018 + * + * @author Ludovic APVRILLE + * @version 1.0 31/01/2018 + */ +public abstract class FaultElement { + protected String name; + protected Object referenceObject; + + public FaultElement(String _name, Object _referenceObject) { + + name = _name; + referenceObject = _referenceObject; + } + + public String getName() { + return name; + } + + public Object getReferenceObject() { return referenceObject; } + +} diff --git a/src/main/java/faulttrees/FaultNode.java b/src/main/java/faulttrees/FaultNode.java index bb826897db2f76b8e82ad82f91b5e97f66dd301c..4e3aa64ccfa02211fb593391da64da97249ff7ac 100755 --- a/src/main/java/faulttrees/FaultNode.java +++ b/src/main/java/faulttrees/FaultNode.java @@ -50,17 +50,14 @@ import java.util.Collections; * @author Ludovic APVRILLE * @version 1.0 24/01/2018 */ -public abstract class FaultNode { +public abstract class FaultNode extends FaultElement { private Fault resultingFault; // If no resulting attack -> error! private ArrayList<Fault> inputFaults; private ArrayList<Integer> inputValues; - private String name; protected String type = ""; - protected Object referenceObject; public FaultNode(String _name, Object _referenceObject) { - name = _name; - referenceObject = _referenceObject; + super(_name, _referenceObject); inputFaults = new ArrayList<Fault>(); inputValues = new ArrayList<Integer>(); } @@ -75,10 +72,6 @@ public abstract class FaultNode { } - public String getName() { - return name; - } - public void setResultingFault(Fault _fault) { resultingFault = _fault; } @@ -96,6 +89,32 @@ public abstract class FaultNode { inputValues.add(_val); } + public int hasNegativeAttackNumber() { + for(int i=0; i<inputValues.size(); i++) { + int atti = inputValues.get(i).intValue(); + if (atti < 0) { + return i; + } + } + return -1; + } + + public int hasUniqueAttackNumber() { + for(int i=0; i<inputValues.size()-1; i++) { + int atti = inputValues.get(i).intValue(); + for (int j = i + 1; j < inputValues.size(); j++) { + //myutil.TraceManager.addDev("i=" + i + " j=" + j + " size=" + attacks.size()); + int attj = inputValues.get(j).intValue(); + //myutil.TraceManager.addDev("i=" + atti.getName() + " j=" + attj.getName() + " size=" + attacks.size()); + if (atti == attj) { + return i; + } + } + } + return -1; + } + + @Override public String toString() { String ret = name + "/" + type + " Incoming faults: "; for (Fault att : inputFaults) { diff --git a/src/main/java/faulttrees/FaultTree.java b/src/main/java/faulttrees/FaultTree.java index dbcba4c6706c8ad0fa8e7625eb1cc49015080295..ab31e673af4c97098aecdac008892058819c708b 100755 --- a/src/main/java/faulttrees/FaultTree.java +++ b/src/main/java/faulttrees/FaultTree.java @@ -49,16 +49,17 @@ import java.util.ArrayList; * @author Ludovic APVRILLE * @version 1.0 24/01/2018 */ -public class FaultTree { +public class FaultTree extends FaultElement { private ArrayList<FaultNode> nodes; private ArrayList<Fault> faults; private String name; - Object reference; + + public FaultElement faultyElement; + public String errorOfFaultyElement; public FaultTree(String _name, Object _reference) { - name = _name; - reference = _reference; + super(_name, _reference); nodes = new ArrayList<FaultNode>(); faults = new ArrayList<Fault>(); } @@ -71,7 +72,7 @@ public class FaultTree { faults.add(_attack); } - + @Override public String toString() { StringBuffer sb = new StringBuffer(); sb.append("List of nodes:"); @@ -90,12 +91,70 @@ public class FaultTree { } // Checks: - // Sequence nodes have attacks which are ordered + // Sequence/after/before nodes have attacks which are ordered (i.e. unique positive number) // Time value is positive in before and after // Attack name is unique - // Node name is unique + // Node name is unique -> by construction, no need to check this public boolean checkSyntax() { + // Negative order for attacks + for (FaultNode an : nodes) { + int faulty = an.hasNegativeAttackNumber(); + if (faulty >= 0) { + faultyElement = an; + errorOfFaultyElement = "Negative sequence number for node: " + an.getName() + + " and attack: " + an.getInputFaults().get(faulty).getName(); + return false; + } + } + + + // Order of input attacks : in sequence / after / before + for (FaultNode an : nodes) { + + if ((an instanceof SequenceNode) || (an instanceof TimeNode)) { + int faulty = an.hasUniqueAttackNumber(); + if (faulty >= 0) { + faultyElement = an; + errorOfFaultyElement = "Identical sequence number for node: " + an.getName() + + " and attack: " + an.getInputFaults().get(faulty).getName(); + return false; + } + } + + } + + // Time value is positive + for (FaultNode an : nodes) { + if (an instanceof TimeNode) { + int t = ((TimeNode) an).getTime(); + if (t < 0) { + faultyElement = an; + errorOfFaultyElement = "Time value must be positive in: " + an.getName(); + return false; + } + } + } + + // Attack name is unique + for (int i = 0; i < faults.size() - 1; i++) { + Fault atti = faults.get(i); + for (int j = i + 1; j < faults.size(); j++) { + //myutil.TraceManager.addDev("i=" + i + " j=" + j + " size=" + attacks.size()); + Fault attj = faults.get(j); + //myutil.TraceManager.addDev("i=" + atti.getName() + " j=" + attj.getName() + " size=" + attacks.size()); + if (atti.getName().compareTo(attj.getName()) == 0) { + faultyElement = atti; + errorOfFaultyElement = "Duplicate name for fault: " + atti.getName(); + return false; + } + } + } + return true; + + + + } } diff --git a/src/main/java/ui/AttackTreePanel.java b/src/main/java/ui/AttackTreePanel.java index 2eedf505cfdcc45f7e9d8076794a9daf3d8f57cd..9551ed27085efb8d73a4b5397c92c9178e342276 100755 --- a/src/main/java/ui/AttackTreePanel.java +++ b/src/main/java/ui/AttackTreePanel.java @@ -81,7 +81,6 @@ public class AttackTreePanel extends TURTLEPanel { }; tabbedPane.addChangeListener(cl); tabbedPane.addMouseListener(new TURTLEPanelPopupListener(this, mgui)); - } public void init() { diff --git a/src/main/java/ui/FaultTreePanel.java b/src/main/java/ui/FaultTreePanel.java index 789607b905f00b7ceeb95d4265716269d0ad3b2e..3552dc55805c5624e2348d03aa8cc63003cc08ab 100755 --- a/src/main/java/ui/FaultTreePanel.java +++ b/src/main/java/ui/FaultTreePanel.java @@ -170,6 +170,7 @@ public class FaultTreePanel extends TURTLEPanel { return list; } + public void resetMetElements() { //TraceManager.addDev("Reset met elements"); TGComponent tgc; diff --git a/src/main/java/ui/FaultTreePanelTranslator.java b/src/main/java/ui/FaultTreePanelTranslator.java index 7a50154d0b9ede3efe933dfdcb87ccc048ff0802..8c9aa24f4923ebb3600f0c74c61a3efada6b2f21 100644 --- a/src/main/java/ui/FaultTreePanelTranslator.java +++ b/src/main/java/ui/FaultTreePanelTranslator.java @@ -95,6 +95,13 @@ public class FaultTreePanelTranslator { for (TDiagramPanel panel : atp.panels) { if (panel instanceof FaultTreeDiagramPanel) { translate((FaultTreeDiagramPanel) panel); + boolean b = at.checkSyntax(); + if (!b) { + UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, at.errorOfFaultyElement); + ce.setTGComponent((TGComponent) (at.faultyElement.getReferenceObject())); + ce.setTDiagramPanel(panel); + addCheckingError(ce); + } } } diff --git a/src/main/java/ui/GTURTLEModeling.java b/src/main/java/ui/GTURTLEModeling.java index c7d1fb079363106eaed2284b2eb8a267c93d58c9..a2ce87c29a076e931a111d980baef0651d919af4 100755 --- a/src/main/java/ui/GTURTLEModeling.java +++ b/src/main/java/ui/GTURTLEModeling.java @@ -3022,6 +3022,19 @@ public class GTURTLEModeling { TraceManager.addDev("Could not make query for " + tgc); } } + } else if ((avatar2uppaal != null) && (tp instanceof FaultTreePanel)) { + TraceManager.addDev("Making UPPAAL queries"); + for (TGComponent tgc : list) { + TraceManager.addDev("Making UPPAAL query for " + tgc); + String s = avatar2uppaal.getUPPAALIdentification(tgc); + TraceManager.addDev("Query: " + s); + if ((s != null) && (s.length() > 0)) { + AvatarBlock block = avatar2uppaal.getBlockFromReferenceObject(tgc); + listQ.add(new TGComponentAndUPPAALQuery(tgc, s + "$" + block.getName() + "." + tgc)); + } else { + TraceManager.addDev("Could not make query for " + tgc); + } + } } diff --git a/src/main/java/ui/MainGUI.java b/src/main/java/ui/MainGUI.java index cfeb8b3cc7ea52639fe997620a3fe25dc26deda1..cb4d8d02181b125bc68723f390dceef1de374a1b 100644 --- a/src/main/java/ui/MainGUI.java +++ b/src/main/java/ui/MainGUI.java @@ -238,6 +238,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per public final static byte AVATAR_SYNTAXCHECKING_OK = 47; public final static byte PANEL_CHANGED = 48; public final static byte ATTACKTREE_SYNTAXCHECKING_OK = 49; + public final static byte FAULTTREE_SYNTAXCHECKING_OK = 51; public final static byte COMPONENT_SELECTED = 50; public final static int INCREMENT = 10; @@ -3503,25 +3504,25 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per } } - // AttackTree + // FaultTree } else if (tp instanceof FaultTreePanel) { FaultTreePanel atp = (FaultTreePanel) tp; b = gtm.translateFaultTreePanel(atp); expandToWarnings(); expandToErrors(); if (b) { - setMode(MainGUI.ATTACKTREE_SYNTAXCHECKING_OK); + setMode(MainGUI.FAULTTREE_SYNTAXCHECKING_OK); ret = true; if (!automatic) { JOptionPane.showMessageDialog(frame, "0 error, " + getCheckingWarnings().size() + " warning(s)", - "Syntax analysis successful on attack tree", + "Syntax analysis successful on fault tree", JOptionPane.INFORMATION_MESSAGE); } } else { if (!automatic) { JOptionPane.showMessageDialog(frame, - "The Attack tree contains several errors", + "The fault tree contains several errors", "Syntax analysis failed", JOptionPane.INFORMATION_MESSAGE); } diff --git a/src/main/java/ui/ModeManager.java b/src/main/java/ui/ModeManager.java index 4a9b4fcafe351781acab785894f4d175b5df8481..f8ee080227fadce4839691bfcb2198312b9cf3dd 100755 --- a/src/main/java/ui/ModeManager.java +++ b/src/main/java/ui/ModeManager.java @@ -37,12 +37,8 @@ */ - - - package ui; -import common.ConfigurationTTool; import common.SpecConfigTTool; import myutil.TraceManager; @@ -51,376 +47,384 @@ import myutil.TraceManager; * Managing modes in TTool (icon/action activation) * Created for refactoring of MainGUI * Creation: 19/02/2017 - * @version 1.0 19/02/2017 + * * @author Ludovic APVRILLE + * @version 1.0 19/02/2017 */ public class ModeManager { - public static void setMode(byte mode, TGUIAction [] actions, JToolBarMainTurtle mainBar, MainGUI mgui) { - switch(mode) { - case MainGUI.NOT_OPENED: - mgui.activeActions(false); - actions[TGUIAction.ACT_NEW].setEnabled(true); - actions[TGUIAction.ACT_NEW_PROJECT].setEnabled(true); - actions[TGUIAction.ACT_OPEN].setEnabled(true); - actions[TGUIAction.ACT_OPEN_PROJECT].setEnabled(true); - actions[TGUIAction.ACT_OPEN_FROM_NETWORK].setEnabled(true); - actions[TGUIAction.ACT_OPEN_TIF].setEnabled(true); - actions[TGUIAction.ACT_OPEN_SD].setEnabled(true); - actions[TGUIAction.ACT_OPEN_LAST].setEnabled(true); - actions[TGUIAction.ACT_QUIT].setEnabled(true); - actions[TGUIAction.ACT_ABOUT].setEnabled(true); - actions[TGUIAction.ACT_TTOOL_CONFIGURATION].setEnabled(true); - actions[TGUIAction.ACT_TURTLE_WEBSITE].setEnabled(true); - actions[TGUIAction.ACT_TURTLE_DOCUMENTATION].setEnabled(true); - actions[TGUIAction.ACT_SYSMLSEC_DOCUMENTATION].setEnabled(true); - actions[TGUIAction.ACT_DIPLODOCUS_DOCUMENTATION].setEnabled(true); - actions[TGUIAction.ACT_VIEW_SAVED_LOT].setEnabled(true); - actions[TGUIAction.ACT_VIEW_SAVED_DOT].setEnabled(true); - actions[TGUIAction.ACT_BISIMULATION].setEnabled(true); - actions[TGUIAction.ACT_BISIMULATION_CADP].setEnabled(true); - actions[TGUIAction.ACT_GRAPH_MODIFICATION].setEnabled(true); - actions[TGUIAction.ACT_VIEW_STAT_SAVED_AUT].setEnabled(true); - actions[TGUIAction.ACT_VIEW_PM_SAVED_AUT].setEnabled(true); - actions[TGUIAction.ACT_SCREEN_CAPTURE].setEnabled(true); - actions[TGUIAction.ACT_TTOOL_WINDOW_CAPTURE].setEnabled(true); - actions[TGUIAction.ACT_DEADLOCK_SEEKER_SAVED_AUT].setEnabled(true); - actions[TGUIAction.ACT_VIEW_BIRDEYES_EMB].setEnabled(true); - actions[TGUIAction.ACT_VIEW_WAVE].setEnabled(true); - actions[TGUIAction.EXTERNAL_ACTION_1].setEnabled(true); - actions[TGUIAction.EXTERNAL_ACTION_2].setEnabled(true); - //actions[TGUIAction.ACT_SIMU_SYSTEMC].setEnabled(true); - actions[TGUIAction.ACT_VIEW_RG_DIPLODOCUS].setEnabled(SpecConfigTTool.GGraphPath != null); - actions[TGUIAction.ACT_VIEW_STAT_AUTDIPLODOCUS].setEnabled(SpecConfigTTool.GGraphPath != null); - if (mainBar != null) { - mainBar.activateSearch(false); - } - break; - case MainGUI.OPENED: - actions[TGUIAction.ACT_MERGE].setEnabled(true); - actions[TGUIAction.ACT_NEW_DESIGN].setEnabled(true); - actions[TGUIAction.ACT_NEW_ANALYSIS].setEnabled(true); - actions[TGUIAction.ACT_MODEL_CHECKING].setEnabled(true);//DG 06.02. - //actions[TGUIAction.ACT_ONECLICK_RTLOTOS_RG].setEnabled(true); - //actions[TGUIAction.ACT_ONECLICK_LOTOS_RG].setEnabled(true); - actions[TGUIAction.ACT_SAVE_AS].setEnabled(true); - actions[TGUIAction.ACT_IMPORT_LIB].setEnabled(true); - actions[TGUIAction.ACT_SAVE].setEnabled(false); - if (TDiagramPanel.copyData != null) { - actions[TGUIAction.ACT_PASTE].setEnabled(true); - } else { - actions[TGUIAction.ACT_PASTE].setEnabled(false); - } - actions[TGUIAction.ACT_DIAGRAM_CAPTURE].setEnabled(true); - actions[TGUIAction.ACT_SVG_DIAGRAM_CAPTURE].setEnabled(true); - actions[TGUIAction.ACT_ALL_DIAGRAM_CAPTURE].setEnabled(true); - actions[TGUIAction.ACT_ALL_DIAGRAM_CAPTURE_SVG].setEnabled(true); - actions[TGUIAction.ACT_GEN_DOC].setEnabled(true); - actions[TGUIAction.ACT_GEN_DOC_REQ].setEnabled(true); - actions[TGUIAction.ACT_VIEW_JAVA].setEnabled(true); - actions[TGUIAction.ACT_VIEW_BIRDEYES].setEnabled(true); - actions[TGUIAction.ACT_GENERATE_ONTOLOGIES_CURRENT_DIAGRAM].setEnabled(true); - actions[TGUIAction.ACT_GENERATE_ONTOLOGIES_CURRENT_SET_OF_DIAGRAMS].setEnabled(true); - actions[TGUIAction.ACT_GENERATE_ONTOLOGIES_ALL_DIAGRAMS].setEnabled(true); - actions[TGUIAction.ACT_DELETE].setEnabled(false); - actions[TGUIAction.ACT_SUPPR].setEnabled(false); - actions[TGUIAction.MOVE_ENABLED].setEnabled(false); - actions[TGUIAction.FIRST_DIAGRAM].setEnabled(true); + public static void setMode(byte mode, TGUIAction[] actions, JToolBarMainTurtle mainBar, MainGUI mgui) { + switch (mode) { + case MainGUI.NOT_OPENED: + mgui.activeActions(false); + actions[TGUIAction.ACT_NEW].setEnabled(true); + actions[TGUIAction.ACT_NEW_PROJECT].setEnabled(true); + actions[TGUIAction.ACT_OPEN].setEnabled(true); + actions[TGUIAction.ACT_OPEN_PROJECT].setEnabled(true); + actions[TGUIAction.ACT_OPEN_FROM_NETWORK].setEnabled(true); + actions[TGUIAction.ACT_OPEN_TIF].setEnabled(true); + actions[TGUIAction.ACT_OPEN_SD].setEnabled(true); + actions[TGUIAction.ACT_OPEN_LAST].setEnabled(true); + actions[TGUIAction.ACT_QUIT].setEnabled(true); + actions[TGUIAction.ACT_ABOUT].setEnabled(true); + actions[TGUIAction.ACT_TTOOL_CONFIGURATION].setEnabled(true); + actions[TGUIAction.ACT_TURTLE_WEBSITE].setEnabled(true); + actions[TGUIAction.ACT_TURTLE_DOCUMENTATION].setEnabled(true); + actions[TGUIAction.ACT_SYSMLSEC_DOCUMENTATION].setEnabled(true); + actions[TGUIAction.ACT_DIPLODOCUS_DOCUMENTATION].setEnabled(true); + actions[TGUIAction.ACT_VIEW_SAVED_LOT].setEnabled(true); + actions[TGUIAction.ACT_VIEW_SAVED_DOT].setEnabled(true); + actions[TGUIAction.ACT_BISIMULATION].setEnabled(true); + actions[TGUIAction.ACT_BISIMULATION_CADP].setEnabled(true); + actions[TGUIAction.ACT_GRAPH_MODIFICATION].setEnabled(true); + actions[TGUIAction.ACT_VIEW_STAT_SAVED_AUT].setEnabled(true); + actions[TGUIAction.ACT_VIEW_PM_SAVED_AUT].setEnabled(true); + actions[TGUIAction.ACT_SCREEN_CAPTURE].setEnabled(true); + actions[TGUIAction.ACT_TTOOL_WINDOW_CAPTURE].setEnabled(true); + actions[TGUIAction.ACT_DEADLOCK_SEEKER_SAVED_AUT].setEnabled(true); + actions[TGUIAction.ACT_VIEW_BIRDEYES_EMB].setEnabled(true); + actions[TGUIAction.ACT_VIEW_WAVE].setEnabled(true); + actions[TGUIAction.EXTERNAL_ACTION_1].setEnabled(true); + actions[TGUIAction.EXTERNAL_ACTION_2].setEnabled(true); + //actions[TGUIAction.ACT_SIMU_SYSTEMC].setEnabled(true); + actions[TGUIAction.ACT_VIEW_RG_DIPLODOCUS].setEnabled(SpecConfigTTool.GGraphPath != null); + actions[TGUIAction.ACT_VIEW_STAT_AUTDIPLODOCUS].setEnabled(SpecConfigTTool.GGraphPath != null); + if (mainBar != null) { + mainBar.activateSearch(false); + } + break; + case MainGUI.OPENED: + actions[TGUIAction.ACT_MERGE].setEnabled(true); + actions[TGUIAction.ACT_NEW_DESIGN].setEnabled(true); + actions[TGUIAction.ACT_NEW_ANALYSIS].setEnabled(true); + actions[TGUIAction.ACT_MODEL_CHECKING].setEnabled(true);//DG 06.02. + //actions[TGUIAction.ACT_ONECLICK_RTLOTOS_RG].setEnabled(true); + //actions[TGUIAction.ACT_ONECLICK_LOTOS_RG].setEnabled(true); + actions[TGUIAction.ACT_SAVE_AS].setEnabled(true); + actions[TGUIAction.ACT_IMPORT_LIB].setEnabled(true); + actions[TGUIAction.ACT_SAVE].setEnabled(false); + if (TDiagramPanel.copyData != null) { + actions[TGUIAction.ACT_PASTE].setEnabled(true); + } else { + actions[TGUIAction.ACT_PASTE].setEnabled(false); + } + actions[TGUIAction.ACT_DIAGRAM_CAPTURE].setEnabled(true); + actions[TGUIAction.ACT_SVG_DIAGRAM_CAPTURE].setEnabled(true); + actions[TGUIAction.ACT_ALL_DIAGRAM_CAPTURE].setEnabled(true); + actions[TGUIAction.ACT_ALL_DIAGRAM_CAPTURE_SVG].setEnabled(true); + actions[TGUIAction.ACT_GEN_DOC].setEnabled(true); + actions[TGUIAction.ACT_GEN_DOC_REQ].setEnabled(true); + actions[TGUIAction.ACT_VIEW_JAVA].setEnabled(true); + actions[TGUIAction.ACT_VIEW_BIRDEYES].setEnabled(true); + actions[TGUIAction.ACT_GENERATE_ONTOLOGIES_CURRENT_DIAGRAM].setEnabled(true); + actions[TGUIAction.ACT_GENERATE_ONTOLOGIES_CURRENT_SET_OF_DIAGRAMS].setEnabled(true); + actions[TGUIAction.ACT_GENERATE_ONTOLOGIES_ALL_DIAGRAMS].setEnabled(true); + actions[TGUIAction.ACT_DELETE].setEnabled(false); + actions[TGUIAction.ACT_SUPPR].setEnabled(false); + actions[TGUIAction.MOVE_ENABLED].setEnabled(false); + actions[TGUIAction.FIRST_DIAGRAM].setEnabled(true); - if (mainBar != null) { - mainBar.activateSearch(true); - } - //@author: Huy TRUONG - actions[TGUIAction.ACT_EXTERNAL_SEARCH].setEnabled(true); - //disable when there is no text in search textfield - actions[TGUIAction.ACT_INTERNAL_SEARCH].setEnabled(false); - //-- - break; - case MainGUI.MODEL_OK: - actions[TGUIAction.ACT_SAVE_TIF].setEnabled(true); - actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(true); - actions[TGUIAction.ACT_GEN_LOTOS].setEnabled(true); - actions[TGUIAction.ACT_DSE].setEnabled(true); - if (mgui.getCurrentTURTLEPanel() instanceof TMLComponentDesignPanel){ + if (mainBar != null) { + mainBar.activateSearch(true); + } + //@author: Huy TRUONG + actions[TGUIAction.ACT_EXTERNAL_SEARCH].setEnabled(true); + //disable when there is no text in search textfield + actions[TGUIAction.ACT_INTERNAL_SEARCH].setEnabled(false); + //-- + break; + case MainGUI.MODEL_OK: + actions[TGUIAction.ACT_SAVE_TIF].setEnabled(true); + actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(true); + actions[TGUIAction.ACT_GEN_LOTOS].setEnabled(true); + actions[TGUIAction.ACT_DSE].setEnabled(true); + if (mgui.getCurrentTURTLEPanel() instanceof TMLComponentDesignPanel) { + actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(true); + } else { + actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(false); + } + actions[TGUIAction.ACT_GEN_JAVA].setEnabled(true); + actions[TGUIAction.ACT_SIMU_JAVA].setEnabled(true); + actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(true); + actions[TGUIAction.ACT_PROJECTION].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_FV_PROVERIF].setEnabled(true); + actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(false); + break; + + case MainGUI.MODEL_UPPAAL_OK: + //actions[TGUIAction.ACT_SAVE_TIF].setEnabled(true); + //actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(true); + //actions[TGUIAction.ACT_GEN_LOTOS].setEnabled(true); + actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(true); + //actions[TGUIAction.ACT_GEN_JAVA].setEnabled(true); + //actions[TGUIAction.ACT_SIMU_JAVA].setEnabled(true); + //actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(true); + //actions[TGUIAction.ACT_PROJECTION].setEnabled(false); + break; + case MainGUI.EDIT_PROVERIF_OK: + actions[TGUIAction.ACT_VIEW_RTLOTOS].setEnabled(true); + break; + case MainGUI.GEN_DESIGN_OK: + actions[TGUIAction.ACT_GEN_DESIGN].setEnabled(true); + break; + case MainGUI.GEN_SYSTEMC_OK: + actions[TGUIAction.ACT_GEN_SYSTEMC].setEnabled(true); + actions[TGUIAction.ACT_GEN_TMLTXT].setEnabled(true); + actions[TGUIAction.ACT_GEN_CCODE].setEnabled(true); + actions[TGUIAction.ACT_GEN_AUT].setEnabled(true); + actions[TGUIAction.ACT_GEN_AUTS].setEnabled(true); actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(true); - } - else { + break; + case MainGUI.AVATAR_SYNTAXCHECKING_OK: + actions[TGUIAction.ACT_AVATAR_SIM].setEnabled(true); + actions[TGUIAction.ACT_AVATAR_FV_UPPAAL].setEnabled(true); + actions[TGUIAction.ACT_AVATAR_FV_PROVERIF].setEnabled(true); + actions[TGUIAction.ACT_AVATAR_FV_STATICANALYSIS].setEnabled(true); + actions[TGUIAction.ACT_AVATAR_EXECUTABLE_GENERATION].setEnabled(true); + actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(true); + break; + case MainGUI.ATTACKTREE_SYNTAXCHECKING_OK: + actions[TGUIAction.ACT_AVATAR_SIM].setEnabled(true); + actions[TGUIAction.ACT_AVATAR_FV_UPPAAL].setEnabled(true); + actions[TGUIAction.ACT_AVATAR_FV_PROVERIF].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_FV_STATICANALYSIS].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_EXECUTABLE_GENERATION].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(true); + break; + case MainGUI.FAULTTREE_SYNTAXCHECKING_OK: + actions[TGUIAction.ACT_AVATAR_SIM].setEnabled(true); + actions[TGUIAction.ACT_AVATAR_FV_UPPAAL].setEnabled(true); + actions[TGUIAction.ACT_AVATAR_FV_PROVERIF].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_FV_STATICANALYSIS].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_EXECUTABLE_GENERATION].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(true); + break; + case MainGUI.REQ_OK: + //actions[TGUIAction.ACT_VIEW_MATRIX].setEnabled(true); + actions[TGUIAction.ACT_VALIDATION].setEnabled(true); + break; + case MainGUI.RTLOTOS_OK: + actions[TGUIAction.ACT_SAVE_LOTOS].setEnabled(true); + actions[TGUIAction.ACT_VIEW_RTLOTOS].setEnabled(true); + actions[TGUIAction.ACT_CHECKCODE].setEnabled(true); + actions[TGUIAction.ACT_SIMULATION].setEnabled(true); + actions[TGUIAction.ACT_VALIDATION].setEnabled(true); + break; + case MainGUI.UPPAAL_OK: + //actions[TGUIAction.ACT_SAVE_LOTOS].setEnabled(true); + //actions[TGUIAction.ACT_VIEW_RTLOTOS].setEnabled(true); + //actions[TGUIAction.ACT_CHECKCODE].setEnabled(true); + //actions[TGUIAction.ACT_SIMULATION].setEnabled(true); + actions[TGUIAction.ACT_VALIDATION].setEnabled(true); + break; + case MainGUI.MODEL_CHANGED: + actions[TGUIAction.ACT_SAVE].setEnabled(true); + actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(false); + actions[TGUIAction.ACT_GEN_LOTOS].setEnabled(false); + actions[TGUIAction.ACT_DSE].setEnabled(false); + actions[TGUIAction.ACT_GEN_JAVA].setEnabled(false); + actions[TGUIAction.ACT_SIMU_JAVA].setEnabled(false); + actions[TGUIAction.ACT_GEN_DESIGN].setEnabled(false); + actions[TGUIAction.ACT_GEN_SYSTEMC].setEnabled(false); + actions[TGUIAction.ACT_GEN_TMLTXT].setEnabled(false); + actions[TGUIAction.ACT_GEN_CCODE].setEnabled(false); + actions[TGUIAction.ACT_GEN_AUT].setEnabled(false); + actions[TGUIAction.ACT_GEN_AUTS].setEnabled(false); actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(false); - } - actions[TGUIAction.ACT_GEN_JAVA].setEnabled(true); - actions[TGUIAction.ACT_SIMU_JAVA].setEnabled(true); - actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(true); - actions[TGUIAction.ACT_PROJECTION].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_FV_PROVERIF].setEnabled(true); - actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(false); - break; - - case MainGUI.MODEL_UPPAAL_OK: - //actions[TGUIAction.ACT_SAVE_TIF].setEnabled(true); - //actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(true); - //actions[TGUIAction.ACT_GEN_LOTOS].setEnabled(true); - actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(true); - //actions[TGUIAction.ACT_GEN_JAVA].setEnabled(true); - //actions[TGUIAction.ACT_SIMU_JAVA].setEnabled(true); - //actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(true); - //actions[TGUIAction.ACT_PROJECTION].setEnabled(false); - break; - case MainGUI.EDIT_PROVERIF_OK: - actions[TGUIAction.ACT_VIEW_RTLOTOS].setEnabled(true); - break; - case MainGUI.GEN_DESIGN_OK: - actions[TGUIAction.ACT_GEN_DESIGN].setEnabled(true); - break; - case MainGUI.GEN_SYSTEMC_OK: - actions[TGUIAction.ACT_GEN_SYSTEMC].setEnabled(true); - actions[TGUIAction.ACT_GEN_TMLTXT].setEnabled(true); - actions[TGUIAction.ACT_GEN_CCODE].setEnabled(true); - actions[TGUIAction.ACT_GEN_AUT].setEnabled(true); - actions[TGUIAction.ACT_GEN_AUTS].setEnabled(true); - actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(true); - break; - case MainGUI.AVATAR_SYNTAXCHECKING_OK: - actions[TGUIAction.ACT_AVATAR_SIM].setEnabled(true); - actions[TGUIAction.ACT_AVATAR_FV_UPPAAL].setEnabled(true); - actions[TGUIAction.ACT_AVATAR_FV_PROVERIF].setEnabled(true); - actions[TGUIAction.ACT_AVATAR_FV_STATICANALYSIS].setEnabled(true); - actions[TGUIAction.ACT_AVATAR_EXECUTABLE_GENERATION].setEnabled(true); - actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(true); - break; - case MainGUI.ATTACKTREE_SYNTAXCHECKING_OK: - actions[TGUIAction.ACT_AVATAR_SIM].setEnabled(true); - actions[TGUIAction.ACT_AVATAR_FV_UPPAAL].setEnabled(true); - actions[TGUIAction.ACT_AVATAR_FV_PROVERIF].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_FV_STATICANALYSIS].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_EXECUTABLE_GENERATION].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(true); - break; - case MainGUI.REQ_OK: - //actions[TGUIAction.ACT_VIEW_MATRIX].setEnabled(true); - actions[TGUIAction.ACT_VALIDATION].setEnabled(true); - break; - case MainGUI.RTLOTOS_OK: - actions[TGUIAction.ACT_SAVE_LOTOS].setEnabled(true); - actions[TGUIAction.ACT_VIEW_RTLOTOS].setEnabled(true); - actions[TGUIAction.ACT_CHECKCODE].setEnabled(true); - actions[TGUIAction.ACT_SIMULATION].setEnabled(true); - actions[TGUIAction.ACT_VALIDATION].setEnabled(true); - break; - case MainGUI.UPPAAL_OK: - //actions[TGUIAction.ACT_SAVE_LOTOS].setEnabled(true); - //actions[TGUIAction.ACT_VIEW_RTLOTOS].setEnabled(true); - //actions[TGUIAction.ACT_CHECKCODE].setEnabled(true); - //actions[TGUIAction.ACT_SIMULATION].setEnabled(true); - actions[TGUIAction.ACT_VALIDATION].setEnabled(true); - break; - case MainGUI.MODEL_CHANGED: - actions[TGUIAction.ACT_SAVE].setEnabled(true); - actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(false); - actions[TGUIAction.ACT_GEN_LOTOS].setEnabled(false); - actions[TGUIAction.ACT_DSE].setEnabled(false); - actions[TGUIAction.ACT_GEN_JAVA].setEnabled(false); - actions[TGUIAction.ACT_SIMU_JAVA].setEnabled(false); - actions[TGUIAction.ACT_GEN_DESIGN].setEnabled(false); - actions[TGUIAction.ACT_GEN_SYSTEMC].setEnabled(false); - actions[TGUIAction.ACT_GEN_TMLTXT].setEnabled(false); - actions[TGUIAction.ACT_GEN_CCODE].setEnabled(false); - actions[TGUIAction.ACT_GEN_AUT].setEnabled(false); - actions[TGUIAction.ACT_GEN_AUTS].setEnabled(false); - actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(false); - actions[TGUIAction.ACT_CHECKCODE].setEnabled(false); - actions[TGUIAction.ACT_SIMULATION].setEnabled(false); - actions[TGUIAction.ACT_VALIDATION].setEnabled(false); - actions[TGUIAction.ACT_PROJECTION].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_SIM].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_FV_UPPAAL].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_FV_PROVERIF].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_FV_STATICANALYSIS].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_EXECUTABLE_GENERATION].setEnabled(false); - break; - case MainGUI.METHO_CHANGED: - actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(false); - actions[TGUIAction.ACT_GEN_LOTOS].setEnabled(false); - actions[TGUIAction.ACT_DSE].setEnabled(false); - actions[TGUIAction.ACT_CHECKCODE].setEnabled(false); - actions[TGUIAction.ACT_SIMULATION].setEnabled(false); - actions[TGUIAction.ACT_VALIDATION].setEnabled(false); - actions[TGUIAction.ACT_GEN_JAVA].setEnabled(false); - actions[TGUIAction.ACT_SIMU_JAVA].setEnabled(false); - actions[TGUIAction.ACT_GEN_DESIGN].setEnabled(false); - actions[TGUIAction.ACT_GEN_SYSTEMC].setEnabled(false); - actions[TGUIAction.ACT_GEN_TMLTXT].setEnabled(false); - actions[TGUIAction.ACT_GEN_CCODE].setEnabled(false); - actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(false); - //actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(false); - actions[TGUIAction.ACT_GEN_AUT].setEnabled(false); - actions[TGUIAction.ACT_GEN_AUTS].setEnabled(false); - actions[TGUIAction.ACT_PROJECTION].setEnabled(false); - break; + actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(false); + actions[TGUIAction.ACT_CHECKCODE].setEnabled(false); + actions[TGUIAction.ACT_SIMULATION].setEnabled(false); + actions[TGUIAction.ACT_VALIDATION].setEnabled(false); + actions[TGUIAction.ACT_PROJECTION].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_SIM].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_FV_UPPAAL].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_FV_PROVERIF].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_FV_STATICANALYSIS].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_EXECUTABLE_GENERATION].setEnabled(false); + break; + case MainGUI.METHO_CHANGED: + actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(false); + actions[TGUIAction.ACT_GEN_LOTOS].setEnabled(false); + actions[TGUIAction.ACT_DSE].setEnabled(false); + actions[TGUIAction.ACT_CHECKCODE].setEnabled(false); + actions[TGUIAction.ACT_SIMULATION].setEnabled(false); + actions[TGUIAction.ACT_VALIDATION].setEnabled(false); + actions[TGUIAction.ACT_GEN_JAVA].setEnabled(false); + actions[TGUIAction.ACT_SIMU_JAVA].setEnabled(false); + actions[TGUIAction.ACT_GEN_DESIGN].setEnabled(false); + actions[TGUIAction.ACT_GEN_SYSTEMC].setEnabled(false); + actions[TGUIAction.ACT_GEN_TMLTXT].setEnabled(false); + actions[TGUIAction.ACT_GEN_CCODE].setEnabled(false); + actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(false); + //actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(false); + actions[TGUIAction.ACT_GEN_AUT].setEnabled(false); + actions[TGUIAction.ACT_GEN_AUTS].setEnabled(false); + actions[TGUIAction.ACT_PROJECTION].setEnabled(false); + break; - case MainGUI.PANEL_CHANGED: - actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(false); - actions[TGUIAction.ACT_GEN_LOTOS].setEnabled(false); - actions[TGUIAction.ACT_DSE].setEnabled(false); - actions[TGUIAction.ACT_GEN_JAVA].setEnabled(false); - actions[TGUIAction.ACT_SIMU_JAVA].setEnabled(false); - actions[TGUIAction.ACT_GEN_DESIGN].setEnabled(false); - actions[TGUIAction.ACT_GEN_SYSTEMC].setEnabled(false); - actions[TGUIAction.ACT_GEN_TMLTXT].setEnabled(false); - actions[TGUIAction.ACT_GEN_CCODE].setEnabled(false); - actions[TGUIAction.ACT_GEN_AUT].setEnabled(false); - actions[TGUIAction.ACT_GEN_AUTS].setEnabled(false); - actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(false); - actions[TGUIAction.ACT_CHECKCODE].setEnabled(false); - actions[TGUIAction.ACT_SIMULATION].setEnabled(false); - actions[TGUIAction.ACT_VALIDATION].setEnabled(false); - actions[TGUIAction.ACT_PROJECTION].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_SIM].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_FV_UPPAAL].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_FV_PROVERIF].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_FV_STATICANALYSIS].setEnabled(false); - actions[TGUIAction.ACT_AVATAR_EXECUTABLE_GENERATION].setEnabled(false); - break; + case MainGUI.PANEL_CHANGED: + actions[TGUIAction.ACT_GEN_RTLOTOS].setEnabled(false); + actions[TGUIAction.ACT_GEN_LOTOS].setEnabled(false); + actions[TGUIAction.ACT_DSE].setEnabled(false); + actions[TGUIAction.ACT_GEN_JAVA].setEnabled(false); + actions[TGUIAction.ACT_SIMU_JAVA].setEnabled(false); + actions[TGUIAction.ACT_GEN_DESIGN].setEnabled(false); + actions[TGUIAction.ACT_GEN_SYSTEMC].setEnabled(false); + actions[TGUIAction.ACT_GEN_TMLTXT].setEnabled(false); + actions[TGUIAction.ACT_GEN_CCODE].setEnabled(false); + actions[TGUIAction.ACT_GEN_AUT].setEnabled(false); + actions[TGUIAction.ACT_GEN_AUTS].setEnabled(false); + actions[TGUIAction.ACT_GEN_UPPAAL].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_MODEL_CHECKER].setEnabled(false); + actions[TGUIAction.ACT_CHECKCODE].setEnabled(false); + actions[TGUIAction.ACT_SIMULATION].setEnabled(false); + actions[TGUIAction.ACT_VALIDATION].setEnabled(false); + actions[TGUIAction.ACT_PROJECTION].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_SIM].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_FV_UPPAAL].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_FV_PROVERIF].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_FV_STATICANALYSIS].setEnabled(false); + actions[TGUIAction.ACT_AVATAR_EXECUTABLE_GENERATION].setEnabled(false); + break; - case MainGUI.MODEL_SAVED: - TraceManager.addDev("Disable save"); - actions[TGUIAction.ACT_SAVE].setEnabled(false); - break; - case MainGUI.BACKWARD: - actions[TGUIAction.ACT_BACKWARD].setEnabled(true); - break; - case MainGUI.NO_BACKWARD: - actions[TGUIAction.ACT_BACKWARD].setEnabled(false); - break; - case MainGUI.FORWARD: - actions[TGUIAction.ACT_FORWARD].setEnabled(true); - break; - case MainGUI.NO_FORWARD: - actions[TGUIAction.ACT_FORWARD].setEnabled(false); - break; - case MainGUI.FORWARD_DIAG: - actions[TGUIAction.ACT_NEXT_DIAG].setEnabled(true); - actions[TGUIAction.ACT_LAST_DIAG].setEnabled(true); - break; - case MainGUI.BACKWARD_DIAG: - actions[TGUIAction.ACT_FIRST_DIAG].setEnabled(true); - actions[TGUIAction.ACT_BACK_DIAG].setEnabled(true); - break; - case MainGUI.NO_FORWARD_DIAG: - actions[TGUIAction.ACT_NEXT_DIAG].setEnabled(false); - actions[TGUIAction.ACT_LAST_DIAG].setEnabled(false); - break; - case MainGUI.NO_BACKWARD_DIAG: - actions[TGUIAction.ACT_FIRST_DIAG].setEnabled(false); - actions[TGUIAction.ACT_BACK_DIAG].setEnabled(false); - break; - case MainGUI.SIM_OK: - actions[TGUIAction.ACT_VIEW_SIM].setEnabled(true); - actions[TGUIAction.ACT_VIEW_SIM_CHRONO].setEnabled(true); - break; - case MainGUI.SIM_KO: - actions[TGUIAction.ACT_VIEW_SIM].setEnabled(false); - actions[TGUIAction.ACT_VIEW_SIM_CHRONO].setEnabled(false); - break; - case MainGUI.DTADOT_OK: - actions[TGUIAction.ACT_SAVE_DTA].setEnabled(true); - actions[TGUIAction.ACT_VIEW_DTADOT].setEnabled(true); - break; - case MainGUI.DTADOT_KO: - actions[TGUIAction.ACT_SAVE_DTA].setEnabled(false); - actions[TGUIAction.ACT_VIEW_DTADOT].setEnabled(false); - break; - case MainGUI.RGDOT_OK: - actions[TGUIAction.ACT_SAVE_RG].setEnabled(true); - actions[TGUIAction.ACT_VIEW_RGDOT].setEnabled(true); - break; - case MainGUI.RGDOT_KO: - actions[TGUIAction.ACT_SAVE_RG].setEnabled(false); - actions[TGUIAction.ACT_VIEW_RGDOT].setEnabled(false); - break; - case MainGUI.TLSADOT_OK: - actions[TGUIAction.ACT_SAVE_TLSA].setEnabled(true); - actions[TGUIAction.ACT_VIEW_TLSADOT].setEnabled(true); - break; - case MainGUI.TLSADOT_KO: - actions[TGUIAction.ACT_SAVE_TLSA].setEnabled(false); - actions[TGUIAction.ACT_VIEW_TLSADOT].setEnabled(false); - break; - case MainGUI.CUTCOPY_OK: - actions[TGUIAction.ACT_CUT].setEnabled(true); - actions[TGUIAction.ACT_COPY].setEnabled(true); - //actions[TGUIAction.ACT_DELETE].setEnabled(true); - actions[TGUIAction.ACT_SELECTED_CAPTURE].setEnabled(true); - break; - case MainGUI.CUTCOPY_KO: - actions[TGUIAction.ACT_CUT].setEnabled(false); - actions[TGUIAction.ACT_COPY].setEnabled(false); - //actions[TGUIAction.ACT_DELETE].setEnabled(false); - actions[TGUIAction.ACT_SELECTED_CAPTURE].setEnabled(false); - break; - case MainGUI.PASTE_OK: - actions[TGUIAction.ACT_PASTE].setEnabled(true); - break; - case MainGUI.RGAUTDOT_OK: - actions[TGUIAction.ACT_VIEW_STAT_AUT].setEnabled(true); - actions[TGUIAction.ACT_VIEW_PM_AUT].setEnabled(true); - actions[TGUIAction.ACT_SAVE_AUT].setEnabled(true); - actions[TGUIAction.ACT_VIEW_RGAUTDOT].setEnabled(true); - break; - case MainGUI. RGAUTDOT_KO: - actions[TGUIAction.ACT_VIEW_STAT_AUT].setEnabled(false); - actions[TGUIAction.ACT_VIEW_PM_AUT].setEnabled(false); - actions[TGUIAction.ACT_SAVE_AUT].setEnabled(false); - actions[TGUIAction.ACT_VIEW_RGAUTDOT].setEnabled(false); - break; - case MainGUI.RGAUT_OK: - actions[TGUIAction.ACT_VIEW_STAT_AUT].setEnabled(true); - actions[TGUIAction.ACT_VIEW_PM_AUT].setEnabled(true); - actions[TGUIAction.ACT_PROJECTION].setEnabled(true); - actions[TGUIAction.ACT_DEADLOCK_SEEKER_AUT].setEnabled(true); - break; - case MainGUI.RGAUT_KO: - actions[TGUIAction.ACT_VIEW_STAT_AUT].setEnabled(false); - actions[TGUIAction.ACT_VIEW_PM_AUT].setEnabled(false); - actions[TGUIAction.ACT_PROJECTION].setEnabled(false); - actions[TGUIAction.ACT_DEADLOCK_SEEKER_AUT].setEnabled(false); - break; - case MainGUI.RGAUTPROJDOT_OK: - actions[TGUIAction.ACT_VIEW_STAT_AUTPROJ].setEnabled(true); - actions[TGUIAction.ACT_VIEW_PM_AUTPROJ].setEnabled(true); - actions[TGUIAction.ACT_SAVE_AUTPROJ].setEnabled(true); - actions[TGUIAction.ACT_VIEW_RGAUTPROJDOT].setEnabled(true); - break; - case MainGUI.RGAUTPROJDOT_KO: - actions[TGUIAction.ACT_VIEW_STAT_AUTPROJ].setEnabled(false); - actions[TGUIAction.ACT_VIEW_PM_AUTPROJ].setEnabled(false); - actions[TGUIAction.ACT_SAVE_AUTPROJ].setEnabled(false); - actions[TGUIAction.ACT_VIEW_RGAUTPROJDOT].setEnabled(false); - break; - case MainGUI.EXPORT_LIB_OK: - actions[TGUIAction.ACT_EXPORT_LIB].setEnabled(true); - break; - case MainGUI.EXPORT_LIB_KO: - actions[TGUIAction.ACT_EXPORT_LIB].setEnabled(false); - break; - case MainGUI.VIEW_SUGG_DESIGN_OK: - actions[TGUIAction.ACT_VIEW_SUGGESTED_DESIGN].setEnabled(true); - break; - case MainGUI.VIEW_SUGG_DESIGN_KO: - actions[TGUIAction.ACT_VIEW_SUGGESTED_DESIGN].setEnabled(false); - break; - case MainGUI.NC_OK: - actions[TGUIAction.ACT_NC].setEnabled(true); - break; - case MainGUI.COMPONENT_SELECTED: - actions[TGUIAction.MOVE_ENABLED].setEnabled(true); - actions[TGUIAction.ACT_DELETE].setEnabled(true); - actions[TGUIAction.ACT_SUPPR].setEnabled(true); - break; - default: - TraceManager.addDev("DEFAULT"); - mgui.activeActions(false); + case MainGUI.MODEL_SAVED: + TraceManager.addDev("Disable save"); + actions[TGUIAction.ACT_SAVE].setEnabled(false); + break; + case MainGUI.BACKWARD: + actions[TGUIAction.ACT_BACKWARD].setEnabled(true); + break; + case MainGUI.NO_BACKWARD: + actions[TGUIAction.ACT_BACKWARD].setEnabled(false); + break; + case MainGUI.FORWARD: + actions[TGUIAction.ACT_FORWARD].setEnabled(true); + break; + case MainGUI.NO_FORWARD: + actions[TGUIAction.ACT_FORWARD].setEnabled(false); + break; + case MainGUI.FORWARD_DIAG: + actions[TGUIAction.ACT_NEXT_DIAG].setEnabled(true); + actions[TGUIAction.ACT_LAST_DIAG].setEnabled(true); + break; + case MainGUI.BACKWARD_DIAG: + actions[TGUIAction.ACT_FIRST_DIAG].setEnabled(true); + actions[TGUIAction.ACT_BACK_DIAG].setEnabled(true); + break; + case MainGUI.NO_FORWARD_DIAG: + actions[TGUIAction.ACT_NEXT_DIAG].setEnabled(false); + actions[TGUIAction.ACT_LAST_DIAG].setEnabled(false); + break; + case MainGUI.NO_BACKWARD_DIAG: + actions[TGUIAction.ACT_FIRST_DIAG].setEnabled(false); + actions[TGUIAction.ACT_BACK_DIAG].setEnabled(false); + break; + case MainGUI.SIM_OK: + actions[TGUIAction.ACT_VIEW_SIM].setEnabled(true); + actions[TGUIAction.ACT_VIEW_SIM_CHRONO].setEnabled(true); + break; + case MainGUI.SIM_KO: + actions[TGUIAction.ACT_VIEW_SIM].setEnabled(false); + actions[TGUIAction.ACT_VIEW_SIM_CHRONO].setEnabled(false); + break; + case MainGUI.DTADOT_OK: + actions[TGUIAction.ACT_SAVE_DTA].setEnabled(true); + actions[TGUIAction.ACT_VIEW_DTADOT].setEnabled(true); + break; + case MainGUI.DTADOT_KO: + actions[TGUIAction.ACT_SAVE_DTA].setEnabled(false); + actions[TGUIAction.ACT_VIEW_DTADOT].setEnabled(false); + break; + case MainGUI.RGDOT_OK: + actions[TGUIAction.ACT_SAVE_RG].setEnabled(true); + actions[TGUIAction.ACT_VIEW_RGDOT].setEnabled(true); + break; + case MainGUI.RGDOT_KO: + actions[TGUIAction.ACT_SAVE_RG].setEnabled(false); + actions[TGUIAction.ACT_VIEW_RGDOT].setEnabled(false); + break; + case MainGUI.TLSADOT_OK: + actions[TGUIAction.ACT_SAVE_TLSA].setEnabled(true); + actions[TGUIAction.ACT_VIEW_TLSADOT].setEnabled(true); + break; + case MainGUI.TLSADOT_KO: + actions[TGUIAction.ACT_SAVE_TLSA].setEnabled(false); + actions[TGUIAction.ACT_VIEW_TLSADOT].setEnabled(false); + break; + case MainGUI.CUTCOPY_OK: + actions[TGUIAction.ACT_CUT].setEnabled(true); + actions[TGUIAction.ACT_COPY].setEnabled(true); + //actions[TGUIAction.ACT_DELETE].setEnabled(true); + actions[TGUIAction.ACT_SELECTED_CAPTURE].setEnabled(true); + break; + case MainGUI.CUTCOPY_KO: + actions[TGUIAction.ACT_CUT].setEnabled(false); + actions[TGUIAction.ACT_COPY].setEnabled(false); + //actions[TGUIAction.ACT_DELETE].setEnabled(false); + actions[TGUIAction.ACT_SELECTED_CAPTURE].setEnabled(false); + break; + case MainGUI.PASTE_OK: + actions[TGUIAction.ACT_PASTE].setEnabled(true); + break; + case MainGUI.RGAUTDOT_OK: + actions[TGUIAction.ACT_VIEW_STAT_AUT].setEnabled(true); + actions[TGUIAction.ACT_VIEW_PM_AUT].setEnabled(true); + actions[TGUIAction.ACT_SAVE_AUT].setEnabled(true); + actions[TGUIAction.ACT_VIEW_RGAUTDOT].setEnabled(true); + break; + case MainGUI.RGAUTDOT_KO: + actions[TGUIAction.ACT_VIEW_STAT_AUT].setEnabled(false); + actions[TGUIAction.ACT_VIEW_PM_AUT].setEnabled(false); + actions[TGUIAction.ACT_SAVE_AUT].setEnabled(false); + actions[TGUIAction.ACT_VIEW_RGAUTDOT].setEnabled(false); + break; + case MainGUI.RGAUT_OK: + actions[TGUIAction.ACT_VIEW_STAT_AUT].setEnabled(true); + actions[TGUIAction.ACT_VIEW_PM_AUT].setEnabled(true); + actions[TGUIAction.ACT_PROJECTION].setEnabled(true); + actions[TGUIAction.ACT_DEADLOCK_SEEKER_AUT].setEnabled(true); + break; + case MainGUI.RGAUT_KO: + actions[TGUIAction.ACT_VIEW_STAT_AUT].setEnabled(false); + actions[TGUIAction.ACT_VIEW_PM_AUT].setEnabled(false); + actions[TGUIAction.ACT_PROJECTION].setEnabled(false); + actions[TGUIAction.ACT_DEADLOCK_SEEKER_AUT].setEnabled(false); + break; + case MainGUI.RGAUTPROJDOT_OK: + actions[TGUIAction.ACT_VIEW_STAT_AUTPROJ].setEnabled(true); + actions[TGUIAction.ACT_VIEW_PM_AUTPROJ].setEnabled(true); + actions[TGUIAction.ACT_SAVE_AUTPROJ].setEnabled(true); + actions[TGUIAction.ACT_VIEW_RGAUTPROJDOT].setEnabled(true); + break; + case MainGUI.RGAUTPROJDOT_KO: + actions[TGUIAction.ACT_VIEW_STAT_AUTPROJ].setEnabled(false); + actions[TGUIAction.ACT_VIEW_PM_AUTPROJ].setEnabled(false); + actions[TGUIAction.ACT_SAVE_AUTPROJ].setEnabled(false); + actions[TGUIAction.ACT_VIEW_RGAUTPROJDOT].setEnabled(false); + break; + case MainGUI.EXPORT_LIB_OK: + actions[TGUIAction.ACT_EXPORT_LIB].setEnabled(true); + break; + case MainGUI.EXPORT_LIB_KO: + actions[TGUIAction.ACT_EXPORT_LIB].setEnabled(false); + break; + case MainGUI.VIEW_SUGG_DESIGN_OK: + actions[TGUIAction.ACT_VIEW_SUGGESTED_DESIGN].setEnabled(true); + break; + case MainGUI.VIEW_SUGG_DESIGN_KO: + actions[TGUIAction.ACT_VIEW_SUGGESTED_DESIGN].setEnabled(false); + break; + case MainGUI.NC_OK: + actions[TGUIAction.ACT_NC].setEnabled(true); + break; + case MainGUI.COMPONENT_SELECTED: + actions[TGUIAction.MOVE_ENABLED].setEnabled(true); + actions[TGUIAction.ACT_DELETE].setEnabled(true); + actions[TGUIAction.ACT_SUPPR].setEnabled(true); + break; + default: + TraceManager.addDev("DEFAULT"); + mgui.activeActions(false); } } diff --git a/src/main/java/ui/TGUIAction.java b/src/main/java/ui/TGUIAction.java index 621c112c56273e127820dc421ddcb7f17316da45..86d53936852daebb9f9d48816fa347dec6d3bf90 100755 --- a/src/main/java/ui/TGUIAction.java +++ b/src/main/java/ui/TGUIAction.java @@ -1141,7 +1141,7 @@ public class TGUIAction extends AbstractAction { // Fault Tree Diagrams actions[FTD_BLOCK] = new TAction("ftd-block", "Add a block", IconManager.imgic1070, IconManager.imgic1070, "Block", "Add a SysML Block to the currently opened fault tree diagram", 0); - actions[FTD_FAULT] = new TAction("ftd-fault", "Add a fault", IconManager.imgic1072, IconManager.imgic1072, "Fault", "Add a fault (i.e. a SysML value type) to the currently opened fault tree diagram", 0); + actions[FTD_FAULT] = new TAction("ftd-fault", "Add a fault", IconManager.imgic1416, IconManager.imgic1416, "Fault", "Add a fault (i.e. a SysML value type) to the currently opened fault tree diagram", 0); actions[FTD_FAULT_CONNECTOR] = new TAction("ftd-fault-connector", "Add a connector between faults /constraints", IconManager.imgic1080, IconManager.imgic1080, "Connector", "Add a connector between faults / constraints of the currently opened fault tree diagram", 0); actions[FTD_COMPOSITION_CONNECTOR] = new TAction("ftd-composition-connector", "Add a composition connector between blocks", IconManager.imgic1076, IconManager.imgic1076, "Composition connector", "Add a composition between blocks of the currently opened fault tree diagram", 0); actions[FTD_CONSTRAINT] = new TAction("ftd-constraint", "Add a constraint", IconManager.imgic1078, IconManager.imgic1078, "Constraint", "Add a constraint to the currently opened fault tree diagram", 0); diff --git a/src/main/java/ui/atd/AttackTreeDiagramToolbar.java b/src/main/java/ui/atd/AttackTreeDiagramToolbar.java index ff2882a03bb6b8da6ef3201bb09a1cb05be2613d..264a7b9146c9b48aa6754dd4ce066ae2a9b6aa09 100644 --- a/src/main/java/ui/atd/AttackTreeDiagramToolbar.java +++ b/src/main/java/ui/atd/AttackTreeDiagramToolbar.java @@ -37,8 +37,6 @@ */ - - package ui.atd; import ui.MainGUI; @@ -51,12 +49,13 @@ import javax.swing.*; //import java.awt.event.*; /** - * Class AttackTreeDiagramToolBar - * Implements the toolbar to be used in conjunction with the panel of an attack tree diagram - * Creation: 03/11/2009 - * @version 1.0 03/11/2009 - * @author Ludovic APVRILLE - * @see ui.cd.TClassDiagramPanel + * Class AttackTreeDiagramToolBar + * Implements the toolbar to be used in conjunction with the panel of an attack tree diagram + * Creation: 03/11/2009 + * + * @author Ludovic APVRILLE + * @version 1.0 03/11/2009 + * @see ui.cd.TClassDiagramPanel */ public class AttackTreeDiagramToolbar extends TToolBar { @@ -85,11 +84,11 @@ public class AttackTreeDiagramToolbar extends TToolBar { mgui.actions[TGUIAction.ATD_CONSTRAINT].setEnabled(b); - mgui.actions[TGUIAction.ATD_COUNTERMEASURE].setEnabled(b); - mgui.actions[TGUIAction.ATD_COUNTERMEASURE_CONNECTOR].setEnabled(b); + mgui.actions[TGUIAction.ATD_COUNTERMEASURE].setEnabled(b); + mgui.actions[TGUIAction.ATD_COUNTERMEASURE_CONNECTOR].setEnabled(b); mgui.actions[TGUIAction.ACT_TOGGLE_ATTR].setEnabled(b); - mgui.actions[TGUIAction.ACT_MODEL_CHECKING].setEnabled(b); + mgui.actions[TGUIAction.ACT_MODEL_CHECKING].setEnabled(b); } @@ -130,12 +129,12 @@ public class AttackTreeDiagramToolbar extends TToolBar { button = this.add(mgui.actions[TGUIAction.ATD_ATTACK_CONNECTOR]); button.addMouseListener(mgui.mouseHandler); - this.addSeparator(); - button = this.add(mgui.actions[TGUIAction.ATD_COUNTERMEASURE]); + this.addSeparator(); + button = this.add(mgui.actions[TGUIAction.ATD_COUNTERMEASURE]); button.addMouseListener(mgui.mouseHandler); - button = this.add(mgui.actions[TGUIAction.ATD_COUNTERMEASURE_CONNECTOR]); + button = this.add(mgui.actions[TGUIAction.ATD_COUNTERMEASURE_CONNECTOR]); button.addMouseListener(mgui.mouseHandler); - + this.addSeparator(); this.addSeparator(); diff --git a/src/main/java/ui/avatarinteractivesimulation/JFrameAvatarInteractiveSimulation.java b/src/main/java/ui/avatarinteractivesimulation/JFrameAvatarInteractiveSimulation.java index dcd604a490c039c46091106400bb27a16e1465d0..75dbfd19aee4358211df7e9cd3fda05409d0e35e 100755 --- a/src/main/java/ui/avatarinteractivesimulation/JFrameAvatarInteractiveSimulation.java +++ b/src/main/java/ui/avatarinteractivesimulation/JFrameAvatarInteractiveSimulation.java @@ -1359,6 +1359,8 @@ public class JFrameAvatarInteractiveSimulation extends JFrame implements Avatar } else if (avspec.getReferenceObject() instanceof AttackTreePanel) { ((AttackTreePanel)(avspec.getReferenceObject())).resetMetElements(); + } else if (avspec.getReferenceObject() instanceof FaultTreePanel) { + ((FaultTreePanel)(avspec.getReferenceObject())).resetMetElements(); } if (coverage != null) { diff --git a/src/main/java/ui/ftd/FaultTreeDiagramToolbar.java b/src/main/java/ui/ftd/FaultTreeDiagramToolbar.java index e57fc9eea09df9a8f755f110b9ca59267bdf063a..40eaa5118a5b7923ea411676fc802166c20d2d55 100644 --- a/src/main/java/ui/ftd/FaultTreeDiagramToolbar.java +++ b/src/main/java/ui/ftd/FaultTreeDiagramToolbar.java @@ -88,7 +88,7 @@ public class FaultTreeDiagramToolbar extends TToolBar { mgui.actions[TGUIAction.FTD_COUNTERMEASURE_CONNECTOR].setEnabled(b); mgui.actions[TGUIAction.ACT_TOGGLE_ATTR].setEnabled(b); - //mgui.actions[TGUIAction.ACT_MODEL_CHECKING].setEnabled(b); + mgui.actions[TGUIAction.ACT_MODEL_CHECKING].setEnabled(b); } diff --git a/src/main/java/ui/util/IconManager.java b/src/main/java/ui/util/IconManager.java index 28ab55629ad52579252f40f811207d2eba5ef6c0..791a86af96201dcdff21c03364c5955c8055ebb9 100755 --- a/src/main/java/ui/util/IconManager.java +++ b/src/main/java/ui/util/IconManager.java @@ -121,7 +121,7 @@ public class IconManager { // Fault Tree Diagrams public static ImageIcon imgic1400, imgic1402, imgic1404, imgic1406, imgic1408; - public static ImageIcon imgic1410, imgic1412, imgic1414; + public static ImageIcon imgic1410, imgic1412, imgic1414, imgic1416; public static Image img1400, img1402, img1404, img1406, img1408; public static Image img1410, img1412, img1414; @@ -502,6 +502,7 @@ public class IconManager { private static String icon1410 = "OrFT.png"; private static String icon1412 = "XorFT.png"; private static String icon1414 = "VoteFT.png"; + private static String icon1416 = "ftdfault.gif"; // DIPLODOCUS architecture private static String icon1100 = "tmlcpunode.gif"; @@ -972,6 +973,7 @@ public class IconManager { if (imgic1414 != null) { img1414 = imgic1414.getImage(); } + imgic1416 = getIcon(icon1416); imgic1100 = getIcon(icon1100); imgic1102 = getIcon(icon1102); diff --git a/src/main/resources/ui/util/ftdfault.gif b/src/main/resources/ui/util/ftdfault.gif new file mode 100644 index 0000000000000000000000000000000000000000..266de2d3e03764d791f7edf69262820a40b88267 Binary files /dev/null and b/src/main/resources/ui/util/ftdfault.gif differ