Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 167609 | Differences between
and this patch

Collapse All | Expand All

(-)plugin.properties (-8 / +10 lines)
Lines 15-30 Link Here
15
pluginName = TPTP Trace JVMTI Client
15
pluginName = TPTP Trace JVMTI Client
16
providerName = Eclipse.org
16
providerName = Eclipse.org
17
17
18
JVMTI_ANALYSIS_TYPE_DESCRIPTION_TYPE    = Execution Time Analysis
18
JVMTI_ANALYSIS_TYPE_DESCRIPTION_EXEC    = Execution Time Analysis (JVMTI)
19
JVMTI_ANALYSIS_TYPE_DESCRIPTION_THRD    = Thread Statistics
20
JVMTI_ANALYSIS_TYPE_DESCRIPTION_HEAP    = Memory Statistics
19
JVMTI_ANALYSIS_TYPE_VIEW_FLOW			= Execution Flow
21
JVMTI_ANALYSIS_TYPE_VIEW_FLOW			= Execution Flow
20
JVMTI_ANALYSIS_TYPE_VIEW_STATISTICS		= Execution Statistics
22
JVMTI_ANALYSIS_TYPE_VIEW_STATISTICS		= Execution Statistics
21
JVMTI_ANALYSIS_TYPE_VIEW_UML_THREAD		= UML2 Thread Interactions
23
JVMTI_ANALYSIS_TYPE_VIEW_UML_THREAD		= UML2 Thread Interactions
22
JVMTI_ANALYSIS_TYPE_VIEW_UML_OBJECT		= UML2 Object Interactions
24
JVMTI_ANALYSIS_TYPE_VIEW_UML_OBJECT		= UML2 Object Interactions
23
JVMTI_ANALYSIS_TYPE_VIEW_UML_CLASS		= UML2 Class Interactions
25
JVMTI_ANALYSIS_TYPE_VIEW_UML_CLASS		= UML2 Class Interactions
24
JVMTI_ANALYSIS_TYPE_THRD_DESCRIPTION_TYPE = Thread Statistics
26
JVMTI_ANALYSIS_TYPE_VIEW_THRD           = Thread Statistics
25
JVMTI_ANALYSIS_TYPE_HEAP_DESCRIPTION_TYPE = Memory Statistics
27
JVMTI_ANALYSIS_TYPE_VIEW_THRD_STATES    = Thread States
26
JVMTI_ANALYSIS_TYPE_THREAD_STATES_DESCRIPTION_TYPE = Thread States
28
JVMTI_ANALYSIS_TYPE_VIEW_CALL_STACK     = Call Stack
27
JVMTI_ANALYSIS_TYPE_CALL_STACK_DESCRIPTION_TYPE = Call Stack
29
JVMTI_ANALYSIS_TYPE_VIEW_HEAP           = Memory Statistics
28
JVMTI_ANALYSIS_TYPE_THRD_TOOLTIP        = Open Thread Statistics
30
JVMTI_ANALYSIS_TYPE_TOOLTIP_THRD        = Open Thread Statistics
29
JVMTI_ANALYSIS_TYPE_THREAD_STATES_TOOLTIP = Open Thread States
31
JVMTI_ANALYSIS_TYPE_TOOLTIP_THRD_STATES = Open Thread States
30
JVMTI_ANALYSIS_TYPE_CALL_STACK_TOOLTIP  = Open Call Stack
32
JVMTI_ANALYSIS_TYPE_TOOLTIP_CALL_STACK  = Open Call Stack
(-)build.properties (-2 / +3 lines)
Lines 1-11 Link Here
1
bin.includes = .,\
1
bin.includes = .,\
2
			   about.html,\
2
               about.html,\
3
               META-INF/,\
3
               META-INF/,\
4
               plugin.properties,\
4
               plugin.properties,\
5
               plugin.xml,\
5
               plugin.xml,\
6
               about.ini,\
6
               about.ini,\
7
               about.mappings,\
7
               about.mappings,\
8
               about.properties
8
               about.properties,\
9
               icons/
9
jars.compile.order = .
10
jars.compile.order = .
10
source.. = src/
11
source.. = src/
11
output.. = bin/
12
output.. = bin/
(-)plugin.xml (-16 / +22 lines)
Lines 5-11 Link Here
5
	<extension
5
	<extension
6
		point="org.eclipse.hyades.ui.typeDescriptions">
6
		point="org.eclipse.hyades.ui.typeDescriptions">
7
		<typeDescription
7
		<typeDescription
8
            name="%JVMTI_ANALYSIS_TYPE_DESCRIPTION_TYPE"
8
            name="%JVMTI_ANALYSIS_TYPE_DESCRIPTION_EXEC"
9
            type="org.eclipse.tptp.analysisType.jvmti.execution"
9
            type="org.eclipse.tptp.analysisType.jvmti.execution"
10
            icon="icons/full/obj16/exectimeantype_obj.gif"
10
            icon="icons/full/obj16/exectimeantype_obj.gif"
11
            extension="trace">
11
            extension="trace">
Lines 13-24 Link Here
13
  <typeDescription
13
  <typeDescription
14
        extension="trace"
14
        extension="trace"
15
        icon="icons/full/obj16/exectimeantype_obj.gif"
15
        icon="icons/full/obj16/exectimeantype_obj.gif"
16
        name="%JVMTI_ANALYSIS_TYPE_HEAP_DESCRIPTION_TYPE"
16
        name="%JVMTI_ANALYSIS_TYPE_DESCRIPTION_HEAP"
17
        type="org.eclipse.tptp.analysisType.jvmti.heap"/>
17
        type="org.eclipse.tptp.analysisType.jvmti.heap"/>
18
  <typeDescription
18
  <typeDescription
19
        extension="trace"
19
        extension="trace"
20
        icon="icons/full/obj16/exectimeantype_obj.gif"
20
        icon="icons/full/obj16/exectimeantype_obj.gif"
21
        name="%JVMTI_ANALYSIS_TYPE_THRD_DESCRIPTION_TYPE"
21
        name="%JVMTI_ANALYSIS_TYPE_DESCRIPTION_THRD"
22
        type="org.eclipse.tptp.analysisType.jvmti.thread"/>    
22
        type="org.eclipse.tptp.analysisType.jvmti.thread"/>    
23
	</extension>
23
	</extension>
24
	      
24
	      
Lines 81-107 Link Here
81
             extension="trace"
81
             extension="trace"
82
             icon="icons/full/obj16/memleakantype_obj.gif"
82
             icon="icons/full/obj16/memleakantype_obj.gif"
83
             id="org.eclipse.tptp.platform.jvmti.client.ClassInteractions"
83
             id="org.eclipse.tptp.platform.jvmti.client.ClassInteractions"
84
             name="%JVMTI_ANALYSIS_TYPE_HEAP_DESCRIPTION_TYPE"
84
             name="%JVMTI_ANALYSIS_TYPE_VIEW_HEAP"
85
             type="org.eclipse.tptp.analysisType.jvmti.heap"/>
85
             type="org.eclipse.tptp.analysisType.jvmti.heap"/>
86
       <analyzerExtension
86
       <analyzerExtension
87
             class="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatisticViewAction"
87
             class="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatisticViewAction"
88
             extension="trace"
88
             extension="trace"
