CellAreaBox

The gtk.CellAreaBox renders cell renderers into a row or a column depending on its GtkOrientation

GtkCellAreaBox uses a notion of packing. Packing refers to adding cell renderers with reference to a particular position in a gtk.CellAreaBox There are two reference positions: the start and the end of the box. When the gtk.CellAreaBox is oriented in the GTK_ORIENTATION_VERTICAL orientation, the start is defined as the top of the box and the end is defined as the bottom. In the GTK_ORIENTATION_HORIZONTAL orientation start is defined as the left side and the end is defined as the right side.

Alignments of gtk.CellRenderers rendered in adjacent rows can be configured by configuring the gtk.CellAreaBox align child cell property with CellArea.cellSetProperty or by specifying the "align" argument to CellArea.boxPackStart and CellArea.boxPackEnd.

Constructors

this
this(GtkCellAreaBox* gtkCellAreaBox, bool ownedRef)

Sets our main struct and passes it to the parent class.

this
this()

Creates a new gtk.CellAreaBox

Members

Functions

getCellAreaBoxStruct
GtkCellAreaBox* getCellAreaBoxStruct(bool transferOwnership)

Get the main Gtk struct

getSpacing
int getSpacing()

Gets the spacing added between cell renderers.

getStruct
void* getStruct()

the main Gtk struct as a void*

packEnd
void packEnd(CellRenderer renderer, bool expand, bool align_, bool fixed)

Adds renderer to box, packed with reference to the end of box.

packStart
void packStart(CellRenderer renderer, bool expand, bool align_, bool fixed)

Adds renderer to box, packed with reference to the start of box.

setSpacing
void setSpacing(int spacing)

Sets the spacing to add between cell renderers in box.

Static functions

getType
GType getType()

Variables

gtkCellAreaBox
GtkCellAreaBox* gtkCellAreaBox;

the main Gtk struct

Inherited Members

From CellArea

gtkCellArea
GtkCellArea* gtkCellArea;

the main Gtk struct

getCellAreaStruct
GtkCellArea* getCellAreaStruct(bool transferOwnership)

Get the main Gtk struct

getStruct
void* getStruct()

the main Gtk struct as a void*

getType
GType getType()
activate
bool activate(CellAreaContext context, Widget widget, GdkRectangle* cellArea, GtkCellRendererState flags, bool editOnly)

Activates area, usually by activating the currently focused cell, however some subclasses which embed widgets in the area can also activate a widget if it currently has the focus.

activateCell
bool activateCell(Widget widget, CellRenderer renderer, Event event, GdkRectangle* cellArea, GtkCellRendererState flags)

This is used by gtk.CellArea subclasses when handling events to activate cells, the base gtk.CellArea class activates cells for keyboard events for free in its own GtkCellArea->activate() implementation.

add
void add(CellRenderer renderer)

Adds renderer to area with the default child cell properties.

addFocusSibling
void addFocusSibling(CellRenderer renderer, CellRenderer sibling)

Adds sibling to renderer’s focusable area, focus will be drawn around renderer and all of its siblings if renderer can focus for a given row.

applyAttributes
void applyAttributes(TreeModelIF treeModel, TreeIter iter, bool isExpander, bool isExpanded)

Applies any connected attributes to the renderers in area by pulling the values from tree_model.

attributeConnect
void attributeConnect(CellRenderer renderer, string attribute, int column)

Connects an attribute to apply values from column for the gtk.TreeModel in use.

attributeDisconnect
void attributeDisconnect(CellRenderer renderer, string attribute)

Disconnects attribute for the renderer in area so that attribute will no longer be updated with values from the model.

attributeGetColumn
int attributeGetColumn(CellRenderer renderer, string attribute)

Returns the model column that an attribute has been mapped to, or -1 if the attribute is not mapped.

cellGetProperty
void cellGetProperty(CellRenderer renderer, string propertyName, Value value)

Gets the value of a cell property for renderer in area.

cellGetValist
void cellGetValist(CellRenderer renderer, string firstPropertyName, void* varArgs)

Gets the values of one or more cell properties for renderer in area.

cellSetProperty
void cellSetProperty(CellRenderer renderer, string propertyName, Value value)

Sets a cell property for renderer in area.

cellSetValist
void cellSetValist(CellRenderer renderer, string firstPropertyName, void* varArgs)

Sets one or more cell properties for renderer in area.

copyContext
CellAreaContext copyContext(CellAreaContext context)

This is sometimes needed for cases where rows need to share alignments in one orientation but may be separately grouped in the opposing orientation.

createContext
CellAreaContext createContext()

Creates a gtk.CellAreaContext to be used with area for all purposes. gtk.CellAreaContext stores geometry information for rows for which it was operated on, it is important to use the same context for the same row of data at all times (i.e. one should render and handle events with the same gtk.CellAreaContext which was used to request the size of those rows of data).

event
int event(CellAreaContext context, Widget widget, Event event, GdkRectangle* cellArea, GtkCellRendererState flags)

Delegates event handling to a gtk.CellArea

focus
bool focus(GtkDirectionType direction)

This should be called by the area’s owning layout widget when focus is to be passed to area, or moved within area for a given direction and row data.

foreach_
void foreach_(GtkCellCallback callback, void* callbackData)

Calls callback for every gtk.CellRenderer in area.

foreachAlloc
void foreachAlloc(CellAreaContext context, Widget widget, GdkRectangle* cellArea, GdkRectangle* backgroundArea, GtkCellAllocCallback callback, void* callbackData)

Calls callback for every gtk.CellRenderer in area with the allocated rectangle inside cell_area.

