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

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

Introduction

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

Prototype

public Object[] getElements() 

Source Link

Document

Returns the elements whose labels need to be updated, or null if all labels need to be updated.

Usage

From source file:com.google.dart.tools.ui.internal.viewsupport.ProblemTableViewer.java

License:Open Source License

@Override
protected void handleLabelProviderChanged(LabelProviderChangedEvent event) {
    if (event instanceof ProblemsLabelChangedEvent) {
        ProblemsLabelChangedEvent e = (ProblemsLabelChangedEvent) event;
        if (!e.isMarkerChange() && canIgnoreChangesFromAnnotionModel()) {
            return;
        }/*w  w w  .j ava2s.  co 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);
}

From source file:com.google.dart.tools.ui.internal.viewsupport.ProblemTreeViewer.java

License:Open Source License

@Override
protected void handleLabelProviderChanged(LabelProviderChangedEvent event) {
    if (event instanceof ProblemsLabelChangedEvent) {
        ProblemsLabelChangedEvent e = (ProblemsLabelChangedEvent) event;
        if (!e.isMarkerChange() && canIgnoreChangesFromAnnotionModel()) {
            return;
        }//  ww w.jav  a 2  s.  co  m
    }
    Object[] changed = addAditionalProblemParents(event.getElements());

    if (changed != null && !fResourceToItemsMapper.isEmpty()) {
        ArrayList<Object> others = new ArrayList<Object>();
        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());
    } else {
        // we have modified the list of changed elements via add additional
        // parents.
        if (event.getElements() != changed) {
            event = new LabelProviderChangedEvent((IBaseLabelProvider) event.getSource(), changed);
        }
    }
    super.handleLabelProviderChanged(event);
}

From source file:com.nokia.carbide.cpp.internal.project.ui.editors.images.AIFSourceTable.java

License:Open Source License

/**
 * @param parent/*w  w  w.j  a v a  2  s .  co m*/
 * @param style
 */
public AIFSourceTable(AIFEditorListPage page, Composite parent, int style) {
    super(parent, style);
    this.editorContext = page.getEditorContext();
    this.page = page;

    final GridLayout gridLayout = new GridLayout();
    gridLayout.numColumns = 2;
    this.setLayout(gridLayout);

    imageSourceTableViewer = new TableViewer(this, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION | SWT.V_SCROLL);

    final Table table = imageSourceTableViewer.getTable();
    table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    imageSourceTableViewer.setContentProvider(new ImageTableContentProvider(editorContext.getMMPAIFInfo()));
    imageTableLabelProvider = new ImageTableLabelProvider(editorContext);
    imageSourceTableViewer.setLabelProvider(imageTableLabelProvider);
    imageSourceTableViewer.setInput(editorContext.getMMPAIFInfo());
    labelProviderListener = new ILabelProviderListener() {

        public void labelProviderChanged(LabelProviderChangedEvent event) {
            if (!imageSourceTableViewer.getTable().isDisposed())
                imageSourceTableViewer.update(event.getElements(), null);
        }

    };
    imageTableLabelProvider.addListener(labelProviderListener);

    TableColumn thumbColumn = new TableColumn(table, SWT.CENTER, imageTableLabelProvider.getThumbColumn());
    thumbColumn.setText(Messages.getString("ImageSourceTable.ThumbColumnHeader")); //$NON-NLS-1$
    thumbColumn.setToolTipText(Messages.getString("ImageSourceTable.ThumbColumnHeaderTooltip")); //$NON-NLS-1$

    TableColumn filesColumn = new TableColumn(table, SWT.LEFT, imageTableLabelProvider.getFilesColumn());
    filesColumn.setText(Messages.getString("ImageSourceTable.FilesColumnHeader")); //$NON-NLS-1$
    filesColumn.setToolTipText(Messages.getString("ImageSourceTable.FilesColumnHeaderTooltip")); //$NON-NLS-1$

    table.setHeaderVisible(true);

    TableLayout tableLayout = new TableLayout();
    table.setLayout(tableLayout);

    tableLayout.addColumnData(new ColumnWeightData(20, ImageTableLabelProvider.THUMB_SIZE_X, false));
    tableLayout.addColumnData(new ColumnWeightData(80, 200, true));

    final Composite composite = new Composite(this, SWT.NONE);
    composite.setLayoutData(new GridData(GridData.CENTER, GridData.CENTER, false, false));
    composite.setLayout(new GridLayout());

    upButton = new Button(composite, SWT.NONE);
    upButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    upButton.setText(Messages.getString("ImageSourceTable.UpButton")); //$NON-NLS-1$
    upButton.setToolTipText(Messages.getString("ImageSourceTable.UpButtonTooltip")); //$NON-NLS-1$
    upButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doMove(-1);
        }

    });

    downButton = new Button(composite, SWT.NONE);
    downButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    downButton.setText(Messages.getString("ImageSourceTable.DownButton")); //$NON-NLS-1$
    downButton.setToolTipText(Messages.getString("ImageSourceTable.DownButtonTooltip")); //$NON-NLS-1$
    downButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doMove(1);
        }

    });

    final Composite composite_1 = new Composite(composite, SWT.NONE);
    composite_1.setLayout(new GridLayout());

    combineButton = new Button(composite, SWT.NONE);
    combineButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    combineButton.setText(Messages.getString("ImageSourceTable.PairImgMaskButton")); //$NON-NLS-1$
    combineButton.setToolTipText(Messages.getString("ImageSourceTable.PairImgMaskButtonTooltip")); //$NON-NLS-1$
    combineButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doCombine();
        }

    });

    splitButton = new Button(composite, SWT.NONE);
    splitButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    splitButton.setText(Messages.getString("ImageSourceTable.SplitImgMaskButton")); //$NON-NLS-1$
    splitButton.setToolTipText(Messages.getString("ImageSourceTable.SplitImgMaskButtonTooltip")); //$NON-NLS-1$
    splitButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doSplit();
        }

    });

    swapButton = new Button(composite, SWT.NONE);
    swapButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    swapButton.setText(Messages.getString("ImageSourceTable.SwapImgMaskButton")); //$NON-NLS-1$
    swapButton.setToolTipText(Messages.getString("ImageSourceTable.SwapImgMaskButtonTooltip")); //$NON-NLS-1$
    swapButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doSwap();
        }

    });

    final Composite composite_2 = new Composite(composite, SWT.NONE);
    composite_2.setLayout(new GridLayout());

    final Button addFromProjectButton = new Button(composite, SWT.NONE);
    addFromProjectButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    addFromProjectButton.setText(Messages.getString("ImageSourceTable.AddFromProjectButton")); //$NON-NLS-1$
    addFromProjectButton.setToolTipText(Messages.getString("ImageSourceTable.AddFromProjectButtonTooltip")); //$NON-NLS-1$
    addFromProjectButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doAddFromProject();
        }

    });
    final Button addFromFilesystemButton = new Button(composite, SWT.NONE);
    addFromFilesystemButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    addFromFilesystemButton.setText(Messages.getString("ImageSourceTable.AddFromFilesystemButton")); //$NON-NLS-1$
    addFromFilesystemButton
            .setToolTipText(Messages.getString("ImageSourceTable.AddFromFilesystemButtonTooltip")); //$NON-NLS-1$
    addFromFilesystemButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doAddFromFilesystem();
        }

    });

    removeButton = new Button(composite, SWT.NONE);
    removeButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    removeButton.setText(Messages.getString("ImageSourceTable.RemoveButton")); //$NON-NLS-1$
    removeButton.setToolTipText(Messages.getString("ImageSourceTable.RemoveButtonTooltip")); //$NON-NLS-1$
    removeButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doRemove();
        }

    });

    table.addKeyListener(new KeyAdapter() {
        /* (non-Javadoc)
         * @see org.eclipse.swt.events.KeyAdapter#keyPressed(org.eclipse.swt.events.KeyEvent)
         */
        @Override
        public void keyPressed(KeyEvent e) {
            if (e.character == SWT.DEL) {
                doRemove();
                e.doit = false;
            }
        }
    });

    refresh();
    refreshTable();
}