89
             icon="icons/full/obj16/thread.gif"
89
             icon="icons/full/obj16/thread.gif"
90
             id="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatisticViewAction"
90
             id="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatisticViewAction"
91
             name="%JVMTI_ANALYSIS_TYPE_THRD_DESCRIPTION_TYPE"
91
             name="%JVMTI_ANALYSIS_TYPE_VIEW_THRD"
92
             type="org.eclipse.tptp.analysisType.jvmti.thread"/>
92
             type="org.eclipse.tptp.analysisType.jvmti.thread"/>
93
       <analyzerExtension
93
       <analyzerExtension
94
             class="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatesViewAction"
94
             class="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatesViewAction"
95
             extension="trace"
95
             extension="trace"
96
             icon="icons/full/cview16/thread_states_view.gif"
96
             id="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatesViewAction"
97
             id="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatesViewAction"
97
             name="%JVMTI_ANALYSIS_TYPE_THREAD_STATES_DESCRIPTION_TYPE">
98
             name="%JVMTI_ANALYSIS_TYPE_VIEW_THRD_STATES"
99
             type="org.eclipse.tptp.analysisType.jvmti.thread">
98
       </analyzerExtension>
100
       </analyzerExtension>
99
	</extension>
101
	</extension>
100
102
101
   	<extension
103
   	<extension
102
         point="org.eclipse.ui.views">
104
         point="org.eclipse.ui.views">
103
      <view
105
      <view
104
            name="%JVMTI_ANALYSIS_TYPE_THRD_DESCRIPTION_TYPE"
106
            name="%JVMTI_ANALYSIS_TYPE_VIEW_THRD"
105
            icon="icons/full/obj16/thread.gif"
107
            icon="icons/full/obj16/thread.gif"
106
            category="org.eclipse.hyades.trace.internal.ui.trace"
108
            category="org.eclipse.hyades.trace.internal.ui.trace"
107
            class="org.eclipse.tptp.trace.jvmti.internal.client.views.ThreadStatisticViewer"
109
            class="org.eclipse.tptp.trace.jvmti.internal.client.views.ThreadStatisticViewer"
Lines 110-122 Link Here
110
      <view
112
      <view
111
            category="org.eclipse.hyades.trace.internal.ui.trace"
113
            category="org.eclipse.hyades.trace.internal.ui.trace"
112
            class="org.eclipse.tptp.trace.jvmti.internal.client.views.ThreadStatesViewer"
114
            class="org.eclipse.tptp.trace.jvmti.internal.client.views.ThreadStatesViewer"
115
            icon="icons/full/cview16/thread_states_view.gif"
113
            id="org.eclipse.tptp.trace.jvmti.internal.client.views.ThreadStatesViewer"
116
            id="org.eclipse.tptp.trace.jvmti.internal.client.views.ThreadStatesViewer"
114
            name="%JVMTI_ANALYSIS_TYPE_THREAD_STATES_DESCRIPTION_TYPE"/>
117
            name="%JVMTI_ANALYSIS_TYPE_VIEW_THRD_STATES"/>
115
      <view
118
      <view
116
            category="org.eclipse.hyades.trace.internal.ui.trace"
119
            category="org.eclipse.hyades.trace.internal.ui.trace"
117
            class="org.eclipse.tptp.trace.jvmti.internal.client.views.CallStackViewer"
120
            class="org.eclipse.tptp.trace.jvmti.internal.client.views.CallStackViewer"
121
            icon="icons/full/cview16/call_stack_view.gif"
118
            id="org.eclipse.tptp.trace.jvmti.internal.client.views.CallStackView"
122
            id="org.eclipse.tptp.trace.jvmti.internal.client.views.CallStackView"
119
            name="%JVMTI_ANALYSIS_TYPE_CALL_STACK_DESCRIPTION_TYPE">
123
            name="%JVMTI_ANALYSIS_TYPE_VIEW_CALL_STACK">
120
      </view>
124
      </view>
121
   	</extension>
125
   	</extension>
122
126
Lines 148-178 Link Here
148
   	<extension
152
   	<extension
149
         point="org.eclipse.ui.actionSets">
153
         point="org.eclipse.ui.actionSets">
150
      <actionSet
154
      <actionSet
151
            label="%JVMTI_ANALYSIS_TYPE_THRD_DESCRIPTION_TYPE"
155
            label="%JVMTI_ANALYSIS_TYPE_DESCRIPTION_THRD"
152
            visible="true"
156
            visible="true"
153
            id="org.eclipse.tptp.trace.jvmti.threadActionSet">
157
            id="org.eclipse.tptp.trace.jvmti.threadActionSet">
154
         <action
158
         <action
155
               label="%JVMTI_ANALYSIS_TYPE_THRD_DESCRIPTION_TYPE"
159
               label="%JVMTI_ANALYSIS_TYPE_VIEW_THRD"
156
               icon="icons/full/obj16/thread.gif"
160
               icon="icons/full/obj16/thread.gif"
157
               tooltip="%JVMTI_ANALYSIS_TYPE_THRD_TOOLTIP"
161
               tooltip="%JVMTI_ANALYSIS_TYPE_TOOLTIP_THRD_STATES"
158
               class="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatisticViewAction"
162
               class="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatisticViewAction"
159
               toolbarPath="trace/group.statistic"
163
               toolbarPath="trace/group.statistic"
160
               id="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatisticViewAction">
164
               id="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatisticViewAction">
161
         </action>
165
         </action>
162
         <action
166
         <action
163
               class="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatesViewAction"
167
               class="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatesViewAction"
168
               icon="icons/full/cview16/thread_states_view.gif"
164
               id="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatesViewAction"
169
               id="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenThreadStatesViewAction"
165
               label="%JVMTI_ANALYSIS_TYPE_THREAD_STATES_DESCRIPTION_TYPE"
170
               label="%JVMTI_ANALYSIS_TYPE_VIEW_THRD_STATES"
166
               style="push"
171
               style="push"
167
               toolbarPath="trace/group.statistic"
172
               toolbarPath="trace/group.statistic"
168
               tooltip="%JVMTI_ANALYSIS_TYPE_THREAD_STATES_TOOLTIP"/>
173
               tooltip="%JVMTI_ANALYSIS_TYPE_TOOLTIP_THRD_STATES"/>
169
         <action
174
         <action
170
               class="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenCallStackViewAction"
175
               class="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenCallStackViewAction"
176
               icon="icons/full/cview16/call_stack_view.gif"
171
               id="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenCallStackViewAction"
177
               id="org.eclipse.tptp.trace.jvmti.internal.client.views.OpenCallStackViewAction"
172
               label="%JVMTI_ANALYSIS_TYPE_CALL_STACK_DESCRIPTION_TYPE"
178
               label="%JVMTI_ANALYSIS_TYPE_VIEW_CALL_STACK"
173
               style="push"
179
               style="push"
174
               toolbarPath="trace/group.statistic"
180
               toolbarPath="trace/group.statistic"
175
               tooltip="%JVMTI_ANALYSIS_TYPE_CALL_STACK_TOOLTIP">
181
               tooltip="%JVMTI_ANALYSIS_TYPE_TOOLTIP_CALL_STACK">
176
         </action>
182
         </action>
177
      </actionSet>
