Example usage for org.eclipse.jface.viewers StructuredViewer removeFilter

List of usage examples for org.eclipse.jface.viewers StructuredViewer removeFilter

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers StructuredViewer removeFilter.

Prototype

public void removeFilter(ViewerFilter filter) 

Source Link

Document

Removes the given filter from this viewer, and triggers refiltering and resorting of the elements if required.

Usage

From source file:com.technophobia.substeps.junit.ui.component.FeatureViewer.java

License:Open Source License

public synchronized void setShowFailuresOnly(final boolean failuresOnly, final int layoutMode) {
    /*// ww  w  . j av  a 2s  .c o  m
     * Management of fTreeViewer and fTableViewer
     * ****************************************** - invisible viewer is
     * updated on registerViewerUpdate unless its f*NeedsRefresh is true -
     * invisible viewer is not refreshed upfront - on layout change, new
     * viewer is refreshed if necessary - filter only applies to "current"
     * layout mode / viewer
     */
    try {
        viewerbook.setRedraw(false);

        IStructuredSelection selection = null;
        final boolean switchLayout = layoutMode != this.layoutMode.value();
        if (switchLayout) {
            selection = (IStructuredSelection) selectionProvider.getSelection();
            if (layoutMode == ViewLayout.HIERARCHICAL.value()) {
                if (treeNeedsRefresh) {
                    clearUpdateAndExpansion();
                }
            } else {
                if (tableNeedsRefresh) {
                    clearUpdateAndExpansion();
                }
            }
            this.layoutMode = ViewLayout.forValue(layoutMode);
            viewerbook.showPage(getActiveViewer().getControl());
        }

        // avoid realizing all TableItems, especially in flat mode!
        final StructuredViewer viewer = getActiveViewer();
        if (failuresOnly) {
            if (!getActiveViewerHasFilter()) {
                setActiveViewerNeedsRefresh(true);
                setActiveViewerHasFilter(true);
                viewer.setInput(null);
                viewer.addFilter(failuresOnlyFilter);
            }

        } else {
            if (getActiveViewerHasFilter()) {
                setActiveViewerNeedsRefresh(true);
                setActiveViewerHasFilter(false);
                viewer.setInput(null);
                viewer.removeFilter(failuresOnlyFilter);
            }
        }
        processChangesInUI();

        if (selection != null) {
            // workaround for
            // https://bugs.eclipse.org/bugs/show_bug.cgi?id=125708
            // (ITreeSelection not adapted if TreePaths changed):
            final StructuredSelection flatSelection = new StructuredSelection(selection.toList());
            selectionProvider.setSelection(flatSelection, true);
        }

    } finally {
        viewerbook.setRedraw(true);
    }
}

From source file:descent.internal.unittest.ui.TestViewer.java

License:Open Source License

public synchronized void setShowFailuresOnly(boolean failuresOnly, int layoutMode) {
    /*/*w w w  .j  ava 2 s  .  c  o  m*/
     * Management of fTreeViewer and fTableViewer
     * ******************************************
     * - invisible viewer is updated on registerViewerUpdate unless its f*NeedsRefresh is true
     * - invisible viewer is not refreshed upfront
     * - on layout change, new viewer is refreshed if necessary
     * - filter only applies to "current" layout mode / viewer
     */
    try {
        fViewerbook.setRedraw(false);

        IStructuredSelection selection = null;
        boolean switchLayout = layoutMode != fLayoutMode;
        if (switchLayout) {
            selection = (IStructuredSelection) fSelectionProvider.getSelection();
            if (layoutMode == TestRunnerViewPart.LAYOUT_HIERARCHICAL) {
                if (fTreeNeedsRefresh) {
                    clearUpdateAndExpansion();
                }
            } else {
                if (fTableNeedsRefresh) {
                    clearUpdateAndExpansion();
                }
            }
            fLayoutMode = layoutMode;
            fViewerbook.showPage(getActiveViewer().getControl());
        }

        //avoid realizing all TableItems, especially in flat mode!
        StructuredViewer viewer = getActiveViewer();
        if (failuresOnly) {
            if (!getActiveViewerHasFilter()) {
                setActiveViewerHasFilter(true);
                if (getActiveViewerNeedsRefresh())
                    viewer.setInput(null);
                viewer.addFilter(fFailuresOnlyFilter);
            }

        } else {
            if (getActiveViewerHasFilter()) {
                setActiveViewerHasFilter(false);
                if (getActiveViewerNeedsRefresh())
                    viewer.setInput(null);
                viewer.removeFilter(fFailuresOnlyFilter);
            }
        }
        processChangesInUI();

        if (selection != null) {
            StructuredSelection flatSelection = new StructuredSelection(selection.toList());
            fSelectionProvider.setSelection(flatSelection, true);
        }

    } finally {
        fViewerbook.setRedraw(true);
    }
}

