Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 71818 Details for
Bug 192778
[UI] Easy way to browse contacts via key shortcut and search dialog
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
org.eclipse.ecf.patch
org.eclipse.ecf.patch (text/plain), 20.77 KB, created by
Chris Aniszczyk
on 2007-06-19 20:08:38 EDT
(
hide
)
Description:
org.eclipse.ecf.patch
Filename:
MIME Type:
Creator:
Chris Aniszczyk
Created:
2007-06-19 20:08:38 EDT
Size:
20.77 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.ecf.ui >Index: src/org/eclipse/ecf/internal/ui/IImageFiles.java >=================================================================== >RCS file: /cvsroot/technology/org.eclipse.ecf/plugins/org.eclipse.ecf.ui/src/org/eclipse/ecf/internal/ui/IImageFiles.java,v >retrieving revision 1.6 >diff -u -r1.6 IImageFiles.java >--- src/org/eclipse/ecf/internal/ui/IImageFiles.java 23 May 2007 05:18:35 -0000 1.6 >+++ src/org/eclipse/ecf/internal/ui/IImageFiles.java 19 Jun 2007 23:59:48 -0000 >@@ -1,5 +1,5 @@ > /**************************************************************************** >- * Copyright (c) 2004 Composent, Inc. and others. >+ * Copyright (c) 2004, 2007 Composent, Inc. and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -44,4 +44,7 @@ > public static final String CHAT_WIZARD = "icons/wizards/chat_wizard.png"; //$NON_NLS-$1 > > public static final String COLLABORATION_WIZARD = "icons/wizards/collaboration_wizard.png"; //$NON_NLS-$1 >+ >+ public static final String COMMUNICATIONS = "icons/enabled/communications.gif"; //$NON_NLS-$1 >+ > } >Index: src/org/eclipse/ecf/internal/ui/Activator.java >=================================================================== >RCS file: /cvsroot/technology/org.eclipse.ecf/plugins/org.eclipse.ecf.ui/src/org/eclipse/ecf/internal/ui/Activator.java,v >retrieving revision 1.9 >diff -u -r1.9 Activator.java >--- src/org/eclipse/ecf/internal/ui/Activator.java 23 May 2007 05:18:35 -0000 1.9 >+++ src/org/eclipse/ecf/internal/ui/Activator.java 19 Jun 2007 23:59:48 -0000 >@@ -1,5 +1,5 @@ > /**************************************************************************** >- * Copyright (c) 2004 Composent, Inc. and others. >+ * Copyright (c) 2004, 2007 Composent, Inc. and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -159,6 +159,10 @@ > registry.put(SharedImages.IMG_IDENTITY, AbstractUIPlugin > .imageDescriptorFromPlugin(PLUGIN_ID, IImageFiles.IDENTITY) > .createImage()); >+ >+ registry.put(SharedImages.IMG_COMMUNICATIONS, AbstractUIPlugin >+ .imageDescriptorFromPlugin(PLUGIN_ID, IImageFiles.COMMUNICATIONS) >+ .createImage()); > > return registry; > } >Index: META-INF/MANIFEST.MF >=================================================================== >RCS file: /cvsroot/technology/org.eclipse.ecf/plugins/org.eclipse.ecf.ui/META-INF/MANIFEST.MF,v >retrieving revision 1.106 >diff -u -r1.106 MANIFEST.MF >--- META-INF/MANIFEST.MF 27 May 2007 18:16:37 -0000 1.106 >+++ META-INF/MANIFEST.MF 19 Jun 2007 23:59:48 -0000 >@@ -25,12 +25,12 @@ > Eclipse-BuddyPolicy: dependent > Bundle-RequiredExecutionEnvironment: CDC-1.1/Foundation-1.1, > J2SE-1.4 >-Require-Bundle: org.eclipse.ecf, >- org.eclipse.ecf.presence, >+Require-Bundle: org.eclipse.core.runtime, > org.eclipse.jface.text, > org.eclipse.ui, >- org.eclipse.core.runtime, >- org.eclipse.ecf.filetransfer, > org.eclipse.ui.editors, >- org.eclipse.ecf.sharedobject >+ org.eclipse.ecf, >+ org.eclipse.ecf.filetransfer, >+ org.eclipse.ecf.sharedobject, >+ org.eclipse.ecf.presence > >Index: src/org/eclipse/ecf/ui/SharedImages.java >=================================================================== >RCS file: /cvsroot/technology/org.eclipse.ecf/plugins/org.eclipse.ecf.ui/src/org/eclipse/ecf/ui/SharedImages.java,v >retrieving revision 1.6 >diff -u -r1.6 SharedImages.java >--- src/org/eclipse/ecf/ui/SharedImages.java 23 May 2007 05:18:35 -0000 1.6 >+++ src/org/eclipse/ecf/ui/SharedImages.java 19 Jun 2007 23:59:48 -0000 >@@ -53,6 +53,8 @@ > > public static final String IMG_COLLABORATION_WIZARD = "IMG_COLLABORATION_WIZARD"; //$NON-NLS-1$ > >+ public static final String IMG_COMMUNICATIONS = "IMG_COMMUNICATIONS"; //$NON-NLS-1$ >+ > public static ImageDescriptor getImageDescriptor(String key) { > return Activator.getDefault().getImageRegistry().getDescriptor(key); > } >Index: plugin.xml >=================================================================== >RCS file: /cvsroot/technology/org.eclipse.ecf/plugins/org.eclipse.ecf.ui/plugin.xml,v >retrieving revision 1.34 >diff -u -r1.34 plugin.xml >--- plugin.xml 27 May 2007 18:16:53 -0000 1.34 >+++ plugin.xml 19 Jun 2007 23:59:48 -0000 >@@ -43,4 +43,11 @@ > name="%perspective.name"> > </perspective> > </extension> >+ <extension >+ point="org.eclipse.ui.commands"> >+ <category >+ id="org.eclipse.ecf.ui.commands.category" >+ name="Communications"> >+ </category> >+ </extension> > </plugin> >#P org.eclipse.ecf.presence.ui >Index: src/org/eclipse/ecf/internal/presence/ui/Activator.java >=================================================================== >RCS file: /cvsroot/technology/org.eclipse.ecf/plugins/org.eclipse.ecf.presence.ui/src/org/eclipse/ecf/internal/presence/ui/Activator.java,v >retrieving revision 1.7 >diff -u -r1.7 Activator.java >--- src/org/eclipse/ecf/internal/presence/ui/Activator.java 29 May 2007 07:08:38 -0000 1.7 >+++ src/org/eclipse/ecf/internal/presence/ui/Activator.java 19 Jun 2007 23:59:48 -0000 >@@ -11,6 +11,7 @@ > package org.eclipse.ecf.internal.presence.ui; > > import org.eclipse.core.runtime.IExtensionRegistry; >+import org.eclipse.ecf.core.IContainerManager; > import org.eclipse.ecf.presence.service.IPresenceService; > import org.eclipse.ui.plugin.AbstractUIPlugin; > import org.osgi.framework.BundleContext; >@@ -32,6 +33,8 @@ > > private ServiceTracker extensionRegistryTracker = null; > >+ private ServiceTracker containerManagerTracker = null; >+ > private BundleContext context; > > /** >@@ -78,6 +81,10 @@ > extensionRegistryTracker.close(); > extensionRegistryTracker = null; > } >+ if (containerManagerTracker != null) { >+ containerManagerTracker.close(); >+ containerManagerTracker = null; >+ } > this.context = null; > super.stop(context); > } >@@ -100,5 +107,13 @@ > return (IExtensionRegistry) extensionRegistryTracker.getService(); > } > >+ public IContainerManager getContainerManager() { >+ if (containerManagerTracker == null) { >+ containerManagerTracker = new ServiceTracker(context, >+ IContainerManager.class.getName(), null); >+ containerManagerTracker.open(); >+ } >+ return (IContainerManager) containerManagerTracker.getService(); >+ } > > } >Index: plugin.xml >=================================================================== >RCS file: /cvsroot/technology/org.eclipse.ecf/plugins/org.eclipse.ecf.presence.ui/plugin.xml,v >retrieving revision 1.15 >diff -u -r1.15 plugin.xml >--- plugin.xml 29 May 2007 07:08:38 -0000 1.15 >+++ plugin.xml 19 Jun 2007 23:59:48 -0000 >@@ -109,5 +109,29 @@ > </view> > </perspectiveExtension> > </extension> >+ <extension >+ point="org.eclipse.ui.commands"> >+ <command >+ categoryId="org.eclipse.ecf.ui.commands.category" >+ id="org.eclipse.ecf.presence.ui.commands.browse" >+ name="Browse Rosters"> >+ </command> >+ </extension> >+ <extension >+ point="org.eclipse.ui.handlers"> >+ <handler >+ class="org.eclipse.ecf.presence.ui.handlers.BrowseHandler" >+ commandId="org.eclipse.ecf.presence.ui.commands.browse"> >+ </handler> >+ </extension> >+ <extension >+ point="org.eclipse.ui.bindings"> >+ <key >+ commandId="org.eclipse.ecf.presence.ui.commands.browse" >+ contextId="org.eclipse.ui.contexts.window" >+ schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" >+ sequence="M1+M2+P"> >+ </key> >+ </extension> > > </plugin> >Index: src/org/eclipse/ecf/presence/ui/handlers/BrowseHandler.java >=================================================================== >RCS file: src/org/eclipse/ecf/presence/ui/handlers/BrowseHandler.java >diff -N src/org/eclipse/ecf/presence/ui/handlers/BrowseHandler.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/ecf/presence/ui/handlers/BrowseHandler.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,76 @@ >+/******************************************************************************* >+ * Copyright (c) 2007 Chris Aniszczyk, and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * Chris Aniszczyk <caniszczyk@gmail.com> - initial API and implementation >+ ******************************************************************************/ >+package org.eclipse.ecf.presence.ui.handlers; >+ >+import org.eclipse.core.commands.AbstractHandler; >+import org.eclipse.core.commands.ExecutionEvent; >+import org.eclipse.core.commands.ExecutionException; >+import org.eclipse.ecf.core.IContainer; >+import org.eclipse.ecf.core.IContainerManager; >+import org.eclipse.ecf.internal.presence.ui.Activator; >+import org.eclipse.ecf.presence.im.IChatManager; >+import org.eclipse.ecf.presence.im.IChatMessageSender; >+import org.eclipse.ecf.presence.im.ITypingMessageSender; >+import org.eclipse.ecf.presence.roster.IRoster; >+import org.eclipse.ecf.presence.roster.IRosterEntry; >+import org.eclipse.ecf.presence.ui.MessagesView; >+import org.eclipse.jface.window.Window; >+import org.eclipse.ui.IWorkbenchWindow; >+import org.eclipse.ui.PartInitException; >+import org.eclipse.ui.handlers.HandlerUtil; >+ >+/** >+ * Our sample handler extends AbstractHandler, an IHandler base class. >+ * @see org.eclipse.core.commands.IHandler >+ * @see org.eclipse.core.commands.AbstractHandler >+ */ >+public class BrowseHandler extends AbstractHandler { >+ /** >+ * The constructor. >+ */ >+ public BrowseHandler() {} >+ >+ /** >+ * the command has been executed, so extract extract the needed information >+ * from the application context. >+ */ >+ public Object execute(ExecutionEvent event) throws ExecutionException { >+ IWorkbenchWindow window = >+ HandlerUtil.getActiveWorkbenchWindowChecked(event); >+ >+ IContainerManager containerManager = Activator.getDefault().getContainerManager(); >+ IContainer[] containers = containerManager.getAllContainers(); >+ >+ BrowseDialog dialog = new BrowseDialog(window.getShell(), containers); >+ int status = dialog.open(); >+ if(status == Window.OK) { >+ Object[] object = dialog.getResult(); >+ IRosterEntry entry = (IRosterEntry) object[0]; >+ IRoster roster = entry.getRoster(); >+ if (roster != null) { >+ IChatManager manager = >+ roster.getPresenceContainerAdapter().getChatManager(); >+ IChatMessageSender icms = manager.getChatMessageSender(); >+ ITypingMessageSender itms = manager.getTypingMessageSender(); >+ try { >+ MessagesView view = >+ (MessagesView) window.getActivePage().showView(MessagesView.VIEW_ID); >+ view.selectTab(icms, itms, roster.getUser().getID(), entry >+ .getUser().getID()); >+ } catch (PartInitException e) { >+ e.printStackTrace(); >+ } >+ } >+ } >+ >+ return null; >+ } >+} >Index: src/org/eclipse/ecf/presence/ui/handlers/BrowseDialog.java >=================================================================== >RCS file: src/org/eclipse/ecf/presence/ui/handlers/BrowseDialog.java >diff -N src/org/eclipse/ecf/presence/ui/handlers/BrowseDialog.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/ecf/presence/ui/handlers/BrowseDialog.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,288 @@ >+/******************************************************************************* >+ * Copyright (c) 2007 Chris Aniszczyk, and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * Chris Aniszczyk <caniszczyk@gmail.com> - initial API and implementation >+ ******************************************************************************/ >+package org.eclipse.ecf.presence.ui.handlers; >+ >+import java.text.Collator; >+import java.util.Collection; >+import java.util.Comparator; >+import java.util.HashMap; >+import java.util.Iterator; >+import java.util.Map; >+ >+import org.eclipse.core.runtime.CoreException; >+import org.eclipse.core.runtime.IAdaptable; >+import org.eclipse.core.runtime.IProgressMonitor; >+import org.eclipse.core.runtime.IStatus; >+import org.eclipse.core.runtime.Platform; >+import org.eclipse.core.runtime.Status; >+import org.eclipse.ecf.core.IContainer; >+import org.eclipse.ecf.internal.presence.ui.Activator; >+import org.eclipse.ecf.presence.IPresenceContainerAdapter; >+import org.eclipse.ecf.presence.roster.IRoster; >+import org.eclipse.ecf.presence.roster.IRosterItem; >+import org.eclipse.jface.dialogs.IDialogSettings; >+import org.eclipse.jface.resource.ImageDescriptor; >+import org.eclipse.jface.viewers.LabelProvider; >+import org.eclipse.swt.graphics.Image; >+import org.eclipse.swt.widgets.Composite; >+import org.eclipse.swt.widgets.Control; >+import org.eclipse.swt.widgets.Shell; >+import org.eclipse.ui.IMemento; >+import org.eclipse.ui.dialogs.FilteredItemsSelectionDialog; >+import org.eclipse.ui.model.IWorkbenchAdapter; >+ >+/** >+ * @author zx >+ */ >+public class BrowseDialog extends FilteredItemsSelectionDialog { >+ >+ private static final String DIALOG_SETTINGS = >+ "org.eclipse.ecf.ui.dialogs.BrowseDialog"; //$NON-NLS-1$ >+ >+ private IContainer[] containers = null; >+ private RosterItemLabelProvider rosterItemLabelProvider; >+ private RosterItemDetailsLabelProvider rosterItemDetailsLabelProvider; >+ >+ public BrowseDialog(Shell shell, IContainer[] containers) { >+ super(shell, false); >+ this.containers = containers; >+ >+ setSelectionHistory(new RosterItemSelectionHistory()); >+ setTitle("Talk to..."); >+ >+ rosterItemLabelProvider = new RosterItemLabelProvider(); >+ setListLabelProvider(rosterItemLabelProvider); >+ >+ rosterItemDetailsLabelProvider = new RosterItemDetailsLabelProvider(); >+ setDetailsLabelProvider(rosterItemDetailsLabelProvider); >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#createExtendedContentArea(org.eclipse.swt.widgets.Composite) >+ */ >+ protected Control createExtendedContentArea(Composite parent) { >+ return null; >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#createFilter() >+ */ >+ protected ItemsFilter createFilter() { >+ return new RosterItemsFilter(); >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#fillContentProvider(org.eclipse.ui.dialogs.FilteredItemsSelectionDialog.AbstractContentProvider, org.eclipse.ui.dialogs.FilteredItemsSelectionDialog.ItemsFilter, org.eclipse.core.runtime.IProgressMonitor) >+ */ >+ protected void fillContentProvider(AbstractContentProvider contentProvider, >+ ItemsFilter itemsFilter, IProgressMonitor progressMonitor) >+ throws CoreException { >+ >+ progressMonitor.beginTask("Scanning containers...", containers.length); >+ >+ // cycle through all the containers and grab entries >+ for(int i = 0; i < containers.length; i++) { >+ IContainer container = containers[i]; >+ IPresenceContainerAdapter presenceContainer = >+ (IPresenceContainerAdapter) container.getAdapter(IPresenceContainerAdapter.class); >+ if (presenceContainer != null) { >+ Collection items = >+ presenceContainer.getRosterManager().getRoster().getItems(); >+ for(Iterator it = items.iterator(); it.hasNext(); ) { >+ contentProvider.add(it.next(), itemsFilter); >+ } >+ } >+ progressMonitor.worked(1); >+ } >+ if (progressMonitor != null) >+ progressMonitor.done(); >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#getDialogSettings() >+ */ >+ protected IDialogSettings getDialogSettings() { >+ IDialogSettings settings = >+ Activator.getDefault().getDialogSettings().getSection( >+ DIALOG_SETTINGS); >+ >+ if (settings == null) { >+ settings = >+ Activator.getDefault().getDialogSettings().addNewSection( >+ DIALOG_SETTINGS); >+ } >+ >+ return settings; >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#getElementName(java.lang.Object) >+ */ >+ public String getElementName(Object item) { >+ IRosterItem rosterItem = (IRosterItem) item; >+ return rosterItem.getName(); >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#getItemsComparator() >+ */ >+ protected Comparator getItemsComparator() { >+ return new RosterItemsComparator(); >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#validateItem(java.lang.Object) >+ */ >+ protected IStatus validateItem(Object item) { >+ return new Status(IStatus.OK, "org.eclipse.ecf.ui", 0, "", null); //$NON-NLS-1$ >+ } >+ >+ public class RosterItemDetailsLabelProvider extends LabelProvider { >+ >+ private Map imageTable = new HashMap(7); >+ >+ public Image getImage(Object element) { >+ IRosterItem item = (IRosterItem) element; >+ IRoster roster = item.getRoster(); >+ IWorkbenchAdapter adapter = getAdapter(roster); >+ if (adapter == null) >+ return null; >+ ImageDescriptor descriptor = adapter.getImageDescriptor(roster); >+ if (descriptor == null) >+ return null; >+ Image image = (Image) imageTable.get(descriptor); >+ if (image == null) { >+ image = descriptor.createImage(); >+ imageTable.put(descriptor, image); >+ } >+ return image; >+ } >+ >+ public String getText(Object element) { >+ IRosterItem item = (IRosterItem) element; >+ return item.getRoster().getName(); //$NON-NLS-1$ >+ } >+ >+ } >+ >+ public class RosterItemLabelProvider extends LabelProvider { >+ >+ private Map imageTable = new HashMap(7); >+ >+ >+ /* >+ * (non-Javadoc) >+ * >+ * @see org.eclipse.jface.viewers.LabelProvider#getImage(java.lang.Object) >+ */ >+ public Image getImage(Object element) { >+ IWorkbenchAdapter adapter = getAdapter(element); >+ if (adapter == null) >+ return null; >+ ImageDescriptor descriptor = adapter.getImageDescriptor(element); >+ if (descriptor == null) >+ return null; >+ Image image = (Image) imageTable.get(descriptor); >+ if (image == null) { >+ image = descriptor.createImage(); >+ imageTable.put(descriptor, image); >+ } >+ return image; >+ } >+ >+ /* >+ * (non-Javadoc) >+ * >+ * @see org.eclipse.jface.viewers.LabelProvider#getText(java.lang.Object) >+ */ >+ public String getText(Object element) { >+ IRosterItem item = (IRosterItem) element; >+ if(item == null) >+ return ""; //$NON-NLS-1$ >+ IRoster roster = item.getRoster(); >+ return roster != null ? item.getName() + " - " + roster.getName() : "" ; //$NON-NLS-1$ //$NON-NLS-2$ >+ >+ } >+ >+ /* >+ * (non-Javadoc) >+ * >+ * @see org.eclipse.jface.viewers.BaseLabelProvider#dispose() >+ */ >+ public void dispose() { >+ if (imageTable != null) { >+ for (Iterator i = imageTable.values().iterator(); i.hasNext();) { >+ ((Image) i.next()).dispose(); >+ } >+ imageTable = null; >+ } >+ } >+ } >+ >+ private class RosterItemSelectionHistory extends SelectionHistory { >+ >+ protected Object restoreItemFromMemento(IMemento memento) { >+ // TODO Auto-generated method stub >+ return null; >+ } >+ >+ protected void storeItemToMemento(Object item, IMemento memento) { >+ // TODO Auto-generated method stub >+ >+ } >+ >+ } >+ >+ private class RosterItemsFilter extends ItemsFilter { >+ >+ public boolean isConsistentItem(Object item) { >+ return false; >+ } >+ >+ public boolean matchItem(Object item) { >+ if (!(item instanceof IRosterItem)) { >+ return false; >+ } >+ IRosterItem rosterItem = (IRosterItem) item; >+ return matches(rosterItem.getName()); >+ } >+ >+ } >+ >+ private class RosterItemsComparator implements Comparator { >+ >+ public int compare(Object o1, Object o2) { >+ Collator collator = Collator.getInstance(); >+ IRosterItem item1 = (IRosterItem) o1; >+ IRosterItem item2 = (IRosterItem) o2; >+ String s1 = item1.getName(); >+ String s2 = item2.getName(); >+ int comparability = collator.compare(s1, s2); >+ if (comparability == 0) { >+ // TODO more here >+ } >+ return comparability; >+ } >+ >+ } >+ >+ protected IWorkbenchAdapter getAdapter(Object element) { >+ IWorkbenchAdapter adapter = null; >+ if (element instanceof IAdaptable) >+ adapter = (IWorkbenchAdapter) ((IAdaptable) element) >+ .getAdapter(IWorkbenchAdapter.class); >+ if (element != null && adapter == null) >+ adapter = (IWorkbenchAdapter) Platform.getAdapterManager() >+ .loadAdapter(element, IWorkbenchAdapter.class.getName()); >+ return adapter; >+ } >+ >+}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 192778
: 71818 |
73274