Example usage for org.eclipse.jface.action IStatusLineManager getItems

List of usage examples for org.eclipse.jface.action IStatusLineManager getItems

Introduction

In this page you can find the example usage for org.eclipse.jface.action IStatusLineManager getItems.

Prototype

IContributionItem[] getItems();

Source Link

Document

Returns all contribution items known to this manager.

Usage

From source file:com.aptana.editor.common.CommonTextEditorActionContributor.java

License:Open Source License

@Override
public void contributeToStatusLine(IStatusLineManager statusLineManager) {
    commandsMenuContributionItem = new CommandsMenuContributionItem();
    statusLineManager.add(commandsMenuContributionItem);
    super.contributeToStatusLine(statusLineManager);

    inputPositionStatsContributionItem = new StatusLineContributionItem(
            ITextEditorActionConstants.STATUS_CATEGORY_INPUT_POSITION, true, 24);
    IContributionItem[] contributionItems = statusLineManager.getItems();
    for (IContributionItem contributionItem : contributionItems) {
        String id = contributionItem.getId();

        if (ITextEditorActionConstants.STATUS_CATEGORY_INPUT_POSITION.equals(id)) {
            statusLineManager.remove(contributionItem);
            statusLineManager.add(inputPositionStatsContributionItem);
        }//from  w  w  w .  j a v  a 2 s  .  com
    }
}

From source file:com.safi.workshop.sqlexplorer.plugin.editors.SQLEditor.java

License:Open Source License

/**
 * Updates the cursor position info in the status bar
 *///  w  w  w .  j a  v a 2 s. com
public void updateCursorPosition() {
    Object adapter = textEditor.getAdapter(org.eclipse.swt.widgets.Control.class);
    if (adapter instanceof StyledText) {
        StyledText text = (StyledText) adapter;
        int offset = text.getCaretOffset();
        int lineNo = text.getLineAtOffset(offset);
        int lineOffset = text.getOffsetAtLine(lineNo);
        int charNo = offset - lineOffset;

        IStatusLineManager manager = getEditorSite().getActionBars().getStatusLineManager();
        IContributionItem items[] = manager.getItems();
        for (IContributionItem item : items) {
            if (item instanceof CursorPositionContrib) {
                CursorPositionContrib contrib = (CursorPositionContrib) item;
                contrib.setPosition(lineNo + 1, charNo + 1);
                break;
            }
        }
    }
}

From source file:com.xored.glance.internal.ui.panels.SearchStatusLine.java

License:Open Source License

public static SearchStatusLine getSearchLine(IWorkbenchWindow window) {
    IStatusLineManager manager = getManager(window);
    if (manager != null) {
        IContributionItem[] items = manager.getItems();
        for (IContributionItem item : items) {
            if (item instanceof SearchItem) {
                return ((SearchItem) item).getSearchPanel();
            }/*from  w  w w.  j av a  2  s.  co  m*/
        }
    }
    return new SearchStatusLine(window);
}

From source file:de.vonloesch.pdf4eclipse.editors.PDFEditor.java

License:Open Source License