183
      </actionSet>
178
   </extension>
184
   </extension>
(-)src/org/eclipse/tptp/trace/jvmti/internal/client/views/UIMessages.java (+1 lines)
Lines 23-28 Link Here
23
	public static String CURRENT_TIME;
23
	public static String CURRENT_TIME;
24
	public static String SELECTED_TIME;
24
	public static String SELECTED_TIME;
25
	public static String TIME_SCALE;
25
	public static String TIME_SCALE;
26
	public static String MEM_ANALYSIS_TITLE;
26
27
27
	public static String _261;
28
	public static String _261;
28
	public static String _262;
29
	public static String _262;
(-)src/org/eclipse/tptp/trace/jvmti/internal/client/views/ThreadStatisticView.java (-1 / +1 lines)
Lines 583-588 Link Here
583
	}
583
	}
584
584
585
	public void widgetDefaultSelected(SelectionEvent arg0) {
585
	public void widgetDefaultSelected(SelectionEvent arg0) {
586
		OpenCallStackViewAction.openCallStackView(false);
586
		new OpenCallStackViewAction().openView(false);
587
	}
587
	}
588
}
588
}
(-)src/org/eclipse/tptp/trace/jvmti/internal/client/views/ThreadStatesViewer.java (-12 / +45 lines)
Lines 20-28 Link Here
20
import org.eclipse.jface.action.Action;
20
import org.eclipse.jface.action.Action;
21
import org.eclipse.jface.action.IMenuManager;
21
import org.eclipse.jface.action.IMenuManager;
22
import org.eclipse.jface.action.IToolBarManager;
22
import org.eclipse.jface.action.IToolBarManager;
23
import org.eclipse.tptp.trace.jvmti.internal.client.TITracePlugin;
23
import org.eclipse.ui.IActionBars;
24
import org.eclipse.ui.IActionBars;
24
import org.eclipse.ui.ISharedImages;
25
import org.eclipse.ui.plugin.AbstractUIPlugin;
25
import org.eclipse.ui.PlatformUI;
26
26
27
public class ThreadStatesViewer extends TraceViewer {
27
public class ThreadStatesViewer extends TraceViewer {
28
28
Lines 53-91 Link Here
53
53
54
	Action _selectNextEvent;
54
	Action _selectNextEvent;
55
	Action _selectPrevEvent;
55
	Action _selectPrevEvent;
56
	Action _selectNextThread;
57
	Action _selectPrevThread;
56
58
57
	private void createActions() {
59
	private void createActions() {
58
		_selectNextEvent = new Action() {
60
		_selectNextEvent = new Action() {
59
			public void run() {
61
			public void run() {
60
				if (getCurrentPage() instanceof ThreadStatesPage)
62
				if (getCurrentPage() instanceof ThreadStatesPage) {
61
					((ThreadStatesPage) getCurrentPage()).selectNextEvent();
63
					((ThreadStatesPage) getCurrentPage()).selectNextEvent();
64
				}
62
			}
65
			}
63
		};
66
		};
64
		_selectNextEvent.setText("Next");
67
		_selectNextEvent.setText("Next Event");
65
		_selectNextEvent.setToolTipText("Select Next Event");
68
		_selectNextEvent.setToolTipText("Select Next Event");
66
		_selectNextEvent.setImageDescriptor(PlatformUI.getWorkbench()
69
		//_selectNextEvent.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(ISharedImages.IMG_TOOL_FORWARD));
67
				.getSharedImages().getImageDescriptor(
70
		_selectNextEvent.setImageDescriptor(AbstractUIPlugin.imageDescriptorFromPlugin(TITracePlugin.PLUGIN_ID
68
						ISharedImages.IMG_TOOL_FORWARD));
71
				, "icons/full/obj16/next_event.gif"));
72
69
		_selectPrevEvent = new Action() {
73
		_selectPrevEvent = new Action() {
70
			public void run() {
74
			public void run() {
71
				if (getCurrentPage() instanceof ThreadStatesPage)
75
				if (getCurrentPage() instanceof ThreadStatesPage) {
72
					((ThreadStatesPage) getCurrentPage()).selectPrevEvent();
76
					((ThreadStatesPage) getCurrentPage()).selectPrevEvent();
77
				}
73
			}
78
			}
74
		};
79
		};
75
		_selectPrevEvent.setText("Prev");
80
		_selectPrevEvent.setText("Prev Event");
76
		_selectPrevEvent.setToolTipText("Select Previous Event");
81
		_selectPrevEvent.setToolTipText("Select Previous Event");
77
		_selectPrevEvent.setImageDescriptor(PlatformUI.getWorkbench()
82
		//_selectPrevEvent.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(ISharedImages.IMG_TOOL_BACK));
78
				.getSharedImages().getImageDescriptor(
83
		_selectPrevEvent.setImageDescriptor(AbstractUIPlugin.imageDescriptorFromPlugin(TITracePlugin.PLUGIN_ID
79
						ISharedImages.IMG_TOOL_BACK));
84
				, "icons/full/obj16/prev_event.gif"));
85
86
		_selectNextThread = new Action() {
87
			public void run() {
88
				if (getCurrentPage() instanceof ThreadStatesPage) {
89
					((ThreadStatesPage) getCurrentPage()).selectNextThread();
90
				}
91
			}
92
		};
93
		_selectNextThread.setText("Next Thread");
94
		_selectNextThread.setToolTipText("Select Next Thread");
95
		_selectNextThread.setImageDescriptor(AbstractUIPlugin.imageDescriptorFromPlugin(TITracePlugin.PLUGIN_ID
96
				, "icons/full/obj16/next_thread.gif"));
97
98
		_selectPrevThread = new Action() {
99
			public void run() {
100
				if (getCurrentPage() instanceof ThreadStatesPage) {
101
					((ThreadStatesPage) getCurrentPage()).selectPrevThread();
102
				}
103
			}
104
		};
105
		_selectPrevThread.setText("Prev Thread");
106
		_selectPrevThread.setToolTipText("Select Previous Thread");
107
		_selectPrevThread.setImageDescriptor(AbstractUIPlugin.imageDescriptorFromPlugin(TITracePlugin.PLUGIN_ID
108
				, "icons/full/obj16/prev_thread.gif"));
80
	}
109
	}
81
110
82
	private void fillLocalPullDown(IMenuManager manager) {
111
	private void fillLocalPullDown(IMenuManager manager) {
83
		manager.add(_selectPrevEvent);
112
		manager.add(_selectPrevEvent);
84
		manager.add(_selectNextEvent);
113
		manager.add(_selectNextEvent);
114
		manager.add(_selectPrevThread);
115
		manager.add(_selectNextThread);
85
	}
116
	}
86
117
87
	private void fillLocalToolBar(IToolBarManager manager) {
118
	private void fillLocalToolBar(IToolBarManager manager) {
88
		manager.add(_selectPrevEvent);
119
		manager.add(_selectPrevEvent);
89
		manager.add(_selectNextEvent);
120
		manager.add(_selectNextEvent);
121
		manager.add(_selectPrevThread);
122
		manager.add(_selectNextThread);
90
	}
123
	}
91
}
124
}
(-)src/org/eclipse/tptp/trace/jvmti/internal/client/views/OpenThreadStatesViewAction.java (-41 / +1 lines)
Lines 14-34 Link Here
14
14
15
package org.eclipse.tptp.trace.jvmti.internal.client.views;
15
package org.eclipse.tptp.trace.jvmti.internal.client.views;
16
16
17
import org.eclipse.core.resources.IResourceStatus;
18
import org.eclipse.core.resources.ResourcesPlugin;
19
import org.eclipse.core.runtime.Status;
20
import org.eclipse.hyades.trace.ui.TraceViewer;
21
import org.eclipse.hyades.trace.ui.UIPlugin;
22
import org.eclipse.hyades.trace.views.actions.internal.OpenTraceViewAction;
23
import org.eclipse.hyades.trace.views.internal.TraceUIMessages;
24
import org.eclipse.jface.action.IAction;
25
import org.eclipse.jface.dialogs.ErrorDialog;
26
import org.eclipse.jface.resource.ImageDescriptor;
17
import org.eclipse.jface.resource.ImageDescriptor;
27
import org.eclipse.ui.IViewPart;
28
import org.eclipse.ui.IWorkbenchPage;
29
import org.eclipse.ui.IWorkbenchWindow;
30
18
31
public class OpenThreadStatesViewAction extends OpenTraceViewAction {
19
public class OpenThreadStatesViewAction extends OpenTraceViewActionBase {
32
20
33
	private final String VIEW_ID = "org.eclipse.tptp.trace.jvmti.internal.client.views.ThreadStatesViewer";
21
	private final String VIEW_ID = "org.eclipse.tptp.trace.jvmti.internal.client.views.ThreadStatesViewer";
34
22
Lines 44-77 Link Here
44
		super(label, image);
32
		super(label, image);
45
	}
33
	}
