org.gnu.gtk
Class TreeViewColumn

java.lang.Object
  extended by org.gnu.glib.Struct
      extended by org.gnu.glib.GObject
          extended by org.gnu.gtk.TreeViewColumn

public class TreeViewColumn
extends GObject

The TreeViewColumn object is a visible column in a TreeView widget, which is the base widget for all Tree, list and table widgets.


Constructor Summary
TreeViewColumn()
          Creates a new Column
 
Method Summary
 void addAttributeMapping(CellRenderer renderer, CellRendererAttribute attribute, DataColumn dataBlock)
          TreeView widgets contain TreeViewColumn objects.
 void addListener(TreeViewColumnListener listener)
          Register an object to handle events on the column header.
 void clear()
          Removes all the renderers from the column.
 void clearAttributeMappings(CellRenderer renderer)
          Clears all attribute mappings
 void click()
          Creates a Clicked event.
 void focusCell(CellRenderer cell)
          Sets the current keyboard focus to be at cell, if the column contains 2 or more editable and activatable cells.
 double getAlignment()
           
 CellRenderer[] getCellRenderers()
          Returns an array of CellRenderers in the column in no particular order.
 boolean getClickable()
           
 java.lang.Class getEventListenerClass(java.lang.String signal)
           
 EventType getEventType(java.lang.String signal)
           
 boolean getExpand()
          Return TRUE if the column expands to take any available space.
 int getFixedWidth()
           
 boolean getIsVisible()
          Returns TRUE if any of the cells packed into the column are visible.
 int getMaxWidth()
           
 int getMinWidth()
           
 boolean getReorderable()
           
 boolean getResizable()
           
 TreeViewColumnSizing getSizing()
           
 boolean getSortIndicator()
           
 SortType getSortOrder()
           
 int getSpacing()
           
 java.lang.String getTitle()
           
static Type getType()
          Retrieve the runtime type used by the GLib library.
 boolean getVisible()
           
 Widget getWidget()
           
 int getWidth()
          Returns the current size of the column in pixels
 void packEnd(CellRenderer cell, boolean expand)
          Packs the cell into the column.
 void packStart(CellRenderer cell, boolean expand)
          Packs the cell into the beginning column.
 void removeListener(TreeViewColumnListener listener)
          Removes a listener
 void setAlignment(double align)
          Sets the alignment of the title or custom widget inside the column header.
 void setClickable(boolean clickable)
          Sets the header to be active if active is TRUE.
 void setExpand(boolean expand)
          Sets the column to take available extra space.
 void setFixedWidth(int fixedWidth)
          Sets the size of the column in pixels.
 void setMaxWidth(int maxWidth)
          Sets the maximum width of the column.
 void setMinWidth(int minWidth)
          Sets the minimum width of the column.
 void setReorderable(boolean reorderable)
          If reorderable is TRUE, then the column can be reordered by the end user dragging the header.
 void setResizable(boolean resizable)
          If resizable is TRUE, then the user can explicitly resize the column by grabbing the outer edge of the column button.
 void setSizing(TreeViewColumnSizing type)
          Sets the growth behavior of the column
 void setSortColumn(DataColumn column)
          Sets the logical DataColumn that this column sorts on when this column is selected for sorting.
 void setSortIndicator(boolean setting)
          Call this function with a setting of TRUE to display an arrow in the header button indicating the column is sorted.
 void setSortOrder(SortType order)
          Changes the appearance of the sort indicator.
 void setSpacing(int spacing)
          Sets the spacing field of the column, which is the number of pixels to place between cell renderers packed into it.
 void setTitle(java.lang.String title)
          Sets the title of the column.
 void setVisible(boolean visible)
          Sets the visibility of the column
 void setWidget(Widget widget)
          Sets the widget in the header to be widget.
 