@Override
public void createPartControl(final Composite parent) {
    parent.setLayout(new FillLayout());
    sc = new ScrolledComposite(parent, SWT.H_SCROLL | SWT.V_SCROLL);
    pv = new PDFPageViewer(sc, this);
    //pv = new PDFPageViewerAWT(sc, this);
    sc.setContent(pv);//from   w  w w. j a  v a  2 s  . c  om
    // Speed up scrolling when using a wheel mouse
    ScrollBar vBar = sc.getVerticalBar();
    vBar.setIncrement(10);

    pv.addMouseWheelListener(new MouseWheelListener() {
        @Override
        public void mouseScrolled(MouseEvent e) {

            if ((e.stateMask & SWT.CTRL) > 0) {
                Point o = getOrigin();
                Point oldSize = pv.getSize();
                pv.setZoomFactor(Math.max(pv.getZoomFactor() + (float) e.count / 10, 0));
                int mx = Math.round((float) pv.getSize().x * ((float) e.x / oldSize.x)) - (e.x - o.x);
                int my = Math.round((float) pv.getSize().y * ((float) e.y / oldSize.y)) - (e.y - o.y);
                setOrigin(mx, my);
                return;
            }

            Point p = sc.getOrigin();

            int height = sc.getClientArea().height;
            int pheight = sc.getContent().getBounds().height;

            if (p.y >= pheight - height && e.count < 0) {

                //We are at the end of the page
                if (currentPage < f.getNumPages()) {
                    showPage(currentPage + 1);
                    setOrigin(sc.getOrigin().x, 0);
                }
            } else if (p.y <= 0 && e.count > 0) {
                //We are at the top of the page
                if (currentPage > 1) {
                    showPage(currentPage - 1);
                    setOrigin(sc.getOrigin().x, pheight);
                }
            }
        }
    });

    pv.addMouseListener(new MouseListener() {

        Point start;
        MouseMoveListener mml = new MouseMoveListener() {

            @Override
            public void mouseMove(MouseEvent e) {
                if ((e.stateMask & SWT.BUTTON2) == 0) {
                    pv.removeMouseMoveListener(this);
                    return;
                }
                Point o = sc.getOrigin();
                sc.setOrigin(o.x - (e.x - start.x), o.y - (e.y - start.y));
            }
        };

        @Override
        public void mouseUp(MouseEvent e) {
            if (e.button != 2)
                return;
            pv.removeMouseMoveListener(mml);
        }

        @Override
        public void mouseDown(MouseEvent e) {
            if (e.button != 2)
                return;
            start = new Point(e.x, e.y);
            pv.addMouseMoveListener(mml);
        }

        @Override
        public void mouseDoubleClick(MouseEvent e) {
        }
    });

    pv.addKeyListener(new KeyAdapter() {

        @Override
        public void keyPressed(KeyEvent e) {
            int height = sc.getClientArea().height;
            int pInc = 3 * height / 4;
            int lInc = height / 20;
            int hInc = sc.getClientArea().width / 20;
            int pheight = sc.getContent().getBounds().height;
            Point p = sc.getOrigin();
            if (e.keyCode == SWT.PAGE_DOWN) {
                if (p.y < pheight - height) {
                    int y = p.y + pInc;
                    if (y > pheight - height) {
                        y = pheight - height;
                    }
                    sc.setOrigin(sc.getOrigin().x, y);
                } else {
                    //We are at the end of the page
                    if (currentPage < f.getNumPages()) {
                        showPage(currentPage + 1);
                        setOrigin(sc.getOrigin().x, 0);
                    }
                }
            } else if (e.keyCode == SWT.PAGE_UP) {
                if (p.y > 0) {
                    int y = p.y - pInc;
                    if (y < 0)
                        y = 0;
                    sc.setOrigin(sc.getOrigin().x, y);
                } else {
                    //We are at the top of the page
                    if (currentPage > 1) {
                        showPage(currentPage - 1);
                        setOrigin(sc.getOrigin().x, pheight);
                    }
                }
            } else if (e.keyCode == SWT.ARROW_DOWN) {
                if (p.y < pheight - height) {
                    sc.setOrigin(sc.getOrigin().x, p.y + lInc);
                }
            } else if (e.keyCode == SWT.ARROW_UP) {
                if (p.y > 0) {
                    int y = p.y - lInc;
                    if (y < 0)
                        y = 0;
                    sc.setOrigin(sc.getOrigin().x, y);
                }
            } else if (e.keyCode == SWT.ARROW_RIGHT) {
                if (p.x < sc.getContent().getBounds().width - sc.getClientArea().width) {
                    sc.setOrigin(p.x + hInc, sc.getOrigin().y);
                }
            } else if (e.keyCode == SWT.ARROW_LEFT) {
                if (p.x > 0) {
                    int x = p.x - hInc;
                    if (x < 0)
                        x = 0;
                    sc.setOrigin(x, sc.getOrigin().y);
                }
            } else if (e.keyCode == SWT.HOME) {
                showPage(1);
                setOrigin(sc.getOrigin().x, 0);
            } else if (e.keyCode == SWT.END) {
                showPage(pageNumbers);
                setOrigin(sc.getOrigin().x, pheight);
            }

        }
    });

    IStatusLineManager statusLineM = getEditorSite().getActionBars().getStatusLineManager();
    IContributionItem[] items = statusLineM.getItems();
    for (IContributionItem item : items) {
        if (PDFPOSITION_ID.equals(item.getId())) {
            position = (StatusLinePageSelector) item;
            position.setPageChangeListener(this);
        }
    }
    if (position == null) {
        position = new StatusLinePageSelector(PDFPOSITION_ID, 15);
        position.setPageChangeListener(this);
        statusLineM.add(position);
    }
    position.setPageInfo(1, 1);

    ResourcesPlugin.getWorkspace().addResourceChangeListener(this);

    if (f != null) {
        showPage(currentPage);
    }
    initKeyBindingContext();
}

