Example usage for org.eclipse.jface.viewers LabelProviderChangedEvent getElement

List of usage examples for org.eclipse.jface.viewers LabelProviderChangedEvent getElement

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers LabelProviderChangedEvent getElement.

Prototype

public Object getElement() 

Source Link

Document

Returns the first element whose label needs to be updated, or null if all labels need to be updated.

Usage

From source file:gov.redhawk.sca.internal.ui.properties.StructFieldPropertyColumnLabelProvider.java

License:Open Source License

@Override
protected void fireLabelProviderChanged(LabelProviderChangedEvent event) {
    if (event.getElement() instanceof ScaSimpleProperty) {
        event = new LabelProviderChangedEvent(this, ((ScaSimpleProperty) event.getElement()).eContainer());
    }//from  w ww .j a v a 2s .co m
    super.fireLabelProviderChanged(event);
}

From source file:org.eclipse.cdt.internal.ui.util.ProblemTreeViewer.java

License:Open Source License

@Override
protected void handleLabelProviderChanged(LabelProviderChangedEvent event) {
    Object source = event.getElement();
    if (source == null) {
        super.handleLabelProviderChanged(event);
        return;/*from ww  w . j  a v  a 2s.c  o m*/
    }
    Object[] changed = event.getElements();
    if (changed != null && !fResourceToItemsMapper.isEmpty()) {
        ArrayList<Object> others = new ArrayList<Object>(changed.length);
        for (int i = 0; i < changed.length; i++) {
            Object curr = changed[i];
            if (curr instanceof IResource) {
                fResourceToItemsMapper.resourceChanged((IResource) curr);
            } else {
                others.add(curr);
            }
        }
        if (others.isEmpty()) {
            return;
        }
        event = new LabelProviderChangedEvent((IBaseLabelProvider) event.getSource(), others.toArray());
    }
    super.handleLabelProviderChanged(event);
    return;
}

From source file:org.eclipse.epf.authoring.ui.views.LibraryView.java

License:Open Source License

/**
 * Creates the underlying tree viewer./*w  ww . j a v a2  s  . c om*/
 */
public void createViewer(Composite parent) {
    treeViewer = new TreeViewer(parent) {
        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.StructuredViewer#handleLabelProviderChanged(org.eclipse.jface.viewers.LabelProviderChangedEvent)
         */
        protected void handleLabelProviderChanged(LabelProviderChangedEvent event) {
            if (event.getElement() instanceof IResource && event.getSource() instanceof ILabelDecorator) {
                this.refresh();
                return;
            }
            super.handleLabelProviderChanged(event);
        }
    };

    adapterFactory = TngAdapterFactory.INSTANCE.getNavigatorView_ComposedAdapterFactory();

    // Create the command stack that will notify this editor as commands are
    // executed.
    BasicCommandStack commandStack = new BasicCommandStack();

    // Add a listener to set the most recent command's affected objects to
    // be the selection of the viewer with focus.
    commandStack.addCommandStackListener(new CommandStackListener() {
        public void commandStackChanged(final EventObject event) {
            Runnable runnable = new Runnable() {
                public void run() {
                    firePropertyChange(IEditorPart.PROP_DIRTY);

                    // Try to select the affected objects.
                    Command mostRecentCommand = ((CommandStack) event.getSource()).getMostRecentCommand();
                    if (mostRecentCommand != null) {
                        setSelectionToViewer(mostRecentCommand.getAffectedObjects());

                        if (mostRecentCommand instanceof CreateMethodElementCommand) {
                            // Work-around to refresh icons of newly created elements, whose decoration
                            // sometimes got out of sync.
                            //
                            Viewer viewer = getViewer();
                            if (viewer instanceof StructuredViewer) {
                                Object[] elements = mostRecentCommand.getAffectedObjects().toArray();
                                ((StructuredViewer) viewer).update(elements, null);
                            }
                        }
                    }
                    if (propertySheetPage != null && propertySheetPage.getControl() != null
                            && !propertySheetPage.getControl().isDisposed()
                            && propertySheetPage.getControl().isVisible()) {
                        propertySheetPage.refresh();
                    }
                }
            };
            if (Display.getCurrent() != null) {
                Display.getCurrent().asyncExec(runnable);
            } else {
                runnable.run();
            }
        }
    });

    // Create the editing domain with a special command stack.
    ResourceSet resourceSet = PersistenceService.INSTANCE
            .createResourceSet(Services.getDefaultLibraryPersistenceType());

    editingDomain = new TraceableAdapterFactoryEditingDomain(adapterFactory, commandStack, resourceSet);

    treeViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));

    // treeViewer.setLabelProvider(new
    // AdapterFactoryLabelProvider(adapterFactory));
    treeViewer.setLabelProvider(new DecoratingLabelProvider(new AdapterFactoryLabelProvider(adapterFactory),
            new MethodElementLabelDecorator()) {

        public Font getFont(Object element) {
            if (customCategoryOwnedByOtherPlugin(element)) {
                return getItalicFont();
            }
            return super.getFont(element);
        }

        private Font getItalicFont() {
            if (italicFont == null) {
                italicFont = createFont(SWT.ITALIC);
            }

            return italicFont;
        }

        private Font createFont(int style) {
            FontData[] fontdata = Display.getCurrent().getSystemFont().getFontData();
            for (FontData data : fontdata) {
                data.setStyle(style);
            }

            return new Font(Display.getCurrent(), fontdata);
        }
    });

    // Add a double click listener for launching the Method editors.
    doubleClickListener = new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            UIActionDispatcher.getInstance().handleDoubleClickEvent(event);
        }
    };
    treeViewer.addDoubleClickListener(doubleClickListener);

    getSite().getPage().addPartListener(editorPartListener);

    ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceListener);

    createContextMenuFor(treeViewer);
}