Methods inherited from class org.gnu.glib.GObject
addEventHandler, addEventHandler, addEventHandler, addEventHandler, addEventHandler, addEventHandler, addEventHandler, addListener, collect, freezeNotify, getBooleanProperty, getData, getDoubleProperty, getFloatProperty, getGObjectFromHandle, getIntProperty, getJavaObjectProperty, getLongProperty, getPixbufProperty, getProperty, getStringProperty, hasProperty, notify, removeEventHandler, removeListener, setBooleanProperty, setData, setDoubleProperty, setFloatProperty, setIntProperty, setJavaObjectProperty, setLongProperty, setPixbufProperty, setProperty, setStringProperty, thawNotify
 
Methods inherited from class org.gnu.glib.Struct
equals, getHandle, getNullHandle, hashCode
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TreeViewColumn

public TreeViewColumn()
Creates a new Column

Method Detail

packStart

public void packStart(CellRenderer cell,
                      boolean expand)
Packs the cell into the beginning column. If expand is TRUE, then the cell is allocated a share of all available space that the column has.

Parameters:
cell - The CellRenderer.
expand - TRUE if cell is to be given extra space allocated to box.

packEnd

public void packEnd(CellRenderer cell,
                    boolean expand)
Packs the cell into the column. If expand is TRUE, then the cell is allocated a share of all available space that the column has.

Parameters:
cell - The CellRenderer.
expand - TRUE if cell is to be given extra space allocated to box.

clear

public void clear()
Removes all the renderers from the column.


getCellRenderers

public CellRenderer[] getCellRenderers()
Returns an array of CellRenderers in the column in no particular order.


setSpacing

public void setSpacing(int spacing)
Sets the spacing field of the column, which is the number of pixels to place between cell renderers packed into it.

Parameters:
spacing - Distance between cell renderers in pixels.

getSpacing

public int getSpacing()

setVisible

public void setVisible(boolean visible)
Sets the visibility of the column

Parameters:
visible - If true, the column s visible.

getVisible

public boolean getVisible()

setResizable

public void setResizable(boolean resizable)
If resizable is TRUE, then the user can explicitly resize the column by grabbing the outer edge of the column button.

Parameters:
resizable - TRUE, if the column can be resized.

getResizable

public boolean getResizable()

setSizing

public void setSizing(TreeViewColumnSizing type)
Sets the growth behavior of the column

Parameters:
type - The TreeViewColumnSizing.

getSizing

public TreeViewColumnSizing getSizing()

getWidth

public int getWidth()
Returns the current size of the column in pixels

Returns:
The current width, in pizels.

setFixedWidth

public void setFixedWidth(int fixedWidth)
Sets the size of the column in pixels. This is meaningful only if the sizing type is TreeViewColumnSizing.FIXED. The size of the column is clamped to the min/max width for the column. Please note that the min/max width of the column doesn't actually affect the "fixedWidth" property of the widget, just the actual size when displayed.

Parameters:
fixedWidth - The size to set the column to. Must be greater than 0.

getFixedWidth

public int getFixedWidth()

setMinWidth

public void setMinWidth(int minWidth)
Sets the minimum width of the column. If minWidth is -1, then the minimum width is unset.

Parameters:
minWidth - The minimum width of the column in pixels, or -1.

getMinWidth

public int getMinWidth()

setMaxWidth

public void setMaxWidth(int maxWidth)
Sets the maximum width of the column. If maxWidth is -1, then the maximum width is unset. Note, the column can actually be wider than max width if it's the last column in a view. In this case, the column expands to fill any extra space.

Parameters:
maxWidth - The maximum width of the column in pixels, or -1.

getMaxWidth

public int getMaxWidth()

click

public void click()
Creates a Clicked event. This function will only work if tree_column is clickable.


setTitle

public void setTitle(java.lang.String title)
Sets the title of the column. If a custom widget has been set, then this value is ignored.

Parameters:
title - The title of the column

getTitle

public java.lang.String getTitle()

setClickable

public void setClickable(boolean clickable)
Sets the header to be active if active is TRUE. When the header is active, then it can take keyboard focus, and can be clicked.

Parameters:
clickable - TRUE if the header is active.

getClickable

public boolean getClickable()

setWidget

public void setWidget(Widget widget)
Sets the widget in the header to be widget. If widget is null, then the header button is set with a Label set to the title of column.

Parameters:
widget - : A child Widget, or null.

getWidget

