From 48fd6247f90e4d2eb6044620b978b97423d0e2b4 Mon Sep 17 00:00:00 2001
From: Moemoea Fierin <moemoea.fierin@epita.fr>
Date: Fri, 20 Dec 2019 11:19:37 +0100
Subject: [PATCH] [ZOOMs] Last merge elements

---
 src/.classpath                                | 10 +++-
 src/main/java/ui/SecurityGeneration.java      | 25 +++++-----
 .../JFrameLatencyDetailedAnalysis.java        | 50 +++++++------------
 src/main/java/ui/sd/SDActionState.java        |  9 ++--
 src/main/java/ui/sd2/SDActionState.java       | 19 ++++---
 test.txt                                      |  2 -
 ttool-cli/.classpath                          | 11 ++++
 ttool-cli/.gitignore                          |  5 ++
 ttool-cli/.project                            | 17 +++++++
 9 files changed, 89 insertions(+), 59 deletions(-)
 delete mode 100644 test.txt
 create mode 100644 ttool-cli/.classpath
 create mode 100644 ttool-cli/.gitignore
 create mode 100644 ttool-cli/.project

diff --git a/src/.classpath b/src/.classpath
index 52a7ed71d3..95eb21f4c3 100644
--- a/src/.classpath
+++ b/src/.classpath
@@ -1,7 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="main/java"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
+		<attributes>
+			<attribute name="module" value="true"/>
+		</attributes>
+	</classpathentry>
 	<classpathentry kind="lib" path="/libs/commons-codec-1.10.jar"/>
 	<classpathentry kind="lib" path="/libs/commons-io-2.4.jar"/>
 	<classpathentry kind="lib" path="/libs/derby.jar"/>
@@ -20,5 +24,9 @@
 	<classpathentry kind="lib" path="/libs/jautomata-core.jar"/>
 	<classpathentry kind="lib" path="/libs/jna-3.3.0.jar"/>
 	<classpathentry kind="lib" path="/libs/com.microsoft.z3.jar"/>
