crashanalysis/crashanalyser/com.nokia.s60tools.crashanalyser/src/com/nokia/s60tools/crashanalyser/ui/editors/MultiPageEditor.java
author Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
Tue, 20 Apr 2010 14:41:43 +0300
changeset 4 615035072f7e
parent 0 5ad7ad99af01
child 16 72f198be1c1d
permissions -rw-r--r--
Crash Analyser Carbide extension v1.3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     1
/*
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     2
* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). 
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     3
* All rights reserved.
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     8
*
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     9
* Initial Contributors:
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    11
*
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    12
* Contributors:
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    13
*
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    14
* Description:
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    15
*
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    16
*/
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    17
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    18
package com.nokia.s60tools.crashanalyser.ui.editors;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    19
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    20
import org.eclipse.core.resources.IResourceChangeEvent;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    21
import org.eclipse.core.resources.IResourceChangeListener;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    22
import org.eclipse.core.resources.ResourcesPlugin;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    23
import org.eclipse.core.runtime.IProgressMonitor;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    24
import org.eclipse.swt.SWT;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    25
import org.eclipse.swt.widgets.Composite;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    26
import org.eclipse.swt.widgets.Display;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    27
import org.eclipse.ui.*;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    28
import org.eclipse.ui.ide.FileStoreEditorInput;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    29
import org.eclipse.ui.part.MultiPageEditorPart;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    30
import com.nokia.s60tools.crashanalyser.data.ErrorLibrary;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    31
import com.nokia.s60tools.crashanalyser.files.*;
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    32
import com.nokia.s60tools.crashanalyser.files.SummaryFile.ContentType;
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    33
import com.nokia.s60tools.crashanalyser.interfaces.*;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    34
import com.nokia.s60tools.crashanalyser.resources.ImageKeys;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    35
import com.nokia.s60tools.crashanalyser.resources.ImageResourceManager;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    36
import com.nokia.s60tools.crashanalyser.model.*;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    37
import java.io.*;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    38
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    39
/**
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    40
 * A Crash Visualiser editor. Editor contains seven tab pages:
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    41
 * General, Call Stack, Codesegments, Registers, Traces, Errors & Warnings and XML.
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    42
 * 
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    43
 * Summary page contains summary data of the crash and crash reason
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    44
 * and description. 
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    45
 * 
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    46
 * Call Stack page contains call stack data if available. Codesegments page
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    47
 * contains crash time loaded codesegments. Registers page has register
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    48
 * values and CPSR details. Traces page has OST traces and event log.
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    49
 * 
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    50
 * Errors & Warnings page contains all error and warning messages which 
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    51
 * may have occurred during the xml file creation.
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    52
 * 
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    53
 * XML tab page contains the raw xml data as an xml tree.
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    54
 *
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    55
 */
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    56
public class MultiPageEditor extends MultiPageEditorPart implements IResourceChangeListener, 
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    57
																	IErrorLibraryObserver {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    58
	// editor pages
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    59
	private SummaryPage summaryPage;
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    60
	private CallStackPage callStackPage;	
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    61
	private CodesegmentsPage codesegmentsPage;	
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    62
	private RegistersPage registersPage;
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    63
	private TracesPage tracesPage;
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    64
	private ErrorPage errorPage;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    65
	private XmlPage xmlPage;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    66
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    67
	// editor data consists of either crashFile or summaryFile
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    68
	private CrashFile crashFile = null;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    69
	private SummaryFile summaryFile = null;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    70
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    71
	private ErrorLibrary errorLibrary = null;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    72
	private String crashFilePath = "";
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    73
	static final int ERROR_PAGE_INDEX = 5;
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    74
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    75
	public MultiPageEditor() {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    76
		super();
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    77
		ResourcesPlugin.getWorkspace().addResourceChangeListener(this);
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    78
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    79
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    80
	/**
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    81
	 * Creates General page
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    82
	 */
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    83
	void createSummaryPage() {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    84
		summaryPage = new SummaryPage();
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    85
		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    86
		// output.crashxml is opened via CrashAnalyser View
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    87
		if (crashFile != null) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    88
			int index = 
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    89
				addPage(summaryPage.createPage(new Composite(getContainer(), SWT.NONE), crashFile));
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    90
			setPageText(index, "General");
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    91
		// Summary xml is opened via CrashAnalyser View
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    92
		} else if (summaryFile != null) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    93
			int index = 
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    94
				addPage(summaryPage.createPage(new Composite(getContainer(), SWT.NONE), summaryFile));
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
    95
			setPageText(index, "General");
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    96
		// output.crashxml file opened from File > Open
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    97
		} else {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    98
			int index = 
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    99
				addPage(summaryPage.createPage(new Composite(getContainer(), SWT.NONE)));
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   100
			setPageText(index, "General");
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   101
		}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   102
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   103
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   104
	/**
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   105
	 * Creates Call Stack page
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   106
	 */
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   107
	void createCallStackPage() {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   108
		callStackPage = new CallStackPage();
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   109
		
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   110
		// output.crashxml is opened via CrashAnalyser View
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   111
		if (crashFile != null) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   112
			if (crashFile.getContentType() == ContentType.CRASH) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   113
				int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   114
					addPage(callStackPage.createPage(new Composite(getContainer(), SWT.NONE), crashFile));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   115
				setPageText(index, "Call Stack");
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   116
			}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   117
		// Summary xml is opened via CrashAnalyser View
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   118
		} else if (summaryFile != null) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   119
			if (summaryFile.getContentType() == ContentType.CRASH) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   120
				int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   121
					addPage(summaryPage.createPage(new Composite(getContainer(), SWT.NONE), summaryFile));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   122
				setPageText(index, "Call Stack");
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   123
			}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   124
		// output.crashxml file opened from File > Open
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   125
		} else {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   126
			int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   127
				addPage(summaryPage.createPage(new Composite(getContainer(), SWT.NONE)));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   128
			setPageText(index, "Call Stack");
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   129
		}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   130
	}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   131
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   132
	/**
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   133
	 * Creates Call Stack page
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   134
	 */
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   135
	void createCodesegmentsPage() {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   136
		codesegmentsPage = new CodesegmentsPage();
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   137
		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   138
		// output.crashxml is opened via CrashAnalyser View
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   139
		if (crashFile != null) {
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   140
			if (crashFile.getContentType() == ContentType.CRASH) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   141
				int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   142
					addPage(codesegmentsPage.createPage(new Composite(getContainer(), SWT.NONE), crashFile));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   143
				setPageText(index, "Code Segments");
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   144
			}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   145
		// Summary xml is opened via CrashAnalyser View
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   146
		} else if (summaryFile != null) {
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   147
			if (summaryFile.getContentType() == ContentType.CRASH) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   148
				int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   149
					addPage(codesegmentsPage.createPage(new Composite(getContainer(), SWT.NONE), summaryFile));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   150
				setPageText(index, "Code Segments");
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   151
			}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   152
		// output.crashxml file opened from File > Open
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   153
		} else {
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   154
			int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   155
				addPage(codesegmentsPage.createPage(new Composite(getContainer(), SWT.NONE)));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   156
			setPageText(index, "Code Segments");
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   157
		}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   158
	}
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   159
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   160
	/**
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   161
	 * Creates Registers page
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   162
	 */
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   163
	void createRegistersPage() {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   164
		registersPage = new RegistersPage();
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   165
		
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   166
		// output.crashxml is opened via CrashAnalyser View
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   167
		if (crashFile != null) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   168
			if (crashFile.getContentType() == ContentType.CRASH) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   169
				int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   170
					addPage(registersPage.createPage(new Composite(getContainer(), SWT.NONE), crashFile));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   171
				setPageText(index, "Registers");
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   172
			}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   173
		// Summary xml is opened via CrashAnalyser View
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   174
		} else if (summaryFile != null) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   175
			if (summaryFile.getContentType() == ContentType.CRASH) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   176
				int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   177
					addPage(registersPage.createPage(new Composite(getContainer(), SWT.NONE), summaryFile));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   178
				setPageText(index, "Registers");
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   179
			}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   180
		// output.crashxml file opened from File > Open
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   181
		} else {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   182
			int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   183
				addPage(registersPage.createPage(new Composite(getContainer(), SWT.NONE)));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   184
			setPageText(index, "Registers");
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   185
		}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   186
	}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   187
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   188
	/**
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   189
	 * Creates Traces page
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   190
	 */
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   191
	void createTracesPage() {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   192
		tracesPage = new TracesPage();
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   193
		
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   194
		// output.crashxml is opened via CrashAnalyser View
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   195
		if (crashFile != null) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   196
			if (crashFile.getContentType() == ContentType.CRASH) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   197
				int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   198
					addPage(tracesPage.createPage(new Composite(getContainer(), SWT.NONE), crashFile));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   199
				setPageText(index, "Traces");
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   200
			}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   201
		// Summary xml is opened via CrashAnalyser View
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   202
		} else if (summaryFile != null) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   203
			if (summaryFile.getContentType() == ContentType.CRASH) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   204
				int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   205
					addPage(tracesPage.createPage(new Composite(getContainer(), SWT.NONE), summaryFile));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   206
				setPageText(index, "Traces");
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   207
			}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   208
		// output.crashxml file opened from File > Open
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   209
		} else {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   210
			int index = 
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   211
				addPage(tracesPage.createPage(new Composite(getContainer(), SWT.NONE)));
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   212
			setPageText(index, "Traces");
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   213
		}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   214
	}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   215
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   216
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   217
	/**
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   218
	 * Creates Errors & Warnings page
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   219
	 */
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   220
	void createErrorPage() {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   221
		errorPage = new ErrorPage();
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   222
		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   223
		// output.crashxml is opened via CrashAnalyser View
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   224
		if (crashFile != null) {
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   225
			if (crashFile.containsErrorsOrWarnings() && crashFile.getContentType() == ContentType.CRASH) {
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   226
				int index = addPage(errorPage.createPage(new Composite(getContainer(), SWT.NONE), crashFile));
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   227
				setPageText(index, "Errors && Warnings");
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   228
			}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   229
		// Summary xml is opened via CrashAnalyser View			
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   230
		} else if (summaryFile != null) {
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   231
			if (summaryFile.containsErrorsOrWarnings() && summaryFile.getContentType() == ContentType.CRASH) {
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   232
				int index = addPage(errorPage.createPage(new Composite(getContainer(), SWT.NONE), summaryFile));
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   233
				setPageText(index, "Errors && Warnings");
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   234
			}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   235
		// output.crashxml file opened from File > Open			
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   236
		} else {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   237
			int index = addPage(errorPage.createPage(new Composite(getContainer(), SWT.NONE)));
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   238
			setPageText(index, "Errors && Warnings");
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   239
		}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   240
		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   241
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   242
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   243
	/**
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   244
	 * Creates XML page
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   245
	 */
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   246
	void createXmlPage() {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   247
		xmlPage = new XmlPage();
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   248
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   249
		// output.crashxml is opened via CrashAnalyser View
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   250
		if (crashFile != null) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   251
			int index = addPage(xmlPage.createPage(new Composite(getContainer(), SWT.NONE), crashFile));
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   252
			setPageText(index, "XML");
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   253
		// Summary xml is opened via CrashAnalyser View			
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   254
		} else if (summaryFile != null) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   255
			int index = addPage(xmlPage.createPage(new Composite(getContainer(), SWT.NONE), summaryFile));
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   256
			setPageText(index, "XML");
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   257
		// output.crashxml file opened from File > Open			
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   258
		} else {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   259
			int index = addPage(xmlPage.createPage(new Composite(getContainer(), SWT.NONE), crashFile));
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   260
			setPageText(index, "XML");
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   261
		}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   262
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   263
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   264
	/**
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   265
	 * Creates the pages of the multi-page editor.
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   266
	 */
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   267
	protected void createPages() {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   268
		createSummaryPage();
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   269
		createCallStackPage();
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   270
		createCodesegmentsPage();
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   271
		createRegistersPage();
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   272
		createTracesPage();
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   273
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   274
		//		createAdvancedPage();
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   275
		createErrorPage();
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   276
		createXmlPage();
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   277
		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   278
		// output.crashxml file was opened via File > Open
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   279
		// we need to read error library and CrashFile
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   280
		if (crashFilePath != null && !"".equals(crashFilePath)) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   281
			errorLibrary = ErrorLibrary.getInstance(this);
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   282
		} else {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   283
			updatePages();
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   284
		}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   285
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   286
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   287
	public void errorLibraryReady() {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   288
		Runnable refreshRunnable = new Runnable(){
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   289
			public void run(){
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   290
				crashFile = CrashFile.read(new File(crashFilePath), errorLibrary);
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   291
				summaryPage.setFile(crashFile);
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   292
				callStackPage.setFile(crashFile);
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   293
				codesegmentsPage.setFile(crashFile);
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   294
				registersPage.setFile(crashFile);
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   295
				tracesPage.setFile(crashFile);
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   296
				if (crashFile.containsErrorsOrWarnings()) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   297
					errorPage.setFile(crashFile);
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   298
				} else {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   299
					removePage(ERROR_PAGE_INDEX);
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   300
				}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   301
				xmlPage.setFile(crashFile);
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   302
			}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   303
		};
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   304
		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   305
		Display.getDefault().asyncExec(refreshRunnable);        		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   306
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   307
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   308
	public void updatePages() {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   309
		Runnable refreshRunnable = new Runnable(){
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   310
			public void run(){
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   311
				summaryPage.update();
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   312
			}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   313
		};
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   314
		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   315
		Display.getDefault().asyncExec(refreshRunnable);        		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   316
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   317
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   318
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   319
	/**
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   320
	 * The <code>MultiPageEditorPart</code> implementation of this 
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   321
	 * <code>IWorkbenchPart</code> method disposes all nested editors.
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   322
	 * Subclasses may extend.
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   323
	 */
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   324
	public void dispose() {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   325
		ResourcesPlugin.getWorkspace().removeResourceChangeListener(this);
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   326
		super.dispose();
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   327
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   328
	/**
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   329
	 * Saves the multi-page editor's document.
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   330
	 */
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   331
	public void doSave(IProgressMonitor monitor) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   332
		// not supported
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   333
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   334
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   335
	/**
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   336
	 * editor's data can be saved as xml, html or txt.
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   337
	 */
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   338
	public void doSaveAs() {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   339
		String[] filter = null;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   340
		// we have a fully decoded file
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   341
		if (crashFile != null) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   342
			filter = new String[] { "*.crashxml", 
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   343
					   				"*.html",
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   344
					   				"*.txt"};
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   345
		// we have a summary file
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   346
		} else {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   347
			filter = new String[] { "*.xml", 
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   348
					   				"*.html",
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   349
									"*.txt"};	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   350
		}		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   351
		String result = FileOperations.saveAsDialog("Crash Analyser - Save Crash File As", filter, getEditorSite().getShell());
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   352
		if (result != null && result.length() > 0) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   353
			// crash file exists and user did not select the current crash file
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   354
			if (crashFile != null && !result.equalsIgnoreCase(crashFile.getFilePath()))
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   355
				crashFile.writeTo(new File(result));
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   356
			// summary file exists and user did not select the current summary file
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   357
			else if (summaryFile != null && !result.equalsIgnoreCase(summaryFile.getFilePath()))
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   358
				summaryFile.writeTo(new File(result));
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   359
		}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   360
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   361
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   362
	public void init(IEditorSite site, IEditorInput editorInput)
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   363
		throws PartInitException {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   364
		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   365
		String fileName = "Crash Analyser";
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   366
		
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   367
		// We don't support files, must be CrashFile or SummaryFile object
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   368
		if (editorInput instanceof IFileEditorInput) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   369
			throw new PartInitException("Not Valid Crash Analyser File.");
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   370
			
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   371
		// CrashFile or SummaryFile
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   372
		} else {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   373
			
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   374
			// output.crashxml file opened from Crash Analyser Main View
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   375
			if (editorInput instanceof CrashFile) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   376
				crashFile = (CrashFile)editorInput;
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   377
				
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   378
				if (crashFile.getThread() != null) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   379
					fileName = crashFile.getThread().getFullName();
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   380
				} else {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   381
					fileName = crashFile.getFileName();
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   382
				}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   383
				
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   384
				super.setTitleImage(ImageResourceManager.getImage(ImageKeys.DECODED_FILE));
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   385
			
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   386
			// Summary xml file opened from Crash Analyser Main View
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   387
			} else if (editorInput instanceof SummaryFile) {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   388
				summaryFile = (SummaryFile)editorInput;
4
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   389
				
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   390
				if (summaryFile.getThread() != null) {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   391
					fileName = summaryFile.getThread().getFullName();
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   392
				} else {
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   393
					fileName = summaryFile.getFileName();
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   394
				}
615035072f7e Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents: 0
diff changeset
   395
				
0
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   396
				super.setTitleImage(ImageResourceManager.getImage(ImageKeys.PARTIALLY_DECODED_FILE));
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   397
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   398
			// output.crashxml file opened from Carbide File menu
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   399
			} else {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   400
				crashFilePath = ((FileStoreEditorInput)editorInput).getURI().getPath();
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   401
				fileName = editorInput.getName();
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   402
				super.setTitleImage(ImageResourceManager.getImage(ImageKeys.DECODED_FILE));
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   403
			}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   404
		}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   405
		super.init(site, editorInput);
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   406
		super.setPartName(fileName);
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   407
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   408
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   409
	public boolean isSaveAsAllowed() {
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   410
		return true;
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   411
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   412
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   413
	public void resourceChanged(final IResourceChangeEvent event){
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   414
		// nothing to be done
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   415
	}
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   416
	
5ad7ad99af01 Initial version of CrashAnalyser under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   417
}