UIIconButton.fromReader constructor

UIIconButton.fromReader(
  1. TeleportObjectReader reader
)

Implementation

factory UIIconButton.fromReader(TeleportObjectReader reader) {
    final instance = UIIconButton();
    TeleportField? field;
    while ((field = reader.next()) != null) {
        if (field!.isNull) continue;
        switch (field.fieldId) {
            case fieldIdElementId: {
                instance.elementId = field.asInt32();
                break;
            }
            case fieldIdLabels: {
                final ar = field.asArray();
                final list = <String>[];
                TeleportArrayElement? el;
                while ((el = ar.next()) != null) {
                    list.add(el!.asString());
                }
                instance.labels = list;
                break;
            }
            case fieldIdStyleId: {
                instance.styleId = field.asString();
                break;
            }
            case fieldIdIcon: {
                instance.icon = UIIconType.fromValue(field.asInt32());
                break;
            }
            case fieldIdColor: {
                instance.color = UIColor.fromValue(field.asInt32());
                break;
            }
            case fieldIdClickActionId: {
                instance.clickActionId = field.asString();
                break;
            }
            case fieldIdPressStartActionId: {
                instance.pressStartActionId = field.asString();
                break;
            }
            case fieldIdPressEndActionId: {
                instance.pressEndActionId = field.asString();
                break;
            }
            case fieldIdPressChangeActionId: {
                instance.pressChangeActionId = field.asString();
                break;
            }
            case fieldIdPressUpActionId: {
                instance.pressUpActionId = field.asString();
                break;
            }
            case fieldIdDragStartActionId: {
                instance.dragStartActionId = field.asString();
                break;
            }
            case fieldIdDragEnterActionId: {
                instance.dragEnterActionId = field.asString();
                break;
            }
            case fieldIdDragLeaveActionId: {
                instance.dragLeaveActionId = field.asString();
                break;
            }
            case fieldIdDragOverActionId: {
                instance.dragOverActionId = field.asString();
                break;
            }
            case fieldIdDropActionId: {
                instance.dropActionId = field.asString();
                break;
            }
            case fieldIdDragEndActionId: {
                instance.dragEndActionId = field.asString();
                break;
            }
        }
    }
    return instance;
}