Example usage for org.eclipse.jface.action SubContributionItem getInnerItem

List of usage examples for org.eclipse.jface.action SubContributionItem getInnerItem

Introduction

In this page you can find the example usage for org.eclipse.jface.action SubContributionItem getInnerItem.

Prototype

public IContributionItem getInnerItem() 

Source Link

Document

Returns the inner contribution item.

Usage

From source file:com.aptana.ide.search.AptanaFileSearchPage.java

License:Open Source License

/**
 * this method manages setting correct layout
 * in case of matching layout it delegates to super for creating table viewer
 * and then reconfigures it. //from   ww w. j ava  2 s  .c om
 * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#setLayout(int)
 */
public void setLayout(int layout) {
    if (this.layout == layout) {
        return;
    }
    if (layout == AptanaFileSearchPage.LAYOUT_MATCHES) {
        this.getControl().setRedraw(false);

        if (this.getLayout() != AbstractTextSearchViewPage.FLAG_LAYOUT_FLAT) {
            super.setLayout(AbstractTextSearchViewPage.FLAG_LAYOUT_FLAT);
        }
        this.layout = layout;
        this.reconfigureTableViewer();
        this.getControl().setRedraw(true);
        ((Composite) this.getControl()).layout(true, true);
        this.getControl().redraw();
        Separator find = (Separator) this.getSite().getActionBars().getMenuManager()
                .find(IContextMenuConstants.GROUP_VIEWER_SETUP);
        IContributionItem[] items = find.getParent().getItems();
        int indexOf = Arrays.asList(items).indexOf(find);
        SubContributionItem contributionItem = (SubContributionItem) items[indexOf + 1];
        ActionContributionItem ac = (ActionContributionItem) contributionItem.getInnerItem();
        ac.getAction().setChecked(false);
        contributionItem = (SubContributionItem) items[indexOf + 3];
        ac = (ActionContributionItem) contributionItem.getInnerItem();
        ac.getAction().setChecked(true);
        find.update();
        this.getSettings().put(AptanaFileSearchPage.KEY_LAYOUT, layout);
    } else {

        if (this.layout == AptanaFileSearchPage.LAYOUT_MATCHES) {
            this.layout = layout;
            if (layout == AbstractTextSearchViewPage.FLAG_LAYOUT_FLAT) {
                this.getControl().setRedraw(false);
                super.setLayout(AbstractTextSearchViewPage.FLAG_LAYOUT_TREE);
                super.setLayout(AbstractTextSearchViewPage.FLAG_LAYOUT_FLAT);
                ((Composite) this.getControl()).layout(true, true);
                this.getControl().setRedraw(true);
                return;
            }
        }
        this.layout = layout;
        super.setLayout(layout);
    }
}

From source file:com.aptana.ide.search.ui.filesystem.AptanaFileSystemSearchPage.java

License:Open Source License

/**
 * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#setLayout(int)
 *//*from  w  ww .  j  a  v a2 s.c  o m*/
public void setLayout(int layout) {
    if (this.layout == layout) {
        return;
    }
    if (layout == LAYOUT_MATCHES) {
        getControl().setRedraw(false);

        if (getLayout() != FLAG_LAYOUT_FLAT) {
            super.setLayout(FLAG_LAYOUT_FLAT);
        }
        this.layout = layout;
        reconfigureTableViewer();
        getControl().setRedraw(true);
        ((Composite) getControl()).layout(true, true);
        getControl().redraw();
        Separator find = (Separator) getSite().getActionBars().getMenuManager()
                .find(IContextMenuConstants.GROUP_VIEWER_SETUP);
        IContributionItem[] items = find.getParent().getItems();
        int indexOf = Arrays.asList(items).indexOf(find);
        SubContributionItem contributionItem = (SubContributionItem) items[indexOf + 1];
        ActionContributionItem ac = (ActionContributionItem) contributionItem.getInnerItem();
        ac.getAction().setChecked(false);
        contributionItem = (SubContributionItem) items[indexOf + 3];
        ac = (ActionContributionItem) contributionItem.getInnerItem();
        ac.getAction().setChecked(true);
        getSettings().put(KEY_LAYOUT, layout);
    } else {

        if (this.layout == LAYOUT_MATCHES) {
            this.layout = layout;
            if (layout == FLAG_LAYOUT_FLAT) {
                getControl().setRedraw(false);
                super.setLayout(FLAG_LAYOUT_TREE);
                super.setLayout(FLAG_LAYOUT_FLAT);
                ((Composite) this.getControl()).layout(true, true);
                getControl().setRedraw(true);
                return;
            }
        }
        this.layout = layout;
        super.setLayout(layout);
    }
}

