Started mapping out uiTable and uiTree.
This commit is contained in:
parent
ec15e25694
commit
80b8fddbea
3
ui.h
3
ui.h
|
@ -665,6 +665,9 @@ _UI_EXTERN int uiGridPadded(uiGrid *g);
|
||||||
_UI_EXTERN void uiGridSetPadded(uiGrid *g, int padded);
|
_UI_EXTERN void uiGridSetPadded(uiGrid *g, int padded);
|
||||||
_UI_EXTERN uiGrid *uiNewGrid(void);
|
_UI_EXTERN uiGrid *uiNewGrid(void);
|
||||||
|
|
||||||
|
// TODO merge
|
||||||
|
#include "uitable.h"
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
// 20 june 2016
|
||||||
|
// kept in a separate file for now
|
||||||
|
|
||||||
|
typedef struct uiTableModel uiTableModel;
|
||||||
|
typedef struct uiTableModelHandler uiTableModelHandler;
|
||||||
|
|
||||||
|
_UI_ENUM(uiTableModelColumnType) {
|
||||||
|
uiTableModelColumnString,
|
||||||
|
};
|
||||||
|
|
||||||
|
struct uiTableModelHandler {
|
||||||
|
int (*NumColumns)(uiTableModel *);
|
||||||
|
uiTableModelColumnType (*ColumnType)(uiTableModel *, int);
|
||||||
|
int (*NumRows)(uiTableModel *);
|
||||||
|
void *(*CellValue)(uiTableModel *, int, int);
|
||||||
|
void (*SetCellValue)(uiTableModel *, int, int, void *);
|
||||||
|
};
|
||||||
|
|
||||||
|
_UI_EXTERN void *uiTableModelStrdup(const char *str);
|
||||||
|
|
||||||
|
_UI_EXTERN uiTableModel *uiNewTableModel(uiTableModelHandler *mh);
|
||||||
|
_UI_EXTERN void uiFreeTableModel(uiTableModel *m);
|
||||||
|
_UI_EXTERN void uiTableModelRowInserted(uiTableModel *m, int newIndex);
|
||||||
|
_UI_EXTERN void uiTableModelRowChanged(uiTableModel *m, int index);
|
||||||
|
_UI_EXTERN void uiTableModelRowDeleted(uiTableModel *m, int oldIndex);
|
||||||
|
|
||||||
|
typedef struct uiTableCellLayout uiTableCellLayout;
|
||||||
|
typedef struct uiTableCellPart uiTableCellPart;
|
||||||
|
|
||||||
|
_UI_EXTERN uiTableCellLayout *uiNewTableCellLayout(void);
|
||||||
|
_UI_EXTERN void uiFreeTableCellLayout(uiTableCellLayout *c);
|
||||||
|
_UI_ExTERN void uiTableCellLayoutAppend(uiTableCellLayout *c, uiTableCellPart *part, int expand);
|
||||||
|
|
||||||
|
_UI_EXTERN uiTableCellPart *uiNewTableTextPart(int modelColumn);
|
||||||
|
_UI_EXTERN void uiFreeTableCellPart(uiTableCellPart *p);
|
||||||
|
|
||||||
|
typedef struct uiTable uiTable;
|
||||||
|
#define uiTable(this) ((uiTable *) (this))
|
||||||
|
_UI_EXTERN void uiTableAppendColumn(uiTable *t, const char *name, uiTableCellLayout *layout);
|
||||||
|
_UI_EXTERN void uiTableAppendTextColumn(uiTable *t, const char *name, int modelColumn);
|
||||||
|
_UI_EXTERN uiTable *uiNewTable(uiTableModel *model);
|
Loading…
Reference in New Issue