From source file:org.eclipse.osee.framework.ui.skynet.OseeStatusContributionItemFactory.java

License:Open Source License

private static void createItem(IStatusLineManager manager,
        Class<? extends OseeStatusContributionItem> contribClazz) {
    boolean wasFound = false;
    for (IContributionItem item : manager.getItems()) {
        if (contribClazz.isAssignableFrom(item.getClass())) {
            wasFound = true;/*from   w ww  .  j a  va  2  s  . c o  m*/
            break;
        }
    }
    if (!wasFound) {
        try {
            OseeStatusContributionItem object = contribClazz.newInstance();
            if (object.isCreationAllowed()) {
                manager.add(object);
            } else {
                object.dispose();
            }
        } catch (Exception ex) {
            OseeLog.logf(Activator.class, Level.SEVERE, ex, "Error creating status line contribution item [%s]",
                    contribClazz);
        }
    }
}

From source file:org.eclipse.ui.glance.internal.panels.SearchStatusLine.java

License:Open Source License

public static SearchStatusLine getSearchLine(IWorkbenchWindow window) {
    IStatusLineManager manager = getManager(window);
    if (manager != null) {
        IContributionItem[] items = manager.getItems();
        for (IContributionItem item : items) {
            if (item instanceof SearchItem)
                return ((SearchItem) item).getSearchPanel();
        }//  w  w w .  ja  v  a  2s  .com
    }
    return new SearchStatusLine(window);
}

From source file:org.fusesource.ide.jvmmonitor.internal.ui.properties.AbstractJvmPropertySection.java

License:Open Source License

/**
 * Clears the status line.//from  www  . ja v  a  2  s.co  m
 */
public void clearStatusLine() {
    IStatusLineManager manager = propertySheet.getViewSite().getActionBars().getStatusLineManager();

    IContributionItem[] items = manager.getItems();
    for (IContributionItem item : items) {
        if (item instanceof StatusLineContributionItem) {
            ((StatusLineContributionItem) item).setText(Util.ZERO_LENGTH_STRING);
        }
    }
}

From source file:org.fusesource.ide.jvmmonitor.internal.ui.properties.cpu.AbstractFilteredTree.java

License:Open Source License

/**
 * Updates the status line.//  w  w w .  jav a  2  s  .co  m
 * 
 * @param selection
 *            the selection
 */
public void updateStatusLine(IStructuredSelection selection) {
    IStatusLineManager manager = actionBars.getStatusLineManager();

    IContributionItem[] items = manager.getItems();
    StatusLineContributionItem selfTimeStatusLineItem = null;
    for (IContributionItem item : items) {
        if (item instanceof StatusLineContributionItem) {
            selfTimeStatusLineItem = (StatusLineContributionItem) item;
        }
    }

    // create the status line
    if (selfTimeStatusLineItem == null) {
        selfTimeStatusLineItem = new StatusLineContributionItem("SelfTimeContributionItem"); //$NON-NLS-1$
        manager.add(selfTimeStatusLineItem);
    }

    // clear the status line
    if (selection == null) {
        selfTimeStatusLineItem.setText(Util.ZERO_LENGTH_STRING);
        return;
    }

    // set text on status line
    double percentage = 0;
    double time = 0;
    for (Object object : selection.toArray()) {
        if (object instanceof IMethodNode) {
            percentage += ((IMethodNode) object).getSelfTimeInPercentage();
            time += ((IMethodNode) object).getSelfTime();
        }
    }
    String text = Util.ZERO_LENGTH_STRING;
    if (percentage != 0) {
        text = String.format("Self Time: %.0fms  %.1f", time, percentage) + '%'; //$NON-NLS-1$
    }
    selfTimeStatusLineItem.setText(text);
}

