diff --git a/src/main/java/ui/ADDPanel.java b/src/main/java/ui/ADDPanel.java index b1a8807ada92f609da111fe110f3e093076c5f43..91e1670d911af03571c33f75598a7dac87704a58 100755 --- a/src/main/java/ui/ADDPanel.java +++ b/src/main/java/ui/ADDPanel.java @@ -83,7 +83,6 @@ public class ADDPanel extends TURTLEPanel { public void init() { addDeploymentPanelDiagram("Deployment Diagram"); - } public boolean addDeploymentPanelDiagram(String s) { @@ -95,7 +94,7 @@ public class ADDPanel extends TURTLEPanel { //Class diagram tmladd = new ADDDiagramPanel(mgui, toolBar); - tmladd.setName("Deployment Diagram"); + tmladd.setName(s); tmladd.tp = this; tdp = tmladd; panels.add(tmladd); // Always first in list @@ -105,7 +104,7 @@ public class ADDPanel extends TURTLEPanel { jsp.getVerticalScrollBar().setUnitIncrement(MainGUI.INCREMENT); toolBarPanel.add(toolBar, BorderLayout.NORTH); toolBarPanel.add(jsp, BorderLayout.CENTER); - tabbedPane.addTab("Deployment Diagram", IconManager.imgic60, toolBarPanel, "Opens deployment diagram"); + tabbedPane.addTab(s, IconManager.imgic60, toolBarPanel, "Opens deployment diagram"); tabbedPane.setSelectedIndex(0); return true; @@ -133,3 +132,4 @@ public class ADDPanel extends TURTLEPanel { } } + diff --git a/src/main/java/ui/GTURTLEModeling.java b/src/main/java/ui/GTURTLEModeling.java index fe8ca4ed11865dc5255ea0eff45239ce7ee8f151..12d9dc35d311e597dcc7773235038ea03217ae3a 100644 --- a/src/main/java/ui/GTURTLEModeling.java +++ b/src/main/java/ui/GTURTLEModeling.java @@ -5481,6 +5481,7 @@ public class GTURTLEModeling { String nameTab; NodeList diagramNl; int indexDesign; + int indexTab = 0; nameTab = elt.getAttribute("nameTab"); @@ -5496,7 +5497,8 @@ public class GTURTLEModeling { if (elt.getTagName().compareTo("SysCAMSComponentTaskDiagramPanel") == 0) { // Class diagram TraceManager.addDev("Loading SystemC-AMS"); - loadSysCAMSDiagram(elt, indexDesign); + loadSysCAMSDiagram(elt, indexDesign, indexTab); + indexTab++; TraceManager.addDev("End loading SystemC-AMS"); } } @@ -6030,15 +6032,18 @@ public class GTURTLEModeling { loadDiagram(elt, tdp); } - public void loadSysCAMSDiagram(Element elt, int indexDesign) throws MalformedModelingException, SAXException { - String name; - TDiagramPanel tdp; + public void loadSysCAMSDiagram(Element elt, int indexDesign, int indexTab) throws MalformedModelingException, SAXException { + String name; - // class diagram name name = elt.getAttribute("name"); - mgui.setSysCAMSComponentTaskDiagramName(indexDesign, name); - tdp = mgui.getMainTDiagramPanel(indexDesign); - tdp.setName(name); + mgui.createSysCAMS(indexDesign, name); + + TDiagramPanel tdp = mgui.getSysCAMSPanel(indexDesign, indexTab, name); + + if (tdp == null) { + throw new MalformedModelingException(); + } + tdp.removeAll(); loadDiagram(elt, tdp); } @@ -8572,3 +8577,4 @@ public class GTURTLEModeling { } } + diff --git a/src/main/java/ui/MainGUI.java b/src/main/java/ui/MainGUI.java index f0bee610bd15e5ffe247e28d4cafc47fc3c54be7..166d17d3c2cb708fef19f6b86f3eb11c6dd68306 100644 --- a/src/main/java/ui/MainGUI.java +++ b/src/main/java/ui/MainGUI.java @@ -377,7 +377,10 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per return avatarOn; } - + public boolean isSystemcOn() { + return systemcOn; + } + public void build() { // Swing look and feel @@ -6367,7 +6370,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per return ((TMLComponentDesignPanel) (tp)).tmlctdp.getCompositeComponentByName(componentName); } - public SysCAMSCompositeComponent getSysCAMSCompositeComponent(String name) { + public SysCAMSCompositeComponent getSysCAMSCompositeComponent(String name) { int index = name.indexOf("::"); if (index == -1) { return null; @@ -6385,6 +6388,18 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per return ((SysCAMSComponentDesignPanel) (tp)).syscamsctdp.getCompositeComponentByName(componentName); } + public SysCAMSComponentTaskDiagramPanel getSysCAMSPanel(int indexDesign, String name) { + + TURTLEPanel tp = tabs.elementAt(indexDesign); + if (tp == null) { + return null; + } + if (tp instanceof SysCAMSComponentDesignPanel) { + return ((SysCAMSComponentDesignPanel) tp).getSysCAMSPanel(name); + } + return null; + } + public AvatarSMDPanel getAvatarSMDPanel(int indexDesign, String name) { @@ -7200,7 +7215,20 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per setPanelMode(); return true; } + + public boolean createSysCAMS(int index, String s) { + return createSysCAMS(tabs.elementAt(index), s); + } + public boolean createSysCAMS(TURTLEPanel tp, String s) { + if (!(tp instanceof SysCAMSComponentDesignPanel)) { + return false; + } + + ((SysCAMSComponentDesignPanel) tp).addSysCAMS(s); + setPanelMode(); + return true; + } public boolean isRequirementCreated(int index, String s) { return isRequirementCreated(tabs.elementAt(index), s); @@ -7302,7 +7330,18 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per } - + public SysCAMSComponentTaskDiagramPanel getSysCAMSPanel(int index, int indexTab, String s) { + TURTLEPanel tp = tabs.elementAt(index); + return getSysCAMSPanel(tp, indexTab, s); + } + + public SysCAMSComponentTaskDiagramPanel getSysCAMSPanel(TURTLEPanel tp, int indexTab, String s) { + if (tp.tabbedPane.getTitleAt(indexTab).equals(s)) { + return (SysCAMSComponentTaskDiagramPanel) (tp.panelAt(indexTab)); + } + return null; + } + public AvatarRDPanel getAvatarRDPanel(int index, int indexTab, String s) { TURTLEPanel tp = tabs.elementAt(index); return getAvatarRDPanel(tp, indexTab, s); @@ -8450,16 +8489,16 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per } //--------------------end DDD------------------------------------------------ - public SysCAMSComponentTaskDiagramPanel getSysCAMSPanel() { - SysCAMSComponentTaskDiagramPanel syscamsDiagram = null; - TURTLEPanel tp = getCurrentTURTLEPanel(); + public Vector<SysCAMSComponentTaskDiagramPanel> getListSysCAMSPanel() { + Vector<SysCAMSComponentTaskDiagramPanel> syscamsDiagram = new Vector<SysCAMSComponentTaskDiagramPanel>(); + TURTLEPanel tp = getTURTLEPanel("SystemC_AMS"); Vector<TDiagramPanel> ps = tp.panels; for (TDiagramPanel panel : ps) { if (panel instanceof SysCAMSComponentTaskDiagramPanel) { - syscamsDiagram = (SysCAMSComponentTaskDiagramPanel) panel; + syscamsDiagram.add((SysCAMSComponentTaskDiagramPanel) panel); } } - if (syscamsDiagram == null) + if (syscamsDiagram.size() == 0) System.err.println("No SysCAMS Panel found : MainGUI.getSysCAMSPanel()"); return syscamsDiagram; } @@ -9371,3 +9410,4 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per return tmlap; } } // Class MainGUI + diff --git a/src/main/java/ui/SysCAMSComponentDesignPanel.java b/src/main/java/ui/SysCAMSComponentDesignPanel.java index 63fca251572cb68ce2eb018d2334a366b6bf2e1e..611fec7a7d35649a820bf9e5388e1184a6e94373 100644 --- a/src/main/java/ui/SysCAMSComponentDesignPanel.java +++ b/src/main/java/ui/SysCAMSComponentDesignPanel.java @@ -67,12 +67,9 @@ public class SysCAMSComponentDesignPanel extends TURTLEPanel { public SysCAMSComponentDesignPanel(MainGUI _mgui) { super(_mgui); - // Issue #41 Ordering of tabbed panes - tabbedPane = GraphicLib.createTabbedPane();// new JTabbedPane(); + tabbedPane = GraphicLib.createTabbedPane(); cl = new ChangeListener() { - - @Override public void stateChanged(ChangeEvent e) { mgui.paneDesignAction(e); } @@ -81,38 +78,13 @@ public class SysCAMSComponentDesignPanel extends TURTLEPanel { tabbedPane.addChangeListener(cl); tabbedPane.addMouseListener(new TURTLEPanelPopupListener(this, mgui)); - // Issue #41: Ordering of tabbed panes tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT); } public void init() { - - // Toolbar - SysCAMSComponentTaskDiagramToolBar toolBarSysCAMS = new SysCAMSComponentTaskDiagramToolBar(mgui); - toolbars.add(toolBarSysCAMS); - - toolBarPanel = new JPanel(); - toolBarPanel.setLayout(new BorderLayout()); - - // Diagram - syscamsctdp = new SysCAMSComponentTaskDiagramPanel(mgui, toolBarSysCAMS); - syscamsctdp.setName("SystemC-AMS Component Diagram"); - syscamsctdp.tp = this; - tdp = syscamsctdp; - panels.add(syscamsctdp); // Always first in list - JScrollDiagramPanel jsp = new JScrollDiagramPanel(syscamsctdp); - syscamsctdp.jsp = jsp; - jsp.setWheelScrollingEnabled(true); - jsp.getVerticalScrollBar().setUnitIncrement(MainGUI.INCREMENT); - toolBarPanel.add(toolBarSysCAMS, BorderLayout.NORTH); - toolBarPanel.add(jsp, BorderLayout.CENTER); - tabbedPane.addTab("SystemC-AMS Component Diagram", IconManager.imgic1208, toolBarPanel, - "Opens SysCAMS component diagram"); - tabbedPane.setSelectedIndex(0); - mgui.changeMade(syscamsctdp, TDiagramPanel.NEW_COMPONENT); } - + public String saveHeaderInXml(String extensionToName) { if (extensionToName == null) { return "<Modeling type=\"SystemC-AMS\" nameTab=\"" + mgui.getTabName(this) + "\" >\n"; @@ -135,35 +107,11 @@ public class SysCAMSComponentDesignPanel extends TURTLEPanel { public SysCAMSBlockDE getBlockDEComponentByName(String _name) { return syscamsctdp.getBlockDEComponentByName(_name); } - // - // public String[] getCompOutChannels(){ - // return syscamsctdp.getCompOutChannels(); - // } - // - // public String[] getCompInChannels(){ - // return syscamsctdp.getCompInChannels(); - // } - // - // public java.util.List<String> getAllSysCAMSCommunicationNames(String _name) { - // return syscamsctdp.getAllSysCAMSCommunicationNames(_name); - // } - // - // public java.util.List<String> getAllSysCAMSInputPorts( String _name ) { - // return syscamsctdp.getAllSysCAMSInputPorts( _name ); - // } public java.util.List<String> getAllCompositeComponent(String _name) { return syscamsctdp.getAllCompositeComponent(_name); } - public Vector<String> getAllSysCAMSTasksAttributes() { - return syscamsctdp.getAllSysCAMSTasksAttributes(); - } - - public java.util.List<String> getAllSysCAMSTaskNames(String _name) { - return syscamsctdp.getAllSysCAMSTaskNames(_name); - } - public String[] getAllOutTDF(String nameOfComponent) { return syscamsctdp.getAllOutTDF(nameOfComponent); } @@ -179,4 +127,36 @@ public class SysCAMSComponentDesignPanel extends TURTLEPanel { public String[] getAllInDE(String nameOfComponent) { return syscamsctdp.getAllInDE(nameOfComponent); } + + public boolean isSystemCAMSEnabled() { + return true; + } + + public boolean addSysCAMS(String s) { + SysCAMSComponentTaskDiagramToolBar ardtb = new SysCAMSComponentTaskDiagramToolBar(mgui); + toolbars.add(ardtb); + + toolBarPanel = new JPanel(); + toolBarPanel.setLayout(new BorderLayout()); + + //Class diagram + syscamsctdp = new SysCAMSComponentTaskDiagramPanel(mgui, ardtb); + syscamsctdp.setName(s); + syscamsctdp.tp = this; + tdp = syscamsctdp; + panels.add(syscamsctdp); + JScrollDiagramPanel jsp = new JScrollDiagramPanel(syscamsctdp); + syscamsctdp.jsp = jsp; + jsp.setWheelScrollingEnabled(true); + jsp.getVerticalScrollBar().setUnitIncrement( MainGUI.INCREMENT); + toolBarPanel.add(ardtb, BorderLayout.NORTH); + toolBarPanel.add(jsp, BorderLayout.CENTER); + tabbedPane.addTab(s, IconManager.imgic84, toolBarPanel, "Opens SysCAMS component diagram"); + tabbedPane.setSelectedIndex(0); + JPanel toolBarPanel = new JPanel(); + toolBarPanel.setLayout(new BorderLayout()); + + return true; + } } + diff --git a/src/main/java/ui/TURTLEPanel.java b/src/main/java/ui/TURTLEPanel.java index 8665d9bba1345ce7a9598b6a72bd74ebb0cfc7a8..809d2517bec6167f4d485dac935878263f265654 100755 --- a/src/main/java/ui/TURTLEPanel.java +++ b/src/main/java/ui/TURTLEPanel.java @@ -364,6 +364,10 @@ public abstract class TURTLEPanel implements GenericTree { return false; } + public boolean isSystemCAMSEnabled() { + return false; + } + public MainGUI getMainGUI() { return mgui; } @@ -421,3 +425,4 @@ public abstract class TURTLEPanel implements GenericTree { } } + diff --git a/src/main/java/ui/TURTLEPanelPopupListener.java b/src/main/java/ui/TURTLEPanelPopupListener.java index 31058db5c3bc969004eab97f4c9f0fdd4f1fc4a3..03d4cda224813aabef158024df2dafd4a8c65738 100755 --- a/src/main/java/ui/TURTLEPanelPopupListener.java +++ b/src/main/java/ui/TURTLEPanelPopupListener.java @@ -65,7 +65,7 @@ public class TURTLEPanelPopupListener extends MouseAdapter /* popup menus onto t protected MainGUI mgui; private JMenuItem rename, remove, moveRight, moveLeft, sort, newucd, newsd, newsdzv, newsdfromucd, newreq, - newebrdd, newprosmd, newavatarrd, newavatarpd, newavatarcd, newavatarad, newavatarmad; + newebrdd, newprosmd, newavatarrd, newavatarpd, newavatarcd, newavatarad, newavatarmad, newsyscams; private JMenuItem newatd, newftd; public TURTLEPanelPopupListener(TURTLEPanel _tp, MainGUI _mgui) { @@ -120,6 +120,7 @@ public class TURTLEPanelPopupListener extends MouseAdapter /* popup menus onto t newavatarcd = createMenuItem("New Context Diagram"); newavatarad = createMenuItem("New Activity Diagram"); newavatarmad = createMenuItem("New AVATAR Modeling Assumptions Diagram"); + newsyscams = createMenuItem("New SystemC-AMS Diagram"); menu = new JPopupMenu("TURTLE panel"); menu.add(moveLeft); @@ -153,6 +154,10 @@ public class TURTLEPanelPopupListener extends MouseAdapter /* popup menus onto t menu.add(newavatarrd); menu.add(newavatarpd); } + if (mgui.isSystemcOn()) { + menu.addSeparator(); + menu.add(newsyscams); + } } private JMenuItem createMenuItem(String s) { @@ -215,6 +220,7 @@ public class TURTLEPanelPopupListener extends MouseAdapter /* popup menus onto t newavatarcd.setEnabled(tp.isAvatarCDEnabled()); newavatarad.setEnabled(tp.isAvatarADEnabled()); newavatarmad.setEnabled(tp.isAvatarMADEnabled()); + newsyscams.setEnabled(tp.isSystemCAMSEnabled()); } private Action listener = new AbstractAction() { @@ -276,7 +282,11 @@ public class TURTLEPanelPopupListener extends MouseAdapter /* popup menus onto t } else if (e.getSource() == newavatarmad) { mgui.createAvatarMAD(tp, "Modeling Assumptions Diagram"); mgui.changeMade(null, -1); + } else if (e.getSource() == newsyscams) { + mgui.createSysCAMS(tp, "SystemC-AMS Component Diagram"); + mgui.changeMade(null, -1); } } }; } + diff --git a/src/main/java/ui/avatardd/ADDMemoryNode.java b/src/main/java/ui/avatardd/ADDMemoryNode.java index 422548abc22f5bea90682fa6c615ecf91a70d9ab..574cc180a177cf171be8f4633f894706e810b604 100755 --- a/src/main/java/ui/avatardd/ADDMemoryNode.java +++ b/src/main/java/ui/avatardd/ADDMemoryNode.java @@ -56,8 +56,6 @@ import java.awt.*; * Creation: 21/08/2014 * @version 1.0 21/08/2014 * @author Ludovic APVRILLE - * @version 1.1 18/06/2018 (Add processCode) - * @author Irina Kit Yan LEE */ public abstract class ADDMemoryNode extends ADDCommunicationNode implements WithAttributes { @@ -313,4 +311,4 @@ public abstract class ADDMemoryNode extends ADDCommunicationNode implements With public void setProcessCode(String _processCode) { processCode = _processCode; } -} \ No newline at end of file +} diff --git a/src/main/java/ui/window/JDialogADDMemoryNode.java b/src/main/java/ui/window/JDialogADDMemoryNode.java index cfb5b1603777ae94a720e2575e6dfc6fedf39f17..28108c461f7417fa464ae672260728270c9388dc 100755 --- a/src/main/java/ui/window/JDialogADDMemoryNode.java +++ b/src/main/java/ui/window/JDialogADDMemoryNode.java @@ -53,8 +53,6 @@ import java.awt.event.ActionListener; * Creation: 21/08/2014 * @version 1.0 21/08/2014 * @author Ludovic APVRILLE - * @version 1.1 18/06/2018 (Add processCode) - * @author Irina Kit Yan LEE */ public class JDialogADDMemoryNode extends JDialogBase implements ActionListener { @@ -340,4 +338,4 @@ public class JDialogADDMemoryNode extends JDialogBase implements ActionListener return tracemode.getSelectedIndex(); //return monitored.getText(); } -} \ No newline at end of file +}