Class GridItem


  • public class GridItem
    extends org.eclipse.swt.widgets.Item

    NOTE: THIS WIDGET AND ITS API ARE STILL UNDER DEVELOPMENT. THIS IS A PRE-RELEASE ALPHA VERSION. USERS SHOULD EXPECT API CHANGES IN FUTURE VERSIONS.

    Instances of this class represent a selectable user interface object that represents an item in a grid.

    Styles:
    (none)
    Events:
    (none)
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.List<GridItem> children
      List of children.
      private org.eclipse.swt.graphics.Color defaultBackground
      Deprecated.
      private org.eclipse.swt.graphics.Font defaultFont
      Deprecated.
      private org.eclipse.swt.graphics.Color defaultForeground
      Deprecated.
      private boolean expanded
      Is expanded?
      private boolean hasChildren
      True if has children.
      private boolean hasSetData
      (SWT.VIRTUAL only) Flag that specifies whether the client has already been sent a SWT.SetData event.
      private org.eclipse.swt.graphics.Color headerBackground
      Background color of the header
      private org.eclipse.swt.graphics.Font headerFont
      Font of the header
      org.eclipse.swt.graphics.Color headerForeground
      Foreground color of the header
      private org.eclipse.swt.graphics.Image headerImage
      Row header image
      private java.lang.String headerText
      Row header text.
      private int height
      The height of this GridItem.
      private int level
      Level of item in a tree.
      private static int NO_ROW  
      private Grid parent
      Parent grid instance.
      private GridItem parentItem
      Parent item (if a child item).
      private int row  
      private java.lang.Object ROW_LOCK  
      private boolean visible
      Is visible?
      • Fields inherited from class org.eclipse.swt.widgets.Widget

        handle
    • Constructor Summary

      Constructors 
      Constructor Description
      GridItem​(GridItem parent, int style)
      Creates a new instance of this class as a child node of the given GridItem and places the item at the end of the parents items.
      GridItem​(GridItem parent, int style, int index)
      Creates a new instance of this class as a child node of the given Grid and places the item at the given index in the parent items list.
      GridItem​(Grid parent, int style)
      Creates a new instance of this class and places the item at the end of the grid.
      GridItem​(Grid parent, int style, int index)
      Creates a new instance of this class and places the item in the grid at the given index.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addControlListener​(org.eclipse.swt.events.ControlListener listener)
      Adds the listener to the collection of listeners who will be notified when the row is resized, by sending it one of the messages defined in the ControlListener interface.
      (package private) void clear​(boolean allChildren)
      Clears all properties of this item and resets values to their defaults.
      (package private) void columnAdded​(int index)  
      (package private) void decreaseRow()  
      private boolean deselectCells​(GridItem item)  
      private boolean deselectChildren​(GridItem item)
      Deselects the given item's children recursively.
      void dispose()
      void disposeOnly()
      this method call only super.dispose, nothing else..
      private boolean doUnselect​(boolean expanded)  
      void fireCheckEvent​(int column)
      Fires the appropriate events in response to a user checking/unchecking an item.
      void fireEvent​(int eventId)
      Fires the given event type on the parent Grid instance.
      org.eclipse.swt.graphics.Color getBackground()
      Returns the receiver's background color.
      org.eclipse.swt.graphics.Color getBackground​(int index)
      Returns the background color at the given column index in the receiver.
      org.eclipse.swt.graphics.Rectangle getBounds​(int columnIndex)
      Returns a rectangle describing the receiver's size and location relative to its parent at a column in the table.
      org.eclipse.swt.graphics.Rectangle getBoundsCorrected​(int columnIndex)
      Returns a rectangle describing the receiver's size and location relative to its parent at a column in the table.
      protected org.eclipse.swt.graphics.Point getCellSize​(int columnIndex)  
      boolean getCheckable​(int index)
      Returns the checkable state at the given column index in the receiver.
      boolean getChecked()
      Returns the checked state at the first column in the receiver.
      boolean getChecked​(int index)
      Returns the checked state at the given column index in the receiver.
      int getColumnSpan​(int index)
      Returns the column span for the given column index in the receiver.
      org.eclipse.swt.graphics.Font getFont()
      Returns the font that the receiver will use to paint textual information for this item.
      org.eclipse.swt.graphics.Font getFont​(int index)
      Returns the font that the receiver will use to paint textual information for the specified cell in this item.
      org.eclipse.swt.graphics.Color getForeground()
      Returns the foreground color that the receiver will use to draw.
      org.eclipse.swt.graphics.Color getForeground​(int index)
      Returns the foreground color at the given column index in the receiver.
      boolean getGrayed()
      Returns true if the first column in the receiver is grayed, and false otherwise.
      boolean getGrayed​(int index)
      Returns true if the column at the given index in the receiver is grayed, and false otherwise.
      org.eclipse.swt.graphics.Color getHeaderBackground()
      Returns the receiver's row header background color
      org.eclipse.swt.graphics.Font getHeaderFont()
      Returns the receiver's row header font
      org.eclipse.swt.graphics.Color getHeaderForeground()
      Returns the receiver's row header foreground color
      org.eclipse.swt.graphics.Image getHeaderImage()
      Returns the receiver's row header image.
      java.lang.String getHeaderText()
      Returns the receiver's row header text.
      int getHeight()
      Returns the height of this GridItem.
      org.eclipse.swt.graphics.Image getImage()
      org.eclipse.swt.graphics.Image getImage​(int index)
      Returns the image stored at the given column index in the receiver, or null if the image has not been set or if the column does not exist.
      GridItem getItem​(int index)
      Returns the item at the given, zero-relative index in the receiver.
      int getItemCount()
      Returns the number of items contained in the receiver that are direct item children of the receiver.
      GridItem[] getItems()
      Returns a (possibly empty) array of GridItems which are the direct item children of the receiver.
      int getLevel()
      Returns the level of this item in the tree.
      Grid getParent()
      Returns the receiver's parent, which must be a Grid.
      GridItem getParentItem()
      Returns the receiver's parent item, which must be a GridItem or null when the receiver is a root.
      int getRowIndex()  
      int getRowSpan​(int index)
      Returns the row span for the given column index in the receiver.
      java.lang.String getText()
      java.lang.String getText​(int index)
      Returns the text stored at the given column index in the receiver, or empty string if the text has not been set.
      java.lang.String getToolTipText​(int index)
      Returns the tooltip for the given cell.
      private void handleVirtual()  
      boolean hasChildren()
      Returns true if this item has children.
      (package private) void increaseRow()  
      int indexOf​(GridItem 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.
      (package private) void initializeHeight​(int height)
      Sets the initial item height for this item.
      boolean isExpanded()
      Returns true if the receiver is expanded, and false otherwise.
      boolean isVisible()
      Returns true if the item is visible because its parent items are all expanded.
      (package private) void newItem​(GridItem item, int index)
      Creates a new child item in this item at the given index.
      private void noRow()  
      void pack()
      Sets this GridItem to its preferred height.
      private void remove​(GridItem child)
      Removes the given child item from the list of children.
      void removeControlListener​(org.eclipse.swt.events.ControlListener listener)
      Removes the listener from the collection of listeners who will be notified when the row is resized.
      void setBackground​(int index, org.eclipse.swt.graphics.Color background)
      Sets the background color at the given column index in the receiver to the color specified by the argument, or to the default system color for the item if the argument is null.
      void setBackground​(org.eclipse.swt.graphics.Color background)
      Sets the receiver's background color to the color specified by the argument, or to the default system color for the item if the argument is null.
      void setCheckable​(int index, boolean checked)
      Sets the checkable state at the given column index in the receiver.
      void setChecked​(boolean checked)
      Sets the checked state at the first column in the receiver.
      void setChecked​(int index, boolean checked)
      Sets the checked state at the given column index in the receiver.
      void setColumnSpan​(int index, int span)
      Sets the column spanning for the column at the given index to span the given number of subsequent columns.
      void setExpanded​(boolean expanded)
      Sets the expanded state of the receiver.
      void setFont​(int index, org.eclipse.swt.graphics.Font font)
      Sets the font that the receiver will use to paint textual information for the specified cell in this item to the font specified by the argument, or to the default font for that kind of control if the argument is null.
      void setFont​(org.eclipse.swt.graphics.Font f)
      Sets the font that the receiver will use to paint textual information for this item to the font specified by the argument, or to the default font for that kind of control if the argument is null.
      void setForeground​(int index, org.eclipse.swt.graphics.Color foreground)
      Sets the foreground color at the given column index in the receiver to the color specified by the argument, or to the default system color for the item if the argument is null.
      void setForeground​(org.eclipse.swt.graphics.Color foreground)
      Sets the receiver's foreground color to the color specified by the argument, or to the default system color for the item if the argument is null.
      void setGrayed​(boolean grayed)
      Sets the grayed state of the checkbox for the first column.
      void setGrayed​(int index, boolean grayed)
      Sets the grayed state of the checkbox for the given column index.
      (package private) void setHasChildren​(boolean hasChildren)
      Sets whether this item has children.
      (package private) void setHasSetData​(boolean hasSetData)  
      void setHeaderBackground​(org.eclipse.swt.graphics.Color headerBackground)
      Set the new header background
      void setHeaderFont​(org.eclipse.swt.graphics.Font headerFont)
      Set the new header font
      void setHeaderForeground​(org.eclipse.swt.graphics.Color headerForeground)
      Set the new header foreground
      void setHeaderImage​(org.eclipse.swt.graphics.Image image)
      Sets the receiver's row header image.
      void setHeaderText​(java.lang.String text)
      Sets the receiver's row header text.
      void setHeight​(int newHeight)
      Sets the height of this GridItem.
      void setImage​(int index, org.eclipse.swt.graphics.Image image)
      Sets the receiver's image at a column.
      void setImage​(org.eclipse.swt.graphics.Image image)
      void setRowSpan​(int index, int span)
      Sets the row spanning for the row at the given index to span the given number of subsequent rows.
      void setText​(int index, java.lang.String text)
      Sets the receiver's text at a column.
      void setText​(java.lang.String string)
      void setToolTipText​(int index, java.lang.String tooltip)
      Sets the tooltip for the given column index.
      (package private) void setVisible​(boolean visible)
      Sets the visible state of this item.
      • Methods inherited from class org.eclipse.swt.widgets.Item

        checkSubclass
      • Methods inherited from class org.eclipse.swt.widgets.Widget

        addDisposeListener, addListener, checkWidget, 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

      • children

        private java.util.List<GridItem> children
        List of children.
      • defaultBackground

        @Deprecated
        private org.eclipse.swt.graphics.Color defaultBackground
        Deprecated.
        Default background color.
      • defaultFont

        @Deprecated
        private org.eclipse.swt.graphics.Font defaultFont
        Deprecated.
        Default font.
      • defaultForeground

        @Deprecated
        private org.eclipse.swt.graphics.Color defaultForeground
        Deprecated.
        Default foreground color.
      • height

        private int height
        The height of this GridItem.
      • expanded

        private boolean expanded
        Is expanded?
      • hasChildren

        private boolean hasChildren
        True if has children.
      • level

        private int level
        Level of item in a tree.
      • parent

        private final Grid parent
        Parent grid instance.
      • parentItem

        private GridItem parentItem
        Parent item (if a child item).
      • visible

        private boolean visible
        Is visible?
      • headerText

        private java.lang.String headerText
        Row header text.
      • headerImage

        private org.eclipse.swt.graphics.Image headerImage
        Row header image
      • headerBackground

        private org.eclipse.swt.graphics.Color headerBackground
        Background color of the header
      • headerForeground

        public org.eclipse.swt.graphics.Color headerForeground
        Foreground color of the header
      • headerFont

        private org.eclipse.swt.graphics.Font headerFont
        Font of the header
      • hasSetData

        private boolean hasSetData
        (SWT.VIRTUAL only) Flag that specifies whether the client has already been sent a SWT.SetData event.
      • row

        private int row
      • ROW_LOCK

        private final java.lang.Object ROW_LOCK
    • Constructor Detail

      • GridItem

        public GridItem​(Grid parent,
                        int style)
        Creates a new instance of this class and places the item at the end of the grid.
        Parameters:
        parent - parent grid
        style - item style
        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
      • GridItem

        public GridItem​(Grid parent,
                        int style,
                        int index)
        Creates a new instance of this class and places the item in the grid at the given index.
        Parameters:
        parent - parent grid
        style - item style
        index - index where to insert item
        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
      • GridItem

        public GridItem​(GridItem parent,
                        int style)
        Creates a new instance of this class as a child node of the given GridItem and places the item at the end of the parents items.
        Parameters:
        parent - parent item
        style - item style
        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
      • GridItem

        public GridItem​(GridItem parent,
                        int style,
                        int index)
        Creates a new instance of this class as a child node of the given Grid and places the item at the given index in the parent items list.
        Parameters:
        parent - parent item
        style - item style
        index - index to place item
        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
    • Method Detail

      • getRowIndex

        public int getRowIndex()
        Returns:
        grid row index
      • increaseRow

        void increaseRow()
      • decreaseRow

        void decreaseRow()
      • dispose

        public void dispose()
        Overrides:
        dispose in class org.eclipse.swt.widgets.Widget
      • addControlListener

        public void addControlListener​(org.eclipse.swt.events.ControlListener listener)
        Adds the listener to the collection of listeners who will be notified when the row is resized, by sending it one of the messages defined in the ControlListener interface.

        Clients who wish to override the standard row resize logic should use the untyped listener mechanisms. The untyped Event object passed to an untyped listener will have its detail field populated with the new row height. Clients may alter this value to, for example, enforce minimum or maximum row sizes. Clients may also set the doit field to false to prevent the entire resize operation.

        Parameters:
        listener - the listener which should be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener 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
      • removeControlListener

        public void removeControlListener​(org.eclipse.swt.events.ControlListener listener)
        Removes the listener from the collection of listeners who will be notified when the row is resized.
        Parameters:
        listener - the listener which should no longer be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener 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
      • fireEvent

        public void fireEvent​(int eventId)
        Fires the given event type on the parent Grid instance. This method should only be called from within a cell renderer. Any other use is not intended.
        Parameters:
        eventId - SWT event constant
        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
      • fireCheckEvent

        public void fireCheckEvent​(int column)
        Fires the appropriate events in response to a user checking/unchecking an item. Checking an item fires both a selection event (with event.detail of SWT.CHECK) if the checkbox is in the first column and the seperate check listener (all columns). This method manages that behavior. This method should only be called from within a cell renderer. Any other use is not intended.
        Parameters:
        column - the column where the checkbox resides
        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
      • getBackground

        public org.eclipse.swt.graphics.Color getBackground()
        Returns the receiver's background color.
        Returns:
        the background color
        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
      • getBackground

        public org.eclipse.swt.graphics.Color getBackground​(int index)
        Returns the background color at the given column index in the receiver.
        Parameters:
        index - the column index
        Returns:
        the background color
        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
      • getBounds

        public org.eclipse.swt.graphics.Rectangle getBounds​(int columnIndex)
        Returns a rectangle describing the receiver's size and location relative to its parent at a column in the table.
        Parameters:
        columnIndex - the index that specifies the column
        Returns:
        the receiver's bounding column rectangle
        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
      • getBoundsCorrected

        public org.eclipse.swt.graphics.Rectangle getBoundsCorrected​(int columnIndex)
        Returns a rectangle describing the receiver's size and location relative to its parent at a column in the table. Handle not visible items.
        Parameters:
        columnIndex - the index that specifies the column
        Returns:
        the receiver's bounding column rectangle
        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
      • getCellSize

        protected org.eclipse.swt.graphics.Point getCellSize​(int columnIndex)
        Parameters:
        columnIndex -
        Returns:
        width and height
      • getChecked

        public boolean getChecked()
        Returns the checked state at the first column in the receiver.
        Returns:
        the checked state
        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
      • getChecked

        public boolean getChecked​(int index)
        Returns the checked state at the given column index in the receiver.
        Parameters:
        index - the column index
        Returns:
        the checked state
        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
      • getColumnSpan

        public int getColumnSpan​(int index)
        Returns the column span for the given column index in the receiver.
        Parameters:
        index - the column index
        Returns:
        the number of columns spanned (0 equals no columns spanned)
        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
      • getRowSpan

        public int getRowSpan​(int index)
        Returns the row span for the given column index in the receiver.
        Parameters:
        index - the row index
        Returns:
        the number of row spanned (0 equals no row spanned)
        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
      • getFont

        public org.eclipse.swt.graphics.Font getFont()
        Returns the font that the receiver will use to paint textual information for this item.
        Returns:
        the receiver's font
        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
      • getFont

        public org.eclipse.swt.graphics.Font getFont​(int index)
        Returns the font that the receiver will use to paint textual information for the specified cell in this item.
        Parameters:
        index - the column index
        Returns:
        the receiver's font
        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
      • getForeground

        public org.eclipse.swt.graphics.Color getForeground()
        Returns the foreground color that the receiver will use to draw.
        Returns:
        the receiver's foreground color
        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
      • getForeground

        public org.eclipse.swt.graphics.Color getForeground​(int index)
        Returns the foreground color at the given column index in the receiver.
        Parameters:
        index - the column index
        Returns:
        the foreground color
        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
      • getGrayed

        public boolean getGrayed()
        Returns true if the first column in the receiver is grayed, and false otherwise. When the GridColumn does not have the CHECK style, return false.
        Returns:
        the grayed state of the checkbox
        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
      • getGrayed

        public boolean getGrayed​(int index)
        Returns true if the column at the given index in the receiver is grayed, and false otherwise. When the GridColumn does not have the CHECK style, return false.
        Parameters:
        index - the column index
        Returns:
        the grayed state of the checkbox
        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
      • getHeight

        public int getHeight()
        Returns the height of this GridItem.
        Returns:
        height of this GridItem
      • getImage

        public org.eclipse.swt.graphics.Image getImage()
        Overrides:
        getImage in class org.eclipse.swt.widgets.Item
      • getImage

        public org.eclipse.swt.graphics.Image getImage​(int index)
        Returns the image stored at the given column index in the receiver, or null if the image has not been set or if the column does not exist.
        Parameters:
        index - the column index
        Returns:
        the image stored at the given column index 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
      • getItem

        public GridItem 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
      • getItemCount

        public int getItemCount()
        Returns the number of items contained in the receiver that are direct item children of 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
      • indexOf

        public int indexOf​(GridItem 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
      • getItems

        public GridItem[] getItems()
        Returns a (possibly empty) array of GridItems which are the direct item children of 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 receiver's 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
      • getLevel

        public int getLevel()
        Returns the level of this item in the tree.
        Returns:
        the level of the item in the tree
        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
      • getParent

        public Grid getParent()
        Returns the receiver's parent, which must be a Grid.
        Returns:
        the receiver's parent
        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
      • getParentItem

        public GridItem getParentItem()
        Returns the receiver's parent item, which must be a GridItem or null when the receiver is a root.
        Returns:
        the receiver's parent item
        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
      • getText

        public java.lang.String getText()
        Overrides:
        getText in class org.eclipse.swt.widgets.Item
      • getText

        public java.lang.String getText​(int index)
        Returns the text stored at the given column index in the receiver, or empty string if the text has not been set.
        Parameters:
        index - the column index
        Returns:
        the text stored at the given column index 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
      • hasChildren

        public boolean hasChildren()
        Returns true if this item has children.
        Returns:
        true if this item has children
        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
      • isExpanded

        public boolean isExpanded()
        Returns true if the receiver is expanded, and false otherwise.

        Returns:
        the expanded state
        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
      • setBackground

        public void setBackground​(org.eclipse.swt.graphics.Color background)
        Sets the receiver's background color to the color specified by the argument, or to the default system color for the item if the argument is null.
        Parameters:
        background - the new color (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument 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
      • setBackground

        public void setBackground​(int index,
                                  org.eclipse.swt.graphics.Color background)
        Sets the background color at the given column index in the receiver to the color specified by the argument, or to the default system color for the item if the argument is null.
        Parameters:
        index - the column index
        background - the new color (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument 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
      • setChecked

        public void setChecked​(boolean checked)
        Sets the checked state at the first column in the receiver.
        Parameters:
        checked - the new checked state
        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
      • setChecked

        public void setChecked​(int index,
                               boolean checked)
        Sets the checked state at the given column index in the receiver.
        Parameters:
        index - the column index
        checked - the new checked state
        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
      • setColumnSpan

        public void setColumnSpan​(int index,
                                  int span)
        Sets the column spanning for the column at the given index to span the given number of subsequent columns.
        Parameters:
        index - column index that should span
        span - number of subsequent columns to span
        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
      • setRowSpan

        public void setRowSpan​(int index,
                               int span)
        Sets the row spanning for the row at the given index to span the given number of subsequent rows.
        Parameters:
        index - row index that should span
        span - number of subsequent rows to span
        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
      • setExpanded

        public void setExpanded​(boolean expanded)
        Sets the expanded state of the receiver.

        Parameters:
        expanded - the new expanded state
        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
      • doUnselect

        private boolean doUnselect​(boolean expanded)
      • deselectCells

        private boolean deselectCells​(GridItem item)
      • deselectChildren

        private boolean deselectChildren​(GridItem item)
        Deselects the given item's children recursively.
        Parameters:
        item - item to deselect children.
        Returns:
        true if an item was deselected
      • setFont

        public void setFont​(org.eclipse.swt.graphics.Font f)
        Sets the font that the receiver will use to paint textual information for this item to the font specified by the argument, or to the default font for that kind of control if the argument is null.
        Parameters:
        f - the new font (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument 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
      • setFont

        public void setFont​(int index,
                            org.eclipse.swt.graphics.Font font)
        Sets the font that the receiver will use to paint textual information for the specified cell in this item to the font specified by the argument, or to the default font for that kind of control if the argument is null.
        Parameters:
        index - the column index
        font - the new font (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument 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
      • setForeground

        public void setForeground​(org.eclipse.swt.graphics.Color foreground)
        Sets the receiver's foreground color to the color specified by the argument, or to the default system color for the item if the argument is null.
        Parameters:
        foreground - the new color (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument 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
      • setForeground

        public void setForeground​(int index,
                                  org.eclipse.swt.graphics.Color foreground)
        Sets the foreground color at the given column index in the receiver to the color specified by the argument, or to the default system color for the item if the argument is null.
        Parameters:
        index - the column index
        foreground - the new color (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument 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
      • setGrayed

        public void setGrayed​(boolean grayed)
        Sets the grayed state of the checkbox for the first column. This state change only applies if the GridColumn was created with the SWT.CHECK style.
        Parameters:
        grayed - the new grayed state of the checkbox;
        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
      • setGrayed

        public void setGrayed​(int index,
                              boolean grayed)
        Sets the grayed state of the checkbox for the given column index. This state change only applies if the GridColumn was created with the SWT.CHECK style.
        Parameters:
        index - the column index
        grayed - the new grayed state of the checkbox;
        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
      • setHeight

        public void setHeight​(int newHeight)
        Sets the height of this GridItem.
        Parameters:
        newHeight - new height in pixels
        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
      • pack

        public void pack()
        Sets this GridItem to its preferred height.
        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
      • setImage

        public void setImage​(org.eclipse.swt.graphics.Image image)
        Overrides:
        setImage in class org.eclipse.swt.widgets.Item
      • setImage

        public void setImage​(int index,
                             org.eclipse.swt.graphics.Image image)
        Sets the receiver's image at a column.
        Parameters:
        index - the column index
        image - the new image
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the image 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
      • setText

        public void setText​(int index,
                            java.lang.String text)
        Sets the receiver's text at a column.
        Parameters:
        index - the column index
        text - the new text
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the text 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
      • setText

        public void setText​(java.lang.String string)
        Overrides:
        setText in class org.eclipse.swt.widgets.Item
      • remove

        private void remove​(GridItem child)
        Removes the given child item from the list of children.
        Parameters:
        child - child to remove
      • isVisible

        public boolean isVisible()
        Returns true if the item is visible because its parent items are all expanded. This method does not determine if the item is in the currently visible range.
        Returns:
        Returns the visible.
      • newItem

        void newItem​(GridItem item,
                     int index)
        Creates a new child item in this item at the given index.
        Parameters:
        item - new child item
        index - index
      • setHasChildren

        void setHasChildren​(boolean hasChildren)
        Sets whether this item has children.
        Parameters:
        hasChildren - true if this item has children
      • setVisible

        void setVisible​(boolean visible)
        Sets the visible state of this item. The visible state is determined by the expansion state of all of its parent items. If all parent items are expanded it is visible.
        Parameters:
        visible - The visible to set.
      • getHeaderText

        public java.lang.String getHeaderText()
        Returns the receiver's row header text. If the text is null the row header will display the row number.
        Returns:
        the text stored for the row header or code null if the default has to be displayed
        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
      • getHeaderImage

        public org.eclipse.swt.graphics.Image getHeaderImage()
        Returns the receiver's row header image.
        Returns:
        the image stored for the header or null if none has to be displayed
        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
      • getHeaderBackground

        public org.eclipse.swt.graphics.Color getHeaderBackground()
        Returns the receiver's row header background color
        Returns:
        the color or null if none
        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
      • getHeaderForeground

        public org.eclipse.swt.graphics.Color getHeaderForeground()
        Returns the receiver's row header foreground color
        Returns:
        the color or null if none
        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
      • getHeaderFont

        public org.eclipse.swt.graphics.Font getHeaderFont()
        Returns the receiver's row header font
        Returns:
        the font or null if none
        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
      • setHeaderText

        public void setHeaderText​(java.lang.String text)
        Sets the receiver's row header text. If the text is null the row header will display the row number.
        Parameters:
        text - the new text
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the text 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
      • setHeaderImage

        public void setHeaderImage​(org.eclipse.swt.graphics.Image image)
        Sets the receiver's row header image. If the image is null none is shown in the header
        Parameters:
        image - the new image
        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
      • setHeaderBackground

        public void setHeaderBackground​(org.eclipse.swt.graphics.Color headerBackground)
        Set the new header background
        Parameters:
        headerBackground - the color or null
        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
      • setHeaderForeground

        public void setHeaderForeground​(org.eclipse.swt.graphics.Color headerForeground)
        Set the new header foreground
        Parameters:
        headerForeground - the color or null
        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
      • setHeaderFont

        public void setHeaderFont​(org.eclipse.swt.graphics.Font headerFont)
        Set the new header font
        Parameters:
        headerFont - the font or null
        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
      • getCheckable

        public boolean getCheckable​(int index)
        Returns the checkable state at the given column index in the receiver. If the column at the given index is not checkable then this will return false regardless of the individual cell's checkable state.
        Parameters:
        index - the column index
        Returns:
        the checked state
        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
      • setCheckable

        public void setCheckable​(int index,
                                 boolean checked)
        Sets the checkable state at the given column index in the receiver. A checkbox which is uncheckable will not be modifiable by the user but still make be modified programmatically. If the column at the given index is not checkable then individual cell will not be checkable regardless.
        Parameters:
        index - the column index
        checked - the new checked state
        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
      • getToolTipText

        public java.lang.String getToolTipText​(int index)
        Returns the tooltip for the given cell.
        Parameters:
        index - the column index
        Returns:
        the tooltip
        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
      • setToolTipText

        public void setToolTipText​(int index,
                                   java.lang.String tooltip)
        Sets the tooltip for the given column index.
        Parameters:
        index - the column index
        tooltip - the tooltip text
        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
      • columnAdded

        void columnAdded​(int index)
      • handleVirtual

        private void handleVirtual()
      • initializeHeight

        void initializeHeight​(int height)
        Sets the initial item height for this item.
        Parameters:
        height - initial height.
      • setHasSetData

        void setHasSetData​(boolean hasSetData)
      • clear

        void clear​(boolean allChildren)
        Clears all properties of this item and resets values to their defaults.
        Parameters:
        allChildren - true if all child items should be cleared recursively, and false otherwise
      • disposeOnly

        public void disposeOnly()
        this method call only super.dispose, nothing else..
      • noRow

        private void noRow()