mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-06-07 17:56:01 +02:00
fixed bug# 90440
This commit is contained in:
parent
e83f41c613
commit
64ba811365
4 changed files with 31 additions and 5 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2005-04-06 David Inglis
|
||||||
|
Fixed bug# 90440
|
||||||
|
* plugin.xml
|
||||||
|
* src/org/eclipse/cdt/internal/ui/CElementAdapterFactory.java
|
||||||
|
* src/org/eclipse/cdt/internal/ui/CWorkbenchAdapter.java
|
||||||
|
|
||||||
2005-04-04 Alain Magloire
|
2005-04-04 Alain Magloire
|
||||||
Move to Eclipse-31M6
|
Move to Eclipse-31M6
|
||||||
* src/org/eclipse/cdt/internal/ui/cview/CopyAction.java
|
* src/org/eclipse/cdt/internal/ui/cview/CopyAction.java
|
||||||
|
|
|
@ -64,6 +64,9 @@
|
||||||
<adapter
|
<adapter
|
||||||
type="org.eclipse.ui.views.properties.IPropertySource">
|
type="org.eclipse.ui.views.properties.IPropertySource">
|
||||||
</adapter>
|
</adapter>
|
||||||
|
<adapter type="org.eclipse.ui.progress.IDeferredWorkbenchAdapter"/>
|
||||||
|
<adapter type="org.eclipse.ui.IActionFilter"/>
|
||||||
|
<adapter type="org.eclipse.core.resources.IWorkspaceRoot"/>
|
||||||
</factory>
|
</factory>
|
||||||
</extension>
|
</extension>
|
||||||
|
|
||||||
|
|
|
@ -12,6 +12,7 @@ import org.eclipse.core.resources.IProject;
|
||||||
import org.eclipse.core.resources.IResource;
|
import org.eclipse.core.resources.IResource;
|
||||||
import org.eclipse.core.resources.IWorkspaceRoot;
|
import org.eclipse.core.resources.IWorkspaceRoot;
|
||||||
import org.eclipse.core.runtime.IAdapterFactory;
|
import org.eclipse.core.runtime.IAdapterFactory;
|
||||||
|
import org.eclipse.ui.IActionFilter;
|
||||||
import org.eclipse.ui.model.IWorkbenchAdapter;
|
import org.eclipse.ui.model.IWorkbenchAdapter;
|
||||||
import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
|
import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
|
||||||
import org.eclipse.ui.views.properties.FilePropertySource;
|
import org.eclipse.ui.views.properties.FilePropertySource;
|
||||||
|
@ -29,7 +30,8 @@ public class CElementAdapterFactory implements IAdapterFactory {
|
||||||
IWorkbenchAdapter.class,
|
IWorkbenchAdapter.class,
|
||||||
IDeferredWorkbenchAdapter.class,
|
IDeferredWorkbenchAdapter.class,
|
||||||
IProject.class,
|
IProject.class,
|
||||||
IWorkspaceRoot.class
|
IWorkspaceRoot.class,
|
||||||
|
IActionFilter.class
|
||||||
};
|
};
|
||||||
|
|
||||||
private static CWorkbenchAdapter fgCWorkbenchAdapter= new CWorkbenchAdapter();
|
private static CWorkbenchAdapter fgCWorkbenchAdapter= new CWorkbenchAdapter();
|
||||||
|
@ -75,6 +77,8 @@ public class CElementAdapterFactory implements IAdapterFactory {
|
||||||
return fgDeferredCWorkbenchAdapter;
|
return fgDeferredCWorkbenchAdapter;
|
||||||
} else if (IWorkbenchAdapter.class.equals(key)) {
|
} else if (IWorkbenchAdapter.class.equals(key)) {
|
||||||
return fgCWorkbenchAdapter;
|
return fgCWorkbenchAdapter;
|
||||||
|
} else if (IActionFilter.class.equals(key)) {
|
||||||
|
return fgCWorkbenchAdapter;
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,20 +5,21 @@ package org.eclipse.cdt.internal.ui;
|
||||||
* All Rights Reserved.
|
* All Rights Reserved.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import org.eclipse.jface.resource.ImageDescriptor;
|
|
||||||
import org.eclipse.ui.model.IWorkbenchAdapter;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.core.model.CModelException;
|
import org.eclipse.cdt.core.model.CModelException;
|
||||||
import org.eclipse.cdt.core.model.ICElement;
|
import org.eclipse.cdt.core.model.ICElement;
|
||||||
import org.eclipse.cdt.core.model.IParent;
|
import org.eclipse.cdt.core.model.IParent;
|
||||||
import org.eclipse.cdt.internal.ui.viewsupport.CElementImageProvider;
|
import org.eclipse.cdt.internal.ui.viewsupport.CElementImageProvider;
|
||||||
import org.eclipse.cdt.ui.CElementLabelProvider;
|
import org.eclipse.cdt.ui.CElementLabelProvider;
|
||||||
import org.eclipse.cdt.ui.CUIPlugin;
|
import org.eclipse.cdt.ui.CUIPlugin;
|
||||||
|
import org.eclipse.core.resources.IResource;
|
||||||
|
import org.eclipse.jface.resource.ImageDescriptor;
|
||||||
|
import org.eclipse.ui.IActionFilter;
|
||||||
|
import org.eclipse.ui.model.IWorkbenchAdapter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* An imlementation of the IWorkbenchAdapter for CElements.
|
* An imlementation of the IWorkbenchAdapter for CElements.
|
||||||
*/
|
*/
|
||||||
public class CWorkbenchAdapter implements IWorkbenchAdapter {
|
public class CWorkbenchAdapter implements IWorkbenchAdapter, IActionFilter {
|
||||||
|
|
||||||
private static final Object[] fgEmptyArray = new Object[0];
|
private static final Object[] fgEmptyArray = new Object[0];
|
||||||
private CElementImageProvider fImageProvider;
|
private CElementImageProvider fImageProvider;
|
||||||
|
@ -77,4 +78,16 @@ public class CWorkbenchAdapter implements IWorkbenchAdapter {
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean testAttribute(Object target, String name, String value) {
|
||||||
|
ICElement element = (ICElement)target;
|
||||||
|
IResource resource = element.getResource();
|
||||||
|
if (resource != null) {
|
||||||
|
IActionFilter filter = (IActionFilter)resource.getAdapter(IActionFilter.class);
|
||||||
|
if (filter != null) {
|
||||||
|
return filter.testAttribute(resource, name, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue