diff --git a/META-INF/MANIFEST.MF b/META-INF/MANIFEST.MF index 2a33c52..d72e919 100644 --- a/META-INF/MANIFEST.MF +++ b/META-INF/MANIFEST.MF @@ -16,3 +16,5 @@ org.eclipse.ui.ide;bundle-version="3.14.0", org.eclipse.text, org.eclipse.debug.ui;bundle-version="3.13.0" +Bundle-Activator: org.ntlab.traceDebugger.TraceDebuggerPlugin +Bundle-ActivationPolicy: lazy diff --git a/icons/debug/backresume_dlcl.png b/icons/debug/backresume_dlcl.png new file mode 100644 index 0000000..34fd6af --- /dev/null +++ b/icons/debug/backresume_dlcl.png Binary files differ diff --git a/icons/debug/backresume_elcl.png b/icons/debug/backresume_elcl.png new file mode 100644 index 0000000..42655d4 --- /dev/null +++ b/icons/debug/backresume_elcl.png Binary files differ diff --git a/icons/debug/stepbackinto_dlcl.png b/icons/debug/stepbackinto_dlcl.png new file mode 100644 index 0000000..a662a48 --- /dev/null +++ b/icons/debug/stepbackinto_dlcl.png Binary files differ diff --git a/icons/debug/stepbackinto_elcl.png b/icons/debug/stepbackinto_elcl.png new file mode 100644 index 0000000..c745a71 --- /dev/null +++ b/icons/debug/stepbackinto_elcl.png Binary files differ diff --git a/icons/debug/stepbackover_dlcl.png b/icons/debug/stepbackover_dlcl.png new file mode 100644 index 0000000..7b98085 --- /dev/null +++ b/icons/debug/stepbackover_dlcl.png Binary files differ diff --git a/icons/debug/stepbackover_elcl.png b/icons/debug/stepbackover_elcl.png new file mode 100644 index 0000000..c39dc97 --- /dev/null +++ b/icons/debug/stepbackover_elcl.png Binary files differ diff --git a/icons/debug/stepbackreturn_dlcl.png b/icons/debug/stepbackreturn_dlcl.png new file mode 100644 index 0000000..537eb0a --- /dev/null +++ b/icons/debug/stepbackreturn_dlcl.png Binary files differ diff --git a/icons/debug/stepbackreturn_elcl.png b/icons/debug/stepbackreturn_elcl.png new file mode 100644 index 0000000..7e565e6 --- /dev/null +++ b/icons/debug/stepbackreturn_elcl.png Binary files differ diff --git a/src/org/ntlab/traceDebugger/BreakPointViewRelatedReverse.java b/src/org/ntlab/traceDebugger/BreakPointViewRelatedReverse.java index affb0f7..1035202 100644 --- a/src/org/ntlab/traceDebugger/BreakPointViewRelatedReverse.java +++ b/src/org/ntlab/traceDebugger/BreakPointViewRelatedReverse.java @@ -4,6 +4,8 @@ import org.eclipse.jface.action.IAction; import org.eclipse.jface.action.IMenuManager; import org.eclipse.jface.action.IToolBarManager; +import org.eclipse.jface.resource.ImageDescriptor; +import org.eclipse.jface.resource.ImageRegistry; import org.eclipse.swt.widgets.Composite; public class BreakPointViewRelatedReverse extends BreakPointView { @@ -13,6 +15,14 @@ private IAction backResumeAction; private DebuggingController debuggingController = DebuggingController.getInstance(); public static final String ID = "org.ntlab.traceDebugger.breakPointViewRelatedReverse"; + public static final String STEP_BACK_INTO_ELCL = "StepBackInto_ELCL"; + public static final String STEP_BACK_INTO_DLCL = "StepBackInto_DLCL"; + public static final String STEP_BACK_OVER_ELCL = "StepOverInto_ELCL"; + public static final String STEP_BACK_OVER_DLCL = "StepOverInto_DLCL"; + public static final String STEP_BACK_RETURN_ELCL = "StepReturnInto_ELCL"; + public static final String STEP_BACK_RETURN_DLCL = "StepReturnInto_DLCL"; + public static final String BACK_RESUME_ELCL = "BackResume_ELCL"; + public static final String BACK_RESUME_DLCL = "BackResume_DLCL"; public BreakPointViewRelatedReverse() { // TODO Auto-generated constructor stub @@ -37,6 +47,18 @@ @Override protected void createActions() { super.createActions(); + ImageRegistry registry = TraceDebuggerPlugin.getDefault().getImageRegistry(); + backResumeAction = new Action() { + @Override + public void run() { + debuggingController.backResumeAction(); + } + }; + backResumeAction.setText("Back Resume"); + backResumeAction.setToolTipText("Back Resume"); + ImageDescriptor backResumeIcon = registry.getDescriptor(BACK_RESUME_DLCL); + backResumeAction.setImageDescriptor(backResumeIcon); + stepBackIntoAction = new Action() { @Override public void run() { @@ -45,6 +67,8 @@ }; stepBackIntoAction.setText("Step Back Into"); stepBackIntoAction.setToolTipText("Step Back Into"); + ImageDescriptor stepBackIntoIcon = registry.getDescriptor(STEP_BACK_INTO_DLCL); + stepBackIntoAction.setImageDescriptor(stepBackIntoIcon); stepBackOverAction = new Action() { @Override @@ -54,7 +78,9 @@ }; stepBackOverAction.setText("Step Back Over"); stepBackOverAction.setToolTipText("Step Back Over"); - + ImageDescriptor stepBackOverIcon = registry.getDescriptor(STEP_BACK_OVER_DLCL); + stepBackOverAction.setImageDescriptor(stepBackOverIcon); + stepBackReturnAction = new Action() { @Override public void run() { @@ -63,34 +89,52 @@ }; stepBackReturnAction.setText("Step Back Return"); stepBackReturnAction.setToolTipText("Step Back Return"); - - backResumeAction = new Action() { - @Override - public void run() { - debuggingController.backResumeAction(); - } - }; - backResumeAction.setText("Back Resume"); - backResumeAction.setToolTipText("Back Resume"); + ImageDescriptor stepBackReturnIcon = registry.getDescriptor(STEP_BACK_RETURN_DLCL); + stepBackReturnAction.setImageDescriptor(stepBackReturnIcon); } @Override protected void createToolBar() { super.createToolBar(); IToolBarManager mgr = getViewSite().getActionBars().getToolBarManager(); + mgr.add(backResumeAction); mgr.add(stepBackIntoAction); mgr.add(stepBackOverAction); mgr.add(stepBackReturnAction); - mgr.add(backResumeAction); } @Override protected void createMenuBar() { super.createMenuBar(); IMenuManager mgr = getViewSite().getActionBars().getMenuManager(); + mgr.add(backResumeAction); mgr.add(stepBackIntoAction); mgr.add(stepBackOverAction); mgr.add(stepBackReturnAction); - mgr.add(backResumeAction); - } + } + + @Override + public void updateImages(boolean isRunning) { + super.updateImages(isRunning); + ImageRegistry registry = TraceDebuggerPlugin.getDefault().getImageRegistry(); + if (isRunning) { + ImageDescriptor stepBackIntoImage = registry.getDescriptor(STEP_BACK_INTO_ELCL); + stepBackIntoAction.setImageDescriptor(stepBackIntoImage); + ImageDescriptor stepBackOverImage = registry.getDescriptor(STEP_BACK_OVER_ELCL); + stepBackOverAction.setImageDescriptor(stepBackOverImage); + ImageDescriptor stepBackReturnImage = registry.getDescriptor(STEP_BACK_RETURN_ELCL); + stepBackReturnAction.setImageDescriptor(stepBackReturnImage); + ImageDescriptor backResumeImage = registry.getDescriptor(BACK_RESUME_ELCL); + backResumeAction.setImageDescriptor(backResumeImage); + } else { + ImageDescriptor stepBackIntoImage = registry.getDescriptor(STEP_BACK_INTO_DLCL); + stepBackIntoAction.setImageDescriptor(stepBackIntoImage); + ImageDescriptor stepBackOverImage = registry.getDescriptor(STEP_BACK_OVER_DLCL); + stepBackOverAction.setImageDescriptor(stepBackOverImage); + ImageDescriptor stepBackReturnImage = registry.getDescriptor(STEP_BACK_RETURN_DLCL); + stepBackReturnAction.setImageDescriptor(stepBackReturnImage); + ImageDescriptor backResumeImage = registry.getDescriptor(BACK_RESUME_DLCL); + backResumeAction.setImageDescriptor(backResumeImage); + } + } } diff --git a/src/org/ntlab/traceDebugger/TraceDebuggerPlugin.java b/src/org/ntlab/traceDebugger/TraceDebuggerPlugin.java index 4b47a78..a83fe1e 100644 --- a/src/org/ntlab/traceDebugger/TraceDebuggerPlugin.java +++ b/src/org/ntlab/traceDebugger/TraceDebuggerPlugin.java @@ -5,6 +5,8 @@ import java.util.Map; import java.util.Set; +import org.eclipse.jface.resource.ImageDescriptor; +import org.eclipse.jface.resource.ImageRegistry; import org.eclipse.ui.IViewPart; import org.eclipse.ui.IWorkbenchPage; import org.eclipse.ui.PartInitException; @@ -19,7 +21,7 @@ public class TraceDebuggerPlugin extends AbstractUIPlugin { // The plug-in ID - public static final String PLUGIN_ID = "org.ntlab.helloWorld"; //$NON-NLS-1$ + public static final String PLUGIN_ID = "org.ntlab.traceDebugger"; //$NON-NLS-1$ private static AbstractAnalyzer analyzer; @@ -107,5 +109,21 @@ } catch (PartInitException e) { throw new RuntimeException(e); } - } + } + + @Override + protected void initializeImageRegistry(ImageRegistry reg) { + reg.put(BreakPointViewRelatedReverse.STEP_BACK_INTO_ELCL, getImageDescriptor("/icons/debug/stepbackinto_elcl.png")); + reg.put(BreakPointViewRelatedReverse.STEP_BACK_INTO_DLCL, getImageDescriptor("/icons/debug/stepbackinto_dlcl.png")); + reg.put(BreakPointViewRelatedReverse.STEP_BACK_OVER_ELCL, getImageDescriptor("/icons/debug/stepbackover_elcl.png")); + reg.put(BreakPointViewRelatedReverse.STEP_BACK_OVER_DLCL, getImageDescriptor("/icons/debug/stepbackover_dlcl.png")); + reg.put(BreakPointViewRelatedReverse.STEP_BACK_RETURN_ELCL, getImageDescriptor("/icons/debug/stepbackreturn_elcl.png")); + reg.put(BreakPointViewRelatedReverse.STEP_BACK_RETURN_DLCL, getImageDescriptor("/icons/debug/stepbackreturn_dlcl.png")); + reg.put(BreakPointViewRelatedReverse.BACK_RESUME_ELCL, getImageDescriptor("/icons/debug/backresume_elcl.png")); + reg.put(BreakPointViewRelatedReverse.BACK_RESUME_DLCL, getImageDescriptor("/icons/debug/backresume_dlcl.png")); + } + + public static ImageDescriptor getImageDescriptor(String path) { + return imageDescriptorFromPlugin(PLUGIN_ID, path); + } }