From source file:com.nokia.carbide.cpp.internal.project.ui.editors.images.ImageSourceTable.java

License:Open Source License

/**
 * @param parent//from  w w w  . ja  va  2s.  c o  m
 * @param style
 */
public ImageSourceTable(MultiImageListPage page, Composite parent, int style) {
    super(parent, style);
    this.editorContext = page.getEditorContext();
    this.page = page;

    final GridLayout gridLayout = new GridLayout();
    gridLayout.numColumns = 2;
    this.setLayout(gridLayout);

    imageSourceTableViewer = new TableViewer(this, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION | SWT.V_SCROLL);

    final Table table = imageSourceTableViewer.getTable();
    table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    TableColumn thumbColumn = new TableColumn(table, SWT.CENTER);
    thumbColumn.setText(Messages.getString("ImageSourceTable.ThumbColumnHeader")); //$NON-NLS-1$
    thumbColumn.setToolTipText(Messages.getString("ImageSourceTable.ThumbColumnHeaderTooltip")); //$NON-NLS-1$

    TableColumn formatColumn = new TableColumn(table, SWT.LEFT);
    formatColumn.setText(Messages.getString("ImageSourceTable.FormatColumnHeader")); //$NON-NLS-1$
    formatColumn.setToolTipText(Messages.getString("ImageSourceTable.FormatColumnHeaderTooltip")); //$NON-NLS-1$

    TableColumn filesColumn = new TableColumn(table, SWT.LEFT);
    filesColumn.setText(Messages.getString("ImageSourceTable.FilesColumnHeader")); //$NON-NLS-1$
    filesColumn.setToolTipText(Messages.getString("ImageSourceTable.FilesColumnHeaderTooltip")); //$NON-NLS-1$

    TableColumn enumColumn = new TableColumn(table, SWT.LEFT);
    enumColumn.setText(Messages.getString("ImageSourceTable.EnumeratorsColumn")); //$NON-NLS-1$
    enumColumn.setToolTipText(Messages.getString("ImageSourceTable.EnumeratorsColumnHeaderTooltip")); //$NON-NLS-1$

    table.setHeaderVisible(true);

    imageSourceTableViewer
            .setContentProvider(new ImageTableContentProvider(editorContext.getMultiImageSource()));
    imageTableLabelProvider = new ImageTableLabelProvider(editorContext);
    imageSourceTableViewer.setLabelProvider(imageTableLabelProvider);
    imageSourceTableViewer.setInput(editorContext.getMultiImageSource());
    labelProviderListener = new ILabelProviderListener() {

        public void labelProviderChanged(LabelProviderChangedEvent event) {
            if (!imageSourceTableViewer.getTable().isDisposed())
                imageSourceTableViewer.update(event.getElements(), null);
        }

    };
    imageTableLabelProvider.addListener(labelProviderListener);
    clipboard = new Clipboard(getDisplay());

    addTableContextMenu(table);

    TableLayout tableLayout = new TableLayout();
    table.setLayout(tableLayout);

    tableLayout.addColumnData(new ColumnWeightData(20, ImageTableLabelProvider.THUMB_SIZE_X, false));
    tableLayout.addColumnData(new ColumnWeightData(20, 32, false));
    tableLayout.addColumnData(new ColumnWeightData(60, 128, true));
    tableLayout.addColumnData(new ColumnWeightData(60, 200, true));

    final Composite composite = new Composite(this, SWT.NONE);
    composite.setLayoutData(new GridData(GridData.CENTER, GridData.CENTER, false, false));
    composite.setLayout(new GridLayout());

    upButton = new Button(composite, SWT.NONE);
    upButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    upButton.setText(Messages.getString("ImageSourceTable.UpButton")); //$NON-NLS-1$
    upButton.setToolTipText(Messages.getString("ImageSourceTable.UpButtonTooltip")); //$NON-NLS-1$
    upButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doMove(-1);
        }

    });

    downButton = new Button(composite, SWT.NONE);
    downButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    downButton.setText(Messages.getString("ImageSourceTable.DownButton")); //$NON-NLS-1$
    downButton.setToolTipText(Messages.getString("ImageSourceTable.DownButtonTooltip")); //$NON-NLS-1$
    downButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doMove(1);
        }

    });

    final Composite composite_1 = new Composite(composite, SWT.NONE);
    composite_1.setLayout(new GridLayout());

    combineButton = new Button(composite, SWT.NONE);
    combineButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    combineButton.setText(Messages.getString("ImageSourceTable.PairImgMaskButton")); //$NON-NLS-1$
    combineButton.setToolTipText(Messages.getString("ImageSourceTable.PairImgMaskButtonTooltip")); //$NON-NLS-1$
    combineButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doCombine();
        }

    });

    splitButton = new Button(composite, SWT.NONE);
    splitButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    splitButton.setText(Messages.getString("ImageSourceTable.SplitImgMaskButton")); //$NON-NLS-1$
    splitButton.setToolTipText(Messages.getString("ImageSourceTable.SplitImgMaskButtonTooltip")); //$NON-NLS-1$
    splitButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doSplit();
        }

    });

    swapButton = new Button(composite, SWT.NONE);
    swapButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    swapButton.setText(Messages.getString("ImageSourceTable.SwapImgMaskButton")); //$NON-NLS-1$
    swapButton.setToolTipText(Messages.getString("ImageSourceTable.SwapImgMaskButtonTooltip")); //$NON-NLS-1$
    swapButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doSwap();
        }

    });

    final Composite composite_2 = new Composite(composite, SWT.NONE);
    composite_2.setLayout(new GridLayout());

    final Button addFromProjectButton = new Button(composite, SWT.NONE);
    addFromProjectButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    addFromProjectButton.setText(Messages.getString("ImageSourceTable.AddFromProjectButton")); //$NON-NLS-1$
    addFromProjectButton.setToolTipText(Messages.getString("ImageSourceTable.AddFromProjectButtonTooltip")); //$NON-NLS-1$
    addFromProjectButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doAddFromProject();
        }

    });
    final Button addFromFilesystemButton = new Button(composite, SWT.NONE);
    addFromFilesystemButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    addFromFilesystemButton.setText(Messages.getString("ImageSourceTable.AddFromFilesystemButton")); //$NON-NLS-1$
    addFromFilesystemButton
            .setToolTipText(Messages.getString("ImageSourceTable.AddFromFilesystemButtonTooltip")); //$NON-NLS-1$
    addFromFilesystemButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doAddFromFilesystem();
        }

    });

    removeButton = new Button(composite, SWT.NONE);
    removeButton.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    removeButton.setText(Messages.getString("ImageSourceTable.RemoveButton")); //$NON-NLS-1$
    removeButton.setToolTipText(Messages.getString("ImageSourceTable.RemoveButtonTooltip")); //$NON-NLS-1$
    removeButton.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            doRemove();
        }

    });

    table.addKeyListener(new KeyAdapter() {
        /* (non-Javadoc)
         * @see org.eclipse.swt.events.KeyAdapter#keyPressed(org.eclipse.swt.events.KeyEvent)
         */
        @Override
        public void keyPressed(KeyEvent e) {
            if (e.character == SWT.DEL) {
                doRemove();
                e.doit = false;
            }
        }
    });

    refresh();
    refreshTable();
}

