Example usage for org.eclipse.jface.viewers IBaseLabelProvider dispose

List of usage examples for org.eclipse.jface.viewers IBaseLabelProvider dispose

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers IBaseLabelProvider dispose.

Prototype

public void dispose();

Source Link

Document

Disposes of this label provider.

Usage

From source file:org.eclipse.emfforms.spi.swt.treemasterdetail.TreeMasterDetailSWTBuilder.java

License:Open Source License

/**
 * Use this method a add a custom {@link org.eclipse.jface.viewers.IBaseLabelProvider IBaseLabelProvider} to the
 * tree. If the label provider requires more dispose code than a call to {@link IBaseLabelProvider#dispose()} use
 * {@link #customizeLabelProvider(LabelProviderProvider)} instead. The default implementation uses an
 * {@link org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider AdapterFactoryLabelProvider}.
 *
 * @param provider the label provider to add
 * @return self//from  w w  w. j a  v  a  2  s  .c  o m
 */
public TreeMasterDetailSWTBuilder customizeLabelProvider(final IBaseLabelProvider provider) {
    behaviour.setLabelProvider(new LabelProviderProvider() {

        @Override
        public void dispose() {
            provider.dispose();
        }

        @Override
        public IBaseLabelProvider getLabelProvider() {
            return provider;
        }
    });
    return this;
}

From source file:org.eclipse.emfforms.spi.swt.treemasterdetail.TreeViewerSWTBuilder.java

License:Open Source License

/**
 * Use this method a add a custom {@link org.eclipse.jface.viewers.IBaseLabelProvider IBaseLabelProvider} to the
 * tree. If the label provider requires more dispose code than a call to {@link IBaseLabelProvider#dispose()} use
 * {@link #customizeLabelProvider(LabelProviderProvider)} instead. The default implementation uses an
 * {@link org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider AdapterFactoryLabelProvider}.
 *
 * @param provider the label provider to add
 * @return self/*from   w  w w. j ava  2  s  . c  o  m*/
 */
public TreeViewerSWTBuilder customizeLabelProvider(final IBaseLabelProvider provider) {
    behaviour.setLabelProvider(new LabelProviderProvider() {

        @Override
        public void dispose() {
            provider.dispose();
        }

        @Override
        public IBaseLabelProvider getLabelProvider() {
            return provider;
        }
    });
    return this;
}

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

License:Open Source License

private void reset() {
    // Prevent memory leak.
    configName = null;//from ww  w  . ja  va 2s.  co  m
    if (adapterFactory != null) {
        if (adapterFactory instanceof IDisposable) {
            ((IDisposable) adapterFactory).dispose();
        }
        adapterFactory = null;
    }
    editingDomain.setAdapterFactory(null);
    IContentProvider contentProvider = treeViewer.getContentProvider();
    if (contentProvider != null) {
        contentProvider.dispose();
    }
    IBaseLabelProvider labelProvider = treeViewer.getLabelProvider();
    if (labelProvider != null) {
        labelProvider.dispose();
    }
    StructuredSelection emptySelection = new StructuredSelection();
    actionDispatcher.setSelection(emptySelection);
    UIActionDispatcher.getInstance().setSelection(emptySelection);
}

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

License:Open Source License

/**
 * Sets the given Method Configuration as this viewer's input
 * // w  ww  .  j a va  2 s  .c om
 * @param config
 */
