mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
Bug 343895: Missing Remote Shell entry in debug view
This commit is contained in:
parent
664ef4c42f
commit
514f88bf08
1 changed files with 7 additions and 12 deletions
|
@ -12,7 +12,7 @@ package org.eclipse.cdt.dsf.gdb.internal.ui.viewmodel.launch;
|
||||||
|
|
||||||
import org.eclipse.cdt.dsf.concurrent.RequestMonitor;
|
import org.eclipse.cdt.dsf.concurrent.RequestMonitor;
|
||||||
import org.eclipse.cdt.dsf.debug.ui.viewmodel.launch.StandardProcessVMNode;
|
import org.eclipse.cdt.dsf.debug.ui.viewmodel.launch.StandardProcessVMNode;
|
||||||
import org.eclipse.cdt.dsf.gdb.launching.GDBProcess;
|
import org.eclipse.cdt.dsf.gdb.launching.InferiorRuntimeProcess;
|
||||||
import org.eclipse.cdt.dsf.ui.viewmodel.AbstractVMProvider;
|
import org.eclipse.cdt.dsf.ui.viewmodel.AbstractVMProvider;
|
||||||
import org.eclipse.cdt.dsf.ui.viewmodel.VMDelta;
|
import org.eclipse.cdt.dsf.ui.viewmodel.VMDelta;
|
||||||
import org.eclipse.debug.core.DebugEvent;
|
import org.eclipse.debug.core.DebugEvent;
|
||||||
|
@ -30,15 +30,10 @@ import org.eclipse.jface.viewers.TreePath;
|
||||||
* It does not implement the label provider functionality, so the default
|
* It does not implement the label provider functionality, so the default
|
||||||
* adapters should be used to retrieve the label.
|
* adapters should be used to retrieve the label.
|
||||||
*
|
*
|
||||||
* This version is specific to DSF-GDB to only show the GDB process.
|
* This version is specific to DSF-GDB to no longer show the inferiors.
|
||||||
*/
|
*/
|
||||||
public class GdbStandardProcessVMNode extends StandardProcessVMNode {
|
public class GdbStandardProcessVMNode extends StandardProcessVMNode {
|
||||||
|
|
||||||
// We only want to show the GDB process and not the inferiors.
|
|
||||||
// The inferior was not considered valuable and would waste space
|
|
||||||
// especially in multi-process debugging
|
|
||||||
private final static Class<?> fProcessType = GDBProcess.class;
|
|
||||||
|
|
||||||
public GdbStandardProcessVMNode(AbstractVMProvider provider) {
|
public GdbStandardProcessVMNode(AbstractVMProvider provider) {
|
||||||
super(provider);
|
super(provider);
|
||||||
}
|
}
|
||||||
|
@ -66,7 +61,7 @@ public class GdbStandardProcessVMNode extends StandardProcessVMNode {
|
||||||
*/
|
*/
|
||||||
int count = 0;
|
int count = 0;
|
||||||
for (IProcess process : launch.getProcesses()) {
|
for (IProcess process : launch.getProcesses()) {
|
||||||
if (fProcessType.isAssignableFrom(process.getClass())) {
|
if (!(process instanceof InferiorRuntimeProcess)) {
|
||||||
update.setChild(process, count++);
|
update.setChild(process, count++);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -88,7 +83,7 @@ public class GdbStandardProcessVMNode extends StandardProcessVMNode {
|
||||||
|
|
||||||
int count = 0;
|
int count = 0;
|
||||||
for (IProcess process : launch.getProcesses()) {
|
for (IProcess process : launch.getProcesses()) {
|
||||||
if (fProcessType.isAssignableFrom(process.getClass())) {
|
if (!(process instanceof InferiorRuntimeProcess)) {
|
||||||
count++;
|
count++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -111,7 +106,7 @@ public class GdbStandardProcessVMNode extends StandardProcessVMNode {
|
||||||
|
|
||||||
boolean hasChildren = false;
|
boolean hasChildren = false;
|
||||||
for (IProcess process : launch.getProcesses()) {
|
for (IProcess process : launch.getProcesses()) {
|
||||||
if (fProcessType.isAssignableFrom(process.getClass())) {
|
if (!(process instanceof InferiorRuntimeProcess)) {
|
||||||
hasChildren = true;
|
hasChildren = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -140,7 +135,7 @@ public class GdbStandardProcessVMNode extends StandardProcessVMNode {
|
||||||
int myFlags = 0;
|
int myFlags = 0;
|
||||||
if (e instanceof DebugEvent) {
|
if (e instanceof DebugEvent) {
|
||||||
DebugEvent de = (DebugEvent)e;
|
DebugEvent de = (DebugEvent)e;
|
||||||
if (fProcessType.isAssignableFrom(de.getSource().getClass()) &&
|
if (!(de.getSource() instanceof InferiorRuntimeProcess) &&
|
||||||
(de.getKind() == DebugEvent.CHANGE ||
|
(de.getKind() == DebugEvent.CHANGE ||
|
||||||
de.getKind() == DebugEvent.CREATE ||
|
de.getKind() == DebugEvent.CREATE ||
|
||||||
de.getKind() == DebugEvent.TERMINATE) )
|
de.getKind() == DebugEvent.TERMINATE) )
|
||||||
|
@ -153,7 +148,7 @@ public class GdbStandardProcessVMNode extends StandardProcessVMNode {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void buildDelta(Object e, VMDelta parent, int nodeOffset, RequestMonitor requestMonitor) {
|
public void buildDelta(Object e, VMDelta parent, int nodeOffset, RequestMonitor requestMonitor) {
|
||||||
if (e instanceof DebugEvent && fProcessType.isAssignableFrom(((DebugEvent)e).getSource().getClass())) {
|
if (e instanceof DebugEvent && !(((DebugEvent)e).getSource() instanceof InferiorRuntimeProcess)) {
|
||||||
DebugEvent de = (DebugEvent)e;
|
DebugEvent de = (DebugEvent)e;
|
||||||
if (de.getKind() == DebugEvent.CHANGE) {
|
if (de.getKind() == DebugEvent.CHANGE) {
|
||||||
handleChange(de, parent);
|
handleChange(de, parent);
|
||||||
|
|
Loading…
Add table
Reference in a new issue