From source file:com.rcpcompany.uibindings.extests.bindingMessages.LabelDecoratorTest.java

License:Open Source License

/**
 * Sleeps for a specified time and will then test if the specified label decorator fired an
 * event with the specified objects as the changed elements
 * //from w w w . ja  v  a2s .c om
 * @param labelDecorator the decorator
 * @param period the period to sleep
 * @param objects the expected changed objects
 */
private void sleepWithEvents(ValidationLabelDecorator labelDecorator, int period, final Object... objects) {
    final ILabelProviderListener l = new ILabelProviderListener() {
        Comparator<Object> comparator = new Comparator<Object>() {
            @Override
            public int compare(Object o1, Object o2) {
                return o1.hashCode() - o2.hashCode();
            }
        };

        @Override
        public void labelProviderChanged(LabelProviderChangedEvent event) {
            assertEquals(false, eventSeen);
            eventSeen = true;
            Arrays.sort(objects, comparator);
            Arrays.sort(event.getElements(), comparator);

            assertArrayEquals(objects, event.getElements());
        }
    };

    eventSeen = false;
    labelDecorator.addListener(l);
    sleep(period);
    labelDecorator.removeListener(l);
    if (objects.length > 0) {
        assertEquals(true, eventSeen);
    } else {
        assertEquals(false, eventSeen);
    }
}

