| 704 void ui_textfield_changed(GtkEditable *editable, UiTextField *textfield) { |
704 void ui_textfield_changed(GtkEditable *editable, UiTextField *textfield) { |
| 705 if(!ui_onchange_events_is_enabled()) { |
705 if(!ui_onchange_events_is_enabled()) { |
| 706 return; |
706 return; |
| 707 } |
707 } |
| 708 |
708 |
| 709 UiString *value = textfield->var->value; |
709 UiString *value = textfield->var ? textfield->var->value : NULL; |
| 710 |
710 |
| 711 UiEvent e; |
711 UiEvent e; |
| 712 e.obj = textfield->obj; |
712 e.obj = textfield->obj; |
| 713 e.window = e.obj->window; |
713 e.window = e.obj->window; |
| 714 e.document = textfield->obj->ctx->document; |
714 e.document = textfield->obj->ctx->document; |
| 715 e.eventdata = value; |
715 e.eventdata = value; |
| 716 e.eventdatatype = UI_EVENT_DATA_TEXT_VALUE; |
716 e.eventdatatype = value ? UI_EVENT_DATA_TEXT_VALUE : 0; |
| 717 e.intval = 0; |
717 e.intval = 0; |
| 718 e.set = ui_get_setop(); |
718 e.set = ui_get_setop(); |
| 719 |
719 |
| 720 if(textfield->onchange) { |
720 if(textfield->onchange) { |
| 721 textfield->onchange(&e, textfield->onchangedata); |
721 textfield->onchange(&e, textfield->onchangedata); |
| 726 } |
726 } |
| 727 } |
727 } |
| 728 |
728 |
| 729 void ui_textfield_activate(GtkEntry* self, UiTextField *textfield) { |
729 void ui_textfield_activate(GtkEntry* self, UiTextField *textfield) { |
| 730 if(textfield->onactivate) { |
730 if(textfield->onactivate) { |
| |
731 UiString *value = textfield->var ? textfield->var->value : NULL; |
| |
732 |
| 731 UiEvent e; |
733 UiEvent e; |
| 732 e.obj = textfield->obj; |
734 e.obj = textfield->obj; |
| 733 e.window = e.obj->window; |
735 e.window = e.obj->window; |
| 734 e.document = textfield->obj->ctx->document; |
736 e.document = textfield->obj->ctx->document; |
| 735 e.eventdata = NULL; |
737 e.eventdata = value; |
| 736 e.eventdatatype = 0; |
738 e.eventdatatype = value ? UI_EVENT_DATA_TEXT_VALUE : 0; |
| 737 e.intval = 0; |
739 e.intval = 0; |
| 738 e.set = ui_get_setop(); |
740 e.set = ui_get_setop(); |
| 739 textfield->onactivate(&e, textfield->onactivatedata); |
741 textfield->onactivate(&e, textfield->onactivatedata); |
| 740 } |
742 } |
| 741 } |
743 } |