From source file:com.google.code.t4eclipse.core.utility.ToolBarUtility.java

License:Open Source License

private static String getToolBarItemActionID(ToolItem item) {
    Object data = item.getData();
    if (data != null && data instanceof ActionContributionItem) {
        ActionContributionItem ci = (ActionContributionItem) data;
        IAction ac = ci.getAction();/*from  ww  w . j a v  a  2  s.  c o m*/
        if (ac != null)
            return ac.getId() != null ? ac.getId() : "";
    }

    if (data != null && data instanceof SubContributionItem) {

        SubContributionItem sub = (SubContributionItem) data;
        IContributionItem innerItem = sub.getInnerItem();
        return innerItem.getId();

    }

    if (data != null && data instanceof CommandContributionItem) {
        CommandContributionItem cci = (CommandContributionItem) data;
        return cci.getId();
    }

    return "";
}

From source file:com.google.code.t4eclipse.core.utility.ToolBarUtility.java

License:Open Source License

public static String getToolBarItemActionClassStr(ToolItem item) {
    Object data = item.getData();
    if (data != null && data instanceof ActionContributionItem) {
        return getActionContributioItemClass(data);

    }//from  w w  w  . ja  v  a  2s  . c o m
    if (data != null && data instanceof SubContributionItem) {

        SubContributionItem sub = (SubContributionItem) data;
        IContributionItem innerItem = sub.getInnerItem();
        if (innerItem instanceof ActionContributionItem) {
            return getActionContributioItemClass(innerItem);
        }

    }

    if (data != null && data instanceof CommandContributionItem) {
        CommandContributionItem cci = (CommandContributionItem) data;
        return getActionContributionItemFromHandler(cci.getCommand().getCommand().getHandler());
    }

    return "";
}

From source file:com.google.code.t4eclipse.tools.ktable.model.EclipseModelDataProvider.java

License:Open Source License