public Widget getWidget()

setAlignment

public void setAlignment(double align)
Sets the alignment of the title or custom widget inside the column header. The alignment determines its location inside the button -- 0.0 for left, 0.5 for center, 1.0 for right.

Parameters:
align - : The alignment, which is between [0.0 and 1.0] inclusive.

getAlignment

public double getAlignment()

setReorderable

public void setReorderable(boolean reorderable)
If reorderable is TRUE, then the column can be reordered by the end user dragging the header. By using this method, the developer does not have to deal with the drag events.

Parameters:
reorderable - TRUE, if the column can be reordered.

getReorderable

public boolean getReorderable()

setSortColumn

public void setSortColumn(DataColumn column)
Sets the logical DataColumn that this column sorts on when this column is selected for sorting. Doing so makes the column header clickable.

Parameters:
column - The DataColumn of the model to sort on.

setSortIndicator

public void setSortIndicator(boolean setting)
Call this function with a setting of TRUE to display an arrow in the header button indicating the column is sorted. Call setSortOrder(SortType) to change the direction of the arrow.

Parameters:
setting - TRUE to display an indicator that the column is sorted

getSortIndicator

public boolean getSortIndicator()

setSortOrder

public void setSortOrder(SortType order)
Changes the appearance of the sort indicator.

This does not actually sort the model. Use setSortColumn(org.gnu.gtk.DataColumn) if you want automatic sorting support. This function is primarily for custom sorting behavior, and should be used in conjunction with setSortColumn(org.gnu.gtk.DataColumn) to do that. For custom models, the mechanism will vary.

The sort indicator changes direction to indicate normal sort or reverse sort. Note that you must have the sort indicator enabled to see anything when calling this function;

Parameters:
order - Sort order that the sort indicator should indicate
See Also:
setSortIndicator(boolean), setSortColumn(org.gnu.gtk.DataColumn)

getSortOrder

public SortType getSortOrder()

getIsVisible

public boolean getIsVisible()
Returns TRUE if any of the cells packed into the column are visible.


addAttributeMapping

public void addAttributeMapping(CellRenderer renderer,
                                CellRendererAttribute attribute,
                                DataColumn dataBlock)
TreeView widgets contain TreeViewColumn objects. These contain CellRenderers to display data on the screen. This data is stored in a ListStore or TreeStore. In order for data to be displayed, a mapping has to be made between the data in the data store and the attributes of the CellRenderers which determine what they render. This method creates those mappings.

Parameters:
renderer - The cell renderer to add the mapping to. This must have been addded to this column.
attribute - The attribute to be mapped. This must be one of the attributes for the given renderer.
dataBlock - the dataBlock in the store in which the data is contained. This should be of the type required by the renderer attribute.

clearAttributeMappings

public void clearAttributeMappings(CellRenderer renderer)
Clears all attribute mappings

See Also:
addAttributeMapping(CellRenderer, CellRendererAttribute, DataColumn)

setExpand

public void setExpand(boolean expand)
Sets the column to take available extra space. This space is shared equally amongst all columns that have the expand set to TRUE. If no column has this option set, then the last column gets all extra space. By default, every column is created with this FALSE.

Parameters:
expand -
Since:
2.4

getExpand

public boolean getExpand()
Return TRUE if the column expands to take any available space.

Returns:
true, if the column expands
Since:
2.4

focusCell

public void focusCell(CellRenderer cell)
Sets the current keyboard focus to be at cell, if the column contains 2 or more editable and activatable cells.

Since:
2.2

addListener

public void addListener(TreeViewColumnListener listener)
Register an object to handle events on the column header.

See Also:
TreeViewColumnListener

removeListener

public void removeListener(TreeViewColumnListener listener)
Removes a listener

See Also:
addListener(TreeViewColumnListener)

getEventListenerClass

public java.lang.Class getEventListenerClass(java.lang.String signal)
Overrides:
getEventListenerClass in class GObject

getEventType

public EventType getEventType(java.lang.String signal)
Overrides:
getEventType in class GObject

getType

public static Type getType()
Retrieve the runtime type used by the GLib library.