void object_set_name(obj_t* object, ns_addr name, var_cont* var) { N_ASSERT(object, "object_set_name\n"); N_ASSERT(var, "object_set_name\n"); ns_set(object->names, 1, name, var); }
NIncParser* incParser_create(void* page) { NIncParser* parser = (NIncParser*)NBK_malloc0(sizeof(NIncParser)); N_ASSERT(parser); parser->page = page; return parser; }
var_cont* object_call_method(obj_t* object, ns_addr name) { N_ASSERT(object, "object_call_method\n"); var_cont* rv = NULL; return rv; }
var_cont* object_get_name(obj_t* object, ns_addr name) { N_ASSERT(object, "object_get_name\n"); var_cont* value = ns_get(object->names, 1, name); return value; }
obj_t* object_get(void* object) { N_ASSERT(object, "object_get\n"); obj_t* o = object; return o; }
void object_del(void* object) { N_ASSERT(object, "object_del\n"); obj_t* o = object; if (o->names != NULL) ns_del(o->names); free(o); }
void* var_data_alloc_OBJECT(void (*freefunc)(void*)) { N_ASSERT(freefunc, "var_data_alloc_OBJECT\n"); var_data_object* rv = (var_data_object*)malloc(sizeof(var_data_object)); M_ASSERT(rv); rv->id = 0; rv->ref = NULL; rv->objfree = freefunc; return rv; }
NAttr* attr_create(NStrPool* pool, const char** attrs) { NAttr* na; int num = attr_num(attrs); if (num == 0) return N_NULL; na = (NAttr*)NBK_malloc0(sizeof(NAttr) * (num + 1)); N_ASSERT(na); na[0].d.spool = pool; attr_parse(na, attrs); return na; }
NRenderBr* renderBr_create(void* node) { NRenderBr* r; #ifdef NBK_USE_MEMMGR r = (NRenderBr*)render_alloc(); #else r = (NRenderBr*)NBK_malloc0(sizeof(NRenderBr)); #endif N_ASSERT(r); renderNode_init(&r->d); r->d.type = RNT_BR; r->d.node = node; r->d.Layout = renderBr_layout; r->d.Paint = renderBr_paint; return r; }
NRenderImage* renderImage_create(void* node) { NRenderImage* r; #ifdef NBK_USE_MEMMGR r = (NRenderImage*)render_alloc(); #else r = (NRenderImage*)NBK_malloc0(sizeof(NRenderImage)); #endif N_ASSERT(r); renderNode_init(&r->d); r->d.type = RNT_IMAGE; r->d.node = node; r->d.Layout = renderImage_layout; r->d.Paint = renderImage_paint; r->fail = N_FALSE; r->iid = -1; return r; }
NStrBuf* strBuf_create(void) { NStrBuf* sb = (NStrBuf*)NBK_malloc0(sizeof(NStrBuf)); N_ASSERT(sb); return sb; }
NRenderInput* renderInput_create(void* node) { NRenderInput* r; #ifdef NBK_USE_MEMMGR r = (NRenderInput*)render_alloc(); #else r = (NRenderInput*)NBK_malloc0(sizeof(NRenderInput)); #endif N_ASSERT(r); renderNode_init(&r->d); r->d.type = RNT_INPUT; r->d.node = node; r->iid = -1; r->d.Layout = renderInput_layout; r->d.Paint = renderInput_paint; r->type = NEINPUT_TEXT; { char* p = attr_getValueStr(((NNode*)node)->atts, ATTID_TYPE); if (p) { if (nbk_strcmp(p, "password") == 0) r->type = NEINPUT_PASSWORD; else if (nbk_strcmp(p, "submit") == 0) r->type = NEINPUT_SUBMIT; else if (nbk_strcmp(p, "reset") == 0) r->type = NEINPUT_RESET; else if (nbk_strcmp(p, "button") == 0) r->type = NEINPUT_BUTTON; else if (nbk_strcmp(p, "image") == 0) r->type = NEINPUT_IMAGE; else if (nbk_strcmp(p, "hidden") == 0) r->type = NEINPUT_HIDDEN; else if (nbk_strcmp(p, "checkbox") == 0) r->type = NEINPUT_CHECKBOX; else if (nbk_strcmp(p, "radio") == 0) r->type = NEINPUT_RADIO; else if (nbk_strcmp(p, "file") == 0) r->type = NEINPUT_FILE; else if (nbk_strcmp(p, "go") == 0) r->type = NEINPUT_GO; } } switch (r->type) { case NEINPUT_TEXT: case NEINPUT_PASSWORD: { NNode* n = (NNode*)node; int16 maxlen = attr_getCoord(n->atts, ATTID_MAXLENGTH); char* value = attr_getValueStr(n->atts, ATTID_VALUE); char* alt = attr_getValueStr(n->atts, ATTID_ALT); r->editor = editBox_create((r->type == NEINPUT_PASSWORD) ? 1 : 0); if (maxlen != -1) editBox_setMaxLength(r->editor, maxlen); if (value) editBox_setText(r->editor, (uint8*)value, -1); if (alt) r->altU = uni_utf8_to_utf16_str((uint8*)alt, nbk_strlen(alt), N_NULL); break; } case NEINPUT_CHECKBOX: case NEINPUT_RADIO: r->checked = attr_getValueBool(((NNode*)node)->atts, ATTID_CHECKED); break; } return r; }