public void setMethodConfiguration(MethodConfiguration config) {
    Control ctrl = this.getViewer().getControl();
    if (ctrl == null || ctrl.isDisposed()) {
        return;
    }

    if (treeViewer.getInput() == config)
        return;
    String title = ""; //$NON-NLS-1$

    if (config != null) {
        this.configName = config.getName();
        configFilter = createFilter(config);
        adapterFactory = TngAdapterFactory.INSTANCE.getConfigurationView_AdapterFactory(configFilter);
        editingDomain.setAdapterFactory(adapterFactory);
        AdapterFactoryContentProvider contentProvider = (AdapterFactoryContentProvider) treeViewer
                .getContentProvider();
        if (contentProvider == null) {
            contentProvider = createContentProvider();
        } else {
            contentProvider.setAdapterFactory(adapterFactory);
        }
        treeViewer.setContentProvider(contentProvider);
        treeViewer.setLabelProvider(new ConfigurationDecoratingLabelProvider(config, adapterFactory));
        title = config.getName();
    } else {
        // Prevent memory leak.
        configName = null;
        if (adapterFactory != null) {
            if (adapterFactory instanceof IDisposable) {
                ((IDisposable) adapterFactory).dispose();
            }
            adapterFactory = null;
        }
        editingDomain.setAdapterFactory(null);
        IContentProvider contentProvider = treeViewer.getContentProvider();
        if (contentProvider != null) {
            contentProvider.dispose();
        }
        IBaseLabelProvider labelProvider = treeViewer.getLabelProvider();
        if (labelProvider != null) {
            labelProvider.dispose();
        }
        StructuredSelection emptySelection = new StructuredSelection();
        actionDispatcher.setSelection(emptySelection);
        UIActionDispatcher.getInstance().setSelection(emptySelection);
    }

    treeViewer.setInput(config);
    setContentDescription(title);
}

From source file:org.eclipse.ui.internal.decorators.DecoratorDefinition.java

License:Open Source License

/**
 * Dispose the decorator instance and remove listeners
 * as appropirate.//from  www  .  j av  a 2  s .  co  m
 * @param disposedDecorator
 */
protected void disposeCachedDecorator(IBaseLabelProvider disposedDecorator) {
    disposedDecorator.removeListener(WorkbenchPlugin.getDefault().getDecoratorManager());
    disposedDecorator.dispose();

}

From source file:org.eclipse.wazaabi.engine.swt.commons.views.collections.SWTCollectionView.java

License:Open Source License

protected Widget createSWTWidget(Widget parent, int swtStyle, int index) {
    int style = computeSWTCreationStyle(getHost());

    LookAndFeel lookAndFeel = getLookAndFeel();
    if (lookAndFeel == null)
        lookAndFeel = LookAndFeel.TABLE;

    switch (lookAndFeel.getValue()) {
    case LookAndFeel.COMBOBOX_VALUE:
        viewer = new ComboViewer(
                createCombo((org.eclipse.swt.widgets.Composite) parent, style | SWT.READ_ONLY)) {

            public void setLabelProvider(IBaseLabelProvider labelProvider) {
                assert labelProvider instanceof IBaseLabelProvider;
                IBaseLabelProvider oldProvider = SWTCollectionView.this.labelProvider;
                // If it hasn't changed, do nothing.
                // This also ensures that the provider is not disposed
                // if set a second time.
                if (labelProvider == oldProvider) {
                    return;
                }/*www.j  av a2  s  .  c o  m*/

                SWTCollectionView.this.labelProvider = (IBaseLabelProvider) labelProvider;

                refresh();

                // Dispose old provider after refresh, so that items never
                // refer to stale images.
                if (oldProvider != null) {
                    oldProvider.dispose();
                }
            }

            public IBaseLabelProvider getLabelProvider() {
                if (labelProvider == null)
                    return defaultComboLabelProvider;
                return labelProvider;
            }

        };
        viewer.addSelectionChangedListener(getSelectionChangedListener());
        return ((ComboViewer) viewer).getCombo();
    case LookAndFeel.TREE_VALUE: {
        org.eclipse.swt.widgets.Composite layoutHolder = createLayoutHolder(
                (org.eclipse.swt.widgets.Composite) parent, SWT.NONE);
        layoutHolder.setLayout(new TreeColumnLayout());

        if (isCheckable()) {
            viewer = new CheckboxTreeViewer(createTree(layoutHolder,
                    SWT.CHECK | computeSWTCreationStyle(getHost()) | computeSWTCreationStyleForTableOrTree()));
            ((CheckboxTreeViewer) viewer).addCheckStateListener(getCheckStateListener());
        } else
            viewer = new TreeViewer(createTree(layoutHolder,
                    computeSWTCreationStyle(getHost()) | computeSWTCreationStyleForTableOrTree()));
        viewer.addSelectionChangedListener(getSelectionChangedListener());
        return layoutHolder;
    }
    case LookAndFeel.TABLE_VALUE: {
        org.eclipse.swt.widgets.Composite layoutHolder = createLayoutHolder(
                (org.eclipse.swt.widgets.Composite) parent, SWT.NONE);
        layoutHolder.setLayout(new TableColumnLayout());

        if (isCheckable()) {
            viewer = new CheckboxTableViewer(createTable(layoutHolder,
                    SWT.CHECK | computeSWTCreationStyle(getHost()) | computeSWTCreationStyleForTableOrTree()));
            ((CheckboxTableViewer) viewer).addCheckStateListener(getCheckStateListener());

        } else
            viewer = new TableViewer(layoutHolder,
                    computeSWTCreationStyle(getHost()) | computeSWTCreationStyleForTableOrTree());
        viewer.addSelectionChangedListener(getSelectionChangedListener());
        return layoutHolder;
    }
    }
    throw new RuntimeException("Invalid LookAndFeel value"); //$NON-NLS-1$
}