From source file:eclox.ui.editor.advanced.filters.Custom.java

License:Open Source License

/**
 * @see eclox.ui.editor.advanced.filters.IFilter#disposeViewerFilers(org.eclipse.jface.viewers.StructuredViewer)
 *//*from   ww  w .j ava  2s  .  co  m*/
public void disposeViewerFilers(StructuredViewer viewer) {
    // Pre-condition
    assert this.viewer != null;
    assert viewerFilter != null;

    // Uninstalles the viewer filter.
    viewer.removeFilter(this.viewerFilter);
    this.viewerFilter = null;
    this.viewer = null;

    // Post-condition
    assert this.viewer == null;
    assert this.viewerFilter == null;
}

From source file:ext.org.eclipse.jdt.internal.ui.workingsets.ViewActionGroup.java

License:Open Source License

public void fillFilters(StructuredViewer viewer) {
    ViewerFilter workingSetFilter = fFilterActionGroup.getWorkingSetFilter();
    if (fMode == SHOW_PROJECTS) {
        viewer.addFilter(workingSetFilter);
    } else {// w w  w  .  j a va2s.c  om
        viewer.removeFilter(workingSetFilter);
    }
}

From source file:org.eclipse.dltk.debug.ui.actions.ViewFilterAction.java

License:Open Source License

public void run(IAction action) {
    StructuredViewer viewer = getStructuredViewer();
    ViewerFilter[] filters = viewer.getFilters();
    ViewerFilter filter = null;//from   w  w w. ja v a  2 s.  c o  m
    for (int i = 0; i < filters.length; i++) {
        if (filters[i] == this) {
            filter = filters[i];
            break;
        }
    }
    boolean checked = action.isChecked();
    if (filter == null && !checked) {
        viewer.addFilter(this);
        viewer.refresh(false);

        viewer.setInput(viewer.getInput());

    } else if (checked && filter != null) {
        // only refresh is removing - adding will refresh automatically
        viewer.removeFilter(this);
        viewer.refresh(false);
        viewer.setInput(viewer.getInput());
    }
    IPreferenceStore store = getPreferenceStore();
    String key = getView().getSite().getId() + "." + getPreferenceKey(); //$NON-NLS-1$
    store.setValue(key, checked);
}

From source file:org.eclipse.dltk.internal.testing.ui.TestViewer.java

License:Open Source License

public synchronized void setShowFailuresOnly(boolean failuresOnly, int layoutMode) {
    /*/*from w  w  w  . j a v  a2 s  .  co  m*/
     * Management of fTreeViewer and fTableViewer - invisible viewer is
     * updated on registerViewerUpdate unless its fNeedsRefresh is true -
     * invisible viewer is not refreshed upfront - on layout change, new
     * viewer is refreshed if necessary - filter only applies to "current"
     * layout mode / viewer
     */
    try {
        fViewerbook.setRedraw(false);

        IStructuredSelection selection = null;
        boolean switchLayout = layoutMode != fLayoutMode;
        if (switchLayout) {
            selection = (IStructuredSelection) fSelectionProvider.getSelection();
            if (layoutMode == TestRunnerViewPart.LAYOUT_HIERARCHICAL) {
                if (fTreeNeedsRefresh) {
                    clearUpdateAndExpansion();
                }
            } else {
                if (fTableNeedsRefresh) {
                    clearUpdateAndExpansion();
                }
            }
            fLayoutMode = layoutMode;
            fViewerbook.showPage(getActiveViewer().getControl());
        }

        // avoid realizing all TableItems, especially in flat mode!
        StructuredViewer viewer = getActiveViewer();
        if (failuresOnly) {
            if (!getActiveViewerHasFilter()) {
                setActiveViewerHasFilter(true);
                if (getActiveViewerNeedsRefresh())
                    viewer.setInput(null);
                viewer.addFilter(fFailuresOnlyFilter);
            }

        } else {
            if (getActiveViewerHasFilter()) {
                setActiveViewerHasFilter(false);
                if (getActiveViewerNeedsRefresh())
                    viewer.setInput(null);
                viewer.removeFilter(fFailuresOnlyFilter);
            }
        }
        processChangesInUI();

        if (selection != null) {
            // workaround for
            // https://bugs.eclipse.org/bugs/show_bug.cgi?id=125708
            // (ITreeSelection not adapted if TreePaths changed):
            StructuredSelection flatSelection = new StructuredSelection(selection.toList());
            fSelectionProvider.setSelection(flatSelection, true);
        }

    } finally {
        fViewerbook.setRedraw(true);
    }
}

From source file:org.eclipse.dltk.internal.ui.workingsets.ViewActionGroup.java

License:Open Source License

public void fillFilters(StructuredViewer viewer) {
    ViewerFilter workingSetFilter = fFilterActionGroup.getWorkingSetFilter();
    if (showProjects()) {
        viewer.addFilter(workingSetFilter);
    } else if (showWorkingSets()) {
        viewer.removeFilter(workingSetFilter);
    }/*from   w ww. j  a  v  a 2 s.c  om*/
}

