Example usage for org.eclipse.jface.viewers TableViewer reveal

List of usage examples for org.eclipse.jface.viewers TableViewer reveal

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers TableViewer reveal.

Prototype

@Override
    public void reveal(Object element) 

Source Link

Usage

From source file:net.sf.jmoney.reconciliation.reconcilePage.StatementsSection.java

License:Open Source License

public StatementsSection(Composite parent, FormToolkit toolkit, CurrencyAccount account) {
    super(parent, toolkit, Section.DESCRIPTION | Section.TITLE_BAR);
    getSection().setText("Statements");
    getSection().setDescription("Double click a statement to show that statement.");

    final Currency currencyForFormatting = account.getCurrency();

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

    statementTable = new Table(composite, SWT.FULL_SELECTION | SWT.SINGLE | SWT.V_SCROLL);
    GridData gdTable = new GridData(SWT.FILL, SWT.FILL, true, true);
    gdTable.heightHint = 100;//from w w w  .  jav a  2  s  .co  m
    statementTable.setLayoutData(gdTable);

    statementTable.setHeaderVisible(true);
    statementTable.setLinesVisible(true);

    // Create and setup the TableViewer
    TableViewer tableViewer = new TableViewer(statementTable);
    tableViewer.setUseHashlookup(true);

    // Add the columns
    TableViewerColumn statementColumn = new TableViewerColumn(tableViewer, SWT.LEFT);
    statementColumn.getColumn().setWidth(65);
    statementColumn.getColumn().setText("Statement");
    statementColumn.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            StatementDetails statementDetails = (StatementDetails) element;
            return statementDetails.statement.toLocalizedString();
        }
    });

    balanceColumn = new TableViewerColumn(tableViewer, SWT.RIGHT);
    balanceColumn.getColumn().setWidth(70);
    balanceColumn.getColumn().setText("Balance");
    balanceColumn.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            StatementDetails statementDetails = (StatementDetails) element;
            return currencyForFormatting.format(statementDetails.getClosingBalance());
        }
    });

    contentProvider = new StatementContentProvider(tableViewer);

    tableViewer.setContentProvider(contentProvider);
    tableViewer.setComparator(new StatementViewerComparator());
    tableViewer.setInput(account);

    /*
     * Scroll the statement list to the bottom so that the most recent
     * statements are shown (if there are any statements).
     */
    StatementDetails lastStatementDetails = contentProvider.getLastStatement();
    if (lastStatementDetails != null) {
        tableViewer.reveal(lastStatementDetails);
    }

    getSection().setClient(composite);
    toolkit.paintBordersFor(composite);
    refresh();
}

From source file:org.eclipse.jface.snippets.viewers.Snippet008RevealElement.java

License:Open Source License

public Snippet008RevealElement(Shell shell) {
    final TableViewer v = new TableViewer(shell);
    v.setLabelProvider(new LabelProvider());
    v.setContentProvider(ArrayContentProvider.getInstance());
    createColumn(v.getTable(), "Values");
    MyModel[] model = createModel();//from   www  .j  av  a  2s.c om
    v.setInput(model);
    v.getTable().setLinesVisible(true);
    v.reveal(model[99]);
}

From source file:org.eclipse.jubula.client.ui.rcp.properties.ProjectALMPropertyPage.java

License:Open Source License

/** Handles the add-button event by opening a dialogue to add a
 *  reporting rule to a given table./*from  ww  w  .j av a  2s. c o  m*/
 * @param button the add button
 * @param tableViewer the table viewer
 */
void handleAddButtonEvent(Button button, TableViewer tableViewer) {
    ReportRuleType type = null;
    if (tableViewer.equals(m_onSuccessTableViewer)) {
        type = ReportRuleType.ONSUCCESS;
    } else if (tableViewer.equals(m_onFailureTableViewer)) {
        type = ReportRuleType.ONFAILURE;
    }
    IALMReportingRulePO rule = PoMaker.createALMReportingRulePO(StringUtils.EMPTY, StringUtils.EMPTY,
            StringUtils.EMPTY, type);
    m_reportingRules.add(rule);
    rule.setParentProjectId(getProject().getId());
    tableViewer.refresh();
    tableViewer.reveal(rule);
    tableViewer.editElement(rule, 0);
}

