org.symbian.tools.wrttools.debug.core/src/org/symbian/tools/wrttools/debug/internal/launch/WRTProjectWorkspaceBridge.java
author Eugene Ostroukhov <eugeneo@symbian.org>
Tue, 08 Jun 2010 15:33:30 -0700
changeset 359 dceb3fa18927
parent 356 8e561bc07a21
child 361 08e920dda3d9
permissions -rw-r--r--
Added support to open function from variables view
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
     1
package org.symbian.tools.wrttools.debug.internal.launch;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
     2
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
     3
import java.util.ArrayList;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
     4
import java.util.Collection;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
     5
356
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
     6
import org.chromium.debug.core.model.BreakpointSynchronizer.Callback;
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
     7
import org.chromium.debug.core.model.BreakpointSynchronizer.Direction;
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
     8
import org.chromium.debug.core.model.ChromiumLineBreakpoint;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
     9
import org.chromium.debug.core.model.DebugTargetImpl;
356
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
    10
import org.chromium.debug.core.model.VmResource;
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    11
import org.chromium.debug.core.model.WorkspaceBridge;
115
d367ed1b2991 Bug 1665 (HTML Files Cannot be Debugged) was fixed
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 104
diff changeset
    12
import org.chromium.sdk.CallFrame;
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    13
import org.chromium.sdk.JavascriptVm;
356
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
    14
import org.chromium.sdk.JavascriptVm.ScriptsCallback;
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    15
import org.chromium.sdk.Script;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    16
import org.eclipse.core.resources.IFile;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    17
import org.eclipse.core.resources.IMarker;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    18
import org.eclipse.core.resources.IProject;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    19
import org.eclipse.core.resources.IResource;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    20
import org.eclipse.core.runtime.CoreException;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    21
import org.eclipse.debug.core.DebugPlugin;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    22
import org.eclipse.debug.core.ILaunch;
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    23
import org.eclipse.debug.core.sourcelookup.ISourceContainer;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    24
import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    25
import org.eclipse.debug.core.sourcelookup.containers.ProjectSourceContainer;
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    26
import org.symbian.tools.wrttools.debug.internal.Activator;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    27
import org.symbian.tools.wrttools.debug.internal.model.ResourceManager;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    28
import org.symbian.tools.wrttools.debug.internal.model.WorkspaceBreakpointHandler;
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    29
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    30
public class WRTProjectWorkspaceBridge implements WorkspaceBridge {
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    31
    public static final class Factory implements WorkspaceBridge.Factory {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    32
        private final IProject project;
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    33
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    34
        public Factory(IProject project) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    35
            this.project = project;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    36
        }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    37
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    38
        public WorkspaceBridge attachedToVm(DebugTargetImpl debugTargetImpl, JavascriptVm javascriptVm) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    39
            return new WRTProjectWorkspaceBridge(debugTargetImpl, javascriptVm, project);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    40
        }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    41
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    42
        public String getDebugModelIdentifier() {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    43
            return DEBUG_MODEL_ID;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    44
        }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    45
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    46
        public JsLabelProvider getLabelProvider() {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    47
            return new WrtLabelProvider();
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    48
        }
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    49
    }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    50
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    51
    public final static String DEBUG_MODEL_ID = "org.symbian.debug";
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    52
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    53
    private final BreakpointHandler breakpointHandler;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    54
    private final JavascriptVm javascriptVm;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    55
    private final IProject project;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    56
    private final ResourceManager resourceManager;
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    57
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    58
    public WRTProjectWorkspaceBridge(DebugTargetImpl debugTargetImpl, JavascriptVm javascriptVm, IProject project) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    59
        this.javascriptVm = javascriptVm;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    60
        this.project = project;
356
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
    61
        this.resourceManager = new ResourceManager();
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    62
        this.sourceLocator = new WebApplicationSourceLocator(resourceManager);
