File: wtableview.h

package info (click to toggle)
wmaker 0.96.0-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 15,332 kB
  • sloc: ansic: 99,482; sh: 7,068; perl: 3,423; makefile: 1,647; lisp: 219; python: 34
file content (121 lines) | stat: -rw-r--r-- 3,481 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121



#ifndef _WTABLEVIEW_H_
#define _WTABLEVIEW_H_

#ifdef __cplusplus
extern "C" {
#endif

typedef struct W_TableColumn WMTableColumn;
typedef struct W_TableView WMTableView;


extern const char *WMTableViewSelectionDidChangeNotification;


typedef struct WMTableColumnDelegate {
    void *data;
    void (*drawCell)(struct WMTableColumnDelegate *self,
                     WMTableColumn *column, int row, Drawable d);
    void (*drawSelectedCell)(struct WMTableColumnDelegate *self,
                             WMTableColumn *column, int row, Drawable d);

    void (*beginCellEdit)(struct WMTableColumnDelegate *self, WMTableColumn *column,
                          int row);
    void (*endCellEdit)(struct WMTableColumnDelegate *self, WMTableColumn *column,
                        int row);
} WMTableColumnDelegate;


typedef struct W_TableViewDelegate {
    void *data;
    int (*numberOfRows)(struct W_TableViewDelegate *self,
                        WMTableView *table);
    void *(*valueForCell)(struct W_TableViewDelegate *self,
                          WMTableColumn *column, int row);
    void (*setValueForCell)(struct W_TableViewDelegate *self,
                            WMTableColumn *column, int row, void *value);
} WMTableViewDelegate;





WMTableColumn *WMCreateTableColumn(char *title);

void WMSetTableColumnWidth(WMTableColumn *column, unsigned width);

void WMSetTableColumnConstraints(WMTableColumn *column,
                                 unsigned minWidth, unsigned maxWidth);

void WMSetTableColumnDelegate(WMTableColumn *column,
                              WMTableColumnDelegate *delegate);


WMTableView *WMGetTableColumnTableView(WMTableColumn *column);

void WMSetTableColumnId(WMTableColumn *column, void *id);

void *WMGetTableColumnId(WMTableColumn *column);


WMTableView *WMCreateTableView(WMWidget *parent);


void WMSetTableViewDataSource(WMTableView *table, void *source);

void *WMGetTableViewDataSource(WMTableView *table);

void WMSetTableViewHeaderHeight(WMTableView *table, unsigned height);

void WMAddTableViewColumn(WMTableView *table, WMTableColumn *column);

void WMSetTableViewDelegate(WMTableView *table, WMTableViewDelegate *delegate);

void WMSetTableViewAction(WMTableView *table, WMAction *action,
                          void *clientData);

void *WMGetTableViewClickedColumn(WMTableView *table);

int WMGetTableViewClickedRow(WMTableView *table);

WMArray *WMGetTableViewSelectedRows(WMTableView *table);

WMView *WMGetTableViewDocumentView(WMTableView *table);

void WMEditTableViewRow(WMTableView *table, int row);

void WMSelectTableViewRow(WMTableView *table, int row);

void *WMTableViewDataForCell(WMTableView *table, WMTableColumn *column,
                             int row);

void WMSetTableViewDataForCell(WMTableView *table, WMTableColumn *column,
                               int row, void *data);

WMRect WMTableViewRectForCell(WMTableView *table, WMTableColumn *column,
                              int row);

void WMSetTableViewBackgroundColor(WMTableView *table, WMColor *color);

void WMSetTableViewGridColor(WMTableView *table, WMColor *color);

void WMSetTableViewRowHeight(WMTableView *table, int height);

void WMReloadTableView(WMTableView *table);

void WMNoteTableViewNumberOfRowsChanged(WMTableView *table);

void WMScrollTableViewRowToVisible(WMTableView *table, int row);

void WMSetTableViewHasHorizontalScroller(WMTableView *tPtr, Bool flag);


#ifdef __cplusplus
}
#endif

#endif