mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
[212942] - [modules] Modules Detail Viewer should have an enablement expression
This commit is contained in:
parent
8a84fa9f72
commit
2f40ba594e
2 changed files with 23 additions and 0 deletions
|
@ -337,6 +337,13 @@
|
||||||
<detailFactories
|
<detailFactories
|
||||||
class="org.eclipse.dd.dsf.debug.internal.provisional.ui.viewmodel.modules.detail.ModuleDetailPaneFactory"
|
class="org.eclipse.dd.dsf.debug.internal.provisional.ui.viewmodel.modules.detail.ModuleDetailPaneFactory"
|
||||||
id="org.eclipse.dd.dsf.debug.ui.viewmodel.moduleDetailPaneFactory">
|
id="org.eclipse.dd.dsf.debug.ui.viewmodel.moduleDetailPaneFactory">
|
||||||
|
<enablement>
|
||||||
|
<with variable="selection">
|
||||||
|
<iterate>
|
||||||
|
<instanceof value="org.eclipse.dd.dsf.debug.internal.provisional.ui.viewmodel.modules.ModulesVMNode$ModuleVMContext"/>
|
||||||
|
</iterate>
|
||||||
|
</with>
|
||||||
|
</enablement>
|
||||||
</detailFactories>
|
</detailFactories>
|
||||||
</extension>
|
</extension>
|
||||||
|
|
||||||
|
|
|
@ -17,6 +17,7 @@ import org.eclipse.dd.dsf.concurrent.DataRequestMonitor;
|
||||||
import org.eclipse.dd.dsf.concurrent.DsfRunnable;
|
import org.eclipse.dd.dsf.concurrent.DsfRunnable;
|
||||||
import org.eclipse.dd.dsf.concurrent.IDsfStatusConstants;
|
import org.eclipse.dd.dsf.concurrent.IDsfStatusConstants;
|
||||||
import org.eclipse.dd.dsf.concurrent.RequestMonitor;
|
import org.eclipse.dd.dsf.concurrent.RequestMonitor;
|
||||||
|
import org.eclipse.dd.dsf.datamodel.IDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.internal.ui.DsfDebugUIPlugin;
|
import org.eclipse.dd.dsf.debug.internal.ui.DsfDebugUIPlugin;
|
||||||
import org.eclipse.dd.dsf.debug.service.IModules;
|
import org.eclipse.dd.dsf.debug.service.IModules;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl;
|
import org.eclipse.dd.dsf.debug.service.IRunControl;
|
||||||
|
@ -28,6 +29,7 @@ import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.dsf.ui.viewmodel.VMDelta;
|
import org.eclipse.dd.dsf.ui.viewmodel.VMDelta;
|
||||||
import org.eclipse.dd.dsf.ui.viewmodel.datamodel.AbstractDMVMNode;
|
import org.eclipse.dd.dsf.ui.viewmodel.datamodel.AbstractDMVMNode;
|
||||||
import org.eclipse.dd.dsf.ui.viewmodel.datamodel.AbstractDMVMProvider;
|
import org.eclipse.dd.dsf.ui.viewmodel.datamodel.AbstractDMVMProvider;
|
||||||
|
import org.eclipse.dd.dsf.ui.viewmodel.datamodel.IDMVMContext;
|
||||||
import org.eclipse.debug.internal.ui.viewers.model.provisional.IChildrenUpdate;
|
import org.eclipse.debug.internal.ui.viewers.model.provisional.IChildrenUpdate;
|
||||||
import org.eclipse.debug.internal.ui.viewers.model.provisional.IElementLabelProvider;
|
import org.eclipse.debug.internal.ui.viewers.model.provisional.IElementLabelProvider;
|
||||||
import org.eclipse.debug.internal.ui.viewers.model.provisional.ILabelUpdate;
|
import org.eclipse.debug.internal.ui.viewers.model.provisional.ILabelUpdate;
|
||||||
|
@ -37,6 +39,16 @@ import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelDelta;
|
||||||
public class ModulesVMNode extends AbstractDMVMNode
|
public class ModulesVMNode extends AbstractDMVMNode
|
||||||
implements IElementLabelProvider
|
implements IElementLabelProvider
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* Marker type for the modules VM context. It allows action enablement
|
||||||
|
* expressions to check for module context type.
|
||||||
|
*/
|
||||||
|
public class ModuleVMContext extends DMVMContext {
|
||||||
|
protected ModuleVMContext(IDMContext dmc) {
|
||||||
|
super(dmc);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public ModulesVMNode(AbstractDMVMProvider provider, DsfSession session) {
|
public ModulesVMNode(AbstractDMVMProvider provider, DsfSession session) {
|
||||||
super(provider, session, IModuleDMContext.class);
|
super(provider, session, IModuleDMContext.class);
|
||||||
}
|
}
|
||||||
|
@ -70,6 +82,10 @@ public class ModulesVMNode extends AbstractDMVMNode
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected IDMVMContext createVMContext(IDMContext dmc) {
|
||||||
|
return new ModuleVMContext(dmc);
|
||||||
|
}
|
||||||
|
|
||||||
public void update(final ILabelUpdate[] updates) {
|
public void update(final ILabelUpdate[] updates) {
|
||||||
try {
|
try {
|
||||||
|
|
Loading…
Add table
Reference in a new issue