public MainMenuItemModel[] getMainMenuModelList() {

    List<MainMenuItemModel> list = new ArrayList<MainMenuItemModel>();

    WorkbenchWindow window = (WorkbenchWindow) PlatformUI.getWorkbench().getActiveWorkbenchWindow();
    MenuManager menuMgr = window.getMenuManager();

    MenuItem[] menuItems = menuMgr.getMenu().getItems();
    for (int i = 0; i < menuItems.length; i++) {

        IContributionItem data = (IContributionItem) menuItems[i].getData();
        MainMenuItemModel model = new MainMenuItemModel();
        model.top = true;//from w ww.  j av a 2  s  . com
        model.separator = false;
        model.group = false;
        model.menuStr = menuItems[i].getText();
        String topLevelPath = data.getId();
        model.path = topLevelPath;
        list.add(model);

        if (data instanceof MenuManager) {
            MenuManager mm = (MenuManager) data;

            // get items
            IContributionItem[] items = mm.getItems();
            for (IContributionItem item : items) {

                if (item instanceof AbstractGroupMarker) {
                    AbstractGroupMarker agm = (AbstractGroupMarker) item;
                    if (agm.isGroupMarker()) {
                        MainMenuItemModel groupModel = new MainMenuItemModel();
                        groupModel.top = false;
                        groupModel.separator = agm.isSeparator();
                        groupModel.group = true;
                        groupModel.path = topLevelPath + "/" + agm.getId();
                        list.add(groupModel);
                    } else {
                        MainMenuItemModel sepModel = new MainMenuItemModel();
                        sepModel.top = false;
                        sepModel.separator = agm.isSeparator();
                        sepModel.group = false;
                        list.add(sepModel);
                    }

                } else if (item instanceof SubContributionItem) {
                    SubContributionItem sub = (SubContributionItem) item;
                    IContributionItem subInternal = sub.getInnerItem();
                    if (subInternal instanceof AbstractGroupMarker) {
                        AbstractGroupMarker agm = (AbstractGroupMarker) subInternal;
                        if (agm.isGroupMarker()) {
                            MainMenuItemModel groupModel = new MainMenuItemModel();
                            groupModel.top = false;
                            groupModel.separator = agm.isSeparator();
                            groupModel.group = true;
                            groupModel.path = topLevelPath + "/" + agm.getId();
                            list.add(groupModel);
                        } else {
                            MainMenuItemModel sepModel = new MainMenuItemModel();
                            sepModel.top = false;
                            sepModel.separator = agm.isSeparator();
                            sepModel.group = false;
                            list.add(sepModel);
                        }
                    } else {

                        String menuStr = getMenuStr(item, menuItems[i]);
                        if (menuStr != null) {
                            MainMenuItemModel menuitemmodel = new MainMenuItemModel();
                            menuitemmodel.top = false;
                            menuitemmodel.separator = false;
                            menuitemmodel.group = false;
                            menuitemmodel.menuStr = menuStr;
                            list.add(menuitemmodel);
                        }
                    }

                } else {
                    String menuStr = getMenuStr(item, menuItems[i]);
                    if (menuStr != null) {
                        MainMenuItemModel sepModel = new MainMenuItemModel();
                        sepModel.top = false;
                        sepModel.separator = false;
                        sepModel.group = false;
                        sepModel.menuStr = menuStr;
                        list.add(sepModel);
                    }
                }

                // ////////////////function print menumanger
            }
        }
        if (data instanceof SubContributionItem) {
            SubContributionItem subi = (SubContributionItem) data;
            IContributionItem innerI = subi.getInnerItem();
            if (innerI instanceof MenuManager) {
                MenuManager mm = (MenuManager) innerI;

                IContributionItem[] items = mm.getItems();
                for (IContributionItem item : items) {
                    // ////////////////function print menumanger

                    if (item instanceof AbstractGroupMarker) {
                        AbstractGroupMarker agm = (AbstractGroupMarker) item;
                        if (agm.isGroupMarker()) {
                            MainMenuItemModel groupModel = new MainMenuItemModel();
                            groupModel.top = false;
                            groupModel.separator = agm.isSeparator();
                            groupModel.group = true;
                            groupModel.path = topLevelPath + "/" + agm.getId();
                            list.add(groupModel);
                        } else {
                            MainMenuItemModel sepModel = new MainMenuItemModel();
                            sepModel.top = false;
                            sepModel.separator = agm.isSeparator();
                            sepModel.group = false;
                            list.add(sepModel);
                        }

                    } else if (item instanceof SubContributionItem) {
                        SubContributionItem sub = (SubContributionItem) item;
                        IContributionItem subInternal = sub.getInnerItem();
                        if (subInternal instanceof AbstractGroupMarker) {
                            AbstractGroupMarker agm = (AbstractGroupMarker) subInternal;
                            if (agm.isGroupMarker()) {
                                MainMenuItemModel groupModel = new MainMenuItemModel();
                                groupModel.top = false;
                                groupModel.separator = agm.isSeparator();
                                groupModel.group = true;
                                groupModel.path = topLevelPath + "/" + agm.getId();
                                list.add(groupModel);
                            } else {
                                MainMenuItemModel sepModel = new MainMenuItemModel();
                                sepModel.top = false;
                                sepModel.separator = agm.isSeparator();
                                sepModel.group = false;
                                list.add(sepModel);
                            }
                        } else {
                            String menuStr = getMenuStr(item, menuItems[i]);
                            if (menuStr != null) {
                                MainMenuItemModel sepModel = new MainMenuItemModel();
                                sepModel.top = false;
                                sepModel.separator = false;
                                sepModel.group = false;
                                sepModel.menuStr = menuStr;
                                list.add(sepModel);
                            }
                        }

                    } else {
                        String menuStr = getMenuStr(item, menuItems[i]);
                        if (menuStr != null) {
                            MainMenuItemModel sepModel = new MainMenuItemModel();
                            sepModel.top = false;
                            sepModel.separator = false;
                            sepModel.group = false;
                            sepModel.menuStr = menuStr;
                            list.add(sepModel);
                        }

                    }

                }
            }
        }

    }
    return list.toArray(new MainMenuItemModel[0]);
}

