List of usage examples for org.eclipse.jface.viewers ILabelProvider isLabelProperty
public boolean isLabelProperty(Object element, String property);
From source file:com.aptana.ide.views.outline.UnifiedOutlineProvider.java
License:Open Source License
/** * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String) *//* ww w.j a v a 2 s .c om*/ public boolean isLabelProperty(Object element, String property) { boolean result = false; switchLanguage(element); if (this._currentProviders != null) { ILabelProvider labelProvider = this._currentProviders.labelProvider; if (labelProvider != null) { result = labelProvider.isLabelProperty(element, property); } } return result; }
From source file:com.nokia.tools.carbide.ct.confml.ui.editors.ContentOutlineConfiguration.java
License:Open Source License
public ILabelProvider getLabelProvider(TreeViewer viewer) { final ILabelProvider originalProvider = super.getLabelProvider(viewer); ILabelProvider customProvider = new ILabelProvider() { public Image getImage(Object element) { String elementString = element.toString(); if (elementString.startsWith("confml:")) { elementString = elementString.substring(7); }/* w w w . jav a 2s . co m*/ if (elementString.startsWith("setting")) { return PluginImages.SETTING; } else if (elementString.startsWith("feature")) { return PluginImages.FEATURE; } else if (elementString.startsWith("configuration")) { if (elementString.indexOf("http://www.s60.com/xml/confml/1") != -1) return PluginImages.CONFIGURATION1; else return PluginImages.CONFIGURATION2; } else if (elementString.startsWith("rfs")) { return PluginImages.RFS_FEATURE; } else if (elementString.startsWith("data")) { return PluginImages.DATA_FEATURE; } else if (elementString.startsWith("desc")) { return PluginImages.DESCRIPTION; } else if (elementString.startsWith("option")) { return PluginImages.OPTION; } else if (elementString.startsWith("xml")) { return PluginImages.XML; } else if (elementString.startsWith("view")) { return PluginImages.VIEW; } else if (elementString.startsWith("group")) { return PluginImages.GROUP; } else if (elementString.startsWith("xi:include")) { return PluginImages.INCLUDE; } else { if (element instanceof Element) { Element e = (Element) element; return getElementImage(e, 0); } else return PluginImages.GENERIC; } } private Image getElementImage(Element element, int level) { if (element.getParentNode() instanceof Element) { Element parent = (Element) element.getParentNode(); String elementString = element.toString(); if (elementString.startsWith("confml:")) { elementString = elementString.substring(7); } if (elementString.startsWith("data")) { if (level == 0) return PluginImages.DATA_FEATURE; else return PluginImages.DATA_SETTING; } if (elementString.startsWith("rfs")) { if (level == 0) return PluginImages.RFS_FEATURE; else return PluginImages.RFS_SETTING; } else { if (level > 5) return PluginImages.GENERIC; else return getElementImage(parent, level + 1); } } else { System.out.println("PARENT NOT ELEMENT\n" + element.toString()); return PluginImages.GENERIC; } } public String getText(Object element) { String text = originalProvider.getText(element); if (text.startsWith("confml:")) { return text.substring(7); } else return text; } public void addListener(ILabelProviderListener listener) { originalProvider.addListener(listener); } public void dispose() { originalProvider.dispose(); } public boolean isLabelProperty(Object element, String property) { return originalProvider.isLabelProperty(element, property); } public void removeListener(ILabelProviderListener listener) { originalProvider.removeListener(listener); } }; return customProvider; }
From source file:com.nokia.tools.carbide.ct.crml.ui.editors.ContentOutlineConfiguration.java
License:Open Source License
public ILabelProvider getLabelProvider(TreeViewer viewer) { final ILabelProvider originalProvider = super.getLabelProvider(viewer); ILabelProvider customProvider = new ILabelProvider() { public Image getImage(Object element) { String elementString = element.toString(); //System.out.println(element.toString()); if (elementString.startsWith("crml:")) { elementString = elementString.substring(5); }//from ww w . java 2 s . c om if (elementString.startsWith("repository")) { return PluginImages.REPOSITORY; } else if (elementString.startsWith("keyRange")) { return PluginImages.RANGEKEY; } else if (elementString.startsWith("key")) { if (element instanceof Element) { Element e = (Element) element; NodeList nodeList = e.getChildNodes(); for (int n = 0; n < nodeList.getLength(); n++) { Node node = nodeList.item(n); if (node.toString().startsWith("bit")) return PluginImages.BITMASKKEY; } } return PluginImages.SIMPLEKEY; } else if (elementString.startsWith("access")) { return PluginImages.ACCESS; } else if (elementString.startsWith("desc")) { return PluginImages.DESCRIPTION; } else if (elementString.startsWith("option")) { return PluginImages.GENERIC; } else if (elementString.startsWith("xml")) { return PluginImages.XML; } else if (elementString.startsWith("bit")) { return PluginImages.BIT; } else { if (element instanceof Element) { Element e = (Element) element; return getElementImage(e, 0); } else return PluginImages.GENERIC; } } private Image getElementImage(Element element, int level) { if (element.getParentNode() instanceof Element) { Element parent = (Element) element.getParentNode(); String elementString = element.toString(); if (elementString.startsWith("crml:")) { elementString = elementString.substring(5); } if (elementString.startsWith("data")) { // if (level==0) // return PluginImages.DATA_FEATURE; // else // return PluginImages.DATA_SETTING; return PluginImages.GENERIC; } if (elementString.startsWith("rfs")) { // if (level==0) // return PluginImages.RFS_FEATURE; // else // return PluginImages.RFS_SETTING; return PluginImages.GENERIC; } else { if (level > 5) return PluginImages.GENERIC; else return getElementImage(parent, level + 1); } } else { System.out.println("PARENT NOT ELEMENT\n" + element.toString()); return PluginImages.GENERIC; } } public String getText(Object element) { String text = originalProvider.getText(element); if (text.startsWith("crml:")) { return text.substring(5); } else return text; } public void addListener(ILabelProviderListener listener) { originalProvider.addListener(listener); } public void dispose() { originalProvider.dispose(); } public boolean isLabelProperty(Object element, String property) { return originalProvider.isLabelProperty(element, property); } public void removeListener(ILabelProviderListener listener) { originalProvider.removeListener(listener); } }; return customProvider; }
From source file:com.twinsoft.convertigo.eclipse.views.projectexplorer.model.DatabaseObjectTreeObject.java
License:Open Source License
private PropertyDescriptor findPropertyDescriptor(final String name, String displayName, java.beans.PropertyDescriptor databaseObjectPropertyDescriptor, Object value, final Class<?> pec, boolean isExtractionRule, boolean isMasked) throws IllegalAccessException, NoSuchMethodException, InvocationTargetException { PropertyDescriptor propertyDescriptor = null; // Primitive types if (pec == null) { if (value instanceof Boolean) { String[] values = new String[] { "true", "false" }; propertyDescriptor = new DynamicComboBoxPropertyDescriptor(name, displayName, values); } else if (value instanceof Number) { propertyDescriptor = new TextPropertyDescriptor(name, displayName); // propertyDescriptor.setValidator(new CompilableValueValidator(new NumberValidator(value.getClass()))); }/*from www. java 2 s .c o m*/ } // Complex types else { if (PropertyWithValidatorEditor.class.isAssignableFrom(pec)) { propertyDescriptor = new TextPropertyDescriptor(name, displayName); propertyDescriptor.setValidator(getValidator(name)); } else if (PropertyWithTagsEditor.class.isAssignableFrom(pec)) { String[] tags; if (PropertyWithDynamicTagsEditor.class.isAssignableFrom(pec)) { Method getTags = pec.getMethod("getTags", new Class[] { DatabaseObjectTreeObject.class, String.class }); tags = (String[]) getTags.invoke(null, new Object[] { this, name }); propertyDescriptor = new DynamicComboBoxPropertyDescriptor(name, displayName, getTags, this, name); } else if (PropertyWithTagsEditorAdvance.class.isAssignableFrom(pec)) { Method getTags = pec.getDeclaredMethod("getTags", new Class[] { DatabaseObjectTreeObject.class, String.class }); tags = (String[]) getTags.invoke(null, new Object[] { this, name }); propertyDescriptor = new DynamicComboBoxPropertyDescriptor(name, displayName, tags); } else { Method getTags = pec.getDeclaredMethod("getTags", new Class[] { DatabaseObjectTreeObject.class }); tags = (String[]) getTags.invoke(null, new Object[] { this }); propertyDescriptor = new DynamicComboBoxPropertyDescriptor(name, displayName, tags); } } else if (PropertyWithDynamicInfoEditor.class.isAssignableFrom(pec)) { Method getInfo = pec.getMethod("getInfo", new Class[] { DatabaseObjectTreeObject.class, String.class }); propertyDescriptor = new DynamicInfoPropertyDescriptor(name, displayName, getInfo, this, name); } else if (AbstractDialogCellEditor.class.isAssignableFrom(pec)) { propertyDescriptor = new PropertyDescriptor(name, displayName) { @Override public CellEditor createPropertyEditor(Composite parent) { try { Constructor<?> constructor = pec.getConstructor(new Class[] { Composite.class }); AbstractDialogCellEditor editor = (AbstractDialogCellEditor) constructor .newInstance(new Object[] { parent }); editor.propertyDescriptor = this; editor.databaseObjectTreeObject = DatabaseObjectTreeObject.this; if (getValidator() != null) { editor.setValidator(getValidator()); } return editor; } catch (Exception e) { ConvertigoPlugin.logException(e, "Unexpected exception"); return null; } } }; } else if (Enum.class.isAssignableFrom(pec)) { String[] tags = EnumUtils.toStrings(pec); propertyDescriptor = new DynamicComboBoxPropertyDescriptor(name, displayName, tags); } } // Special cases if (propertyDescriptor == null) { // editor for scriptable properties Object scriptable = databaseObjectPropertyDescriptor.getValue("scriptable"); if ((scriptable != null) && (scriptable.equals(Boolean.TRUE))) propertyDescriptor = new ScriptablePropertyDescriptor(name, displayName); // editor for nillable properties if (propertyDescriptor == null) { Object nillable = databaseObjectPropertyDescriptor.getValue("nillable"); if ((nillable != null) && (nillable.equals(Boolean.TRUE))) { int style = isMasked ? SWT.PASSWORD : SWT.NONE; if (value instanceof String) { propertyDescriptor = new DataOrNullPropertyDescriptor(name, displayName, StringOrNullEditor.class, style); } else if (value instanceof XMLVector) { propertyDescriptor = new DataOrNullPropertyDescriptor(name, displayName, ArrayOrNullEditor.class, style); } } } // editor for disabled properties Object disable = databaseObjectPropertyDescriptor.getValue("disable"); if ((disable != null) && (disable.equals(Boolean.TRUE))) propertyDescriptor = new InfoPropertyDescriptor(name, displayName); } // Default case if (propertyDescriptor == null) { propertyDescriptor = new TextPropertyDescriptor(name, displayName); // propertyDescriptor.setValidator(new CompilableValueValidator(getValidator(name))); } if (propertyDescriptor != null) { final ILabelProvider labelProvider = propertyDescriptor.getLabelProvider(); propertyDescriptor.setLabelProvider(new ILabelProvider() { @Override public void removeListener(ILabelProviderListener listener) { labelProvider.removeListener(listener); } @Override public boolean isLabelProperty(Object element, String property) { return labelProvider.isLabelProperty(element, property); } @Override public void dispose() { labelProvider.dispose(); } @Override public void addListener(ILabelProviderListener listener) { labelProvider.addListener(listener); } @Override public String getText(Object element) { String text = labelProvider.getText(element); try { String compiled = Engine.theApp.databaseObjectsManager.getCompiledValue(text); if (!text.equals(compiled)) { text += " => " + compiled; } } catch (UndefinedSymbolsException e) { text += " /!\\ undefined symbol /!\\"; } return text; } @Override public Image getImage(Object element) { return labelProvider.getImage(element); } }); String beanDescription = databaseObjectPropertyDescriptor.getShortDescription(); String[] beanDescriptions = beanDescription.split("\\|"); String beanShortDescription = beanDescriptions[0]; if (isExtractionRule) propertyDescriptor .setCategory(databaseObjectPropertyDescriptor.isExpert() ? "Selection" : "Configuration"); else propertyDescriptor .setCategory(databaseObjectPropertyDescriptor.isExpert() ? "Expert" : "Base properties"); beanShortDescription = cleanDescription(beanShortDescription); propertyDescriptor.setDescription(beanShortDescription); } return propertyDescriptor; }
From source file:org.eclipse.m2m.internal.qvt.oml.common.ui.dialogs.OpenClassifierDialog.java
License:Open Source License
protected ILabelProvider createLabelProvider() { final ILabelProvider provider = EMFProviderUtil.createLabelProvider(); return new ILabelProvider() { public Image getImage(final Object element) { return provider.getImage(element); }/*from www.j a va 2 s . co m*/ public String getText(final Object element) { if (element instanceof EClassifier) { EClassifier classifier = (EClassifier) element; return classifier.getName() + PACKAGE_SEPARATOR + EmfUtil.getFullName(classifier); } return null; } public void addListener(final ILabelProviderListener listener) { provider.addListener(listener); } public void dispose() { provider.dispose(); } public boolean isLabelProperty(final Object element, final String property) { return provider.isLabelProperty(element, property); } public void removeListener(final ILabelProviderListener listener) { provider.removeListener(listener); } }; }
From source file:org.eclipse.m2m.internal.qvt.oml.common.ui.views.MetamodelBrowser.java
License:Open Source License
protected ILabelProvider createLabelProvider() { final ILabelProvider provider = EMFProviderUtil.createLabelProvider(); return new ILabelProvider() { public void removeListener(final ILabelProviderListener listener) { provider.removeListener(listener); }/*from www . ja v a 2 s . c o m*/ public boolean isLabelProperty(final Object element, final String property) { return provider.isLabelProperty(((BrowserNode) element).getEObject(), property); } public void dispose() { provider.dispose(); } public void addListener(final ILabelProviderListener listener) { provider.addListener(listener); } public String getText(final Object element) { BrowserNode node = (BrowserNode) element; String availableText = node.getText(); if (availableText != null) { return availableText; } EObject eObject = ((BrowserNode) element).getEObject(); if (myShowFullQualifiedNames && eObject instanceof EClassifier) { EClassifier eClassifier = (EClassifier) eObject; StringBuilder text = new StringBuilder(); text.append(eClassifier.getName()); if (eClassifier instanceof EClass) { EClass eClass = (EClass) eClassifier; if (!eClass.getESuperTypes().isEmpty()) { text.append(EXTENDED_CLASSES); for (Iterator<EClass> iter = eClass.getESuperTypes().iterator(); iter.hasNext();) { EClass eSuperType = (EClass) iter.next(); text.append(EmfUtil.getFullName(eSuperType)); if (iter.hasNext()) { text.append(EXTENDED_CLASSES_SEPARATOR); } } } } if (eClassifier.getInstanceClassName() != null) { text.append(INSTANCE_CLASS_NAME_START); text.append(eClassifier.getInstanceClassName()); text.append(INSTANCE_CLASS_NAME_END); } return text.toString(); } if (myShowFullQualifiedNames && eObject instanceof ETypedElement) { ETypedElement eTypedElement = (ETypedElement) eObject; StringBuilder text = new StringBuilder(); text.append(eTypedElement.getName()); if (eTypedElement instanceof EOperation) { EOperation eOperation = (EOperation) eTypedElement; text.append(PARAMETERS_START); for (Iterator<EParameter> iter = eOperation.getEParameters().iterator(); iter.hasNext();) { EParameter eParameter = (EParameter) iter.next(); text.append(EmfUtil.getFullName(eParameter.getEType())); if (iter.hasNext()) { text.append(PARAMETERS_SEPARATOR); } } text.append(PARAMETERS_END); } if (eTypedElement.getEType() != null) { text.append(NAME_AND_TYPE_SEPARATOR); text.append(EmfUtil.getFullName(eTypedElement.getEType())); } return text.toString(); } String text = provider.getText(eObject); if (eObject instanceof EPackage && eObject.eContainer() == null) { String nsURI = ((EPackage) eObject).getNsURI(); if (nsURI != null && nsURI.length() > 0) { text += " (" + ((EPackage) eObject).getNsURI() + ")"; //$NON-NLS-1$//$NON-NLS-2$ } } return text; } public Image getImage(final Object element) { BrowserNode node = (BrowserNode) element; Image availableImage = node.getImage(); if (availableImage != null) { return availableImage; } EObject eObject = node.getEObject(); if (eObject instanceof EPackage) { Image image = MetamodelImageRegistry.INSTANCE.getImage((EPackage) eObject); if (image != null) { return image; } } return provider.getImage(eObject); } }; }
From source file:org.eclipse.oomph.internal.ui.FindAndReplaceTarget.java
License:Open Source License
/** * This sets up a special label provider in the viewer to be able to highlight the scope and show the selected match. *//*from w w w .j a va2 s . co m*/ protected void hookLabelProvider() { final StructuredViewer viewer = getViewer(); // We use this special class so we can detect if the label provider is already hooked up. class DecoratingLabelProvider extends DelegatingStyledCellLabelProvider.FontAndColorProvider implements IStyledLabelProvider { public DecoratingLabelProvider(IStyledLabelProvider styledLabelProvider) { super(styledLabelProvider); } @Override public StyledString getStyledText(Object element) { return super.getStyledText(element); } } // If the label provider is already hooked up... final ILabelProvider labelProvider = (ILabelProvider) viewer.getLabelProvider(); if (labelProvider instanceof DecoratingLabelProvider) { // Update the selection scope objects. if (selectionScopeObjects != null) { viewer.update(selectionScopeObjects.toArray(), null); } // Update the selected object if it's for a label. if (selectedItem != null && selectedItem.itemPropertyDescriptor == null) { viewer.update(selectedItem.data.object, null); } } else { // Create a styled label provider that can decorate the text. IStyledLabelProvider styledProvider = new DecoratingColumLabelProvider.StyledLabelProvider( labelProvider, new IStyledLabelDecorator() { // Use the color from the theme that the editor uses to highlight the scope. final Color color = workbenchPart.getSite().getWorkbenchWindow().getWorkbench() .getThemeManager().getCurrentTheme().getColorRegistry() .get("org.eclipse.ui.editors.findScope"); final Styler scopeStyler = new Styler() { @Override public void applyStyles(TextStyle textStyle) { textStyle.background = color; } }; public void removeListener(ILabelProviderListener listener) { labelProvider.removeListener(listener); } public boolean isLabelProperty(Object element, String property) { return labelProvider.isLabelProperty(element, property); } public void dispose() { labelProvider.dispose(); } public void addListener(ILabelProviderListener listener) { labelProvider.addListener(listener); } public String decorateText(String text, Object element) { if (labelProvider instanceof ILabelDecorator) { ILabelDecorator labelDecorator = (ILabelDecorator) labelProvider; return labelDecorator.decorateText(text, element); } return text; } public Image decorateImage(Image image, Object element) { if (labelProvider instanceof ILabelDecorator) { ILabelDecorator labelDecorator = (ILabelDecorator) labelProvider; return labelDecorator.decorateImage(image, element); } return image; } public StyledString decorateStyledText(StyledString styledString, Object element) { if (labelProvider instanceof IStyledLabelDecorator) { IStyledLabelDecorator styledLabelDecorator = (IStyledLabelDecorator) labelProvider; styledString = styledLabelDecorator.decorateStyledText(styledString, element); } // If we have a selected item, it's the item for the label, and this element is that selected element's object... if (selectedItem != null && selectedItem.itemPropertyDescriptor == null && element == selectedItem.data.object) { // Convert the styled string to just a string. String string = styledString.getString(); // Find the pattern match within that string. Matcher matcher = selectedItemPattern.matcher(string); if (matcher.find(selectedItemStart)) { // Create a new styles string. StyledString result = new StyledString(); // Recompose the string with the match styled to show a selection bod. String group = matcher.group(); int start = matcher.start(); int end = matcher.end(); result.append(string.substring(0, start)); result.append(group, MATCH_STYLER); result.append(string.substring(end)); return result; } } // If we have scope objects and the element is one of those... if (selectionScopeObjects != null && selectionScopeObjects.contains(element)) { // Mark the entire string with the scope styling. StyledString result = new StyledString(); result.append(styledString.getString(), scopeStyler); return result; } // Otherwise just pass through the string. return styledString; } }); // Hook up the label provider to be the one used by the view. ILabelProvider delegatingLabelProvider = new DecoratingLabelProvider(styledProvider); viewer.setLabelProvider(delegatingLabelProvider); } }
From source file:pl.poznan.put.cs.gui4pddl.planview.ui.PlanView.java
License:Open Source License
private Object[] getSelectionDialogResult(Object[] elements, String title, String message) { final ILabelProvider labelProvider = DebugUITools.newDebugModelPresentation(); ElementListSelectionDialog dialog = new ElementListSelectionDialog(Display.getDefault().getActiveShell(), new ILabelProvider() { public Image getImage(Object element) { return labelProvider.getImage(element); }/* w w w.j a v a2 s .com*/ public String getText(Object element) { return labelProvider.getText(element); } public boolean isLabelProperty(Object element, String property) { return labelProvider.isLabelProperty(element, property); } public void addListener(ILabelProviderListener listener) { labelProvider.addListener(listener); } public void removeListener(ILabelProviderListener listener) { labelProvider.removeListener(listener); } public void dispose() { labelProvider.dispose(); } }); dialog.setElements(elements); dialog.setTitle(title); dialog.setMessage(message); dialog.setMultipleSelection(true); int result = dialog.open(); labelProvider.dispose(); if (result == Window.OK) { return dialog.getResult(); } return null; }
From source file:pl.poznan.put.cs.gui4pddl.runners.LaunchConfigurationCreator.java
License:Open Source License
private static Object getSelectionDialogResult(Object[] elements, String title, String message) { final ILabelProvider labelProvider = DebugUITools.newDebugModelPresentation(); ElementListSelectionDialog dialog = new ElementListSelectionDialog(Display.getDefault().getActiveShell(), new ILabelProvider() { public Image getImage(Object element) { return labelProvider.getImage(element); }/*from w w w . j a v a 2 s. c o m*/ public String getText(Object element) { IPath path = (IPath) element; return path.lastSegment(); } public boolean isLabelProperty(Object element, String property) { return labelProvider.isLabelProperty(element, property); } public void addListener(ILabelProviderListener listener) { labelProvider.addListener(listener); } public void removeListener(ILabelProviderListener listener) { labelProvider.removeListener(listener); } public void dispose() { labelProvider.dispose(); } }); dialog.setElements(elements); dialog.setTitle(title); dialog.setMessage(message); dialog.setMultipleSelection(true); int result = dialog.open(); labelProvider.dispose(); if (result == Window.OK) { return dialog.getFirstResult(); } return null; }
From source file:pl.poznan.put.cs.gui4pddl.runners.PDDLLaunchShortcut.java
License:Open Source License
/** * COPIED/MODIFIED from AntLaunchShortcut */// ww w . jav a2 s .c om protected ILaunchConfiguration chooseConfig(List<ILaunchConfiguration> configs) { if (configs.isEmpty()) { return null; } final ILabelProvider labelProvider = DebugUITools.newDebugModelPresentation(); ElementListSelectionDialog dialog = new ElementListSelectionDialog(Display.getDefault().getActiveShell(), new ILabelProvider() { public Image getImage(Object element) { return labelProvider.getImage(element); } public String getText(Object element) { if (element instanceof ILaunchConfiguration) { ILaunchConfiguration configuration = (ILaunchConfiguration) element; try { return labelProvider.getText(element) + "\nDomain: " + LaunchUtil.getDomainFile(configuration).getName() + "\nProblem: " + LaunchUtil.getProblemFile(configuration).getName() + "\n" + configuration.getAttribute(Constants.PLANNER_NAME, "") + "\n" + configuration.getAttribute(Constants.ARGUMENTS_NAME, ""); } catch (CoreException ex) { // ignore } } return labelProvider.getText(element); } public boolean isLabelProperty(Object element, String property) { return labelProvider.isLabelProperty(element, property); } public void addListener(ILabelProviderListener listener) { labelProvider.addListener(listener); } public void removeListener(ILabelProviderListener listener) { labelProvider.removeListener(listener); } public void dispose() { labelProvider.dispose(); } }); dialog.setElements(configs.toArray(new ILaunchConfiguration[configs.size()])); dialog.setTitle("Pick a PDDL configuration"); dialog.setMessage("Choose a PDDL configuration to run"); dialog.setMultipleSelection(false); int result = dialog.open(); labelProvider.dispose(); if (result == Window.OK) return (ILaunchConfiguration) dialog.getFirstResult(); else return null; }