import java.util.Map;
import java.util.Vector;
+import net.sourceforge.phpdt.internal.core.JavaProject;
import net.sourceforge.phpdt.internal.debug.core.breakpoints.PHPLineBreakpoint;
import net.sourceforge.phpdt.internal.debug.core.model.PHPDebugTarget;
import net.sourceforge.phpdt.internal.debug.core.model.PHPStackFrame;
import net.sourceforge.phpdt.internal.debug.core.model.PHPThread;
import net.sourceforge.phpdt.internal.debug.core.model.PHPVariable;
import net.sourceforge.phpeclipse.PHPeclipsePlugin;
+import net.sourceforge.phpeclipse.actions.PHPEclipseShowAction;
+import org.eclipse.core.internal.resources.Project;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.Path;
import org.eclipse.debug.core.DebugException;
import org.eclipse.debug.core.DebugPlugin;
import org.eclipse.debug.core.model.IBreakpoint;
+import org.eclipse.swt.browser.Browser;
public class PHPDBGProxy {
public PHPDBGProxy () {
thisProxy = this;
}
-
+
+ /**
+ * updateView
+ * Clean up the view, but leave the Debug session running.
+ * added by ed_mann
+ */
+ public void updateView(){
+ getDebugTarget().updateThreads(PHPMainThread);
+ }
+
/**
* @param remote
* @param remoteSourcePath
*/
public void stop () {
phpLoop.setShouldStop (); // Notify the thread's 'run loop' to stop
-
if (DBGInt != null) { // If we have a DBG interface linked with this proxy
DBGInt.setShouldStop (); // Notify the DBG interface to stop the waiting for response
- }
-
- if (!remote) { // If it's not a remote proxy session
- try {
- getDebugTarget ().getProcess ().terminate (); //
- } catch (DebugException e) {
- e.printStackTrace ();
- }
}
+// if (!remote) { // If it's not a remote proxy session
+// try {
+// getDebugTarget ().getProcess ().terminate (); //
+// } catch (DebugException e) {
+// e.printStackTrace ();
+// }
+// }
+
phpLoop.notifyWait ();
}
filename = phpLBP.getMarker().getResource().getProjectRelativePath();
filename = remoteSourcePath.append (filename);
} else {
- filename = phpLBP.getMarker().getResource().getLocation();
+ filename = phpLBP.getMarker().getResource().getFullPath();
}
String path = filename.toOSString();
localPath = new Path (local); // Get the remote/server side path of the mapping
if (localPath.isPrefixOf (filename)) { // Starts the remote/server side file path with the remote/server side mapping path
- // dann prefix abhängen und den remote path davorhägen
+ // dann prefix abh�ngen und den remote path davorh�gen
newpath = filename.removeFirstSegments (localPath.matchingFirstSegments (filename));
newpath = remotePath.append (newpath);
path = newpath.toString ();
this.debugTarget = debugTarget;
debugTarget.setPHPDBGProxy(this);
}
-
+
/**
* This method is called by a stackframe.
* It reads the variables from PHP via DBG
shouldStop = false;
this.setName ("PHPDebuggerLoop");
}
-
+
/**
*
*/
public void run () {
try {
int i;
- int timeout;
long interval = 200; // Wait 200 ms maximum for a DBG response
boolean newconnect = false; //
Socket newSocket = null;
PHPMainThread = new PHPThread (getDebugTarget (), getPort ());
PHPMainThread.setName ("Thread [main]");
- timeout = 0;
// while ((getDebugTarget() == null) && (timeout < 100)) {
// sleep(100);