356
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
    63
        breakpointHandler = new WorkspaceBreakpointHandler(debugTargetImpl, resourceManager);
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    64
        ILaunch launch = debugTargetImpl.getLaunch();
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    65
        try {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    66
            sourceLocator.initializeDefaults(launch.getLaunchConfiguration());
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    67
            sourceLocator.setSourceContainers(new ISourceContainer[] { new ProjectSourceContainer(project, false) });
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    68
        } catch (CoreException e) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    69
            throw new RuntimeException(e);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    70
        }
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    71
        launch.setSourceLocator(sourceLocator);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    72
    }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    73
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    74
    public void beforeDetach() {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    75
        // Do nothing
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    76
    }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    77
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    78
    public BreakpointHandler getBreakpointHandler() {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    79
        return breakpointHandler;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    80
    }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    81
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    82
    public void handleVmResetEvent() {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    83
        resourceManager.clear();
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    84
    }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    85
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    86
    public void launchRemoved() {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    87
        // Do nothing
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    88
    }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    89
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    90
    public void reloadScriptsAtStart() {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    91
        javascriptVm.getScripts(new ScriptsCallback() {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    92
            public void failure(String errorMessage) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    93
                Activator.log(errorMessage);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    94
            }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
    95
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    96
            public void success(Collection<Script> scripts) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    97
                if (!javascriptVm.isAttached()) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    98
                    return;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
    99
                }
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   100
                for (Script script : scripts) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   101
                    resourceManager.addScript(script);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   102
                }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
   103
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   104
                IMarker[] markers;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   105
                try {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   106
                    markers = project.findMarkers(ChromiumLineBreakpoint.BREAKPOINT_MARKER, true,
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   107
                            IResource.DEPTH_INFINITE);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   108
                    Collection<ChromiumLineBreakpoint> breakpoints = new ArrayList<ChromiumLineBreakpoint>(
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   109
                            markers.length);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   110
                    for (IMarker marker : markers) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   111
                        // If it is not ChromiumLineBreakpoint -
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   112
                        // something's gone horribly wrong. Better get
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   113
                        // ClassCastException
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   114
                        ChromiumLineBreakpoint breakpoint = (ChromiumLineBreakpoint) DebugPlugin.getDefault()
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   115
                                .getBreakpointManager().getBreakpoint(marker);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   116
                        breakpointHandler.breakpointAdded(breakpoint);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   117
                        breakpoints.add(breakpoint);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   118
                    }
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   119
                } catch (CoreException e) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   120
                    Activator.log(e);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   121
                }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
   122
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   123
            }
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   124
        });
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   125
    }
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   126
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   127
    public void scriptLoaded(Script newScript) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   128
        resourceManager.addScript(newScript);
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   129
    }
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
   130
359
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   131
    public int getLineNumber(CallFrame stackFrame) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   132
        int offset = 0;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   133
        Script script = stackFrame.getScript();
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   134
        if (script != null) {
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   135
            offset = script.getStartLine();
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   136
        }
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   137
        return offset + stackFrame.getLineNumber() + 1;
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   138
    }
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   139
dceb3fa18927 Added support to open function from variables view
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 356
diff changeset
   140
    private final ISourceLookupDirector sourceLocator;
115
d367ed1b2991 Bug 1665 (HTML Files Cannot be Debugged) was fixed
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 104
diff changeset
   141
356
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   142
    public VmResource findVmResourceFromWorkspaceFile(IFile resource) throws CoreException {
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   143
        System.out.println(resource);
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   144
        return null;
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   145
    }
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   146
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   147
    public void reloadScript(Script script) {
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   148
        System.out.println(script);
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   149
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   150
    }
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   151
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   152
    public void synchronizeBreakpoints(Direction direction, Callback callback) {
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   153
        System.out.println(direction);
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   154
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   155
    }
8e561bc07a21 Migrated to latest Chrome Java SDK
Eugene Ostroukhov <eugeneo@symbian.org>
parents: 115
diff changeset
   156
52
f577ea64429e Migrated to unmodified Chromium Development Tools version
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff changeset
   157
}