static int setArrayPropertyByName(Ejs *ejs, EjsArray *ap, EjsName qname, EjsObj *value) { int slotNum; if (!isdigit((uchar) qname.name->value[0])) { /* The "length" property is a method getter */ if (qname.name == ESV(length)) { setArrayLength(ejs, ap, 1, &value); return ES_Array_length; } slotNum = (ejs->service->potHelpers.lookupProperty)(ejs, ap, qname); if (slotNum < 0) { slotNum = (ejs->service->potHelpers.setProperty)(ejs, ap, slotNum, value); if (slotNum < 0) { return EJS_ERR; } if ((ejs->service->potHelpers.setPropertyName)(ejs, ap, slotNum, qname) < 0) { return EJS_ERR; } return slotNum; } else { return (ejs->service->potHelpers.setProperty)(ejs, ap, slotNum, value); } } if ((slotNum = checkSlot(ejs, ap, ejsAtoi(ejs, qname.name, 10))) < 0) { return EJS_ERR; } ap->data[slotNum] = value; return slotNum; }
void MetaModelicaArrayValue::setChildrenSize(QString size) { setArrayLength(size.toInt()); mpLocalsTreeItem->setDisplayValue(getValueString()); }