From source file:com.google.code.t4eclipse.tools.ktable.model.EclipseModelDataProvider.java

License:Open Source License

private LocalToolBarItemModel getToolBarModel(ToolItem item) {

    ContributionItem tbcon = null;//from   ww  w. j a v  a 2  s. com
    Object data = item.getData();
    if (data != null) {
        if (data instanceof ContributionItem) {
            tbcon = (ContributionItem) data;
        }
        if (data instanceof SubContributionItem) {
            SubContributionItem sub = (SubContributionItem) data;
            IContributionItem internlItem = sub.getInnerItem();
            if (internlItem instanceof ContributionItem) {
                tbcon = (ContributionItem) internlItem;
            }

        }
    }
    if (tbcon != null) {
        if (tbcon.isSeparator() || tbcon.isGroupMarker()) {
            return null;
        }
        LocalToolBarItemModel model = new LocalToolBarItemModel(item, tbcon);
        return model;
    }
    return null;
}

From source file:com.google.code.t4eclipse.tools.model.ModelData.java

License:Open Source License

/**
 *
 * @param item//from w  w w .ja va  2s .  c  om
 * @return a good model when it is a ActionContributionItem and not
 *         Separator or GroupMarker<BR>
 *         null if it is a separator or groupmarker or other conditions<br>
 */
private static LocalViewToolBarModel getToolBarModel(ToolItem item) {

    Object data = item.getData();

    ContributionItem tbcon = null;

    if (data != null) {
        if (data instanceof ContributionItem) {
            tbcon = (ContributionItem) data;
        }
        if (data instanceof SubContributionItem) {
            SubContributionItem sub = (SubContributionItem) data;
            IContributionItem internlItem = sub.getInnerItem();
            if (internlItem instanceof ContributionItem) {
                tbcon = (ContributionItem) internlItem;
            }
        }
    }

    if (tbcon != null) {
        if (tbcon.isSeparator() || tbcon.isGroupMarker()) {
            return null;
        }
        LocalViewToolBarModel model = new LocalViewToolBarModel();
        if (tbcon.getId() != null) {
            model.ID = tbcon.getId();
        }
        if (item.getToolTipText() != null) {
            model.ToolTip = item.getToolTipText();
        }
        model.Enabled = tbcon.isEnabled();

        model.item = item;
        // model.Style = item.getStyle();
        model.Selected = item.getSelection();

        return model;
    }
    return null;
}

From source file:com.mousefeed.eclipse.GlobalSelectionListener.java

License:Open Source License

private void processContributionItem(final IContributionItem contributionItem, final Event event) {
    if (contributionItem instanceof SubContributionItem) {
        final SubContributionItem subCI = (SubContributionItem) contributionItem;
        processContributionItem(subCI.getInnerItem(), event);
    } else if (contributionItem instanceof ActionContributionItem) {
        final ActionContributionItem item = (ActionContributionItem) contributionItem;
        final AbstractActionDesc actionDesc = actionActionDescGenerator.generate(item.getAction());
        processActionDesc(actionDesc, event);
    } else if (contributionItem instanceof CommandContributionItem) {
        final AbstractActionDesc actionDesc = commandActionDescGenerator
                .generate((CommandContributionItem) contributionItem);
        processActionDesc(actionDesc, event);
    } else {/*from   w  ww .j a  v a 2 s. c o  m*/
        // no action contribution item on the widget data
    }
}