From source file:org.eclipse.jdt.internal.junit.ui.TestViewer.java

License:Open Source License

public synchronized void setShowFailuresOnly(boolean failuresOnly, int layoutMode) {
    /*//from  w  ww. ja v a2  s  . com
     * Management of fTreeViewer and fTableViewer
     * ******************************************
     * - invisible viewer is updated on registerViewerUpdate unless its f*NeedsRefresh is true
     * - invisible viewer is not refreshed upfront
     * - on layout change, new viewer is refreshed if necessary
     * - filter only applies to "current" layout mode / viewer
     */
    try {
        fViewerbook.setRedraw(false);

        IStructuredSelection selection = null;
        boolean switchLayout = layoutMode != fLayoutMode;
        if (switchLayout) {
            selection = (IStructuredSelection) fSelectionProvider.getSelection();
            if (layoutMode == TestRunnerViewPart.LAYOUT_HIERARCHICAL) {
                if (fTreeNeedsRefresh) {
                    clearUpdateAndExpansion();
                }
            } else {
                if (fTableNeedsRefresh) {
                    clearUpdateAndExpansion();
                }
            }
            fLayoutMode = layoutMode;
            fViewerbook.showPage(getActiveViewer().getControl());
        }

        //avoid realizing all TableItems, especially in flat mode!
        StructuredViewer viewer = getActiveViewer();
        if (failuresOnly) {
            if (!getActiveViewerHasFilter()) {
                setActiveViewerNeedsRefresh(true);
                setActiveViewerHasFilter(true);
                viewer.setInput(null);
                viewer.addFilter(fFailuresOnlyFilter);
            }

        } else {
            if (getActiveViewerHasFilter()) {
                setActiveViewerNeedsRefresh(true);
                setActiveViewerHasFilter(false);
                viewer.setInput(null);
                viewer.removeFilter(fFailuresOnlyFilter);
            }
        }
        processChangesInUI();

        if (selection != null) {
            // workaround for https://bugs.eclipse.org/bugs/show_bug.cgi?id=125708
            // (ITreeSelection not adapted if TreePaths changed):
            StructuredSelection flatSelection = new StructuredSelection(selection.toList());
            fSelectionProvider.setSelection(flatSelection, true);
        }

    } finally {
        fViewerbook.setRedraw(true);
    }
}

From source file:org.eclipse.mylyn.context.ui.AbstractFocusViewAction.java

License:Open Source License

protected void uninstallInterestFilter(StructuredViewer viewer) {
    if (viewer == null) {
        // FIXME Assert.isNotNull(viewer)
        StatusHandler.log(new Status(IStatus.ERROR, ContextUiPlugin.ID_PLUGIN,
                "The viewer to uninstall interest filter is null", new Exception())); //$NON-NLS-1$
        return;/*from   w ww . j  a v a  2s  . c om*/
    } else if (viewer.getControl().isDisposed()) {
        // TODO: do this with part listener, not lazily?
        ContextUiPlugin.getViewerManager().removeManagedViewer(viewer, viewPart);
        return;
    }

    try {
        viewer.getControl().setRedraw(false);

        List<ViewerFilter> restoreFilters = previousFilters.remove(viewer);
        if (restoreFilters != null && viewPart != null && manageFilters) {
            // install all previous filters and all current filters
            Set<ViewerFilter> filters = new HashSet<ViewerFilter>(restoreFilters);
            filters.addAll(Arrays.asList(viewer.getFilters()));
            // ensure that all interest filters are removed
            for (Iterator<ViewerFilter> it = filters.iterator(); it.hasNext();) {
                if (it.next() instanceof InterestFilter) {
                    it.remove();
                }
            }
            viewer.setFilters(filters.toArray(new ViewerFilter[filters.size()]));
        }
        viewer.removeFilter(interestFilter);
        interestFilter.resetTemporarilyUnfiltered();
    } catch (Throwable t) {
        StatusHandler.log(new Status(IStatus.ERROR, ContextUiPlugin.ID_PLUGIN,
                "Could not uninstall interest viewer filter on: " + globalPrefId, t)); //$NON-NLS-1$
    } finally {
        viewer.getControl().setRedraw(true);
    }
}

From source file:org.eclipse.riena.internal.ui.ridgets.swt.StructuredViewerFilterHolder.java

License:Open Source License

public void remove(final IRidgetContentFilter filter) {
    final ViewerFilter viewerFilter = ridgetFilterToViewerFilter.remove(filter);
    for (final StructuredViewer structuredViewer : activeOnViewers) {
        if (viewerFilter != null) {
            structuredViewer.removeFilter(viewerFilter);
            structuredViewer.refresh();//from w  w w .  j  a v a2s.c o m
        }
    }
}