ui/common/menu.c

changeset 836
5a8485ff7f54
parent 747
6aa58fed572d
child 860
7f2287ae2b78
equal deleted inserted replaced
835:a0e1ff100512 836:5a8485ff7f54
131 item->item.prev = NULL; 131 item->item.prev = NULL;
132 item->item.next = NULL; 132 item->item.next = NULL;
133 item->item.type = UI_MENU_ITEM; 133 item->item.type = UI_MENU_ITEM;
134 134
135 item->label = nl_strdup(args->label); 135 item->label = nl_strdup(args->label);
136 item->stockid = nl_strdup(args->stockid);
137 item->icon = nl_strdup(args->icon); 136 item->icon = nl_strdup(args->icon);
138 item->userdata = args->onclickdata; 137 item->userdata = args->onclickdata;
139 item->callback = args->onclick; 138 item->callback = args->onclick;
140 item->groups = uic_copy_groups(args->groups, &item->ngroups); 139 item->groups = uic_copy_groups(args->groups, &item->ngroups);
141 140
158 item->item.prev = NULL; 157 item->item.prev = NULL;
159 item->item.next = NULL; 158 item->item.next = NULL;
160 item->item.type = UI_MENU_CHECK_ITEM; 159 item->item.type = UI_MENU_CHECK_ITEM;
161 160
162 item->label = nl_strdup(args->label); 161 item->label = nl_strdup(args->label);
163 item->stockid = nl_strdup(args->stockid);
164 item->icon = nl_strdup(args->icon); 162 item->icon = nl_strdup(args->icon);
165 item->varname = nl_strdup(args->varname); 163 item->varname = nl_strdup(args->varname);
166 item->userdata = args->onchangedata; 164 item->userdata = args->onchangedata;
167 item->callback = args->onchange; 165 item->callback = args->onchange;
168 item->groups = uic_copy_groups(args->groups, &item->ngroups); 166 item->groups = uic_copy_groups(args->groups, &item->ngroups);
176 item->item.prev = NULL; 174 item->item.prev = NULL;
177 item->item.next = NULL; 175 item->item.next = NULL;
178 item->item.type = UI_MENU_RADIO_ITEM; 176 item->item.type = UI_MENU_RADIO_ITEM;
179 177
180 item->label = nl_strdup(args->label); 178 item->label = nl_strdup(args->label);
181 item->stockid = nl_strdup(args->stockid);
182 item->icon = nl_strdup(args->icon); 179 item->icon = nl_strdup(args->icon);
183 item->varname = nl_strdup(args->varname); 180 item->varname = nl_strdup(args->varname);
184 item->userdata = args->onchangedata; 181 item->userdata = args->onchangedata;
185 item->callback = args->onchange; 182 item->callback = args->onchange;
186 item->groups = uic_copy_groups(args->groups, &item->ngroups); 183 item->groups = uic_copy_groups(args->groups, &item->ngroups);
282 } 279 }
283 case UI_MENU_ITEM: { 280 case UI_MENU_ITEM: {
284 UiMenuItem *i = (UiMenuItem*)item; 281 UiMenuItem *i = (UiMenuItem*)item;
285 free(i->groups); 282 free(i->groups);
286 free(i->label); 283 free(i->label);
287 free(i->stockid);
288 free(i->icon); 284 free(i->icon);
289 break; 285 break;
290 } 286 }
291 case UI_MENU_CHECK_ITEM: { 287 case UI_MENU_CHECK_ITEM: {
292 UiMenuCheckItem *i = (UiMenuCheckItem*)item; 288 UiMenuCheckItem *i = (UiMenuCheckItem*)item;
293 free(i->groups); 289 free(i->groups);
294 free(i->label); 290 free(i->label);
295 free(i->stockid);
296 free(i->icon); 291 free(i->icon);
297 free(i->varname); 292 free(i->varname);
298 break; 293 break;
299 } 294 }
300 case UI_MENU_RADIO_ITEM: { 295 case UI_MENU_RADIO_ITEM: {
301 UiMenuRadioItem *i = (UiMenuRadioItem*)item; 296 UiMenuRadioItem *i = (UiMenuRadioItem*)item;
302 free(i->groups); 297 free(i->groups);
303 free(i->label); 298 free(i->label);
304 free(i->stockid);
305 free(i->icon); 299 free(i->icon);
306 //free(i->varname); 300 free(i->varname);
307 break; 301 break;
308 } 302 }
309 case UI_MENU_ITEM_LIST: { 303 case UI_MENU_ITEM_LIST: {
310 break; 304 break;
311 } 305 }

mercurial