From source file:org.eclipse.titan.executor.views.testexecution.TestExecutionView.java

License:Open Source License

/**
 * Refreshes the input directly in case the Execution Control view is not yet opened.
 *
 * @param executor the executor to use./*from  ww w  .  j ava 2 s  .  c  o m*/
 * */
public static void refreshInput(final BaseExecutor executor) {
    if (null == getInstance()) {
        return;
    }

    PlatformUI.getWorkbench().getDisplay().syncExec(new Runnable() {
        @Override
        public void run() {
            if (null != executor && !executor.executedTests().isEmpty()) {
                TableViewer tableViewer = getInstance().viewer;
                tableViewer.setInput(executor.executedTests());
                tableViewer.reveal(executor.executedTests().get(executor.executedTests().size() - 1));
            }
        }
    });
}

From source file:org.eclipse.ui.internal.dialogs.cpd.CustomizePerspectiveDialog.java

License:Open Source License

/**
 * Creates the page used to allow users to choose menu items to hide.
 *///from  www .j  a  v  a2s .c  o m
private Composite createMenuVisibilityPage(Composite parent) {
    GridData data;

    Composite hideMenuItemsComposite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    hideMenuItemsComposite.setLayout(layout);

    // Label for entire tab
    Label label = new Label(hideMenuItemsComposite, SWT.WRAP);
    label.setText(WorkbenchMessages.HideMenuItems_chooseMenuItemsLabel);
    data = new GridData(SWT.FILL, SWT.CENTER, true, false);
    label.setLayoutData(data);

    Label sep = new Label(hideMenuItemsComposite, SWT.HORIZONTAL | SWT.SEPARATOR);
    sep.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    // Main contents of tab
    final PageBook book = new PageBook(hideMenuItemsComposite, SWT.NONE);
    data = new GridData(GridData.FILL_BOTH);
    book.setLayoutData(data);

    // Simple view: just the menu structure
    final Composite simpleComposite = createItemStructureGroup(book,
            WorkbenchMessages.HideMenuItems_menuStructure);
    menuStructureViewer1 = initStructureViewer(simpleComposite, new TreeManager.ViewerCheckStateListener(),
            null);

    // Update the viewer when the model changes
    treeManager.getCheckListener(menuStructureViewer1); // To update ctv on
    // model changes

    // Simply grab the checkstate out of the model
    menuStructureViewer1.setCheckStateProvider(TreeManager.getCheckStateProvider());

    // Init with input
    menuStructureViewer1.setInput(menuItems);

    // Advanced view: action set with filtered menu structure
    final SashForm advancedComposite = new SashForm(book, SWT.HORIZONTAL);
    data = new GridData(SWT.FILL, SWT.FILL, true, true);
    advancedComposite.setLayoutData(data);

    // Action set list
    final TableViewer actionSetViewer = initActionSetViewer(createActionSetGroup(advancedComposite));

    // Filter to only show action sets which have useful menu items
    actionSetViewer.addFilter(new ShowUsedActionSetsFilter(menuItems));

    // Init with input
    actionSetViewer.setInput(actionSets.toArray());

    // Filter to only show items in the current action set
    final ActionSetFilter menuStructureFilterByActionSet = new ActionSetFilter();

    final Composite menuStructureComposite = createItemStructureGroup(advancedComposite,
            WorkbenchMessages.HideMenuItems_menuStructure);
    final ICheckStateListener menuStructureFilter = new FilteredViewerCheckListener(
            TreeManager.getTreeContentProvider(), menuStructureFilterByActionSet);
    menuStructureViewer2 = initStructureViewer(menuStructureComposite, menuStructureFilter,
            menuStructureFilterByActionSet);

    treeManager
            .addListener(new FilteredModelCheckListener(menuStructureFilterByActionSet, menuStructureViewer2));

    menuStructureViewer2.addFilter(menuStructureFilterByActionSet);

    // Update filter when a new action set is selected
    actionSetViewer.addSelectionChangedListener(
            new ActionSetSelectionChangedListener(menuStructureViewer2, menuStructureFilterByActionSet));

    // Check state provider to emulate standard SWT
    // behaviour on visual tree
    menuStructureViewer2.setCheckStateProvider(new FilteredTreeCheckProvider(
            TreeManager.getTreeContentProvider(), menuStructureFilterByActionSet));

    // Init input
    menuStructureViewer2.setInput(menuItems);

    // Override any attempts to set an item to visible
    // which exists in an unavailable action set
    treeManager.addListener(new CheckListener() {
        @Override
        public void checkChanged(TreeItem changedItem) {
            if (!(changedItem instanceof DisplayItem)) {
                return;
            }
            if (!changedItem.getState()) {
                return;
            }
            if (isAvailable((DisplayItem) changedItem)) {
                return;
            }
            changedItem.setCheckState(false);
        }
    });

    final Button showCommandGroupFilterButton = new Button(hideMenuItemsComposite, SWT.CHECK);
    showCommandGroupFilterButton.setText(WorkbenchMessages.HideItems_turnOnActionSets);
    showCommandGroupFilterButton.addSelectionListener(new SelectionListener() {
        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
        }

        @Override
        public void widgetSelected(SelectionEvent e) {
            if (showCommandGroupFilterButton.getSelection()) {
                Object o = ((StructuredSelection) menuStructureViewer1.getSelection()).getFirstElement();
                ActionSet initSelectAS = null;
                DisplayItem initSelectCI = null;
                if (o instanceof DisplayItem) {
                    initSelectCI = ((DisplayItem) o);
                    initSelectAS = initSelectCI.getActionSet();
                }
                if (initSelectAS == null) {
                    initSelectAS = (ActionSet) actionSetViewer.getElementAt(0);
                }
                if (initSelectAS != null) {
                    setSelectionOn(actionSetViewer, initSelectAS);
                    actionSetViewer.reveal(initSelectAS);
                }
                if (initSelectCI != null) {
                    setSelectionOn(menuStructureViewer2, initSelectCI);
                    menuStructureViewer2.reveal(initSelectCI);
                }
                book.showPage(advancedComposite);
            } else {
                book.showPage(simpleComposite);
            }
        }
    });

    book.showPage(simpleComposite);
    advancedComposite.setWeights(new int[] { 30, 70 });

    return hideMenuItemsComposite;
}

