From 5aff0e988af2045d8930ccfa92eb15869357ca25 Mon Sep 17 00:00:00 2001
From: apvrille <ludovic.apvrille@eurecom.fr>
Date: Thu, 17 Jan 2019 12:57:23 +0100
Subject: [PATCH] solving ticket 161

---
 modeling/DIPLODOCUS/SmartCardProtocol.xml      | 16 ++++++++++++++++
 src/main/java/ui/MainGUI.java                  | 10 +++++++++-
 src/main/java/ui/TURTLEPanelPopupListener.java |  7 +++++--
 3 files changed, 30 insertions(+), 3 deletions(-)

diff --git a/modeling/DIPLODOCUS/SmartCardProtocol.xml b/modeling/DIPLODOCUS/SmartCardProtocol.xml
index f44c85c35b..68180c9d4a 100755
--- a/modeling/DIPLODOCUS/SmartCardProtocol.xml
+++ b/modeling/DIPLODOCUS/SmartCardProtocol.xml
@@ -2,6 +2,22 @@
 
 <TURTLEGMODELING version="1.0beta">
 
+<Modeling type="Avatar Analysis" nameTab="Analysis" >
+</Modeling>
+
+
+
+
+<Modeling type="Avatar Analysis" nameTab="Analysis" >
+<SequenceDiagramPanelZV name="MyScenario0" minX="10" maxX="2500" minY="10" maxY="1500" >
+
+</SequenceDiagramPanelZV>
+
+</Modeling>
+
+
+
+
 <Modeling type="TML Component Design" nameTab="AppC" >
 <TMLComponentTaskDiagramPanel name="TML Component Task Diagram" minX="0" maxX="2724" minY="0" maxY="916" channels="true" events="true" requests="true" zoom="1.0000000000000018" >
 <CONNECTOR type="126" id="1" >
diff --git a/src/main/java/ui/MainGUI.java b/src/main/java/ui/MainGUI.java
index f64dd00aa9..5b3b8980f3 100644
--- a/src/main/java/ui/MainGUI.java
+++ b/src/main/java/ui/MainGUI.java
@@ -6634,6 +6634,14 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
         return (tp.panelAt(index) instanceof ui.sd.SequenceDiagramPanel);
     }
 
+    public boolean isSDCreatedZV(TURTLEPanel tp, String s) {
+        int index = tp.tabbedPane.indexOfTab(s);
+        if (index == -1) {
+            return false;
+        }
+        return (tp.panelAt(index) instanceof ui.sd2.SequenceDiagramPanel);
+    }
+
     public boolean isSDZVCreated(int index, String s) {
         return isSDZVCreated(tabs.elementAt(index), s);
     }
@@ -6990,7 +6998,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
     public boolean createUniqueSequenceDiagramZV(TURTLEPanel tp, String s) {
         int i;
         for (i = 0; i < 1000; i++) {
-            if (!isSDCreated(tp, s + i)) {
+            if (!isSDCreatedZV(tp, s + i)) {
                 break;
             }
         }
diff --git a/src/main/java/ui/TURTLEPanelPopupListener.java b/src/main/java/ui/TURTLEPanelPopupListener.java
index b6c22e0e74..7285a96c2a 100644
--- a/src/main/java/ui/TURTLEPanelPopupListener.java
+++ b/src/main/java/ui/TURTLEPanelPopupListener.java
@@ -138,7 +138,10 @@ public class TURTLEPanelPopupListener extends MouseAdapter /* popup menus onto t
             menu.add(newavatarcd);
             menu.add(newavatarad);
         }
-        menu.add(newsd);
+
+        if (mgui.isExperimentalOn()) {
+            menu.add(newsd);
+        }
         menu.add(newsdzv);
 
         menu.add(newsdfromucd);
@@ -209,7 +212,7 @@ public class TURTLEPanelPopupListener extends MouseAdapter /* popup menus onto t
         }
 
         newucd.setEnabled(tp.isUCDEnabled());
-        newsd.setEnabled(tp.isSDEnabled());
+        newsd.setEnabled(tp.isSDEnabled()&&mgui.isExperimentalOn());
         newsdzv.setEnabled(tp.isSDEnabled());
         newsdfromucd.setEnabled(tp.isSDEnabled() && (mgui.getCurrentTDiagramPanel() instanceof UseCaseDiagramPanel));
         newreq.setEnabled(tp.isReqEnabled());
-- 
GitLab