3 #include <WINGs/WINGs.h>
4 #include "wtableview.h"
5 #include "wtabledelegates.h"
8 static char *col1
[20] = {0};
12 static char *options
[] = {
21 int numberOfRows(WMTableViewDelegate
*self
, WMTableView
*table
)
27 void *valueForCell(WMTableViewDelegate
*self
, WMTableColumn
*column
, int row
)
29 WMTableView
*table
= (WMTableView
*)WMGetTableColumnTableView(column
);
32 for (i
= 0; i
< 20; i
++) {
37 if ((int)WMGetTableColumnId(column
) == 1)
40 return (void*)col2
[row
];
44 void setValueForCell(WMTableViewDelegate
*self
, WMTableColumn
*column
, int row
,
47 if ((int)WMGetTableColumnId(column
) == 1)
50 col2
[row
] = (int)data
;
54 static WMTableViewDelegate delegate
= {
63 void clickedTable(WMWidget
*w
, void *self
)
65 int row
= WMGetTableViewClickedRow((WMTableView
*)self
);
67 WMEditTableViewRow(self
, row
);
73 main(int argc
, char **argv
)
75 Display
*dpy
= XOpenDisplay("");
80 WMTableColumnDelegate
*colDeleg
;
82 WMInitializeApplication("test", &argc
, argv
);
86 dpy
= XOpenDisplay("");
91 scr
= WMCreateScreen(dpy
, DefaultScreen(dpy
));
94 win
= WMCreateWindow(scr
, "eweq");
95 WMResizeWidget(win
, 400, 200);
98 table
= WMCreateTableView(win
);
99 WMResizeWidget(table
, 400, 200);
100 WMSetTableViewBackgroundColor(table
, WMWhiteColor(scr
));
101 // WMSetTableViewGridColor(table, WMGrayColor(scr));
102 WMSetTableViewHeaderHeight(table
, 20);
103 WMSetTableViewDelegate(table
, &delegate
);
104 WMSetTableViewAction(table
, clickedTable
, table
);
106 colDeleg
= WTCreateStringEditorDelegate(table
);
108 col
= WMCreateTableColumn("Group");
109 WMSetTableColumnWidth(col
, 180);
110 WMAddTableViewColumn(table
, col
);
111 WMSetTableColumnDelegate(col
, colDeleg
);
112 WMSetTableColumnId(col
, (void*)1);
114 colDeleg
= WTCreateEnumSelectorDelegate(table
);
115 WTSetEnumSelectorOptions(colDeleg
, options
, 5);
117 col
= WMCreateTableColumn("Package");
118 WMSetTableColumnWidth(col
, 140);
119 WMAddTableViewColumn(table
, col
);
120 WMSetTableColumnDelegate(col
, colDeleg
);
121 WMSetTableColumnId(col
, (void*)2);
123 colDeleg
= WTCreateBooleanSwitchDelegate(table
);
125 col
= WMCreateTableColumn("Bool");
126 WMSetTableColumnWidth(col
, 50);
127 WMAddTableViewColumn(table
, col
);
128 WMSetTableColumnDelegate(col
, colDeleg
);
129 WMSetTableColumnId(col
, (void*)2);
133 WMRealizeWidget(win
);
134 WMScreenMainLoop(scr
);