| 361 } |
361 } |
| 362 |
362 |
| 363 |
363 |
| 364 /* --------------------------- SourceList --------------------------- */ |
364 /* --------------------------- SourceList --------------------------- */ |
| 365 |
365 |
| |
366 static ui_sourcelist_update_func sclist_update_callback = NULL; |
| |
367 |
| |
368 void ui_sourcelist_set_update_callback(ui_sourcelist_update_func cb) { |
| |
369 sclist_update_callback = cb; |
| |
370 } |
| |
371 |
| |
372 void ui_sourcelist_updated(void) { |
| |
373 if(sclist_update_callback) { |
| |
374 sclist_update_callback(); |
| |
375 } |
| |
376 } |
| |
377 |
| 366 static void sublist_free(const CxAllocator *a, UiSubList *sl) { |
378 static void sublist_free(const CxAllocator *a, UiSubList *sl) { |
| 367 cxFree(a, (char*)sl->varname); |
379 cxFree(a, (char*)sl->varname); |
| 368 cxFree(a, (char*)sl->header); |
380 cxFree(a, (char*)sl->header); |
| 369 } |
381 } |
| 370 |
382 |