Class Breadcrumb

  • All Implemented Interfaces:
    org.eclipse.swt.graphics.Drawable

    public class Breadcrumb
    extends org.eclipse.swt.widgets.Canvas
    Instances of this class support the layout of selectable bar items displayed in a bread crumb.

    The item children that may be added to instances of this class must be of type BreadcrumbItem.

    Styles:
    BORDER
    Events:
    (none)
    • Field Summary

      Fields 
      Modifier and Type Field Description
      (package private) static org.eclipse.swt.graphics.Color BORDER_COLOR  
      (package private) static org.eclipse.swt.graphics.Color BORDER_COLOR_1  
      (package private) static org.eclipse.swt.graphics.Color BORDER_COLOR_2  
      (package private) static org.eclipse.swt.graphics.Color BORDER_COLOR_3  
      private static org.eclipse.swt.graphics.Color END_GRADIENT_COLOR  
      (package private) boolean hasBorder  
      private static java.lang.String IS_BUTTON_PRESSED  
      private java.util.List<BreadcrumbItem> items  
      private static org.eclipse.swt.graphics.Color START_GRADIENT_COLOR  
      • Fields inherited from class org.eclipse.swt.widgets.Composite

        embeddedHandle
      • Fields inherited from class org.eclipse.swt.widgets.Widget

        handle
    • Constructor Summary

      Constructors 
      Constructor Description
      Breadcrumb​(org.eclipse.swt.widgets.Composite parent, int style)
      Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) void addItem​(BreadcrumbItem item)
      Add an item to the toolbar
      private void addListeners()  
      private void addMouseDownListener()  
      private void addMouseHoverListener()  
      private void addMouseUpListener()  
      private static int checkStyle​(int style)  
      org.eclipse.swt.graphics.Point computeSize​(int wHint, int hHint, boolean changed)  
      private void drawBackground​(org.eclipse.swt.graphics.GC gc, int width, int height)  
      BreadcrumbItem getItem​(int index)
      Returns the item at the given, zero-relative index in the receiver.
      BreadcrumbItem getItem​(org.eclipse.swt.graphics.Point point)
      Returns the item at the given point in the receiver or null if no such item exists.
      int getItemCount()
      Returns the number of items contained in the receiver.
      BreadcrumbItem[] getItems()
      Returns an array of BreadcrumbItems which are the items in the receiver.
      int indexOf​(BreadcrumbItem item)
      Searches the receiver's list starting at the first item (index 0) until an item is found that is equal to the argument, and returns the index of that item.
      private void paintControl​(org.eclipse.swt.events.PaintEvent e)
      Paint the component
      void removeItem​(BreadcrumbItem item)
      Remove an item to the toolbar
      • Methods inherited from class org.eclipse.swt.widgets.Canvas

        drawBackground, getCaret, getIME, scroll, setCaret, setFont, setIME
      • Methods inherited from class org.eclipse.swt.widgets.Composite

        changed, checkSubclass, drawBackground, getBackgroundMode, getChildren, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, layout, setBackgroundMode, setFocus, setLayout, setLayoutDeferred, setTabList
      • Methods inherited from class org.eclipse.swt.widgets.Scrollable

        computeTrim, getClientArea, getHorizontalBar, getScrollbarsMode, getVerticalBar
      • Methods inherited from class org.eclipse.swt.widgets.Control

        addControlListener, addDragDetectListener, addFocusListener, addGestureListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTouchListener, addTraverseListener, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBorderWidth, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getOrientation, getParent, getRegion, getShell, getSize, getTextDirection, getToolTipText, getTouchEnabled, getVisible, internal_dispose_GC, internal_new_GC, isAutoScalable, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeGestureListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTouchListener, removeTraverseListener, requestLayout, setBackground, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setForeground, setLayoutData, setLocation, setLocation, setMenu, setOrientation, setParent, setRedraw, setRegion, setSize, setSize, setTextDirection, setToolTipText, setTouchEnabled, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update
      • Methods inherited from class org.eclipse.swt.widgets.Widget

        addDisposeListener, addListener, checkWidget, dispose, getData, getData, getDisplay, getListeners, getStyle, isAutoDirection, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, reskin, setData, setData, toString
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • IS_BUTTON_PRESSED

        private static final java.lang.String IS_BUTTON_PRESSED
      • START_GRADIENT_COLOR

        private static org.eclipse.swt.graphics.Color START_GRADIENT_COLOR
      • END_GRADIENT_COLOR

        private static org.eclipse.swt.graphics.Color END_GRADIENT_COLOR
      • BORDER_COLOR

        static org.eclipse.swt.graphics.Color BORDER_COLOR
      • BORDER_COLOR_1

        static org.eclipse.swt.graphics.Color BORDER_COLOR_1
      • BORDER_COLOR_2

        static org.eclipse.swt.graphics.Color BORDER_COLOR_2
      • BORDER_COLOR_3

        static org.eclipse.swt.graphics.Color BORDER_COLOR_3
      • hasBorder

        boolean hasBorder
    • Constructor Detail

      • Breadcrumb

        public Breadcrumb​(org.eclipse.swt.widgets.Composite parent,
                          int style)
        Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.

        The style value is either one of the style constants defined in class SWT which is applicable to instances of this class, or must be built by bitwise OR'ing together (that is, using the int "|" operator) two or more of those SWT style constants. The class description lists the style constants that are applicable to the class. Style bits are also inherited from superclasses.

        Parameters:
        parent - a composite control which will be the parent of the new instance (cannot be null)
        style - the style of control to construct
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the parent is null
        org.eclipse.swt.SWTException -
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent
        • ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass
        See Also:
        Widget.getStyle()
    • Method Detail

      • checkStyle

        private static int checkStyle​(int style)
      • addListeners

        private void addListeners()
      • addMouseDownListener

        private void addMouseDownListener()
      • addMouseUpListener

        private void addMouseUpListener()
      • addMouseHoverListener

        private void addMouseHoverListener()
      • paintControl

        private void paintControl​(org.eclipse.swt.events.PaintEvent e)
        Paint the component
        Parameters:
        e - event
      • drawBackground

        private void drawBackground​(org.eclipse.swt.graphics.GC gc,
                                    int width,
                                    int height)
      • addItem

        void addItem​(BreadcrumbItem item)
        Add an item to the toolbar
        Parameters:
        item - roundedToolItem to add
      • computeSize

        public org.eclipse.swt.graphics.Point computeSize​(int wHint,
                                                          int hHint,
                                                          boolean changed)
        Overrides:
        computeSize in class org.eclipse.swt.widgets.Control
        See Also:
        Control.computeSize(int, int, boolean)
      • getItem

        public BreadcrumbItem getItem​(int index)
        Returns the item at the given, zero-relative index in the receiver. Throws an exception if the index is out of range.
        Parameters:
        index - the index of the item to return
        Returns:
        the item at the given index
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_RANGE - if the index is not between 0 and the number of elements in the list minus 1 (inclusive)
        org.eclipse.swt.SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • getItem

        public BreadcrumbItem getItem​(org.eclipse.swt.graphics.Point point)
        Returns the item at the given point in the receiver or null if no such item exists. The point is in the coordinate system of the receiver.
        Parameters:
        point - the point used to locate the item
        Returns:
        the item at the given point
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the point is null
        org.eclipse.swt.SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • getItemCount

        public int getItemCount()
        Returns the number of items contained in the receiver.
        Returns:
        the number of items
        Throws:
        org.eclipse.swt.SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • getItems

        public BreadcrumbItem[] getItems()
        Returns an array of BreadcrumbItems which are the items in the receiver.

        Note: This is not the actual structure used by the receiver to maintain its list of items, so modifying the array will not affect the receiver.

        Returns:
        the items in the receiver
        Throws:
        org.eclipse.swt.SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • indexOf

        public int indexOf​(BreadcrumbItem item)
        Searches the receiver's list starting at the first item (index 0) until an item is found that is equal to the argument, and returns the index of that item. If no item is found, returns -1.
        Parameters:
        item - the search item
        Returns:
        the index of the item
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the item is null
        • ERROR_INVALID_ARGUMENT - if the item has been disposed
        org.eclipse.swt.SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • removeItem

        public void removeItem​(BreadcrumbItem item)
        Remove an item to the toolbar
        Parameters:
        item - item to remove