From source file:org.eclipse.ui.internal.dialogs.cpd.CustomizePerspectiveDialog.java

License:Open Source License

/**
 * Creates the page used to allow users to choose menu items to hide.
 */// ww  w . j  a  v  a 2  s  . c  om
private Composite createToolBarVisibilityPage(Composite parent) {
    GridData data;

    Composite hideToolbarItemsComposite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    hideToolbarItemsComposite.setLayout(layout);

    // Label for entire tab
    Label label = new Label(hideToolbarItemsComposite, SWT.WRAP);
    label.setText(WorkbenchMessages.HideToolBarItems_chooseToolBarItemsLabel);
    data = new GridData(SWT.FILL, SWT.CENTER, true, false);
    label.setLayoutData(data);

    Label sep = new Label(hideToolbarItemsComposite, SWT.HORIZONTAL | SWT.SEPARATOR);
    sep.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    // Main contents of tab
    final PageBook book = new PageBook(hideToolbarItemsComposite, SWT.NONE);
    data = new GridData(GridData.FILL_BOTH);
    book.setLayoutData(data);

    // Simple view: just the toolbar structure
    final Composite simpleComposite = createItemStructureGroup(book,
            WorkbenchMessages.HideToolBarItems_toolBarStructure);
    toolbarStructureViewer1 = initStructureViewer(simpleComposite, new TreeManager.ViewerCheckStateListener(),
            null);

    // Update the viewer when the model changes
    treeManager.getCheckListener(toolbarStructureViewer1); // To update ctv
    // on model
    // changes

    // Simply grab the check state out of the model
    toolbarStructureViewer1.setCheckStateProvider(TreeManager.getCheckStateProvider());

    // Init with input
    toolbarStructureViewer1.setInput(toolBarItems);

    // Advanced view: action set with filtered toolbar structure
    final SashForm advancedComposite = new SashForm(book, SWT.HORIZONTAL);
    data = new GridData(SWT.FILL, SWT.FILL, true, true);
    advancedComposite.setLayoutData(data);

    // Action set list
    final TableViewer actionSetViewer = initActionSetViewer(createActionSetGroup(advancedComposite));

    // Filter to only show action sets which have useful toolbar items
    actionSetViewer.addFilter(new ShowUsedActionSetsFilter(toolBarItems));

    // Init with input
    actionSetViewer.setInput(actionSets.toArray());

    // Filter to only show items in the current action set
    final ActionSetFilter toolbarStructureFilterByActionSet = new ActionSetFilter();

    final Composite toolbarStructureComposite = createItemStructureGroup(advancedComposite,
            WorkbenchMessages.HideToolBarItems_toolBarStructure);
    final ICheckStateListener toolbarStructureFilter = new FilteredViewerCheckListener(
            TreeManager.getTreeContentProvider(), toolbarStructureFilterByActionSet);
    toolbarStructureViewer2 = initStructureViewer(toolbarStructureComposite, toolbarStructureFilter,
            toolbarStructureFilterByActionSet);

    toolbarStructureViewer2.addFilter(toolbarStructureFilterByActionSet);

    treeManager.addListener(
            new FilteredModelCheckListener(toolbarStructureFilterByActionSet, toolbarStructureViewer2));

    // Update filter when a new action set is selected
    actionSetViewer.addSelectionChangedListener(
            new ActionSetSelectionChangedListener(toolbarStructureViewer2, toolbarStructureFilterByActionSet));

    // Check state provider to emulate standard SWT
    // behaviour on visual tree
    toolbarStructureViewer2.setCheckStateProvider(new FilteredTreeCheckProvider(
            TreeManager.getTreeContentProvider(), toolbarStructureFilterByActionSet));

    // Init input
    toolbarStructureViewer2.setInput(toolBarItems);

    // Override any attempts to set an item to visible
    // which exists in an unavailable action set
    treeManager.addListener(new CheckListener() {
        @Override
        public void checkChanged(TreeItem changedItem) {
            if (!(changedItem instanceof DisplayItem)) {
                return;
            }
            if (!changedItem.getState()) {
                return;
            }
            if (isAvailable((DisplayItem) changedItem)) {
                return;
            }
            changedItem.setCheckState(false);
        }
    });

    final Button showCommandGroupFilterButton = new Button(hideToolbarItemsComposite, SWT.CHECK);
    showCommandGroupFilterButton.setText(WorkbenchMessages.HideItems_turnOnActionSets);
    showCommandGroupFilterButton.addSelectionListener(new SelectionListener() {
        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
        }

        @Override
        public void widgetSelected(SelectionEvent e) {
            if (showCommandGroupFilterButton.getSelection()) {
                Object o = ((StructuredSelection) toolbarStructureViewer1.getSelection()).getFirstElement();
                ActionSet initSelectAS = null;
                DisplayItem initSelectCI = null;
                if (o instanceof DisplayItem) {
                    initSelectCI = ((DisplayItem) o);
                    initSelectAS = initSelectCI.getActionSet();
                }
                if (initSelectAS == null) {
                    initSelectAS = (ActionSet) actionSetViewer.getElementAt(0);
                }
                if (initSelectAS != null) {
                    setSelectionOn(actionSetViewer, initSelectAS);
                    actionSetViewer.reveal(initSelectAS);
                }
                if (initSelectCI != null) {
                    setSelectionOn(toolbarStructureViewer2, initSelectCI);
                    toolbarStructureViewer2.reveal(initSelectCI);
                }
                book.showPage(advancedComposite);
            } else {
                book.showPage(simpleComposite);
            }
        }
    });

    book.showPage(simpleComposite);
    advancedComposite.setWeights(new int[] { 30, 70 });

    return hideToolbarItemsComposite;
}

