Table Views
PBTableView
Opaque object handle:
This is a subclass of PBElement. You can safely cast from PBTableView to PBElement. To cast from PBElement to PBTableView, call PBTableViewCast; this performs a runtime assertion to check the cast is possible. This function is thread-safe.
This object maintains an internal reference count. When the reference count reaches zero, the object will be automatically deallocated. To increment the reference count, call PBElementRetain; to decrement the reference count, call PBElementRelease. These functions are thread-safe.
PBTableSelectionAction
Enumeration/bitset of type uint8_t:
Constants
PBTableSelectionAction_DESELECT
PBTableSelectionAction_DESELECT = 0
PBTableSelectionAction_TOGGLE
PBTableSelectionAction_TOGGLE = 1
PBTableSelectionAction_SELECT_ADD
PBTableSelectionAction_SELECT_ADD = 2
PBTableSelectionAction_SELECT_ONLY
PBTableSelectionAction_SELECT_ONLY = 3
PBTableViewFlags
Enumeration/bitset of type uint32_t:
Constants
PBTableView_NO_HEADER
PBTableView_NO_HEADER = 1<<1
If set, the column headers are not displayed.
Or any of the values from PBElementFlags.
PBTableViewColumnFlags
Enumeration/bitset of type uint32_t:
Constants
PBTableViewColumn_TABULAR_NUMERALS
PBTableViewColumn_TABULAR_NUMERALS = 1<<0
PBTableViewColumn_RIGHT_ALIGN_CELLS
PBTableViewColumn_RIGHT_ALIGN_CELLS = 1<<1
PBTableViewColumn_FILL_REMAINING_SPACE
PBTableViewColumn_FILL_REMAINING_SPACE = 1<<2
PBTableSelectionRange
Enumeration/bitset of type uint8_t:
Constants
PBTableSelectionRange_SINGLE
PBTableSelectionRange_SINGLE = 0
PBTableSelectionRange_ALL
PBTableSelectionRange_ALL = 1
PBTableSelectionRange_TO_FOCUSED
PBTableSelectionRange_TO_FOCUSED = 2
PBTableViewSetFocusedItemFlags
Enumeration/bitset of type uint32_t:
Constants
PBTableViewSetFocusedItem_MODIFY_SELECTION
PBTableViewSetFocusedItem_MODIFY_SELECTION = 1<<0
PBTableViewSetFocusedItem_CTRL_HELD
PBTableViewSetFocusedItem_CTRL_HELD = 1<<1
PBTableViewSetFocusedItem_SHIFT_HELD
PBTableViewSetFocusedItem_SHIFT_HELD = 1<<2
PBTableViewSetFocusedItem_DO_NOT_SEND_FOCUS
PBTableViewSetFocusedItem_DO_NOT_SEND_FOCUS = 1<<3
PBTableItemChooseSource
Enumeration/bitset of type uint32_t:
Constants
PBTableItemChooseSource_OTHER
PBTableItemChooseSource_OTHER = 0
PBTableItemChooseSource_DOUBLE_CLICK
PBTableItemChooseSource_DOUBLE_CLICK = 1
PBTableItemChooseSource_ENTER_KEY
PBTableItemChooseSource_ENTER_KEY = 2
PBTableItemContextMenuSource
Enumeration/bitset of type uint32_t:
Constants
PBTableItemContextMenuSource_OTHER
PBTableItemContextMenuSource_OTHER = 0
PBTableItemContextMenuSource_RIGHT_CLICK
PBTableItemContextMenuSource_RIGHT_CLICK = 1
PBTableItemContextMenuSource_KEY
PBTableItemContextMenuSource_KEY = 2
PBTableItemFocusSource
Enumeration/bitset of type uint32_t:
Constants
PBTableItemFocusSource_OTHER
PBTableItemFocusSource_OTHER = 0
PBTableItemFocusSource_PREVIOUS_REMOVED
PBTableItemFocusSource_PREVIOUS_REMOVED = 1
PBTableItemFocusSource_MOUSE_DOWN
PBTableItemFocusSource_MOUSE_DOWN = 2
PBTableInlineInputEvent
Enumeration/bitset of type uint8_t:
Constants
PBTableInlineInputEvent_SUBMIT
PBTableInlineInputEvent_SUBMIT = 1
PBTableViewAccessory
Enumeration/bitset of type int32_t:
Constants
PBTableViewAccessory_PREAMBLE
PBTableViewAccessory_PREAMBLE = 3
PBTableViewAccessory_POSTAMBLE
PBTableViewAccessory_POSTAMBLE = 4
PBMessageTableHeaderClicked
Structure:
Fields
[in] columnIndex (uint32_t
):
PBMessageTableItemDragged
Structure:
Fields
[in] itemIndex (uint64_t
):
PBTableItemDNDUpdateType
Enumeration/bitset of type uint8_t:
Constants
PBTableItemDNDUpdate_DROP
PBTableItemDNDUpdate_DROP = 1
PBTableItemDNDUpdate_MOVE_OVER
PBTableItemDNDUpdate_MOVE_OVER = 2
PBTableItemDNDUpdate_ENTER
PBTableItemDNDUpdate_ENTER = 3
PBTableItemDNDUpdate_LEAVE
PBTableItemDNDUpdate_LEAVE = 4
PBMessageTableItemDNDUpdate
Structure:
Fields
[in] itemIndex (uint64_t
):
[in] [indirect] dndInfo (PBMessageDNDInfo):
[in] type (PBTableItemDNDUpdateType):
PBMessageTableItemToggle
Structure:
Fields
[in] itemIndex (uint64_t
):
addedItemsCount (uint64_t
):
PBMessageTableGetString
Structure:
Fields
[in] itemIndex (uint64_t
):
[in] columnIndex (uint32_t
):
[indirect] string (string buffer):
PBMessageTableGetDocument
Structure:
Fields
[in] itemIndex (uint64_t
):
columnIndex (uint32_t
):
document (nullable owned PBTextDocument):
PBMessageTableGetIcon
Structure:
Fields
[in] itemIndex (uint64_t
):
icon (nullable owned PBImage):
PBMessageTableChoose
Structure:
Fields
[in] itemIndex (uint64_t
):
source (PBTableItemChooseSource):
modifiers (PBModifierKeys):
[in] columnIndex (uint8_t
):
PBMessageTableContextMenu
Structure:
Fields
[in] itemIndex (uint64_t
):
[in] source (PBTableItemContextMenuSource):
[in] modifiers (PBModifierKeys):
[in] columnIndex (uint8_t
):
PBMessageTableFocus
Structure:
Fields
[in] itemIndex (uint64_t
):
source (PBTableItemFocusSource):
PBMessageTableInlineInput
Structure:
Fields
[in] event (PBTableInlineInputEvent):
[in] contents (referenced string):
PBTableItemState
Enumeration/bitset of type uint32_t:
Constants
PBTableItemState_SELECTED
PBTableItemState_SELECTED = 1<<0
PBTableItemState_GHOSTED
PBTableItemState_GHOSTED = 1<<1
PBTableItemState_DND_TARGET
PBTableItemState_DND_TARGET = 1<<2
PBTableItemState_CAN_EXPAND
PBTableItemState_CAN_EXPAND = 1<<3
PBTableItemState_CAN_COLLAPSE
PBTableItemState_CAN_COLLAPSE = 1<<4
PBMessageTableGetState
Structure:
Fields
[in] itemIndex (uint64_t
):
state (PBTableItemState):
indentLevel (uint8_t
):
PBMessageTableSetSelected
Structure:
Fields
[in] itemIndex (uint64_t
):
[in] action (PBTableSelectionAction):
[in] range (PBTableSelectionRange):
PBTableViewColumn
Structure:
Fields
label (referenced string):
flags (PBTableViewColumnFlags):
width (uint32_t
):
PBMessageTableItemCreated
Structure: Notifies the table that an item element has been created. You must not insert or remove items while processing this message.
Fields
[in] itemIndex (uint64_t
): The index of the item that has been created.
[in] element (referenced PBElement): The created item element in the table. This element is managed by the table view. Do not add child elements to this element; do not destroy this element. You can pass this pointer to PBTableViewIndexOfItemElement to determine its index in the table at the time of calling.
PBTableViewInlineInputFieldFlags
Enumeration/bitset of type uint32_t: Set of flags customizing an inline input field for a table view.
Constants
PBTableViewInlineInputField_COLUMN_MASK
PBTableViewInlineInputField_COLUMN_MASK = 0xFF
The low 8 bits store the column index to edit.
PBTableViewCreate
Function:
Syntax (C/C++)
PBTableViewPtr _Nullable PBTableViewCreate(PBScrollViewRef parent,
PBTableViewFlags flags);
Syntax (Python)
TableViewCreate(parent, flags) -> (tableView)
Parameters and Return Values
[in] parent (referenced PBScrollView):
[in] flags (PBTableViewFlags):
[out] tableView (nullable owned PBTableView):
PBTableViewInsert
Function:
Syntax (C/C++)
void PBTableViewInsert(PBTableViewRef tableView, uint64_t firstIndex,
uint64_t count);
Syntax (Python)
TableViewInsert(tableView, firstIndex, count)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[in] firstIndex (uint64_t
):
[in] count (uint64_t
):
PBTableViewRemove
Function:
Syntax (C/C++)
void PBTableViewRemove(PBTableViewRef tableView, uint64_t firstIndex,
uint64_t count);
Syntax (Python)
TableViewRemove(tableView, firstIndex, count)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[in] firstIndex (uint64_t
):
[in] count (uint64_t
):
PBTableViewRemoveAll
Function:
Syntax (C/C++)
void PBTableViewRemoveAll(PBTableViewRef tableView);
Syntax (Python)
TableViewRemoveAll(tableView)
Parameters and Return Values
[in] tableView (referenced PBTableView):
PBTableViewInvalidate
Function:
Syntax (C/C++)
void PBTableViewInvalidate(PBTableViewRef tableView, uint64_t firstIndex,
uint64_t count);
Syntax (Python)
TableViewInvalidate(tableView, firstIndex, count)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[in] firstIndex (uint64_t
):
[in] count (uint64_t
):
PBTableViewReorder
Function:
Syntax (C/C++)
void PBTableViewReorder(PBTableViewRef tableView, uint64_t oldFirstIndex,
uint64_t newFirstIndex, uint64_t count);
Syntax (Python)
TableViewReorder(tableView, oldFirstIndex, newFirstIndex, count)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[in] oldFirstIndex (uint64_t
):
[in] newFirstIndex (uint64_t
):
[in] count (uint64_t
):
PBTableViewGetSingleSelected
Function:
Syntax (C/C++)
bool PBTableViewGetSingleSelected(PBTableViewRef tableView,
/* output */ uint64_t * _Nullable __restrict index);
Syntax (Python)
TableViewGetSingleSelected(tableView) -> (anySelected, index)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[out] anySelected (bool
):
[optional-out] index (uint64_t
):
PBTableViewSetColumns
Function:
Syntax (C/C++)
void PBTableViewSetColumns(PBTableViewRef tableView,
const PBTableViewColumn *_Nullable columns, size_t columnsCount);
Syntax (Python)
TableViewSetColumns(tableView, columns)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[in] columns (referenced array of PBTableViewColumn):
PBTableViewAddInlineInputField
Function:
Syntax (C/C++)
void PBTableViewAddInlineInputField(PBTableViewRef tableView, uint64_t atIndex,
ConstStr initialContents, uintptr_t selectFrom, uintptr_t selectTo);
Syntax (Python)
TableViewAddInlineInputField(tableView, atIndex, initialContents, selectFrom, selectTo)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[in] atIndex (uint64_t
):
[in] initialContents (referenced string):
[in] selectFrom (uintptr_t
):
[in] selectTo (uintptr_t
):
PBTableViewAddInlineInputField2
Function:
Syntax (C/C++)
void PBTableViewAddInlineInputField2(PBTableViewRef tableView, uint64_t atIndex,
ConstStr initialContents, uintptr_t selectFrom, uintptr_t selectTo,
PBTableViewInlineInputFieldFlags flags);
Syntax (Python)
TableViewAddInlineInputField2(tableView, atIndex, initialContents, selectFrom, selectTo, flags)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[in] atIndex (uint64_t
):
[in] initialContents (referenced string):
[in] selectFrom (uintptr_t
):
[in] selectTo (uintptr_t
):
[in] flags (PBTableViewInlineInputFieldFlags):
PBTableViewGetFocusedItem
Function:
Syntax (C/C++)
bool PBTableViewGetFocusedItem(PBTableViewRef tableView,
/* output */ uint64_t * _Nullable __restrict index);
Syntax (Python)
TableViewGetFocusedItem(tableView) -> (anyFocused, index)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[out] anyFocused (bool
):
[optional-out] index (uint64_t
):
PBTableViewSetFocusedItem
Function:
Syntax (C/C++)
void PBTableViewSetFocusedItem(PBTableViewRef tableView, uint64_t itemIndex,
PBTableViewSetFocusedItemFlags flags);
Syntax (Python)
TableViewSetFocusedItem(tableView, itemIndex, flags)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[in] itemIndex (uint64_t
):
[in] flags (PBTableViewSetFocusedItemFlags):
PBTableViewEnsureFocusedItemIsVisible
Function:
Syntax (C/C++)
void PBTableViewEnsureFocusedItemIsVisible(PBTableViewRef tableView);
Syntax (Python)
TableViewEnsureFocusedItemIsVisible(tableView)
Parameters and Return Values
[in] tableView (referenced PBTableView):
PBTableViewEnsureItemIsVisible
Function:
Syntax (C/C++)
void PBTableViewEnsureItemIsVisible(PBTableViewRef tableView, uint64_t itemIndex,
PBEnsureVisibleMode mode);
Syntax (Python)
TableViewEnsureItemIsVisible(tableView, itemIndex, mode)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[in] itemIndex (uint64_t
):
[in] mode (PBEnsureVisibleMode):
PBTableViewCreateDragImage
Function:
Syntax (C/C++)
PBRenderSurfacePtr _Nullable PBTableViewCreateDragImage(PBTableViewRef tableView,
/* output */ int32_t * __restrict dx, /* output */ int32_t * __restrict dy);
Syntax (Python)
TableViewCreateDragImage(tableView) -> (renderSurface, dx, dy)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[out] renderSurface (nullable owned PBRenderSurface):
[out] dx (int32_t
):
[out] dy (int32_t
):
PBTableViewSetSelected
Function:
Syntax (C/C++)
void PBTableViewSetSelected(PBTableViewRef tableView, uint64_t itemIndex,
PBTableSelectionAction action, PBTableSelectionRange range);
Syntax (Python)
TableViewSetSelected(tableView, itemIndex, action, range)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[in] itemIndex (uint64_t
):
[in] action (PBTableSelectionAction):
[in] range (PBTableSelectionRange):
PBTableViewIndexOfItemElement
Function:
Syntax (C/C++)
uint64_t PBTableViewIndexOfItemElement(PBTableViewRef tableView,
PBElementRef itemElement);
Syntax (Python)
TableViewIndexOfItemElement(tableView, itemElement) -> (itemIndex)
Parameters and Return Values
[in] tableView (referenced PBTableView):
[in] itemElement (referenced PBElement):
[out] itemIndex (uint64_t
):
PBTableViewSetAccessory
Function:
Syntax (C/C++)
void PBTableViewSetAccessory(PBTableViewRef view, PBElementRef childElement,
PBTableViewAccessory accessory);
Syntax (Python)
TableViewSetAccessory(view, childElement, accessory)
Parameters and Return Values
[in] view (referenced PBTableView):
[in] childElement (referenced PBElement):
[in] accessory (PBTableViewAccessory):
PBTableViewSetColumnHeaderMark
Function: Put a sort indicator in a column header.
Syntax (C/C++)
void PBTableViewSetColumnHeaderMark(PBTableViewRef view, uint32_t columnIndex,
PBNamedImage mark);
Syntax (Python)
TableViewSetColumnHeaderMark(view, columnIndex, mark)
Parameters and Return Values
[in] view (referenced PBTableView):
[in] columnIndex (uint32_t
):
[in] mark (PBNamedImage): Either PBNamedImage_SORT_ASCENDING_MARK or PBNamedImage_SORT_DESCENDING_MARK.
Discussion
If there is a mark in another column, it is removed.