#include <stdio.h>
#include <stdlib.h>
#include "text.h"
UIWIDGET ui_textarea(UiObject *obj, UiText *value) {
UiContainer *container = uic_get_current_container(obj);
UIWIDGET textarea = UItextarea(container, value ? value->value :
NULL);
if(value) {
value->get = ui_textarea_get;
value->set = ui_textarea_set;
value->getsubstr = ui_textarea_getsubstr;
value->insert = ui_textarea_insert;
value->position = ui_textarea_position;
value->selection = ui_textarea_selection;
value->length = ui_textarea_length;
value->remove = ui_textarea_remove;
value->value =
NULL;
value->obj = textarea;
if(!value->undomgr) {
}
}
return textarea;
}
UIWIDGET ui_textarea_nv(UiObject *obj,
char *varname) {
UiVar *var = uic_connect_var(obj->ctx, varname,
UI_VAR_TEXT);
if(var) {
UiText *value = var->value;
return ui_textarea(obj, value);
}
else {
}
return NULL;
}
char* ui_textarea_get(UiText *text) {
if(text->value) {
UIfreestr(text->value);
}
text->value = UItextarea_get(text->obj);
return text->value;
}
void ui_textarea_set(UiText *text,
char *str) {
if(text->value) {
UIfreestr(text->value);
text->value =
NULL;
}
UItextarea_set(text->obj, str);
}
char* ui_textarea_getsubstr(UiText *text,
int begin,
int end) {
if(text->value) {
UIfreestr(text->value);
}
text->value = UItextarea_getsubstr(text->obj, begin, end);
return text->value;
}
void ui_textarea_insert(UiText *text,
int pos,
char *str) {
if(text->value) {
UIfreestr(text->value);
text->value =
NULL;
}
UItextarea_insert(text->obj, pos, str);
}
int ui_textarea_position(UiText *text) {
return UItextarea_position(text->obj);
}
void ui_textarea_selection(UiText *text,
int *begin,
int *end) {
UItextarea_selection(text->obj, begin, end);
}
int ui_textarea_length(UiText *text) {
return UItextarea_length(text->obj);
}
void ui_textarea_remove(UiText *text,
int begin,
int end) {
if(text->value) {
UIfreestr(text->value);
text->value =
NULL;
}
UItextarea_remove(text->obj, begin, end);
}
UIWIDGET ui_textfield(UiObject *obj, UiString *value) {
UiContainer *container = uic_get_current_container(obj);
UIWIDGET textfield = UItextfield(container, value ? value->value :
NULL);
if(value) {
}
return textfield;
}
UIWIDGET ui_textfield_nv(UiObject *obj,
char *varname) {
UiVar *var = uic_connect_var(obj->ctx, varname,
UI_VAR_STRING);
if(var) {
UiString *value = var->value;
return ui_textfield(obj, value);
}
else {
}
return NULL;
}