From source file:org.eclipse.ui.internal.dialogs.CustomizePerspectiveDialog.java

License:Open Source License

/**
 * Creates the page used to allow users to choose menu items to hide.
 *//*www  .ja v  a 2s  .c o  m*/
private Composite createMenuVisibilityPage(Composite parent) {
    GridData data;

    Composite hideMenuItemsComposite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    hideMenuItemsComposite.setLayout(layout);

    // Label for entire tab
    Label label = new Label(hideMenuItemsComposite, SWT.WRAP);
    label.setText(WorkbenchMessages.HideMenuItems_chooseMenuItemsLabel);
    data = new GridData(SWT.FILL, SWT.CENTER, true, false);
    label.setLayoutData(data);

    Label sep = new Label(hideMenuItemsComposite, SWT.HORIZONTAL | SWT.SEPARATOR);
    sep.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    // Main contents of tab
    final PageBook book = new PageBook(hideMenuItemsComposite, SWT.NONE);
    data = new GridData(GridData.FILL_BOTH);
    book.setLayoutData(data);

    // Simple view: just the menu structure
    final Composite simpleComposite = createItemStructureGroup(book,
            WorkbenchMessages.HideMenuItems_menuStructure);
    menuStructureViewer1 = initStructureViewer(simpleComposite, new TreeManager.ViewerCheckStateListener(),
            null);

    // Update the viewer when the model changes
    treeManager.getCheckListener(menuStructureViewer1); // To update ctv on
    // model changes

    // Simply grab the checkstate out of the model
    menuStructureViewer1.setCheckStateProvider(TreeManager.getCheckStateProvider());

    // Init with input
    menuStructureViewer1.setInput(menuItems);

    // Advanced view: action set with filtered menu structure
    final SashForm advancedComposite = new SashForm(book, SWT.HORIZONTAL);
    data = new GridData(SWT.FILL, SWT.FILL, true, true);
    advancedComposite.setLayoutData(data);

    // Action set list
    final TableViewer actionSetViewer = initActionSetViewer(createActionSetGroup(advancedComposite));

    // Filter to only show action sets which have useful menu items
    actionSetViewer.addFilter(new ShowUsedActionSetsFilter(menuItems));

    // Init with input
    actionSetViewer.setInput(actionSets.toArray());

    // Filter to only show items in the current action set
    final ActionSetFilter menuStructureFilterByActionSet = new ActionSetFilter();

    final Composite menuStructureComposite = createItemStructureGroup(advancedComposite,
            WorkbenchMessages.HideMenuItems_menuStructure);
    final ICheckStateListener menuStructureFilter = new FilteredViewerCheckListener(
            TreeManager.getTreeContentProvider(), menuStructureFilterByActionSet);
    menuStructureViewer2 = initStructureViewer(menuStructureComposite, menuStructureFilter,
            menuStructureFilterByActionSet);

    treeManager
            .addListener(new FilteredModelCheckListener(menuStructureFilterByActionSet, menuStructureViewer2));

    menuStructureViewer2.addFilter(menuStructureFilterByActionSet);

    // Update filter when a new action set is selected
    actionSetViewer.addSelectionChangedListener(
            new ActionSetSelectionChangedListener(menuStructureViewer2, menuStructureFilterByActionSet));

    // Check state provider to emulate standard SWT
    // behaviour on visual tree
    menuStructureViewer2.setCheckStateProvider(new FilteredTreeCheckProvider(
            TreeManager.getTreeContentProvider(), menuStructureFilterByActionSet));

    // Init input
    menuStructureViewer2.setInput(menuItems);

    // Override any attempts to set an item to visible
    // which exists in an unavailable action set
    treeManager.addListener(new CheckListener() {
        public void checkChanged(TreeItem changedItem) {
            if (!(changedItem instanceof DisplayItem))
                return;
            if (!changedItem.getState())
                return;
            if (isAvailable((DisplayItem) changedItem))
                return;
            changedItem.setCheckState(false);
        }
    });

    final Button showCommandGroupFilterButton = new Button(hideMenuItemsComposite, SWT.CHECK);
    showCommandGroupFilterButton.setText(WorkbenchMessages.HideItems_turnOnActionSets);
    showCommandGroupFilterButton.addSelectionListener(new SelectionListener() {
        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            if (showCommandGroupFilterButton.getSelection()) {
                Object o = ((StructuredSelection) menuStructureViewer1.getSelection()).getFirstElement();
                ActionSet initSelectAS = null;
                DisplayItem initSelectCI = null;
                if (o instanceof DisplayItem) {
                    initSelectCI = ((DisplayItem) o);
                    initSelectAS = initSelectCI.getActionSet();
                }
                if (initSelectAS == null) {
                    initSelectAS = (ActionSet) actionSetViewer.getElementAt(0);
                }
                setSelectionOn(actionSetViewer, initSelectAS);
                actionSetViewer.reveal(initSelectAS);
                if (initSelectCI != null) {
                    setSelectionOn(menuStructureViewer2, initSelectCI);
                    menuStructureViewer2.reveal(initSelectCI);
                }
                book.showPage(advancedComposite);
            } else {
                book.showPage(simpleComposite);
            }
        }
    });

    book.showPage(simpleComposite);
    advancedComposite.setWeights(new int[] { 30, 70 });

    return hideMenuItemsComposite;
}