From source file:org.locationtech.udig.ui.FeatureTableControl.java

License:Open Source License

private void disposeTableViewer() {
    if (tableViewer == null)
        return;/*  w w  w  .  j a  v  a  2s. com*/
    IContentProvider contentProvider = tableViewer.getContentProvider();
    if (contentProvider != null)
        contentProvider.dispose();
    IBaseLabelProvider labelProvider = tableViewer.getLabelProvider();
    if (labelProvider != null)
        labelProvider.dispose();
    Control control = tableViewer.getControl();
    if (control != null)
        control.dispose();
    tableViewer = null;
}

From source file:org.xmind.ui.gallery.GalleryViewer.java

License:Open Source License

public void setLabelProvider(IBaseLabelProvider labelProvider) {
    if (labelProvider == null)
        return;/*from   w  w w .  ja  v a  2s  .  c o m*/

    IBaseLabelProvider oldLabelProvider = this.labelProvider;
    if (labelProvider == oldLabelProvider)
        return;

    if (oldLabelProvider != null) {
        oldLabelProvider.removeListener(labelProviderListener);
    }
    this.labelProvider = labelProvider;
    labelProviderListener = new GalleryLabelProviderListener();
    labelProvider.addListener(labelProviderListener);
    refresh();

    if (oldLabelProvider != null) {
        oldLabelProvider.dispose();
    }
}

From source file:org.xmind.ui.gallery.NavigationViewer.java

License:Open Source License

public void setLabelProvider(IBaseLabelProvider labelProvider) {
    if (labelProvider == null)
        return;//from   www .  j a va  2s.  c o m

    IBaseLabelProvider oldLabelProvider = this.labelProvider;
    if (labelProvider == oldLabelProvider)
        return;

    if (oldLabelProvider != null) {
        if (labelProviderListener != null) {
            oldLabelProvider.removeListener(labelProviderListener);
        }
    }
    this.labelProvider = labelProvider;
    if (labelProviderListener == null)
        labelProviderListener = new LabelProviderListener();
    labelProvider.addListener(labelProviderListener);
    refresh();

    if (oldLabelProvider != null) {
        oldLabelProvider.dispose();
    }
}

From source file:rabbit.ui.internal.viewers.CompositeCellLabelProvider.java

License:Apache License

@Override
public void dispose() {
    super.dispose();
    for (IBaseLabelProvider provider : providers) {
        provider.dispose();
    }//from w w  w. j a v a 2s.c o  m
}