[Pydev-cvs] org.python.pydev/src/org/python/copiedfromeclipsesrc CopiedWorkbenchLabelProvider.java,
Brought to you by:
fabioz
From: Fabio Z. <fa...@us...> - 2008-08-13 21:12:08
|
Update of /cvsroot/pydev/org.python.pydev/src/org/python/copiedfromeclipsesrc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8061/src/org/python/copiedfromeclipsesrc Modified Files: CopiedWorkbenchLabelProvider.java Log Message: Synching from mercurial: - Pydev debugger watch working in eclipse 3.4 - Pydev debugger breakpoint properties accept new lines and tabs - Incremental find backspace works correctly - Interactive console Fixed problem when more attempts to connect were needed - Launch icons: Transparent background (thanks to Radim Kubacki) - Creating workbench test for debugger Index: CopiedWorkbenchLabelProvider.java =================================================================== RCS file: /cvsroot/pydev/org.python.pydev/src/org/python/copiedfromeclipsesrc/CopiedWorkbenchLabelProvider.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** CopiedWorkbenchLabelProvider.java 28 Jun 2008 13:29:19 -0000 1.3 --- CopiedWorkbenchLabelProvider.java 13 Aug 2008 21:12:16 -0000 1.4 *************** *** 12,15 **** --- 12,19 ---- *******************************************************************************/ + import org.eclipse.core.runtime.Assert; + import org.eclipse.core.runtime.IAdaptable; + import org.eclipse.core.runtime.Platform; + import org.eclipse.core.runtime.PlatformObject; import org.eclipse.jface.resource.ColorDescriptor; import org.eclipse.jface.resource.FontDescriptor; *************** *** 32,38 **** import org.eclipse.ui.IPropertyListener; import org.eclipse.ui.PlatformUI; - import org.eclipse.ui.internal.util.Util; import org.eclipse.ui.model.IWorkbenchAdapter; import org.eclipse.ui.model.IWorkbenchAdapter2; /** --- 36,42 ---- import org.eclipse.ui.IPropertyListener; import org.eclipse.ui.PlatformUI; import org.eclipse.ui.model.IWorkbenchAdapter; import org.eclipse.ui.model.IWorkbenchAdapter2; + import org.python.pydev.plugin.PydevPlugin; /** *************** *** 126,129 **** --- 130,188 ---- } + + /** + * Copied from Util.getAdapter (from eclipse 3.3: not available in eclipse 3.2) + * + * If it is possible to adapt the given object to the given type, this + * returns the adapter. Performs the following checks: + * + * <ol> + * <li>Returns <code>sourceObject</code> if it is an instance of the + * adapter type.</li> + * <li>If sourceObject implements IAdaptable, it is queried for adapters.</li> + * <li>If sourceObject is not an instance of PlatformObject (which would have + * already done so), the adapter manager is queried for adapters</li> + * </ol> + * + * Otherwise returns null. + * + * @param sourceObject + * object to adapt, or null + * @param adapterType + * type to adapt to + * @return a representation of sourceObject that is assignable to the + * adapter type, or null if no such representation exists + */ + public static Object utilGetAdapter(Object sourceObject, Class adapterType) { + Assert.isNotNull(adapterType); + if (sourceObject == null) { + return null; + } + if (adapterType.isInstance(sourceObject)) { + return sourceObject; + } + + if (sourceObject instanceof IAdaptable) { + IAdaptable adaptable = (IAdaptable) sourceObject; + + Object result = adaptable.getAdapter(adapterType); + if (result != null) { + // Sanity-check + Assert.isTrue(adapterType.isInstance(result)); + return result; + } + } + + if (!(sourceObject instanceof PlatformObject)) { + Object result = Platform.getAdapterManager().getAdapter(sourceObject, adapterType); + if (result != null) { + return result; + } + } + + return null; + } + + /** * Returns the implementation of IWorkbenchAdapter for the given *************** *** 134,138 **** */ protected final IWorkbenchAdapter getAdapter(Object o) { ! return (IWorkbenchAdapter)Util.getAdapter(o, IWorkbenchAdapter.class); } --- 193,197 ---- */ protected final IWorkbenchAdapter getAdapter(Object o) { ! return (IWorkbenchAdapter)utilGetAdapter(o, IWorkbenchAdapter.class); } *************** *** 145,149 **** */ protected final IWorkbenchAdapter2 getAdapter2(Object o) { ! return (IWorkbenchAdapter2)Util.getAdapter(o, IWorkbenchAdapter2.class); } --- 204,208 ---- */ protected final IWorkbenchAdapter2 getAdapter2(Object o) { ! return (IWorkbenchAdapter2)utilGetAdapter(o, IWorkbenchAdapter2.class); } *************** *** 165,169 **** descriptor = decorateImage(descriptor, element); ! return resourceManager.createImage(descriptor); } --- 224,233 ---- descriptor = decorateImage(descriptor, element); ! try { ! return resourceManager.createImage(descriptor); ! } catch (Exception e) { ! PydevPlugin.log(e); ! return null; ! } } *************** *** 211,215 **** } ! return resourceManager.createFont(FontDescriptor.createFrom(descriptor)); } --- 275,285 ---- } ! try{ ! return resourceManager.createFont(FontDescriptor.createFrom(descriptor)); ! } catch (Exception e) { ! PydevPlugin.log(e); ! return null; ! } ! } *************** *** 225,229 **** } ! return resourceManager.createColor(ColorDescriptor.createFrom(descriptor)); } } --- 295,305 ---- } ! try{ ! return resourceManager.createColor(ColorDescriptor.createFrom(descriptor)); ! } catch (Exception e) { ! PydevPlugin.log(e); ! return null; ! } ! } } |