From source file:org.eclipse.ui.internal.dialogs.CustomizePerspectiveDialog.java

License:Open Source License

/**
 * Creates the page used to allow users to choose menu items to hide.
 *///  www .j  a va  2  s .c o  m
private Composite createToolBarVisibilityPage(Composite parent) {
    GridData data;

    Composite hideToolbarItemsComposite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    hideToolbarItemsComposite.setLayout(layout);

    // Label for entire tab
    Label label = new Label(hideToolbarItemsComposite, SWT.WRAP);
    label.setText(WorkbenchMessages.HideToolBarItems_chooseToolBarItemsLabel);
    data = new GridData(SWT.FILL, SWT.CENTER, true, false);
    label.setLayoutData(data);

    Label sep = new Label(hideToolbarItemsComposite, SWT.HORIZONTAL | SWT.SEPARATOR);
    sep.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    // Main contents of tab
    final PageBook book = new PageBook(hideToolbarItemsComposite, SWT.NONE);
    data = new GridData(GridData.FILL_BOTH);
    book.setLayoutData(data);

    // Simple view: just the toolbar structure
    final Composite simpleComposite = createItemStructureGroup(book,
            WorkbenchMessages.HideToolBarItems_toolBarStructure);
    toolbarStructureViewer1 = initStructureViewer(simpleComposite, new TreeManager.ViewerCheckStateListener(),
            null);

    // Update the viewer when the model changes
    treeManager.getCheckListener(toolbarStructureViewer1); // To update ctv
    // on model
    // changes

    // Simply grab the check state out of the model
    toolbarStructureViewer1.setCheckStateProvider(TreeManager.getCheckStateProvider());

    // Init with input
    toolbarStructureViewer1.setInput(toolBarItems);

    // Advanced view: action set with filtered toolbar structure
    final SashForm advancedComposite = new SashForm(book, SWT.HORIZONTAL);
    data = new GridData(SWT.FILL, SWT.FILL, true, true);
    advancedComposite.setLayoutData(data);

    // Action set list
    final TableViewer actionSetViewer = initActionSetViewer(createActionSetGroup(advancedComposite));

    // Filter to only show action sets which have useful toolbar items
    actionSetViewer.addFilter(new ShowUsedActionSetsFilter(toolBarItems));

    // Init with input
    actionSetViewer.setInput(actionSets.toArray());

    // Filter to only show items in the current action set
    final ActionSetFilter toolbarStructureFilterByActionSet = new ActionSetFilter();

    final Composite toolbarStructureComposite = createItemStructureGroup(advancedComposite,
            WorkbenchMessages.HideToolBarItems_toolBarStructure);
    final ICheckStateListener toolbarStructureFilter = new FilteredViewerCheckListener(
            TreeManager.getTreeContentProvider(), toolbarStructureFilterByActionSet);
    toolbarStructureViewer2 = initStructureViewer(toolbarStructureComposite, toolbarStructureFilter,
            toolbarStructureFilterByActionSet);

    toolbarStructureViewer2.addFilter(toolbarStructureFilterByActionSet);

    treeManager.addListener(
            new FilteredModelCheckListener(toolbarStructureFilterByActionSet, toolbarStructureViewer2));

    // Update filter when a new action set is selected
    actionSetViewer.addSelectionChangedListener(
            new ActionSetSelectionChangedListener(toolbarStructureViewer2, toolbarStructureFilterByActionSet));

    // Check state provider to emulate standard SWT
    // behaviour on visual tree
    toolbarStructureViewer2.setCheckStateProvider(new FilteredTreeCheckProvider(
            TreeManager.getTreeContentProvider(), toolbarStructureFilterByActionSet));

    // Init input
    toolbarStructureViewer2.setInput(toolBarItems);

    // Override any attempts to set an item to visible
    // which exists in an unavailable action set
    treeManager.addListener(new CheckListener() {
        public void checkChanged(TreeItem changedItem) {
            if (!(changedItem instanceof DisplayItem))
                return;
            if (!changedItem.getState())
                return;
            if (isAvailable((DisplayItem) changedItem))
                return;
            changedItem.setCheckState(false);
        }
    });

    final Button showCommandGroupFilterButton = new Button(hideToolbarItemsComposite, SWT.CHECK);
    showCommandGroupFilterButton.setText(WorkbenchMessages.HideItems_turnOnActionSets);
    showCommandGroupFilterButton.addSelectionListener(new SelectionListener() {
        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            if (showCommandGroupFilterButton.getSelection()) {
                Object o = ((StructuredSelection) toolbarStructureViewer1.getSelection()).getFirstElement();
                ActionSet initSelectAS = null;
                DisplayItem initSelectCI = null;
                if (o instanceof DisplayItem) {
                    initSelectCI = ((DisplayItem) o);
                    initSelectAS = initSelectCI.getActionSet();
                }
                if (initSelectAS == null) {
                    initSelectAS = (ActionSet) actionSetViewer.getElementAt(0);
                }
                setSelectionOn(actionSetViewer, initSelectAS);
                actionSetViewer.reveal(initSelectAS);
                if (initSelectCI != null) {
                    setSelectionOn(toolbarStructureViewer2, initSelectCI);
                    toolbarStructureViewer2.reveal(initSelectCI);
                }
                book.showPage(advancedComposite);
            } else {
                book.showPage(simpleComposite);
            }
        }
    });

    book.showPage(simpleComposite);
    advancedComposite.setWeights(new int[] { 30, 70 });

    return hideToolbarItemsComposite;
}