From source file:org.fusesource.ide.jvmmonitor.internal.ui.properties.memory.SWTResourceFilteredTree.java

License:Open Source License

/**
 * Updates the status line.//from  w  w w.j  a v a2  s .  c o m
 * 
 * @param resourceElements
 *            The SWT resource elements
 */
public void updateStatusLine(ISWTResourceElement[] resourceElements) {
    IStatusLineManager manager = actionBars.getStatusLineManager();

    IContributionItem[] items = manager.getItems();
    StatusLineContributionItem resourceCountContributionItem = null;
    for (IContributionItem item : items) {
        if (item instanceof StatusLineContributionItem) {
            resourceCountContributionItem = (StatusLineContributionItem) item;
        }
    }

    // create the status line
    if (resourceCountContributionItem == null) {
        resourceCountContributionItem = new StatusLineContributionItem("ResourceCountContributionItem"); //$NON-NLS-1$
        manager.add(resourceCountContributionItem);
    }

    if (resourceElements == null) {
        resourceCountContributionItem.setText(Util.ZERO_LENGTH_STRING);
        return;
    }

    Map<String, Integer> resources = new HashMap<String, Integer>();
    for (ISWTResourceElement resourceElement : resourceElements) {
        String name = resourceElement.getName().split(" ")[0]; //$NON-NLS-1$
        Integer count = resources.get(name);
        resources.put(name, count == null ? 1 : ++count);
    }

    // set text on status line
    List<String> list = new ArrayList<String>(resources.keySet());
    Collections.sort(list);
    StringBuffer buffer = new StringBuffer();
    buffer.append("Total: ").append(resourceElements.length); //$NON-NLS-1$
    for (String name : list) {
        buffer.append(", ").append(name); //$NON-NLS-1$
        buffer.append(": ").append(resources.get(name)); //$NON-NLS-1$
    }
    resourceCountContributionItem.setText(buffer.toString());
}

From source file:org.nfc.eclipse.plugin.NdefEditorPart.java

License:Open Source License

public void refreshStatusLine() {
    final Display display = Display.getDefault();

    new Thread() {

        public void run() {

            display.syncExec(new Runnable() {
                public void run() {

                    IActionBars actionBars = getEditorSite().getActionBars();

                    if (actionBars == null) {
                        return;
                    }/*from   w  ww  . j  a  v  a 2 s  . c o m*/

                    IStatusLineManager statusLineManager = actionBars.getStatusLineManager();

                    if (statusLineManager == null) {
                        return;
                    }

                    IContributionItem[] items = statusLineManager.getItems();

                    for (IContributionItem item : items) {
                        if (item.getId().equals(NdefMultiPageEditorContributor.class.getName() + ".size")) {

                            StatusLineContributionItem size = (StatusLineContributionItem) item;

                            try {
                                size.setText(operator.toNdefMessage().length + " bytes ");
                            } catch (NdefException e) {
                                size.setText("-");
                            }
                        } else if (item.getId()
                                .equals(NdefMultiPageEditorContributor.class.getName() + ".terminal")) {
                            StatusLineContributionItem size = (StatusLineContributionItem) item;

                            if (NdefTerminalWrapper.isAvailable()) {

                                if (NdefTerminalWrapper.hasSeenReader()) {

                                    if (NdefTerminalWrapper.isReaderEnabledPreference()) {
                                        String terminalName = NdefTerminalWrapper.getTerminalName();
                                        if (terminalName != null) {
                                            size.setText(terminalName);
                                        } else {
                                            size.setText("Card reader disconnected");
                                        }
                                    } else {
                                        size.setText("Card readers disabled");
                                    }
                                } else {
                                    size.setText("No card reader");
                                }
                            } else {
                                size.setText("No card reader");
                            }
                        }

                    }

                    // set global message using
                    // statusLineManager.setMessage( ..);
                }
            });
        }
    }.start();
}