getCellAllocation
void getCellAllocation(CellAreaContext context, Widget widget, CellRenderer renderer, GdkRectangle* cellArea, GdkRectangle allocation)

Derives the allocation of renderer inside area if area were to be renderered in cell_area.

getCellAtPosition
CellRenderer getCellAtPosition(CellAreaContext context, Widget widget, GdkRectangle* cellArea, int x, int y, GdkRectangle allocArea)

Gets the gtk.CellRenderer at x and y coordinates inside area and optionally returns the full cell allocation for it inside cell_area.

getCurrentPathString
string getCurrentPathString()

Gets the current gtk.TreePath string for the currently applied gtk.TreeIter, this is implicitly updated when CellArea.applyAttributes is called and can be used to interact with renderers from gtk.CellArea subclasses.

getEditWidget
CellEditableIF getEditWidget()

Gets the GtkCellEditable widget currently used to edit the currently edited cell.

getEditedCell
CellRenderer getEditedCell()

Gets the gtk.CellRenderer in area that is currently being edited.

getFocusCell
CellRenderer getFocusCell()

Retrieves the currently focused cell for area

getFocusFromSibling
CellRenderer getFocusFromSibling(CellRenderer renderer)

Gets the gtk.CellRenderer which is expected to be focusable for which renderer is, or may be a sibling.

getFocusSiblings
ListG getFocusSiblings(CellRenderer renderer)

Gets the focus sibling cell renderers for renderer.

getPreferredHeight
void getPreferredHeight(CellAreaContext context, Widget widget, int minimumHeight, int naturalHeight)

Retrieves a cell area’s initial minimum and natural height.

getPreferredHeightForWidth
void getPreferredHeightForWidth(CellAreaContext context, Widget widget, int width, int minimumHeight, int naturalHeight)

Retrieves a cell area’s minimum and natural height if it would be given the specified width.

getPreferredWidth
void getPreferredWidth(CellAreaContext context, Widget widget, int minimumWidth, int naturalWidth)

Retrieves a cell area’s initial minimum and natural width.

getPreferredWidthForHeight
void getPreferredWidthForHeight(CellAreaContext context, Widget widget, int height, int minimumWidth, int naturalWidth)

Retrieves a cell area’s minimum and natural width if it would be given the specified height.

getRequestMode
GtkSizeRequestMode getRequestMode()

Gets whether the area prefers a height-for-width layout or a width-for-height layout.

hasRenderer
bool hasRenderer(CellRenderer renderer)

Checks if area contains renderer.

innerCellArea
void innerCellArea(Widget widget, GdkRectangle* cellArea, GdkRectangle innerArea)

This is a convenience function for gtk.CellArea implementations to get the inner area where a given gtk.CellRenderer will be rendered. It removes any padding previously added by CellArea.requestRenderer.

isActivatable
bool isActivatable()

Returns whether the area can do anything when activated, after applying new attributes to area.

isFocusSibling
bool isFocusSibling(CellRenderer renderer, CellRenderer sibling)

Returns whether sibling is one of renderer’s focus siblings (see CellArea.addFocusSibling).

remove
void remove(CellRenderer renderer)

Removes renderer from area.

removeFocusSibling
void removeFocusSibling(CellRenderer renderer, CellRenderer sibling)

Removes sibling from renderer’s focus sibling list (see CellArea.addFocusSibling).

render
void render(CellAreaContext context, Widget widget, Context cr, GdkRectangle* backgroundArea, GdkRectangle* cellArea, GtkCellRendererState flags, bool paintFocus)

Renders area’s cells according to area’s layout onto widget at the given coordinates.

requestRenderer
void requestRenderer(CellRenderer renderer, GtkOrientation orientation, Widget widget, int forSize, int minimumSize, int naturalSize)

This is a convenience function for gtk.CellArea implementations to request size for cell renderers. It’s important to use this function to request size and then use CellArea.innerCellArea at render and event time since this function will add padding around the cell for focus painting.

setFocusCell
void setFocusCell(CellRenderer renderer)

Explicitly sets the currently focused cell to renderer.

stopEditing
void stopEditing(bool canceled)

Explicitly stops the editing of the currently edited cell.

addOnAddEditable
gulong addOnAddEditable(void delegate(CellRenderer, CellEditableIF, GdkRectangle*, string, CellArea) dlg, ConnectFlags connectFlags)

Indicates that editing has started on renderer and that editable should be added to the owning cell-layouting widget at cell_area.

addOnApplyAttributes
gulong addOnApplyAttributes(void delegate(TreeModelIF, TreeIter, bool, bool, CellArea) dlg, ConnectFlags connectFlags)

This signal is emitted whenever applying attributes to area from model

addOnFocusChanged
gulong addOnFocusChanged(void delegate(CellRenderer, string, CellArea) dlg, ConnectFlags connectFlags)

Indicates that focus changed on this area. This signal is emitted either as a result of focus handling or event handling.

addOnRemoveEditable
gulong addOnRemoveEditable(void delegate(CellRenderer, CellEditableIF, CellArea) dlg, ConnectFlags connectFlags)

Indicates that editing finished on renderer and that editable should be removed from the owning cell-layouting widget.

From OrientableIF

getOrientableStruct
GtkOrientable* getOrientableStruct(bool transferOwnership)

Get the main Gtk struct

getStruct
void* getStruct()

the main Gtk struct as a void*

getType
GType getType()
getOrientation
GtkOrientation getOrientation()

Retrieves the orientation of the orientable.

setOrientation
void setOrientation(GtkOrientation orientation)

Sets the orientation of the orientable.