29#define _Class _TableRowView
55 if (strcmp(
"selected", simpleSelector->
pattern) == 0) {
63#pragma mark - TableRowView
73 $(self->
cells, addObject, cell);
87 const Array *columns = (Array *) tableView->
columns;
89 self->
cells = $$(Array, arrayWithCapacity, columns->count);
123 $(self->
cells, removeObject, cell);
140#pragma mark - Class lifecycle
147 ((ObjectInterface *) clazz->interface)->dealloc =
dealloc;
149 ((ViewInterface *) clazz->interface)->matchesSelector =
matchesSelector;
151 ((TableRowViewInterface *) clazz->interface)->addCell =
addCell;
152 ((TableRowViewInterface *) clazz->interface)->initWithTableView =
initWithTableView;
154 ((TableRowViewInterface *) clazz->interface)->removeCell =
removeCell;
155 ((TableRowViewInterface *) clazz->interface)->setSelected =
setSelected;
167 clazz = _initialize(&(
const ClassDef) {
168 .name =
"TableRowView",
172 .interfaceSize =
sizeof(TableRowViewInterface),
static Box * initWithFrame(Box *self, const SDL_Rect *frame)
static bool isSelected(const Control *self)
static void removeSubview(View *self, View *subview)
static void addSubview(View *self, View *subview)
@ SimpleSelectorTypePseudo
Class * _TableRowView(void)
static void removeCell(TableRowView *self, TableCellView *cell)
static void addCell(TableRowView *self, TableCellView *cell)
static void setSelected(TableRowView *self, bool isSelected)
static bool matchesSelector(const View *self, const SimpleSelector *simpleSelector)
static TableRowView * initWithTableView(TableRowView *self, TableView *tableView)
static void dealloc(Object *self)
static void removeAllCells_enumerate(const Array *array, ident obj, ident data)
ArrayEnumerator to remove TableCellViews from the row.
static void initialize(Class *clazz)
static void removeAllCells(TableRowView *self)
TableViews provide sortable, tabular presentations of data.
static void invalidateStyle(View *self)
static void removeFromSuperview(View *self)
SimpleSelectorType type
The SimpleSelectorType.
char * pattern
The pattern, as provided by the user.
StackViews are containers that manage the arrangement of their subviews.
Each row in a TableView is comprised of TableCellViews.
void removeAllCells(TableRowView *self)
Removes all cells from this row.
bool isSelected
True when this row is selected, false otherwise.
TableView * tableView
The table.
TableViews provide sortable, tabular presentations of data.
Array * columns
The column definitions.
Views are the fundamental building blocks of ObjectivelyMVC user interfaces.