46
34
47
	public boolean isVisibleForType(Object mofObject) {
48
		return true;
49
	}
50
	
51
	public void run() {
52
		IWorkbenchWindow window = UIPlugin.getDefault().getWorkbench()
53
				.getActiveWorkbenchWindow();
54
		try {
55
			IWorkbenchPage persp = UIPlugin.getActivePage();
56
			IViewPart view = persp.showView(VIEW_ID);
57
			if (view != null && view instanceof TraceViewer) {
58
				((TraceViewer) view).addViewPage(getMofObject(), true);
59
			}
60
		} catch (Exception e) {
61
			String msg = TraceUIMessages._3;
62
			Status err = new Status(Status.WARNING,
63
					ResourcesPlugin.PI_RESOURCES,
64
					IResourceStatus.INTERNAL_ERROR, e.toString(), null);
65
			ErrorDialog.openError(window.getShell(), msg, "", err);
66
			e.printStackTrace();
67
		}
68
69
	}
70
71
	public void run(IAction action) {
72
		run();
73
	}
74
75
	public String getViewID() {
35
	public String getViewID() {
76
		return VIEW_ID;
36
		return VIEW_ID;
77
	}
37
	}
(-)src/org/eclipse/tptp/trace/jvmti/internal/client/views/messages.properties (+1 lines)
Lines 19-24 Link Here
19
CURRENT_TIME = Current Time
19
CURRENT_TIME = Current Time
20
SELECTED_TIME = Selected Time
20
SELECTED_TIME = Selected Time
21
TIME_SCALE = Time Scale
21
TIME_SCALE = Time Scale
22
MEM_ANALYSIS_TITLE = Memory Analysis
22
_261 = Running
23
_261 = Running
23
_262 = Sleeping
24
_262 = Sleeping
24
_263 = Waiting
25
_263 = Waiting
(-)src/org/eclipse/tptp/trace/jvmti/internal/client/views/OpenCallStackViewAction.java (-39 / +1 lines)
Lines 14-31 Link Here
14
14
15
package org.eclipse.tptp.trace.jvmti.internal.client.views;
15
package org.eclipse.tptp.trace.jvmti.internal.client.views;
16
16
17
import org.eclipse.core.resources.IResourceStatus;
18
import org.eclipse.core.resources.ResourcesPlugin;
19
import org.eclipse.core.runtime.Status;
20
import org.eclipse.hyades.trace.ui.UIPlugin;
21
import org.eclipse.hyades.trace.views.actions.internal.OpenTraceViewAction;
22
import org.eclipse.hyades.trace.views.internal.TraceUIMessages;
23
import org.eclipse.jface.action.IAction;
24
import org.eclipse.jface.dialogs.ErrorDialog;
25
import org.eclipse.jface.resource.ImageDescriptor;
17
import org.eclipse.jface.resource.ImageDescriptor;
26
import org.eclipse.ui.IWorkbenchWindow;
27
18
28
public class OpenCallStackViewAction extends OpenTraceViewAction {
19
public class OpenCallStackViewAction extends OpenTraceViewActionBase {
29
20
30
	static final String VIEW_ID = "org.eclipse.tptp.trace.jvmti.internal.client.views.CallStackView";
21
	static final String VIEW_ID = "org.eclipse.tptp.trace.jvmti.internal.client.views.CallStackView";
31
22
Lines 41-75 Link Here
41
		super(label, image);
32
		super(label, image);
42
	}
33
	}
43
34
44
	public boolean isVisibleForType(Object mofObject) {
45
		return true;
46
	}
47
48
	static public void openCallStackView(boolean showError) {
49
		IWorkbenchWindow window = UIPlugin.getDefault().getWorkbench()
50
				.getActiveWorkbenchWindow();
51
		try {
52
			UIPlugin.getActivePage().showView(VIEW_ID);
53
		} catch (Exception e) {
54
			if (showError) {
55
				String msg = TraceUIMessages._3;
56
				Status err = new Status(Status.WARNING,
57
						ResourcesPlugin.PI_RESOURCES,
58
						IResourceStatus.INTERNAL_ERROR, e.toString(), null);
59
				ErrorDialog.openError(window.getShell(), msg, "", err);
60
			}
61
			e.printStackTrace();
62
		}
63
	}
64
65
	public void run() {
66
		openCallStackView(true);
67
	}
68
69
	public void run(IAction action) {
70
		run();
71
	}
72
73
	public String getViewID() {
35
	public String getViewID() {
74
		return VIEW_ID;
36
		return VIEW_ID;
75
	}
37
	}
(-)src/org/eclipse/tptp/trace/jvmti/internal/client/views/ThreadStatesPage.java (-3 / +11 lines)
Lines 259-266 Link Here
259
		if (_selectedTime < _beginTime)
259
		if (_selectedTime < _beginTime)
260
			_selectedTime = _beginTime;
260
			_selectedTime = _beginTime;