From source file:com.sap.dirigible.ide.ui.rap.managers.MenuBarManager.java

License:Open Source License

@SuppressWarnings("deprecation")
private void makeEntry(final IContributionItem item) {
    IContributionItem tempItem = null;//  w w  w  .jav a 2  s.co  m
    if (item instanceof SubContributionItem) {
        SubContributionItem subItem = (SubContributionItem) item;
        tempItem = subItem.getInnerItem();
    } else if (item instanceof MenuManager) {
        tempItem = item;
    }
    if (tempItem != null && tempItem instanceof MenuManager) {
        final MenuManager manager = (MenuManager) tempItem;
        int style = SWT.NONE;
        if (manager.getItems() != null && manager.getItems().length > 0) {
            style = SWT.DROP_DOWN;
        }
        final ToolItem toolItem = new ToolItem(toolbar, style);
        toolItem.setText(manager.getMenuText());
        toolItem.setData(WidgetUtil.CUSTOM_VARIANT, MENU_BAR_VARIANT);
        // create the menu
        final Menu menu = new Menu(menuParent);
        toolItem.setData(menu);
        menu.setData(WidgetUtil.CUSTOM_VARIANT, MENU_BAR_VARIANT);
        toolItem.addSelectionListener(new SelectionAdapter() {
            /**
             * 
             */
            private static final long serialVersionUID = -7781841225622682268L;

            public void widgetSelected(final SelectionEvent e) {
                // cleanup the menu
                MenuItem[] menuItems = menu.getItems();
                for (int i = 0; i < menuItems.length; i++) {
                    menuItems[i].dispose();
                }
                // hook menu to toolitem.
                IContributionItem[] contribItems = manager.getItems();
                if (contribItems != null && contribItems.length > 0) {
                    for (int i = 0; i < contribItems.length; i++) {
                        contribItems[i].fill(menu, -1);
                    }
                }
                // set the menu position
                Display display = toolItem.getDisplay();
                Rectangle bounds = toolItem.getBounds();
                int leftIndent = bounds.x;
                int topIndent = bounds.y + bounds.height;
                Point indent = new Point(leftIndent, topIndent);
                Point menuLocation = display.map(toolbar, toolbar.getShell(), indent);
                menu.setLocation(menuLocation);
                // style the menuitems and show the menu
                menu.setData(WidgetUtil.CUSTOM_VARIANT, MENU_BAR_VARIANT);
                styleMenuItems(menu);
                menu.setVisible(true);
            };
        });

        // needed to clear all controls in case of an update
        toolItemList.add(toolItem);
    }
}

From source file:com.siteview.mde.internal.runtime.spy.sections.ActiveMenuSection.java

License:Open Source License

private void scan(IContributionItem item, StringBuffer buffer, SpyFormToolkit toolkit, FormText text) {
    // check for action set information
    if (item instanceof IActionSetContributionItem) {
        IActionSetContributionItem actionItem = (IActionSetContributionItem) item;
        buffer.append(toolkit.createIdentifierSection(text, MDERuntimeMessages.ActiveMenuSection_1,
                new String[] { actionItem.getActionSetId() }));
    }//from   w  w  w  . ja va  2 s .c om
    if (item instanceof ActionContributionItem) {
        createActionContributionItemText(item, buffer, toolkit, text);
    } else if (item instanceof SubContributionItem) {
        SubContributionItem subItem = (SubContributionItem) item;
        scan(subItem.getInnerItem(), buffer, toolkit, text); // recurse
    } else if (item instanceof CommandContributionItem) { // TODO... this is hard...
        CommandContributionItem contributionItem = (CommandContributionItem) item;
        Command command = contributionItem.getCommand().getCommand();
        buffer.append(toolkit.createClassSection(text, MDERuntimeMessages.ActiveMenuSection_2,
                new Class[] { command.getClass() }));
        buffer.append(toolkit.createClassSection(text, MDERuntimeMessages.ActiveMenuSection_3,
                new Class[] { command.getHandler().getClass() }));
    }
}