diff --git a/src/ui/IconManager.java b/src/ui/IconManager.java index 8684fcb114f1a25995143957f5d34f756792e1dd..080f3d2fa685ea2edb3b693aa43aed1410aedad2 100755 --- a/src/ui/IconManager.java +++ b/src/ui/IconManager.java @@ -115,6 +115,9 @@ public class IconManager { public static ImageIcon imgic1200, imgic1202, imgic1204, imgic1206, imgic1208; public static ImageIcon imgic1300, imgic1302, imgic1304, imgic1306, imgic1308; public static ImageIcon imgic1310, imgic1312, imgic1314, imgic1316, imgic1318; + public static ImageIcon imgic1320, imgic1322, imgic1324; + + // SMD diagram public static ImageIcon imgic2000, imgic2002, imgic2004,imgic2006,imgic2008,imgic2010, imgic2012; @@ -410,8 +413,11 @@ public class IconManager { private static String icon1310 = "images/savevcd24.gif"; private static String icon1312 = "images/savehtml24.gif"; private static String icon1314 = "images/savetxt24.gif"; - //private static String icon1316 = "images/savestate24.gif"; - //private static String icon1318 = "images/restorestate24.gif"; + private static String icon1316 = "images/steptobus.gif"; + private static String icon1318 = "images/steptotask.gif"; + private static String icon1320 = "images/steptocpu.gif"; + private static String icon1322 = "images/steptomem.gif"; + private static String icon1324 = "images/steptochan.gif"; // SMD diagrams private static String icon2000 = "images/prosmdsendmsg.gif"; @@ -701,8 +707,11 @@ public class IconManager { imgic1310 = getIcon(icon1310); imgic1312 = getIcon(icon1312); imgic1314 = getIcon(icon1314); - //imgic1316 = getIcon(icon1316); - //imgic1318 = getIcon(icon1318); + imgic1316 = getIcon(icon1316); + imgic1318 = getIcon(icon1318); + imgic1320 = getIcon(icon1320); + imgic1322 = getIcon(icon1322); + imgic1324 = getIcon(icon1324); imgic2000 = getIcon(icon2000); imgic2002 = getIcon(icon2002); diff --git a/src/ui/MainGUI.java b/src/ui/MainGUI.java index ff370dbb43a18a13abacd6219d5d60ad3c4f2416..154a9d11dfa9f51a7cf2c25c76ab4c1a8503c961 100755 --- a/src/ui/MainGUI.java +++ b/src/ui/MainGUI.java @@ -4926,7 +4926,10 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener { public void setDiploIDs(boolean b) { TDiagramPanel.DIPLO_ID_ON = b; - getCurrentTDiagramPanel().repaint(); + TDiagramPanel tdp = getCurrentTDiagramPanel(); + if (tdp != null) { + tdp.repaint(); + } } public synchronized boolean isRunningID(int id) { @@ -4948,7 +4951,10 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener { runningIDs.clear(); } runningIDs = null; - getCurrentTDiagramPanel().repaint(); + TDiagramPanel tdp = getCurrentTDiagramPanel(); + if (tdp != null) { + tdp.repaint(); + } } public synchronized void addRunningID(Integer id) { diff --git a/src/ui/interactivesimulation/InteractiveSimulationActions.java b/src/ui/interactivesimulation/InteractiveSimulationActions.java index 37cf751d08739a01086f9ffc1ee5fd82ff9a3971..607dccda49a4c9749433e3ef877ff6dbd8c8a796 100755 --- a/src/ui/interactivesimulation/InteractiveSimulationActions.java +++ b/src/ui/interactivesimulation/InteractiveSimulationActions.java @@ -138,11 +138,11 @@ public class InteractiveSimulationActions extends AbstractAction { actions[ACT_RUN_X_COMMANDS] = new TAction("run-x-commands", "Run x commands", IconManager.imgic1308, IconManager.imgic1308, "Run x commands", "Run simulation for x commands. Works only if the simulator is \"ready\"", 'R'); actions[ACT_RUN_EXPLORATION] = new TAction("run-exploration", "Run exploration", IconManager.imgic1308, IconManager.imgic1308, "Run exploration", "Explore branches of the simulation", 'R'); - actions[ACT_RUN_TO_NEXT_BUS_TRANSFER] = new TAction("run-until-bus-transfer", "Run until bus transfer", IconManager.imgic1308, IconManager.imgic1308, "Run until transfer on bus", "Run until a transfer on the indicated bus is performed. Works only if the simulator is \"ready\"", 'R'); - actions[ACT_RUN_UNTIL_CPU_EXECUTES] = new TAction("run-to-cpu", "Run until CPU executes", IconManager.imgic1308, IconManager.imgic1308, "Run until CPU executes", "Run until a CPU, given as parameter, executes. Works only if the simulator is \"ready\"", 'R'); - actions[ACT_RUN_UNTIL_TASK_EXECUTES] = new TAction("run-to-task", "Run until a task executes", IconManager.imgic1308, IconManager.imgic1308, "Run until a task executes", "Run until a task executes. Works only if the simulator is \"ready\"", 'R'); - actions[ACT_RUN_UNTIL_MEMORY_ACCESS] = new TAction("run-to-memory-accessd", "Run until a memory access is performed", IconManager.imgic1308, IconManager.imgic1308, "Run until a memory access is performed", "Run simulation until a memory access is performed on selected memory. Works only if the simulator is \"ready\"", 'R'); - actions[ACT_RUN_UNTIL_CHANNEL_ACCESS] = new TAction("run--to-channel-access", "Run until a channel is accessed", IconManager.imgic1308, IconManager.imgic1308, "Run until a channel is accessed", "Run until a channel is accessed. Works only if the simulator is \"ready\"", 'R'); + actions[ACT_RUN_TO_NEXT_BUS_TRANSFER] = new TAction("run-until-bus-transfer", "Run until bus transfer", IconManager.imgic1316, IconManager.imgic1316, "Run until transfer on bus", "Run until a transfer on the indicated bus is performed. Works only if the simulator is \"ready\"", 'R'); + actions[ACT_RUN_UNTIL_CPU_EXECUTES] = new TAction("run-to-cpu", "Run until CPU executes", IconManager.imgic1320, IconManager.imgic1320, "Run until CPU executes", "Run until a CPU, given as parameter, executes. Works only if the simulator is \"ready\"", 'R'); + actions[ACT_RUN_UNTIL_TASK_EXECUTES] = new TAction("run-to-task", "Run until a task executes", IconManager.imgic1318, IconManager.imgic1318, "Run until a task executes", "Run until a task executes. Works only if the simulator is \"ready\"", 'R'); + actions[ACT_RUN_UNTIL_MEMORY_ACCESS] = new TAction("run-to-memory-accessd", "Run until a memory access is performed", IconManager.imgic1322, IconManager.imgic1322, "Run until a memory access is performed", "Run simulation until a memory access is performed on selected memory. Works only if the simulator is \"ready\"", 'R'); + actions[ACT_RUN_UNTIL_CHANNEL_ACCESS] = new TAction("run--to-channel-access", "Run until a channel is accessed", IconManager.imgic1324, IconManager.imgic1324, "Run until a channel is accessed", "Run until a channel is accessed. Works only if the simulator is \"ready\"", 'R'); actions[ACT_SAVE_VCD] = new TAction("save-vcd", "Save trace in VCD format", IconManager.imgic1310, IconManager.imgic1310, "Save trace in VCD format", "Save trace in VCD format", 'R'); actions[ACT_SAVE_HTML] = new TAction("save-html", "Save trace in HTML format", IconManager.imgic1312, IconManager.imgic1312, "Save trace in HTML format", "Save trace in HTML format", 'R'); diff --git a/src/ui/interactivesimulation/MainCommandsToolBar.java b/src/ui/interactivesimulation/MainCommandsToolBar.java index ca4cefac1d254167c154ef4eaabaa8b1d7eabb17..b5bedc78b6211564209fa38224bcaa1aaf4aae97 100755 --- a/src/ui/interactivesimulation/MainCommandsToolBar.java +++ b/src/ui/interactivesimulation/MainCommandsToolBar.java @@ -112,18 +112,20 @@ public class MainCommandsToolBar extends InteractiveSimulationBar { this.addSeparator(); - button = this.add(jfis.actions[InteractiveSimulationActions.ACT_RUN_TO_NEXT_BUS_TRANSFER]); - button.addMouseListener(jfis.mouseHandler); - button = this.add(jfis.actions[InteractiveSimulationActions.ACT_RUN_UNTIL_CPU_EXECUTES]); button.addMouseListener(jfis.mouseHandler); - button = this.add(jfis.actions[InteractiveSimulationActions.ACT_RUN_UNTIL_TASK_EXECUTES]); + button = this.add(jfis.actions[InteractiveSimulationActions.ACT_RUN_TO_NEXT_BUS_TRANSFER]); button.addMouseListener(jfis.mouseHandler); button = this.add(jfis.actions[InteractiveSimulationActions.ACT_RUN_UNTIL_MEMORY_ACCESS]); button.addMouseListener(jfis.mouseHandler); + this.addSeparator(); + + button = this.add(jfis.actions[InteractiveSimulationActions.ACT_RUN_UNTIL_TASK_EXECUTES]); + button.addMouseListener(jfis.mouseHandler); + button = this.add(jfis.actions[InteractiveSimulationActions.ACT_RUN_UNTIL_CHANNEL_ACCESS]); button.addMouseListener(jfis.mouseHandler);