From source file:org.fusesource.ide.fabric.navigator.AbstractContainersTabSection.java

License:Open Source License

protected void setSelectedContainerIds(Set<String> selectedIds) {
    TableViewer viewer = getViewer();
    if (viewer != null) {
        List<?> propertySources = getPropertySources();
        List selected = new ArrayList();
        for (Object object : propertySources) {
            if (object instanceof IPropertySource) {
                IPropertySource source = (IPropertySource) object;
                Object value = source.getPropertyValue("id");
                if (value instanceof String && selectedIds.contains(value.toString())) {
                    selected.add(object);
                }//from w w w  . j  a  va  2s  .  c  o m
            }
        }
        viewer.setSelection(new StructuredSelection(selected));
        if (selected.size() == 1) {
            Object first = selected.get(0);
            viewer.reveal(first);
        }
    }

}

From source file:org.fusesource.ide.fabric.navigator.osgi.BundlesTabSection.java

License:Open Source License

protected void setSelectedBundleIds(Set<Long> selectedBundleIds) {
    TableViewer viewer = getViewer();
    if (viewer != null) {
        List<?> propertySources = getPropertySources();
        List<Object> selected = new ArrayList<Object>();
        for (Object object : propertySources) {
            if (object instanceof IPropertySource) {
                BundleStateFacade bundleState = new BundleStateFacade((IPropertySource) object);
                final Long id = bundleState.getId();
                if (id != null && selectedBundleIds.contains(id)) {
                    selected.add(object);
                }// w ww . ja v a2  s  .c o  m
            }
        }
        viewer.setSelection(new StructuredSelection(selected));
        if (selected.size() == 1) {
            Object first = selected.get(0);
            viewer.reveal(first);
        }
    }
}