From source file:com.rcpcompany.uibindings.internal.decorators.extenders.ViewerSpecificLabelDecoratorExtender.java

License:Open Source License

@Override
public void labelProviderChanged(LabelProviderChangedEvent event) {
    IManager.Factory.getManager().updateBindings(event.getElements());
}

From source file:com.xored.af.ui.LabelProviderUpdateHandler.java

License:Open Source License

public HandleResult handle(final List<LabelProviderChangedEvent> events) {
    objects.clear();/*from  w  w w  .j  a  v  a  2  s . c  o  m*/
    boolean global = false;

    for (final LabelProviderChangedEvent e : events) {
        if (e.getElements() == null) {
            global = true;
        }
    }

    if (global) {
        // System.out.println("[" + System.currentTimeMillis() +
        // "] firing refresh: global");
        fireEventImmediately(globalRefresh);
        return HandleResult.DONE;
    }

    for (final LabelProviderChangedEvent e : events) {
        for (final Object o : e.getElements()) {
            objects.add(o);
        }
    }

    if (!objects.isEmpty()) {
        final Object[] objectsCopy = objects.toArray();
        objects.clear();

        // System.out.println("[" + System.currentTimeMillis() +
        // "] firing refresh: "
        // + objectsCopy.length);
        fireEventImmediately(new LabelProviderChangedEvent(labelProvider, objectsCopy));
    }

    return HandleResult.DONE;
}

From source file:com.xored.af.ui.labels.EmfEditLabelProvider.java

License:Open Source License

