aboutsummaryrefslogtreecommitdiffstats
path: root/eclipse
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse')
-rw-r--r--eclipse/features/com.android.ide.eclipse.traceview/feature.xml4
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.traceview/META-INF/MANIFEST.MF3
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.traceview/plugin.xml13
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.traceview/src/com/android/ide/eclipse/traceview/editors/TraceviewEditor.java (renamed from eclipse/plugins/com.android.ide.eclipse.traceview/src/com/android/ide/eclipse/traceview/views/TraceviewView.java)86
4 files changed, 63 insertions, 43 deletions
diff --git a/eclipse/features/com.android.ide.eclipse.traceview/feature.xml b/eclipse/features/com.android.ide.eclipse.traceview/feature.xml
index 3fa9dc6..3cfaf20 100644
--- a/eclipse/features/com.android.ide.eclipse.traceview/feature.xml
+++ b/eclipse/features/com.android.ide.eclipse.traceview/feature.xml
@@ -225,11 +225,7 @@
<requires>
<import plugin="org.eclipse.ui"/>
<import plugin="org.eclipse.core.runtime"/>
- <import plugin="org.eclipse.ui.console"/>
- <import plugin="org.eclipse.core.resources"/>
<import plugin="org.eclipse.ui.ide"/>
- <import plugin="org.eclipse.core.filesystem"/>
- <import plugin="org.eclipse.jdt.core"/>
</requires>
<plugin
diff --git a/eclipse/plugins/com.android.ide.eclipse.traceview/META-INF/MANIFEST.MF b/eclipse/plugins/com.android.ide.eclipse.traceview/META-INF/MANIFEST.MF
index 014a8ff..0459a07 100644
--- a/eclipse/plugins/com.android.ide.eclipse.traceview/META-INF/MANIFEST.MF
+++ b/eclipse/plugins/com.android.ide.eclipse.traceview/META-INF/MANIFEST.MF
@@ -5,7 +5,8 @@ Bundle-SymbolicName: com.android.ide.eclipse.traceview;singleton:=true
Bundle-Version: 10.0.0.qualifier
Bundle-Activator: com.android.ide.eclipse.traceview.TraceviewPlugin
Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime
+ org.eclipse.core.runtime,
+ org.eclipse.ui.ide
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .,
libs/traceview.jar
diff --git a/eclipse/plugins/com.android.ide.eclipse.traceview/plugin.xml b/eclipse/plugins/com.android.ide.eclipse.traceview/plugin.xml
index e595b5d..a6ab5d4 100644
--- a/eclipse/plugins/com.android.ide.eclipse.traceview/plugin.xml
+++ b/eclipse/plugins/com.android.ide.eclipse.traceview/plugin.xml
@@ -2,14 +2,15 @@
<?eclipse version="3.4"?>
<plugin>
<extension
- point="org.eclipse.ui.views">
- <view
- category="com.android.ide.eclipse.ddms.views.category"
- class="com.android.ide.eclipse.traceview.views.TraceviewView"
+ point="org.eclipse.ui.editors">
+ <editor
+ class="com.android.ide.eclipse.traceview.editors.TraceviewEditor"
+ default="true"
+ extensions="atv"
icon="icons/android.png"
- id="com.android.ide.eclipse.traceview.views.TraceviewView"
+ id="com.android.ide.eclipse.traceview.editors.TraceviewEditor"
name="Traceview">
- </view>
+ </editor>
</extension>
</plugin>
diff --git a/eclipse/plugins/com.android.ide.eclipse.traceview/src/com/android/ide/eclipse/traceview/views/TraceviewView.java b/eclipse/plugins/com.android.ide.eclipse.traceview/src/com/android/ide/eclipse/traceview/editors/TraceviewEditor.java
index bf804e1..c0c0963 100644
--- a/eclipse/plugins/com.android.ide.eclipse.traceview/src/com/android/ide/eclipse/traceview/views/TraceviewView.java
+++ b/eclipse/plugins/com.android.ide.eclipse.traceview/src/com/android/ide/eclipse/traceview/editors/TraceviewEditor.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.ide.eclipse.traceview.views;
+package com.android.ide.eclipse.traceview.editors;
import com.android.traceview.ColorController;
import com.android.traceview.DmTraceReader;
@@ -23,8 +23,7 @@ import com.android.traceview.TimeLineView;
import com.android.traceview.TraceReader;
import com.android.traceview.TraceUnits;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.SashForm;
import org.eclipse.swt.graphics.Color;
@@ -32,47 +31,70 @@ import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.part.ViewPart;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorSite;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.ide.FileStoreEditorInput;
+import org.eclipse.ui.part.EditorPart;
+import org.eclipse.ui.part.FileEditorInput;
-public class TraceviewView extends ViewPart {
+public class TraceviewEditor extends EditorPart {
- private Action mOpenTraceFileAction;
private Composite mParent;
private String mFilename;
private Composite mContents;
@Override
- public void createPartControl(Composite parent) {
- mParent = parent;
- mContents = null;
-
- mOpenTraceFileAction = new Action("Open trace file") {
- @Override
- public void run() {
- FileDialog fd = new FileDialog(mParent.getShell(), SWT.OPEN);
- mFilename = fd.open();
- if (mFilename != null) {
- display();
- }
- }
- };
-
- IActionBars actionBars = getViewSite().getActionBars();
-
- // toolbar
- IToolBarManager toolBarManager = actionBars.getToolBarManager();
- toolBarManager.add(mOpenTraceFileAction);
+ public void doSave(IProgressMonitor monitor) {
+ // We do not modify the file
+ }
+
+ @Override
+ public void doSaveAs() {
+ // We do not modify the file
}
- public void display() {
+ @Override
+ public void init(IEditorSite site, IEditorInput input) throws PartInitException {
+ // The contract of init() mentions we need to fail if we can't
+ // understand the input.
+ if (input instanceof FileEditorInput) {
+ // We try to open a file that is part of the current workspace
+ FileEditorInput fileEditorInput = (FileEditorInput) input;
+ mFilename = fileEditorInput.getPath().toOSString();
+ setSite(site);
+ setInput(input);
+ setPartName(input.getName());
+ } else if (input instanceof FileStoreEditorInput) {
+ // We try to open a file that is not part of the current workspace
+ FileStoreEditorInput fileStoreEditorInput = (FileStoreEditorInput) input;
+ mFilename = fileStoreEditorInput.getURI().getPath();
+ setSite(site);
+ setInput(input);
+ setPartName(input.getName());
+ } else {
+ throw new PartInitException("Input is not of type FileEditorInput " + //$NON-NLS-1$
+ "nor FileStoreEditorInput: " + //$NON-NLS-1$
+ input == null ? "null" : input.toString()); //$NON-NLS-1$
+ }
+ }
+
+ @Override
+ public boolean isDirty() {
+ return false;
+ }
+
+ @Override
+ public boolean isSaveAsAllowed() {
+ return false;
+ }
+
+ @Override
+ public void createPartControl(Composite parent) {
+ mParent = parent;
TraceReader reader = new DmTraceReader(mFilename, false);
reader.getTraceUnits().setTimeScale(TraceUnits.TimeScale.MilliSeconds);
- if (mContents != null) {
- mContents.dispose();
- }
mContents = new Composite(mParent, SWT.NONE);
Display display = mContents.getDisplay();