+	<classpathentry kind="lib" path="/libs/jgrapht-core-1.3.0.jar"/>
+	<classpathentry kind="lib" path="/libs/jgrapht-ext-1.3.0.jar"/>
+	<classpathentry kind="lib" path="/libs/jgrapht-io-1.3.0.jar"/>
+	<classpathentry kind="lib" path="/libs/jgraphx-3.4.1.3.jar"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/src/main/java/ui/SecurityGeneration.java b/src/main/java/ui/SecurityGeneration.java
index 32034b6bb6..c07d1283e4 100644
--- a/src/main/java/ui/SecurityGeneration.java
+++ b/src/main/java/ui/SecurityGeneration.java
@@ -83,7 +83,7 @@ public class SecurityGeneration implements Runnable {
 	List<String> hsmTasks = new ArrayList<String>();
 
 	Map<String, String> channelSecMap = new HashMap<String, String>();
-	TMLMapping<TGComponent> newMap;//TMLMapping<?> newMap; FIXME keep or not
+	TMLMapping<TGComponent> newMap;
 
 	public SecurityGeneration(MainGUI gui, String name, TMLMapping<TGComponent> map, TMLArchiPanel newarch, String encComp, String overhead, String decComp, boolean autoConf, boolean autoWeakAuth, boolean autoStrongAuth,	Map<String, List<String>> selectedCPUTasks){
 
@@ -219,7 +219,7 @@ public class SecurityGeneration implements Runnable {
  	}
 
 	public boolean portInTask(TMLTask task, String portName){
-		TMLActivityDiagramPanel tad = tmlcdp.getTMLActivityDiagramPanel(task.getName());//( getActivityDiagramName( task ) );
+		TMLActivityDiagramPanel tad = tmlcdp.getTMLActivityDiagramPanel(task.getName());// FIXME ( getActivityDiagramName( task ) );
 		for (TGComponent tg : tad.getComponentList()) {
 			if (tg instanceof TMLADWriteChannel) {
 				TMLADWriteChannel writeChannel = (TMLADWriteChannel) tg;
@@ -348,7 +348,7 @@ public class SecurityGeneration implements Runnable {
 		for (TMLTask task : map.getTMLModeling().getTasks()) {
 			//System.out.println("Task " + task.getName());
 			//Check if all channel operators are secured
-			TMLActivityDiagramPanel tad = tmlcdp.getTMLActivityDiagramPanel(task.getName()); //FIXME keep or not : getActivityDiagramName( task ) );
+			TMLActivityDiagramPanel tad = tmlcdp.getTMLActivityDiagramPanel(task.getName()); //FIXME getActivityDiagramName( task ) )
 			if (tad==null){
 				continue;
 
@@ -475,13 +475,13 @@ public class SecurityGeneration implements Runnable {
 								  System.out.println("Channel found "+ chantmp);
 								  }*/
 
-							}
-							if (hsmTasks.contains(chan.getOriginTask().getName().split("__")[1])){
-								channelSecMap.put(chanName, "hsmSec_"+secName);
-								if (!hsmSecOutChannels.get(chan.getOriginTask()).contains(chanName) && portInTask(chan.getOriginTask(),chanName)){
-									HSMChannel hsmchan = new HSMChannel(chanName,  chan.getOriginTask().getName().split("__")[1], HSMChannel.MAC);
-									hsmChannelMap.get(taskHSMMap.get(chan.getOriginTask().getName().split("__")[1])).add(hsmchan);
-									hsmSecOutChannels.get(chan.getOriginTask()).add(chanName);
+						}
+						if (hsmTasks.contains(chan.getOriginTask().getName().split("__")[1])){
+							channelSecMap.put(chanName, "hsmSec_"+secName);
+							if (!hsmSecOutChannels.get(chan.getOriginTask()).contains(chanName) && portInTask(chan.getOriginTask(),chanName)){
+								HSMChannel hsmchan = new HSMChannel(chanName,  chan.getOriginTask().getName().split("__")[1], HSMChannel.MAC);
+								hsmChannelMap.get(taskHSMMap.get(chan.getOriginTask().getName().split("__")[1])).add(hsmchan);
+								hsmSecOutChannels.get(chan.getOriginTask()).add(chanName);
 
 								if (autoStrongAuth) {
 									nonceOutChannels.get(chan.getOriginTask()).add(chanName);
@@ -684,7 +684,7 @@ public class SecurityGeneration implements Runnable {
 							break;
 						}
 					}
-				}
+				} 
 			}
 		}
 		if (comps.size() == 0) {
@@ -725,7 +725,8 @@ public class SecurityGeneration implements Runnable {
 					destPort.typep = 2;
 					originPort.setParam(0, new TType(1));
 					destPort.setParam(0, new TType(1));
-				}
+				}				
+
 				destPort.isOrigin = !hsmChan.isOrigin;
 
 				tcdp.addComponent(destPort, comp.getX(), comp.getY(), true, true);
diff --git a/src/main/java/ui/directedgraph/JFrameLatencyDetailedAnalysis.java b/src/main/java/ui/directedgraph/JFrameLatencyDetailedAnalysis.java
index 4e05eb82f3..797e1dd0a9 100644
--- a/src/main/java/ui/directedgraph/JFrameLatencyDetailedAnalysis.java
+++ b/src/main/java/ui/directedgraph/JFrameLatencyDetailedAnalysis.java
@@ -39,7 +39,6 @@
 package ui.directedgraph;
 
 import java.awt.BorderLayout;
-import java.awt.Color;
 import java.awt.Container;
 import java.awt.Dimension;
 import java.awt.Font;
@@ -52,13 +51,10 @@ import java.awt.event.ItemEvent;
 import java.awt.event.ItemListener;
 import java.awt.event.MouseEvent;
 import java.awt.event.MouseListener;
-import java.awt.event.WindowEvent;
-import java.awt.event.WindowListener;
 import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.FileReader;
 import java.io.IOException;
-import java.io.InputStream;
 import java.lang.Thread.State;
 import java.util.List;
 import java.util.Vector;
@@ -73,7 +69,6 @@ import javax.swing.JFrame;
 import javax.swing.JLabel;
 import javax.swing.JPanel;
 import javax.swing.JScrollPane;
-import javax.swing.JSplitPane;
 import javax.swing.JTabbedPane;
 import javax.swing.JTable;
 import javax.swing.JTextArea;
@@ -84,40 +79,29 @@ import javax.swing.event.ChangeListener;
 import javax.swing.event.ListSelectionEvent;
 import javax.swing.event.ListSelectionListener;
 import javax.swing.filechooser.FileNameExtensionFilter;
-import javax.swing.table.DefaultTableModel;
-import javax.swing.table.TableModel;
+//import javax.swing.table.DefaultTableModel;
 import javax.xml.parsers.ParserConfigurationException;
 import javax.xml.parsers.SAXParser;
 import javax.xml.parsers.SAXParserFactory;
 
 import org.jgrapht.Graph;
-import org.jgrapht.ext.JGraphXAdapter;
 import org.jgrapht.graph.DefaultDirectedGraph;
 import org.jgrapht.graph.DefaultEdge;
 import org.jgrapht.io.EdgeProvider;
 import org.jgrapht.io.ExportException;
 import org.jgrapht.io.GraphMLImporter;
 import org.jgrapht.io.ImportException;
-import org.jgrapht.io.SimpleGraphMLImporter;
 import org.jgrapht.io.VertexProvider;
 import org.xml.sax.SAXException;
 
-import com.mxgraph.layout.hierarchical.mxHierarchicalLayout;
-import com.mxgraph.swing.mxGraphComponent;
-
 import common.ConfigurationTTool;
 import common.SpecConfigTTool;
 import myutil.GraphicLib;
 import myutil.ScrolledJTextArea;
 import tmltranslator.TMLMapping;
 import ui.ColorManager;
-import ui.MainGUI;
-import ui.SimulationTrace;
 import ui.TGComponent;
 import ui.TMLComponentDesignPanel;
-import ui.interactivesimulation.InteractiveSimulationActions;
-import ui.interactivesimulation.JFrameCompareSimulationTraces;
-import ui.interactivesimulation.SaveCommandsToolBar;
 import ui.interactivesimulation.SimulationTransaction;
 import ui.interactivesimulation.SimulationTransactionParser;
 
@@ -132,11 +116,11 @@ import ui.interactivesimulation.SimulationTransactionParser;
 
 public class JFrameLatencyDetailedAnalysis extends JFrame implements ActionListener, Runnable, MouseListener, ItemListener, ChangeListener {
 
-    private JButton saveGraph, viewGraph;
+//    private JButton saveGraph, viewGraph;
     protected JTextArea jta;
     protected JScrollPane jsp;
-    private JTabbedPane commandTab, resultTab, resultTabDetailed;
-    private JPanel loadxml, commands, jp01, jp02, activities, graphAnalysisResult, jp03, jp04, jp05, graphAnalysisResultDetailed;
+    private JTabbedPane commandTab, resultTab;/*, resultTabDetailed;*/
+    private JPanel loadxml, commands, jp01, jp02, /*activities,*/ graphAnalysisResult, jp03, jp04, jp05; //,graphAnalysisResultDetailed;
     protected JButton buttonClose, buttonShowDGraph, buttonSaveDGraph, buttonBrowse, buttonDetailedAnalysis;
 
     protected JTextField saveDirName;
@@ -145,7 +129,7 @@ public class JFrameLatencyDetailedAnalysis extends JFrame implements ActionListe
     private JComboBox<String> tasksDropDownCombo1 = new JComboBox<String>();
     private JComboBox<String> tasksDropDownCombo2 = new JComboBox<String>();
 
-    private JComboBox<Object> tracesCombo1, tracesCombo2;
+//    private JComboBox<Object> tracesCombo1, tracesCombo2;
 
     protected SaveGraphToolBar sgtb;
 
@@ -154,7 +138,7 @@ public class JFrameLatencyDetailedAnalysis extends JFrame implements ActionListe
 
     private String[] columnNames = new String[5];
     private String[] columnMinMaxNames = new String[5];
-    private String[] columnByTaskNames = new String[4];
+//    private String[] columnByTaskNames = new String[4];
     private Object[][] dataDetailedByTask;
     private Object[][] dataDetailedMinMax;
 
@@ -165,13 +149,13 @@ public class JFrameLatencyDetailedAnalysis extends JFrame implements ActionListe
 
     private DirectedGraphTranslator dgraph;
 
-    private JScrollPane scrollPane11, scrollPane12, scrollPane13;
+    private JScrollPane scrollPane11, scrollPane12;//, scrollPane13;
 
-    private GridBagLayout gridbag01;
-    private GridBagConstraints c01;
+//    private GridBagLayout gridbag01;
+//    private GridBagConstraints c01;
     private Thread t;
 
-    @SuppressWarnings("deprecation")
+//    @SuppressWarnings("deprecation")
     public JFrameLatencyDetailedAnalysis(TMLMapping<TGComponent> tmap, List<TMLComponentDesignPanel> cpanels) {
         super("Latency Detailed Analysis");
         initActions();
@@ -215,9 +199,9 @@ public class JFrameLatencyDetailedAnalysis extends JFrame implements ActionListe
 
         // mainpanel.add(jp, BorderLayout.NORTH);
 
-        GridBagLayout gridbag02 = new GridBagLayout();
+//        GridBagLayout gridbag02 = new GridBagLayout();
 
-        GridBagLayout gridbag03 = new GridBagLayout();
+//        GridBagLayout gridbag03 = new GridBagLayout();
 
         commands = new JPanel(new BorderLayout());
         commands.setBorder(new javax.swing.border.TitledBorder("load/Save"));
@@ -233,7 +217,7 @@ public class JFrameLatencyDetailedAnalysis extends JFrame implements ActionListe
 
         framePanel.add(commands, mainConstraint);
 
-        GridBagLayout gridbag05 = new GridBagLayout();
+//        GridBagLayout gridbag05 = new GridBagLayout();
 
         graphAnalysisResult = new JPanel(new BorderLayout());
         graphAnalysisResult.setBorder(new javax.swing.border.TitledBorder("Latency Detailed Analysis "));
@@ -718,7 +702,7 @@ public class JFrameLatencyDetailedAnalysis extends JFrame implements ActionListe
 
         tableData = dgraph.latencyDetailedAnalysis(task1, task2, transFile1);
 
-        DefaultTableModel model = new DefaultTableModel();
+//        DefaultTableModel model = new DefaultTableModel();
 
         table11.removeAll();
 
@@ -732,7 +716,7 @@ public class JFrameLatencyDetailedAnalysis extends JFrame implements ActionListe
                     int row = table11.getSelectedRow();
                     Thread t = new Thread() {
                         public void run() {
-                            JFrameLatencyDetailedPopup rowPopup = new JFrameLatencyDetailedPopup(dgraph, row, true);
+                           /* JFrameLatencyDetailedPopup rowPopup =*/ new JFrameLatencyDetailedPopup(dgraph, row, true);
                         }
                     };
 
@@ -747,7 +731,7 @@ public class JFrameLatencyDetailedAnalysis extends JFrame implements ActionListe
 
         tableData2 = dgraph.latencyMinMaxAnalysis(task1, task2, transFile1);
 
-        DefaultTableModel model2 = new DefaultTableModel();
+//        DefaultTableModel model2 = new DefaultTableModel();
 
         table12.removeAll();
 
@@ -760,7 +744,7 @@ public class JFrameLatencyDetailedAnalysis extends JFrame implements ActionListe
                     int row = table12.getSelectedRow();
                     Thread t = new Thread() {
                         public void run() {
-                            JFrameLatencyDetailedPopup rowPopup = new JFrameLatencyDetailedPopup(dgraph, row, false);
+                            /*JFrameLatencyDetailedPopup rowPopup = */new JFrameLatencyDetailedPopup(dgraph, row, false);
                         }
                     };
 
diff --git a/src/main/java/ui/sd/SDActionState.java b/src/main/java/ui/sd/SDActionState.java
index cca3b60da8..8e43332d97 100755
--- a/src/main/java/ui/sd/SDActionState.java
+++ b/src/main/java/ui/sd/SDActionState.java
@@ -56,8 +56,8 @@ import java.awt.*;
  */
 public class SDActionState extends TGCOneLineText implements SwallowedTGComponent {
     protected int lineLength = 5;
-    protected int textX =  5;
-    protected int textY =  15;
+//    protected int textX =  5;
+//    protected int textY =  15;
     protected int arc = 5;
     protected int w; //w1;
     
@@ -67,6 +67,9 @@ public class SDActionState extends TGCOneLineText implements SwallowedTGComponen
         width = 30;
         height = 20;
         minWidth = 30;
+        textX = 5;
+        textY = 15;
+        initScaling(30,20);
         
         nbConnectingPoint = 0;
         addTGConnectingPointsCommentMiddle();
@@ -89,7 +92,7 @@ public class SDActionState extends TGCOneLineText implements SwallowedTGComponen
         }
         g.drawRoundRect(x - width/2, y, width, height, arc, arc);
         
-        drawSingleString(g, value, x - w / 2 , y + textY);
+        drawSingleString(g, value, x - width/2 + textX , y + textY);
     }
     
     public TGComponent isOnMe(int _x, int _y) {
diff --git a/src/main/java/ui/sd2/SDActionState.java b/src/main/java/ui/sd2/SDActionState.java
index b0359d179f..86f8b378fb 100755
--- a/src/main/java/ui/sd2/SDActionState.java
+++ b/src/main/java/ui/sd2/SDActionState.java
@@ -56,19 +56,22 @@ import java.awt.*;
  */
 public class SDActionState extends TGCScalableOneLineText implements SwallowedTGComponent {
     protected int lineLength = 5;
-    protected int textX =  5;
-    protected int textY =  15;
+//    protected int textX =  5;
+//    protected int textY =  15;
     protected int arc = 5;
     protected int w; //w1;
     
     public SDActionState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 
-	width = (int)(30 * tdp.getZoom());
-        height = (int)(20 * tdp.getZoom());
-	minWidth = (int)(30 * tdp.getZoom());
-	oldScaleFactor = tdp.getZoom();
-	
+	    width = 30; //(int)(30 * tdp.getZoom());
+        height = 20; //(int)(20 * tdp.getZoom());
+	    minWidth = 30; //(int)(30 * tdp.getZoom());
+//	    oldScaleFactor = tdp.getZoom();
+	    textX = 5;
+	    textY = 15;
+	    initScaling(30, 20);
+	    
         nbConnectingPoint = 0;
         addTGConnectingPointsCommentMiddle();
         
@@ -91,7 +94,7 @@ public class SDActionState extends TGCScalableOneLineText implements SwallowedTG
         }
         g.drawRoundRect(x - width/2, y, width, height, arc, arc);
         
-        g.drawString(value, x - w / 2 , y + (int)(textY*tdp.getZoom()));
+        drawSingleString(g, value, x - width / 2 , y + textY);
     }
     
     public TGComponent isOnMe(int _x, int _y) {
diff --git a/test.txt b/test.txt
deleted file mode 100644
index d641711843..0000000000
--- a/test.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-THIS IS A TEST FILE TO SYNC GITHUB REPOSITORIES
-test
diff --git a/ttool-cli/.classpath b/ttool-cli/.classpath
new file mode 100644
index 0000000000..2dbe4b3ccb
--- /dev/null
+++ b/ttool-cli/.classpath
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
+		<attributes>
+			<attribute name="module" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="src" path="src/main/java"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/src"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/ttool-cli/.gitignore b/ttool-cli/.gitignore
new file mode 100644
index 0000000000..564a2861a7
--- /dev/null
+++ b/ttool-cli/.gitignore
@@ -0,0 +1,5 @@
+/bin/
+/*.class
+*.class
+*.gif
+ttool-cli/build/resources/
\ No newline at end of file
diff --git a/ttool-cli/.project b/ttool-cli/.project
new file mode 100644
index 0000000000..336c5c01d7
--- /dev/null
+++ b/ttool-cli/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>ttool-cli</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
-- 
GitLab