public EmfEditLabelProvider(final TransactionalEditingDomain domain, final boolean supportDecoration) {
    this.rule = new EmfTransactionJob.TransactionRule(domain);

    final Job initializeJob = new EmfTransactionJob("LabelRegistry.initialize()", new Runnable() {

        public void run() {
            initialize();//w  w w.j  a v a 2  s.com
        }
    }, domain);
    initializeJob.setPriority(Job.INTERACTIVE);
    initializeJob.schedule();

    labelModelUpdates = new EventGroup<Object>("Label model", new EventHandler<Object>() {

        public HandleResult handle(final List<Object> events) {
            if (disposed) {
                return HandleResult.DONE;
            }

            synchronized (labelModelStore) {
                for (final Object object : events) {
                    if (object instanceof EObject) {
                        calculateLabel((EObject) object);
                        labelUiUpdates.post(object);
                    }
                }
            }
            return HandleResult.DONE;
        }
    }) {

        @Override
        protected Job createHandlerJob() {
            final Job job = new EmfTransactionJob("Update label model", new Runnable() {

                public void run() {
                    handleEvents();
                }
            }, domain);
            job.setRule(rule);
            job.setPriority(Job.INTERACTIVE);
            return job;
        }
    };

    if (supportDecoration) {
        genericLabelProvider = WorkbenchLabelProvider.getDecoratingWorkbenchLabelProvider();
    } else {
        genericLabelProvider = new WorkbenchLabelProvider();
    }

    genericLabelProvider.addListener(new ILabelProviderListener() {

        public void labelProviderChanged(final LabelProviderChangedEvent event) {
            if (disposed) {
                return;
            }

            if (event.getElements() == null) {
                synchronized (labelUiStore) {
                    labelUiStore.clear();
                }
                fireLabelProviderChanged(new LabelProviderChangedEvent(EmfEditLabelProvider.this));
            } else {
                synchronized (labelUiStore) {
                    for (final Object o : event.getElements()) {
                        labelUiStore.remove(o);
                    }
                }
                fireLabelProviderChanged(
                        new LabelProviderChangedEvent(EmfEditLabelProvider.this, event.getElements()));
            }
        }
    });

}

From source file:de.hentschel.visualdbc.statistic.ui.util.AbstractTreeItemDecorator.java

License:Open Source License

/**
 * When the {@link ILabelProvider} updates a row.
 * @param event The event.//from   w w  w .j  av a 2  s.  com
 */
protected void handleLabelProviderChanged(final LabelProviderChangedEvent event) {
    // Update TreeItem asynchronous because the event is caught before the cell content is updated.
    viewer.getTree().getDisplay().asyncExec(new Runnable() {
        @Override
        public void run() {
            for (Object element : event.getElements()) {
                if (element instanceof DbcProof) {
                    element = ((DbcProof) element).getTarget();
                }
                TreeItem item = searchTreeItem(element);
                if (item != null) {
                    updateTreeItem(item);
                }
            }
        }
    });
}

From source file:de.quamoco.qm.editor.pages.HierarchyViewerPaneBase.java

License:Apache License

/** Initialize the {@link TreeViewer} displaying the hierarchy. */
protected void initTreeViewer(final TreeViewer treeViewer) {
    ResourceSet resourceSet = editor.getEditingDomain().getResourceSet();
    AdapterFactory adapterFactory = createAdapterFactory();

    // default label provider
    AdapterFactoryLabelProvider aflp = new AdapterFactoryLabelProvider.ColorProvider(adapterFactory,
            treeViewer);//  w w  w . j av a  2 s . c om
    aflp.setFireLabelUpdateNotifications(true);
    aflp.addListener(new ILabelProviderListener() {

        @Override
        public void labelProviderChanged(final LabelProviderChangedEvent event) {
            if (Display.getDefault().getThread() != Thread.currentThread()) {
                Display.getDefault().asyncExec(new Runnable() {

                    @Override
                    public void run() {
                        treeViewer.update(event.getElements(), null);
                    }
                });
            } else if (!treeViewer.isBusy()) {
                treeViewer.update(event.getElements(), null);
            }
        }
    });

    // show the validation results
    ILabelProvider dlp = new DecoratingLabelProvider(aflp, new ProblemLabelDecorator(false));

    // show the different colors
    CustomLabelProvider clp = new CustomLabelProvider(dlp);
    treeViewer.setLabelProvider(new DelegatingStyledCellLabelProvider(clp));

    treeViewer.setInput(resourceSet);

    treeViewer.setSorter(new LabelProviderViewerSorter(clp, false, QmPackage.eINSTANCE.getFactor(),
            QmPackage.eINSTANCE.getMeasure(), QmPackage.eINSTANCE.getEntity()));
}