261
		if (ensureVisible) {
261
		if (ensureVisible) {
262
			double timeSpace = (_time1 - _time0) * .1;
262
			double timeSpace = (_time1 - _time0) * .02;
263
			double timeMid = (_time1 - _time0) * .5;
263
			double timeMid = (_time1 - _time0) * .1;
264
			if (_selectedTime < _time0 + timeSpace) {
264
			if (_selectedTime < _time0 + timeSpace) {
265
				double dt = _time0 - _selectedTime + timeMid;
265
				double dt = _time0 - _selectedTime + timeMid;
266
				_time0 -= dt;
266
				_time0 -= dt;
Lines 301-307 Link Here
301
	}
301
	}
302
302
303
	public void widgetDefaultSelected(SelectionEvent e) {
303
	public void widgetDefaultSelected(SelectionEvent e) {
304
		OpenCallStackViewAction.openCallStackView(false);
304
		new OpenCallStackViewAction().openView(false);
305
		updateModelSelection();
305
		updateModelSelection();
306
	}
306
	}
307
307
Lines 316-319 Link Here
316
	public void selectPrevEvent() {
316
	public void selectPrevEvent() {
317
		_stateCtrl.selectPrevEvent();
317
		_stateCtrl.selectPrevEvent();
318
	}
318
	}
319
320
	public void selectNextThread() {
321
		_stateCtrl.selectNextThread();
322
	}
323
324
	public void selectPrevThread() {
325
		_stateCtrl.selectPrevThread();
326
	}
319
}
327
}
(-)src/org/eclipse/tptp/trace/jvmti/internal/client/widgets/ThreadStatesCtrl.java (-17 / +122 lines)
Lines 248-253 Link Here
248
		return sel;
248
		return sel;
249
	}
249
	}
250
250
251
	public void selectThread(int n) {
252
		if (n != 1 && n != -1)
253
			return;
254
		boolean changed = false;
255
		int lastSelection = -1;
256
		for (int i = 0; i < _data._items.length; i++) {
257
			Item item = (Item) _data._items[i];
258
			if (item._selected) {
259
				lastSelection = i;
260
				if (1 == n && i < _data._items.length - 1) {
261
					item._selected = false;
262
					if (item._hasChildren)
263
						_data.expandItem(i, true);
264
					item = (Item) _data._items[i + 1];
265
					if (item._hasChildren) {
266
						_data.expandItem(i + 1, true);
267
						item = (Item) _data._items[i + 2];
268
					}
269
					item._selected = true;
270
					changed = true;
271
				} else if (-1 == n && i > 0) {
272
					i--;
273
					Item prevItem = (Item) _data._items[i];
274
					if (prevItem._hasChildren) {
275
						if (prevItem._expanded) {
276
							if (i > 0) {
277
								i--;
278
								prevItem = (Item) _data._items[i];
279
							}
280
						}
281
						if (!prevItem._expanded) {
282
							int added = _data.expandItem(i, true);
283
							prevItem = (Item) _data._items[i + added];
284
							item._selected = false;
285
							prevItem._selected = true;
286
							changed = true;
287
						}
288
					} else {
289
						item._selected = false;
290
						prevItem._selected = true;
291
						changed = true;
292
					}
293
				}
294
				break;
295
			}
296
		}
297
		if (lastSelection < 0 && _data._items.length > 0) {
298
			Item item = (Item) _data._items[0];
299
			if (item._hasChildren) {
300
				_data.expandItem(0, true);
301
				item = (Item) _data._items[1];
302
				item._selected = true;
303
				changed = true;
304
			} else {
305
				item._selected = true;
306
				changed = true;
307
			}
308
		}
309
		if (changed) {
310
			redraw();
311
			fireSelectionChanged();
312
		}
313
	}
314
251
	public void selectEvent(int n) {
315
	public void selectEvent(int n) {
252
		if (null == _timeProvider)
316
		if (null == _timeProvider)
253
			return;
317
			return;
Lines 261-266 Link Here
261
			nextEvent = findEvent(thread, selectedTime, 0);
325
			nextEvent = findEvent(thread, selectedTime, 0);
262
		else
326
		else
263
			nextEvent = findEvent(thread, selectedTime, n);
327
			nextEvent = findEvent(thread, selectedTime, n);
328
		if (null == nextEvent && -1 == n)
329
			nextEvent = getFirstEvent(thread);
264
		if (null != nextEvent) {
330
		if (null != nextEvent) {
265
			_timeProvider.setSelectedTime(nextEvent.getTime(), true);
331
			_timeProvider.setSelectedTime(nextEvent.getTime(), true);
266
			fireSelectionChanged();
332
			fireSelectionChanged();
Lines 279-284 Link Here
279
		selectEvent(-1);
345
		selectEvent(-1);
280
	}
346
	}
281
347
348
	public void selectNextThread() {
349
		selectThread(1);
350
	}
351
352
	public void selectPrevThread() {
353
		selectThread(-1);
354
	}
355
282
	public TRCThread getSelectedThread() {
356
	public TRCThread getSelectedThread() {
283
		TRCThread thread = null;
357
		TRCThread thread = null;
284
		int idx = getSelectedIndex();
358
		int idx = getSelectedIndex();
Lines 441-474 Link Here
441
	}
515
	}
442
516
443
	void drawName(Item item, Rectangle rect, GC gc) {
517
	void drawName(Item item, Rectangle rect, GC gc) {
444
		if (item instanceof GroupItem) {
518
		boolean group = item instanceof GroupItem;
445
			gc.setBackground(_colors
519
		int elemHeight = rect.height / 2;
446
					.getBkColorGroup(item._selected, _isInFocus));
520
		int elemWidth = elemHeight;
521
		if (group) {
522
			gc.setBackground(_colors.getBkColorGroup(item._selected, _isInFocus));
447
			gc.fillRectangle(rect);
523
			gc.fillRectangle(rect);
448
			if (item._selected && _isInFocus) {
524
			if (item._selected && _isInFocus) {
449
				gc.setForeground(_colors.getBkColor(item._selected, _isInFocus,
525
				gc.setForeground(_colors.getBkColor(item._selected, _isInFocus, false));
450
						false));
526
				//gc.drawRectangle(rect.x, rect.y, rect.width - 2, rect.height - 2);
451
				gc.drawRectangle(rect.x, rect.y, rect.width - 2,
527
				gc.drawRoundRectangle(rect.x, rect.y, rect.width - 2, rect.height - 2, 2, 2);
452
						rect.height - 2);
453
			}
528
			}
454
			gc.setForeground(_colors.getBkColor(false, false, false));
529
			gc.setForeground(_colors.getBkColor(false, false, false));
455
			gc.drawLine(rect.x, rect.y + rect.height - 1, rect.width - 1,
530
			gc.drawLine(rect.x, rect.y + rect.height - 1, rect.width - 1, rect.y + rect.height - 1);
456
					rect.y + rect.height - 1);
531
			gc.setForeground(_colors.getFgColorGroup(false, false));
457
			gc.setForeground(_colors
532
			gc.setBackground(_colors.getBkColor(false, false, false));
458
					.getFgColorGroup(item._selected, _isInFocus));
533
			Utils.init(_rect1, rect);
534
			_rect1.x += 2;
535
			_rect1.y += (rect.height - elemHeight) / 2;
536
			_rect1.width = elemWidth;
537
			_rect1.height = elemHeight;
538
			gc.fillRectangle(_rect1);
539
			gc.drawRectangle(_rect1.x, _rect1.y, _rect1.width - 1, _rect1.height - 1);
540
			int p = _rect1.y + _rect1.height / 2;
541
			gc.drawLine(_rect1.x + 2, p, _rect1.x + _rect1.width - 3, p);
542
			if (!item._expanded) {
543
				p = _rect1.x + _rect1.width / 2;
544
				gc.drawLine(p, _rect1.y + 2, p, _rect1.y + _rect1.height - 3);
545
			}
546
			gc.setForeground(_colors.getFgColorGroup(item._selected, _isInFocus));
547
			elemWidth+= 4;
459
		} else {
548
		} else {
460
			gc.setBackground(_colors.getBkColor(item._selected, _isInFocus,
549
			gc.setBackground(_colors.getBkColor(item._selected, _isInFocus, true));
461
					true));
462
			gc.setForeground(_colors.getFgColor(item._selected, _isInFocus));
550
			gc.setForeground(_colors.getFgColor(item._selected, _isInFocus));
463
			gc.fillRectangle(rect);
551
			gc.fillRectangle(rect);
464
		}
552
		}
465
		Utils.init(_rect1, rect);
553
		Utils.init(_rect1, rect);
466
		_rect1.x += 4;
554
		int leftMargin = 4 + (group ? elemWidth : 0);
467
		_rect1.width -= 4;
555
		_rect1.x += leftMargin;
556
		_rect1.width -= leftMargin;
468
		int textWidth = 0;
557
		int textWidth = 0;
469
		// draw text
558
		// draw text
470
		if (_rect1.width > 0)
559
		if (_rect1.width > 0) {
471
			textWidth = Utils.drawText(gc, item._name, _rect1, true) + 8;
560
			String name = group ? item._name + " (group}" : item._name;
561
			textWidth = Utils.drawText(gc, name, _rect1, true) + 8;
562
		}
472
		// draw middle line
563
		// draw middle line
473
		Utils.init(_rect1, rect);
564
		Utils.init(_rect1, rect);
474
		_rect1.x += textWidth;
565
		_rect1.x += textWidth;
Lines 855-860 Link Here
855
		_items = itemList.toArray();
946
		_items = itemList.toArray();
856
	}
947
	}
857
948
949
	public int expandItem(int idx, boolean expand) {
950
		if (idx < 0 || idx >= _items.length)
951
			return 0;
952
		int ret = 0;
953
		Item item = (Item) _items[idx];
954
		if (item._hasChildren && !item._expanded) {
955
			item._expanded = expand;
956
			ret = _items.length;
957
			updateItems();
958
			ret = _items.length - ret;
959
		}
960
		return ret;
961
	}
962
858
	public void refreshData(Object threads[]) {
963
	public void refreshData(Object threads[]) {
859
		clearGroups();
964
		clearGroups();
860
		_threads = threads;
965
		_threads = threads;
(-)src/org/eclipse/tptp/trace/jvmti/internal/client/widgets/Utils.java (+2 lines)
Lines 141-146 Link Here
141
				gc.drawLine(rect.x, rect.y, rect.x + rect.width - 1, rect.y);
141
				gc.drawLine(rect.x, rect.y, rect.x + rect.width - 1, rect.y);
142
				gc.drawLine(rect.x, rect.y + rect.height - 1, rect.x + rect.width - 1, rect.y + rect.height - 1);				
142
				gc.drawLine(rect.x, rect.y + rect.height - 1, rect.x + rect.width - 1, rect.y + rect.height - 1);				
143
			}
143
			}
144
			gc.drawLine(rect.x, rect.y + 1, rect.x + rect.width - 1, rect.y + 1);
145
			gc.drawLine(rect.x, rect.y + rect.height - 2, rect.x + rect.width - 1, rect.y + rect.height - 2);
144
		}
146
		}
