| 778 break; |
778 break; |
| 779 } |
779 } |
| 780 } |
780 } |
| 781 } |
781 } |
| 782 |
782 |
| |
783 void ui_int_add_observer(UiInteger *i, ui_callback f, void *data) { |
| |
784 i->observers = ui_add_observer(i->observers, f, data); |
| |
785 } |
| |
786 |
| |
787 void ui_double_add_observer(UiDouble *d, ui_callback f, void *data) { |
| |
788 d->observers = ui_add_observer(d->observers, f, data); |
| |
789 } |
| |
790 |
| |
791 void ui_range_add_observer(UiRange *r, ui_callback f, void *data) { |
| |
792 r->observers = ui_add_observer(r->observers, f, data); |
| |
793 } |
| |
794 |
| |
795 void ui_string_add_observer(UiString *s, ui_callback f, void *data) { |
| |
796 s->observers = ui_add_observer(s->observers, f, data); |
| |
797 } |
| |
798 |
| |
799 void ui_text_add_observer(UiText *t, ui_callback f, void *data) { |
| |
800 t->observers = ui_add_observer(t->observers, f, data); |
| |
801 } |
| |
802 |
| |
803 void ui_list_add_observer(UiList *l, ui_callback f, void *data) { |
| |
804 l->observers = ui_add_observer(l->observers, f, data); |
| |
805 } |
| |
806 |
| 783 UiInteger* ui_get_int_var(UiContext *ctx, const char *name) { |
807 UiInteger* ui_get_int_var(UiContext *ctx, const char *name) { |
| 784 UiVar *var = uic_get_var_t(ctx, name, UI_VAR_INTEGER); |
808 UiVar *var = uic_get_var_t(ctx, name, UI_VAR_INTEGER); |
| 785 return var ? var->value : NULL; |
809 return var ? var->value : NULL; |
| 786 } |
810 } |
| 787 |
811 |