List of usage examples for org.eclipse.jface.viewers StyledString append
public StyledString append(char[] chars, Styler styler)
From source file:at.bestsolution.eclipse.properties.PropertyContentOutlinePage.java
License:Open Source License
@Override public void createControl(Composite parent) { super.createControl(parent); TreeViewer viewer = getTreeViewer(); viewer.setLabelProvider(new StyledCellLabelProvider() { @Override/*from ww w . ja va 2 s .c o m*/ public void update(ViewerCell cell) { Object element = cell.getElement(); if (element instanceof PropertyGroup) { cell.setText(((PropertyGroup) element).name); cell.setImage(Activator.getDefault().getImageRegistry().get(Activator.GROUP_ICON)); cell.setStyleRanges(null); } else if (element instanceof Property) { cell.setImage(Activator.getDefault().getImageRegistry().get(Activator.KEY_ICON)); StyledString s = new StyledString(((Property) element).pair.key); String text = ((Property) element).pair.value; if (text.length() > 20) { text = text.substring(0, 20) + "..."; } s.append(" : " + text, StyledString.DECORATIONS_STYLER); cell.setStyleRanges(s.getStyleRanges()); cell.setText(s.getString()); } super.update(cell); } }); viewer.setContentProvider(new HierarchicalContentProvider()); if (isSorted()) { setSorted(true); } createHierarchicalStructure(); if (isHierarchical()) { viewer.setInput(hierarchicalStructure); } else { viewer.setInput(flatStructure); } }
From source file:at.bestsolution.efxclipse.tooling.fxgraph.ui.contentassist.FXGraphProposalProvider.java
License:Open Source License
private void createCollectionPropnameProposals(IFXCollectionProperty prop, EObject model, ContentAssistContext context, EStructuralFeature typeReference, ICompletionProposalAcceptor acceptor) { ICompletionProposal p;/*w w w. jav a2s.c o m*/ if (prop.isSetable()) { StyledString s = new StyledString(prop.getName() + " : " + prop.getCollectionAsString()); s.append(" - " + prop.getFXClass().getSimpleName(), StyledString.QUALIFIER_STYLER); p = createCompletionProposal(prop.getName() + " : ", s, IconKeys.getIcon(IconKeys.LIST_KEY), getPropertiesProposalsProposals(), context.getPrefix(), context); } else { StyledString s = new StyledString(prop.getName() + " : [" + (prop.getElementType() != null ? prop.getElementType().getElementName() : "?") + "]"); s.append(" - " + prop.getFXClass().getSimpleName(), StyledString.QUALIFIER_STYLER); p = createCompletionProposal(prop.getName() + " : []", s, IconKeys.getIcon(IconKeys.LIST_KEY), getPropertiesProposalsProposals(), context.getPrefix(), context); } if (p instanceof ConfigurableCompletionProposal) { ConfigurableCompletionProposal cp = (ConfigurableCompletionProposal) p; cp.setAdditionalProposalInfo(model); cp.setHover(new HoverImpl(prop.getJavaElement())); if (!prop.isSetable()) { cp.setCursorPosition(cp.getCursorPosition() - 1); } } acceptor.accept(p); }
From source file:at.bestsolution.efxclipse.tooling.fxgraph.ui.contentassist.FXGraphProposalProvider.java
License:Open Source License
private void createMapPropnameProposals(IFXMapProperty prop, EObject model, ContentAssistContext context, EStructuralFeature typeReference, ICompletionProposalAcceptor acceptor) { StyledString s = new StyledString(prop.getName() + " : {}"); s.append(" - " + prop.getFXClass().getSimpleName(), StyledString.QUALIFIER_STYLER); ICompletionProposal p = createCompletionProposal(prop.getName() + " : ", s, IconKeys.getIcon(IconKeys.MAP_KEY), getPropertiesProposalsProposals(), context.getPrefix(), context);// w ww .java2 s. c om if (p instanceof ConfigurableCompletionProposal) { ConfigurableCompletionProposal cp = (ConfigurableCompletionProposal) p; cp.setAdditionalProposalInfo(model); cp.setHover(new HoverImpl(prop.getJavaElement())); } acceptor.accept(p); }
From source file:at.bestsolution.efxclipse.tooling.fxgraph.ui.contentassist.FXGraphProposalProvider.java
License:Open Source License
private void createEnumPropnameProposals(IFXEnumProperty prop, EObject model, ContentAssistContext context, EStructuralFeature typeReference, ICompletionProposalAcceptor acceptor) { if (prop.isStatic() && typeReference.equals(FXGraphPackage.Literals.ELEMENT__STATIC_PROPERTIES)) { StyledString s = new StyledString(); s.append("(static) ", StyledString.COUNTER_STYLER); s.append(prop.getFXClass().getSimpleName() + "." + prop.getName() + " : " + prop.getEnumTypeAsString(false)); s.append(" - " + prop.getFXClass().getSimpleName(), StyledString.QUALIFIER_STYLER); context = context.copy().setMatcher(new StaticPrefixMatcher(context.getMatcher())).toContext(); ICompletionProposal p = createCompletionProposal("static " + prop.getName() + " : ", s, IconKeys.getIcon(IconKeys.FIELD_KEY), getPropertiesProposalsProposals() - 10, context.getPrefix(), context); if (p instanceof ConfigurableCompletionProposal) { ConfigurableCompletionProposal cp = (ConfigurableCompletionProposal) p; cp.setAdditionalProposalInfo(model); cp.setHover(new HoverImpl(prop.getJavaElement())); }/*from w ww . j a v a2 s . c om*/ acceptor.accept(p); } else { StyledString s = new StyledString(prop.getName() + " : " + prop.getEnumTypeAsString(false)); s.append(" - " + prop.getFXClass().getSimpleName(), StyledString.QUALIFIER_STYLER); ICompletionProposal p = createCompletionProposal(prop.getName() + " : ", s, IconKeys.getIcon(IconKeys.FIELD_KEY), getPropertiesProposalsProposals(), context.getPrefix(), context); if (p instanceof ConfigurableCompletionProposal) { ConfigurableCompletionProposal cp = (ConfigurableCompletionProposal) p; cp.setAdditionalProposalInfo(model); cp.setHover(new HoverImpl(prop.getJavaElement())); } acceptor.accept(p); } }
From source file:at.bestsolution.efxclipse.tooling.fxgraph.ui.contentassist.FXGraphProposalProvider.java
License:Open Source License
private void createEventHandlerPropnameProposals(IFXEventHandlerProperty prop, EObject model, ContentAssistContext context, EStructuralFeature typeReference, ICompletionProposalAcceptor acceptor) { StyledString s = new StyledString(prop.getName() + " : " + prop.getEventTypeAsString(false)); s.append(" - " + prop.getFXClass().getSimpleName(), StyledString.QUALIFIER_STYLER); ICompletionProposal p = createCompletionProposal(prop.getName() + " : ", s, IconKeys.getIcon(IconKeys.EVENT_KEY), getPropertiesProposalsProposals(), context.getPrefix(), context);//from ww w . j a v a 2 s . co m if (p instanceof ConfigurableCompletionProposal) { ConfigurableCompletionProposal cp = (ConfigurableCompletionProposal) p; cp.setAdditionalProposalInfo(model); cp.setHover(new HoverImpl(prop.getJavaElement())); } acceptor.accept(p); }
From source file:at.bestsolution.efxclipse.tooling.fxgraph.ui.contentassist.FXGraphProposalProvider.java
License:Open Source License
private void createObjectPropnameProposals(IFXObjectProperty prop, EObject model, ContentAssistContext context, EStructuralFeature typeReference, ICompletionProposalAcceptor acceptor) { if (prop.isStatic() && typeReference.equals(FXGraphPackage.Literals.ELEMENT__STATIC_PROPERTIES)) { StyledString s = new StyledString(); s.append("(static) ", StyledString.COUNTER_STYLER); s.append(prop.getFXClass().getSimpleName() + "." + prop.getName() + " : " + prop.getElementTypeAsString(false)); s.append(" - " + prop.getFXClass().getSimpleName(), StyledString.QUALIFIER_STYLER); context = context.copy().setMatcher(new StaticPrefixMatcher(context.getMatcher())).toContext(); ICompletionProposal p = createCompletionProposal("static " + prop.getName() + " : ", s, IconKeys.getIcon(IconKeys.FIELD_KEY), getPropertiesProposalsProposals() - 10, context.getPrefix(), context); if (p instanceof ConfigurableCompletionProposal) { ConfigurableCompletionProposal cp = (ConfigurableCompletionProposal) p; cp.setAdditionalProposalInfo(model); cp.setHover(new HoverImpl(prop.getJavaElement())); }// w ww . j a v a 2 s .c o m acceptor.accept(p); } else { StyledString s = new StyledString(prop.getName() + " : " + prop.getElementTypeAsString(false)); s.append(" - " + prop.getFXClass().getSimpleName(), StyledString.QUALIFIER_STYLER); ICompletionProposal p = createCompletionProposal(prop.getName() + " : ", s, IconKeys.getIcon(IconKeys.FIELD_KEY), getPropertiesProposalsProposals(), context.getPrefix(), context); if (p instanceof ConfigurableCompletionProposal) { ConfigurableCompletionProposal cp = (ConfigurableCompletionProposal) p; cp.setAdditionalProposalInfo(model); cp.setHover(new HoverImpl(prop.getJavaElement())); } acceptor.accept(p); } }
From source file:at.bestsolution.efxclipse.tooling.fxgraph.ui.contentassist.FXGraphProposalProvider.java
License:Open Source License
private void createPrimitivePropnameProposals(IFXPrimitiveProperty prop, EObject model, ContentAssistContext context, EStructuralFeature typeReference, ICompletionProposalAcceptor acceptor) { String typeName;//from w w w. j a va 2s .c om String proposalValue = prop.getName() + " : "; switch (prop.getType()) { case BOOLEAN: typeName = "boolean"; break; case BYTE: typeName = "byte"; break; case CHAR: typeName = "char"; break; case DOUBLE: typeName = "double"; break; case FLOAT: typeName = "float"; break; case INTEGER: typeName = "integer"; break; case LONG: typeName = "long"; break; case SHORT: typeName = "short"; break; default: typeName = "String"; proposalValue += "\"\""; break; } if (prop.isStatic() && typeReference.equals(FXGraphPackage.Literals.ELEMENT__STATIC_PROPERTIES)) { StyledString s = new StyledString(); s.append("(static) ", StyledString.COUNTER_STYLER); s.append(prop.getFXClass().getSimpleName() + "." + prop.getName() + " : " + typeName); s.append(" - " + prop.getFXClass().getSimpleName(), StyledString.QUALIFIER_STYLER); proposalValue = "static " + proposalValue; context = context.copy().setMatcher(new StaticPrefixMatcher(context.getMatcher())).toContext(); ICompletionProposal p = createCompletionProposal(proposalValue, s, IconKeys.getIcon(IconKeys.FIELD_KEY), getPropertiesProposalsProposals() - 10, context.getPrefix(), context); if (p instanceof ConfigurableCompletionProposal) { ConfigurableCompletionProposal cp = (ConfigurableCompletionProposal) p; cp.setAdditionalProposalInfo(model); cp.setHover(new HoverImpl(prop.getJavaElement())); } acceptor.accept(p); } else { StyledString s = new StyledString(prop.getName() + " : " + typeName); s.append(" - " + prop.getFXClass().getSimpleName(), StyledString.QUALIFIER_STYLER); if (proposalValue.equals("id : \"\"")) { proposalValue = "^" + proposalValue; } context = context.copy().setMatcher(new EscapePrefixMatcher(context.getMatcher())).toContext(); ICompletionProposal p = createCompletionProposal(proposalValue, s, IconKeys.getIcon(IconKeys.FIELD_KEY), getPropertiesProposalsProposals(), context.getPrefix(), context); if (p instanceof ConfigurableCompletionProposal) { ConfigurableCompletionProposal cp = (ConfigurableCompletionProposal) p; cp.setAdditionalProposalInfo(model); cp.setHover(new HoverImpl(prop.getJavaElement())); if (prop.getType() == Type.STRING) { cp.setCursorPosition(cp.getCursorPosition() - 1); } } acceptor.accept(p); } }
From source file:at.bestsolution.efxclipse.tooling.fxgraph.ui.contentassist.FXGraphProposalProvider.java
License:Open Source License
@Override public void completeResourceValueProperty_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { if (!model.eResource().getContents().isEmpty()) { Model m = (Model) model.eResource().getContents().get(0); if (m.getComponentDef() != null) { if (m.getComponentDef().getPreviewResourceBundle() != null) { File f = RelativeFileLocator.locateFile(model.eResource().getURI(), m.getComponentDef().getPreviewResourceBundle()); Properties p = null; if (f != null) { FileInputStream fi = null; try { fi = new FileInputStream(f); p = new Properties(); p.load(fi);//from w w w . j av a2 s .c o m } catch (FileNotFoundException e) { LOGGER.warn("Unable to load resource bundle", e); } catch (IOException e) { LOGGER.warn("Unable to load resource bundle", e); } finally { if (fi != null) { try { fi.close(); } catch (IOException e) { LOGGER.error("Unable to close resource filehandle", e); } } } } if (p != null) { for (String k : p.stringPropertyNames()) { StyledString s = new StyledString(k); s.append(" - " + p.getProperty(k), StyledString.DECORATIONS_STYLER); acceptor.accept(createCompletionProposal("\"" + k + "\"", s, IconKeys.getIcon(IconKeys.EXTERNALIZED_STRING_KEY), context)); } } } } } }
From source file:at.bestsolution.efxclipse.tooling.fxgraph.ui.contentassist.FXGraphProposalProvider.java
License:Open Source License
@Override public void completeBindValueProperty_ElementReference(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { TreeIterator<EObject> it = model.eResource().getAllContents(); while (it.hasNext()) { EObject o = it.next();// www. j a va 2 s .c om if (o instanceof Element) { Element e = (Element) o; if (e.getName() != null && e.getName().trim().length() > 0) { StyledString s = new StyledString(e.getName()); s.append(" - " + e.getType().getQualifiedName(), StyledString.DECORATIONS_STYLER); acceptor.accept(createCompletionProposal(e.getName(), s, IconKeys.getIcon(IconKeys.CLASS_KEY), context)); } } } }
From source file:at.bestsolution.efxclipse.tooling.fxgraph.ui.contentassist.FXGraphProposalProvider.java
License:Open Source License
@Override public void completeBindValueProperty_Attribute(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { BindValueProperty b = (BindValueProperty) model; if (b.getElementReference() != null && b.getElementReference().getType() != null) { Property property = (Property) b.eContainer(); Element targetClass = (Element) property.eContainer(); Element element = b.getElementReference(); try {// w ww. ja va 2 s .c om IJavaProject javaProject = projectProvider.getJavaProject(element.eResource().getResourceSet()); IType sourceType = javaProject.findType(element.getType().getQualifiedName()); IType targetType = javaProject.findType(targetClass.getType().getQualifiedName()); IFXClass fxSourceClazz = FXPlugin.getClassmodel().findClass(javaProject, sourceType); IFXClass fxTargetClass = FXPlugin.getClassmodel().findClass(javaProject, targetType); IFXProperty targetProperty = fxTargetClass.getProperty(property.getName()); if (targetProperty instanceof IFXPrimitiveProperty) { IFXPrimitiveProperty pp = (IFXPrimitiveProperty) targetProperty; for (IFXProperty sourceProp : fxSourceClazz.getAllProperties().values()) { if (sourceProp instanceof IFXEventHandlerProperty) { continue; } boolean select = false; if (pp.getType() == Type.STRING) { select = true; } else { if (sourceProp instanceof IFXPrimitiveProperty) { IFXPrimitiveProperty sp = (IFXPrimitiveProperty) sourceProp; if (pp.getType() == Type.BOOLEAN) { select = sp.getType() == Type.BOOLEAN; } else if (sp.getType() != Type.STRING && sp.getType() != Type.BOOLEAN) { select = true; } } } if (select) { String typeName = ""; if (sourceProp instanceof IFXPrimitiveProperty) { IFXPrimitiveProperty sp = (IFXPrimitiveProperty) sourceProp; if (sp.getType() == Type.STRING) { typeName = "String"; } else { typeName = sp.getType().jvmType(); } } else if (sourceProp instanceof IFXCollectionProperty) { typeName = ((IFXCollectionProperty) sourceProp).getCollectionAsString(); } else if (sourceProp instanceof IFXEnumProperty) { typeName = ((IFXEnumProperty) sourceProp).getEnumTypeAsString(false); } else if (sourceProp instanceof IFXMapProperty) { typeName = "{}"; } else if (sourceProp instanceof IFXObjectProperty) { typeName = ((IFXObjectProperty) sourceProp).getElementTypeAsString(false); } StyledString s = new StyledString(sourceProp.getName() + " : " + typeName); s.append(" - " + sourceProp.getFXClass().getSimpleName(), StyledString.QUALIFIER_STYLER); ICompletionProposal cp = createCompletionProposal(sourceProp.getName(), s, IconKeys.getIcon(IconKeys.FIELD_KEY), getPropertiesProposalsProposals(), context.getPrefix(), context); acceptor.accept(cp); } } } } catch (JavaModelException e1) { LOGGER.error("Unable to extract java informations", e1); } } }