145
	}
147
	}
146
148
(-)icons/full/obj16/prev_thread.gif (+1 lines)
Added Link Here
1
GIF89a÷€€€€€€€€€€€€ÀÀÀÿÿÿÿÿÿÿÿÿÿÿÿ3f™Ìÿ3333f3™3Ì3ÿff3fff™fÌfÿ™™3™f™™™Ì™ÿÌÌ3Ìf̙ÌÌÌÿÿÿ3ÿfÿ™ÿÌÿÿ3333f3™3Ì3ÿ3333333f33™33Ì33ÿ3f3f33ff3f™3fÌ3fÿ3™3™33™f3™™3™Ì3™ÿ3Ì3Ì33Ìf3̙3ÌÌ3Ìÿ3ÿ3ÿ33ÿf3ÿ™3ÿÌ3ÿÿff3fff™fÌfÿf3f33f3ff3™f3Ìf3ÿffff3fffff™ffÌffÿf™f™3f™ff™™f™Ìf™ÿfÌfÌ3fÌff̙fÌÌfÌÿfÿfÿ3fÿffÿ™fÿÌfÿÿ™™3™f™™™Ì™ÿ™3™33™3f™3™™3̙3ÿ™f™f3™ff™f™™f̙fÿ™™™™3™™f™™™™™Ì™™ÿ™Ì™Ì3™Ìf™Ì™™Ì̙Ìÿ™ÿ™ÿ3™ÿf™ÿ™™ÿ̙ÿÿÌÌ3Ìf̙ÌÌÌÿÌ3Ì33Ì3fÌ3™Ì3ÌÌ3ÿÌfÌf3ÌffÌf™ÌfÌÌfÿ̙̙3̙f̙™Ì™Ì̙ÿÌÌÌÌ3ÌÌfÌ̙ÌÌÌÌÌÿÌÿÌÿ3ÌÿfÌÿ™ÌÿÌÌÿÿÿÿ3ÿfÿ™ÿÌÿÿÿ3ÿ33ÿ3fÿ3™ÿ3Ìÿ3ÿÿfÿf3ÿffÿf™ÿfÌÿfÿÿ™ÿ™3ÿ™fÿ™™ÿ™Ìÿ™ÿÿÌÿÌ3ÿÌfÿ̙ÿÌÌÿÌÿÿÿÿÿ3ÿÿfÿÿ™ÿÿÌÿÿÿ,EH°à@*DHp¡CþÈÑàĉ%æ@ˆ±âE„9:¼¸‘ÉŒ?@fXòÇJ?)P|Ùò僓6sêÔ;
(-)icons/full/cview16/thread_states_view.gif (+2 lines)
Added Link Here
1
GIF89a÷€€€€€€€€€ÀÀÀÀÜÀ¦Êð""")))UUUMMMBBB999ÿ|€ÿPP֓ÌìÿïÖÆççÖ­©?3f™Ì333f3™3Ì3ÿ3f3fff™fÌfÿf™3™f™™™Ì™ÿ™Ì3Ìf̙ÌÌÌÿÌfÿ™ÿÌÿ333f3™3Ì3ÿ333333f33™33Ì33ÿ33f33f3ff3™f3Ìf3ÿf3™33™3f™3™™3̙3ÿ™3Ì33Ì3fÌ3™Ì3ÌÌ3ÿÌ33ÿ3fÿ3™ÿ3Ìÿ3ÿÿ3f3fff™fÌfÿf3f33ff3f™3fÌ3fÿ3fff3fffff™ffÌff™f3™ff™f™™f̙fÿ™fÌf3Ìf™ÌfÌÌfÿÌfÿf3ÿf™ÿfÌÿfÿÌÌÿ™™™3™™™Ì™™33™f™Ì3™ÿ™f™3f™f3™™f™Ìf™ÿ3™3™™f™™™™™Ì™™ÿ™™Ì™3̙fÌf™Ì™Ì̙ÿ̙ÿ™3ÿ™f̙™ÿ™Ìÿ™ÿÿ™Ì3™f̙ÌÌÌ3™33Ìf3̙3ÌÌ3Ìÿ3ÌfÌ3fÌff™™fÌÌfÌÿf™™Ì3™Ìf™Ì™™Ì̙Ìÿ™ÌÌÌ3ÌÌfÌ̙ÌÌÌÌÌÿÌÌÿÌ3ÿÌfÿ™™ÿÌÌÿÌÿÿÌ3Ìfÿ™ÿ3Ì33ÿf3ÿ™3ÿÌ3ÿÿ3ÿfÿ3fÿff̙fÿÌfÿÿf̙ÿ3™ÿf™ÿ™™ÿ̙ÿÿ™ÿÌÿ3ÌÿfÌÿ™ÌÿÌÌÿÿÌÿ3ÿÿfÿ̙ÿÿÌÿÿÿfffÿfÿÿfffÿÿfÿfÿÿ¥!___www†††–––ËË˲²²×××ÝÝÝãããêêêñññøøøÿûð  ¤€€€ÿÿÿÿÿÿÿÿÿÿÿÿ,‰ÿ	tCÄ?Àƒ*QB‘…	*‘¢§¢%Ñ3‡È=ÐjE²•+"Y²±‡Rå»v®bºjE0KÇ9*ÝðÛ¹s濉R‚^äÉÓçB"R*!Ú³ÕA‚:™ö\tpשE©
2
¤uëԃ‹"yåIë¿°‘Òª]kv‘Û·pßfŒ›ñl\º;
(-)icons/full/cview16/call_stack_view.gif (+1 lines)
Added Link Here
1
GIF89a÷€€€€€€€€€€€€ÀÀÀÿÿÿÿÿÿÿÿÿÿÿÿ3f™Ìÿ3333f3™3Ì3ÿff3fff™fÌfÿ™™3™f™™™Ì™ÿÌÌ3Ìf̙ÌÌÌÿÿÿ3ÿfÿ™ÿÌÿÿ3333f3™3Ì3ÿ3333333f33™33Ì33ÿ3f3f33ff3f™3fÌ3fÿ3™3™33™f3™™3™Ì3™ÿ3Ì3Ì33Ìf3̙3ÌÌ3Ìÿ3ÿ3ÿ33ÿf3ÿ™3ÿÌ3ÿÿff3fff™fÌfÿf3f33f3ff3™f3Ìf3ÿffff3fffff™ffÌffÿf™f™3f™ff™™f™Ìf™ÿfÌfÌ3fÌff̙fÌÌfÌÿfÿfÿ3fÿffÿ™fÿÌfÿÿ™™3™f™™™Ì™ÿ™3™33™3f™3™™3̙3ÿ™f™f3™ff™f™™f̙fÿ™™™™3™™f™™™™™Ì™™ÿ™Ì™Ì3™Ìf™Ì™™Ì̙Ìÿ™ÿ™ÿ3™ÿf™ÿ™™ÿ̙ÿÿÌÌ3Ìf̙ÌÌÌÿÌ3Ì33Ì3fÌ3™Ì3ÌÌ3ÿÌfÌf3ÌffÌf™ÌfÌÌfÿ̙̙3̙f̙™Ì™Ì̙ÿÌÌÌÌ3ÌÌfÌ̙ÌÌÌÌÌÿÌÿÌÿ3ÌÿfÌÿ™ÌÿÌÌÿÿÿÿ3ÿfÿ™ÿÌÿÿÿ3ÿ33ÿ3fÿ3™ÿ3Ìÿ3ÿÿfÿf3ÿffÿf™ÿfÌÿfÿÿ™ÿ™3ÿ™fÿ™™ÿ™Ìÿ™ÿÿÌÿÌ3ÿÌfÿ̙ÿÌÌÿÌÿÿÿÿÿ3ÿÿfÿÿ™ÿÿÌÿÿÿ!ù,FÿýkAP Áƒ[dj?°¡@‚6Œ(!Cˆ&$¨¯£G}ÌÑbʼn#I†LùÑãʋ*_ž4ó%ǖ ֜é0 ;
(-)icons/full/obj16/prev_event.gif (+2 lines)
Added Link Here
1
GIF89a÷€€€€€€€€€€€€ÀÀÀÿÿÿÿÿÿÿÿÿÿÿÿ3f™Ìÿ3333f3™3Ì3ÿff3fff™fÌfÿ™™3™f™™™Ì™ÿÌÌ3Ìf̙ÌÌÌÿÿÿ3ÿfÿ™ÿÌÿÿ3333f3™3Ì3ÿ3333333f33™33Ì33ÿ3f3f33ff3f™3fÌ3fÿ3™3™33™f3™™3™Ì3™ÿ3Ì3Ì33Ìf3̙3ÌÌ3Ìÿ3ÿ3ÿ33ÿf3ÿ™3ÿÌ3ÿÿff3fff™fÌfÿf3f33f3ff3™f3Ìf3ÿffff3fffff™ffÌffÿf™f™3f™ff™™f™Ìf™ÿfÌfÌ3fÌff̙fÌÌfÌÿfÿfÿ3fÿffÿ™fÿÌfÿÿ™™3™f™™™Ì™ÿ™3™33™3f™3™™3̙3ÿ™f™f3™ff™f™™f̙fÿ™™™™3™™f™™™™™Ì™™ÿ™Ì™Ì3™Ìf™Ì™™Ì̙Ìÿ™ÿ™ÿ3™ÿf™ÿ™™ÿ̙ÿÿÌÌ3Ìf̙ÌÌÌÿÌ3Ì33Ì3fÌ3™Ì3ÌÌ3ÿÌfÌf3ÌffÌf™ÌfÌÌfÿ̙̙3̙f̙™Ì™Ì̙ÿÌÌÌÌ3ÌÌfÌ̙ÌÌÌÌÌÿÌÿÌÿ3ÌÿfÌÿ™ÌÿÌÌÿÿÿÿ3ÿfÿ™ÿÌÿÿÿ3ÿ33ÿ3fÿ3™ÿ3Ìÿ3ÿÿfÿf3ÿffÿf™ÿfÌÿfÿÿ™ÿ™3ÿ™fÿ™™ÿ™Ìÿ™ÿÿÌÿÌ3ÿÌfÿ̙ÿÌÌÿÌÿÿÿÿÿ3ÿÿfÿÿ™ÿÿÌÿÿÿ,JH° Áƒ0@hP!Á
2
Ìñ#âÂ!"t˜ñGG?RTHRaÅ?&s”$	ò?C?0;”Óâ@?6oædȳ§Ï;
(-)src/org/eclipse/tptp/trace/jvmti/internal/client/views/OpenTraceViewActionBase.java (+73 lines)
Added Link Here
1
/*****************************************************************************
2
 * Copyright (c) 2007, Intel Corporation.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 *
8
 * Contributors:
9
 *    Intel Corporation - Initial API and implementation
10
 *    Ruslan A. Scherbakov, Intel - Initial API and implementation
11
 *
12
 * $Id: 
13
 *****************************************************************************/
14
15
package org.eclipse.tptp.trace.jvmti.internal.client.views;
16
17
import org.eclipse.core.resources.IResourceStatus;
18
import org.eclipse.core.resources.ResourcesPlugin;
19
import org.eclipse.core.runtime.Status;
20
import org.eclipse.hyades.trace.ui.TraceViewer;
21
import org.eclipse.hyades.trace.ui.UIPlugin;
22
import org.eclipse.hyades.trace.views.actions.internal.OpenTraceViewAction;
23
import org.eclipse.hyades.trace.views.internal.TraceUIMessages;
24
import org.eclipse.jface.action.IAction;
25
import org.eclipse.jface.dialogs.ErrorDialog;
26
import org.eclipse.jface.resource.ImageDescriptor;
27
import org.eclipse.ui.IViewPart;
28
import org.eclipse.ui.IWorkbenchPage;
29
import org.eclipse.ui.IWorkbenchWindow;
30
31
public abstract class OpenTraceViewActionBase extends OpenTraceViewAction {
32
33
	public OpenTraceViewActionBase() {
34
		super("");
35
	}
36
37
	public OpenTraceViewActionBase(String label) {
38
		super(label);
39
	}
40
41
	public OpenTraceViewActionBase(String label, ImageDescriptor image) {
42
		super(label, image);
43
	}
44
45
	void openView(boolean showError) {
46
		IWorkbenchWindow window = UIPlugin.getDefault().getWorkbench()
47
				.getActiveWorkbenchWindow();
48
		try {
49
			IWorkbenchPage persp = UIPlugin.getActivePage();
50
			IViewPart view = persp.showView(getViewID());
51
			if (view != null && view instanceof TraceViewer) {
52
				((TraceViewer) view).addViewPage(getMofObject(), true);
53
			}
54
		} catch (Exception e) {
55
			if (showError) {
56
				String msg = TraceUIMessages._3;
57
				Status err = new Status(Status.WARNING,
58
						ResourcesPlugin.PI_RESOURCES,
59
						IResourceStatus.INTERNAL_ERROR, e.toString(), null);
60
				ErrorDialog.openError(window.getShell(), msg, "", err);
61
			}
62
			e.printStackTrace();
63
		}
64
	}
65
66
	public void run() {
67
		openView(true);
68
	}
69
70
	public void run(IAction action) {
71
		run();
72
	}
73
}
(-)icons/full/obj16/next_event.gif (+1 lines)
Added Link Here
1
GIF89a÷€€€€€€€€€€€€ÀÀÀÿÿÿÿÿÿÿÿÿÿÿÿ3f™Ìÿ3333f3™3Ì3ÿff3fff™fÌfÿ™™3™f™™™Ì™ÿÌÌ3Ìf̙ÌÌÌÿÿÿ3ÿfÿ™ÿÌÿÿ3333f3™3Ì3ÿ3333333f33™33Ì33ÿ3f3f33ff3f™3fÌ3fÿ3™3™33™f3™™3™Ì3™ÿ3Ì3Ì33Ìf3̙3ÌÌ3Ìÿ3ÿ3ÿ33ÿf3ÿ™3ÿÌ3ÿÿff3fff™fÌfÿf3f33f3ff3™f3Ìf3ÿffff3fffff™ffÌffÿf™f™3f™ff™™f™Ìf™ÿfÌfÌ3fÌff̙fÌÌfÌÿfÿfÿ3fÿffÿ™fÿÌfÿÿ™™3™f™™™Ì™ÿ™3™33™3f™3™™3̙3ÿ™f™f3™ff™f™™f̙fÿ™™™™3™™f™™™™™Ì™™ÿ™Ì™Ì3™Ìf™Ì™™Ì̙Ìÿ™ÿ™ÿ3™ÿf™ÿ™™ÿ̙ÿÿÌÌ3Ìf̙ÌÌÌÿÌ3Ì33Ì3fÌ3™Ì3ÌÌ3ÿÌfÌf3ÌffÌf™ÌfÌÌfÿ̙̙3̙f̙™Ì™Ì̙ÿÌÌÌÌ3ÌÌfÌ̙ÌÌÌÌÌÿÌÿÌÿ3ÌÿfÌÿ™ÌÿÌÌÿÿÿÿ3ÿfÿ™ÿÌÿÿÿ3ÿ33ÿ3fÿ3™ÿ3Ìÿ3ÿÿfÿf3ÿffÿf™ÿfÌÿfÿÿ™ÿ™3ÿ™fÿ™™ÿ™Ìÿ™ÿÿÌÿÌ3ÿÌfÿ̙ÿÌÌÿÌÿÿÿÿÿ3ÿÿfÿÿ™ÿÿÌÿÿÿ,LH° Áƒ2`?0Á…	8a‰¼ÈQ"Ɗ,¹P"È9H޼xÒcNjNô˜±á??2	ÞÄ©1!OŸ@ƒ;
(-)icons/full/obj16/next_thread.gif (+2 lines)
Added Link Here
1
GIF89a÷€€€€€€€€€€€€ÀÀÀÿÿÿÿÿÿÿÿÿÿÿÿ3f™Ìÿ3333f3™3Ì3ÿff3fff™fÌfÿ™™3™f™™™Ì™ÿÌÌ3Ìf̙ÌÌÌÿÿÿ3ÿfÿ™ÿÌÿÿ3333f3™3Ì3ÿ3333333f33™33Ì33ÿ3f3f33ff3f™3fÌ3fÿ3™3™33™f3™™3™Ì3™ÿ3Ì3Ì33Ìf3̙3ÌÌ3Ìÿ3ÿ3ÿ33ÿf3ÿ™3ÿÌ3ÿÿff3fff™fÌfÿf3f33f3ff3™f3Ìf3ÿffff3fffff™ffÌffÿf™f™3f™ff™™f™Ìf™ÿfÌfÌ3fÌff̙fÌÌfÌÿfÿfÿ3fÿffÿ™fÿÌfÿÿ™™3™f™™™Ì™ÿ™3™33™3f™3™™3̙3ÿ™f™f3™ff™f™™f̙fÿ™™™™3™™f™™™™™Ì™™ÿ™Ì™Ì3™Ìf™Ì™™Ì̙Ìÿ™ÿ™ÿ3™ÿf™ÿ™™ÿ̙ÿÿÌÌ3Ìf̙ÌÌÌÿÌ3Ì33Ì3fÌ3™Ì3ÌÌ3ÿÌfÌf3ÌffÌf™ÌfÌÌfÿ̙̙3̙f̙™Ì™Ì̙ÿÌÌÌÌ3ÌÌfÌ̙ÌÌÌÌÌÿÌÿÌÿ3ÌÿfÌÿ™ÌÿÌÌÿÿÿÿ3ÿfÿ™ÿÌÿÿÿ3ÿ33ÿ3fÿ3™ÿ3Ìÿ3ÿÿfÿf3ÿffÿf™ÿfÌÿfÿÿ™ÿ™3ÿ™fÿ™™ÿ™Ìÿ™ÿÿÌÿÌ3ÿÌfÿ̙ÿÌÌÿÌÿÿÿÿÿ3ÿÿfÿÿ™ÿÿÌÿÿÿ!ù,Fÿ	H° Áƒ&Ìñƒ¡B??Z´Èñð_‰?*FœXñb‹Œ2”(dA‘†Ü¨raC“
2
[”H³&M‚6s¶¨h0 ;

Return to bug 167609