UI clean-up
This commit is contained in:
@@ -71,6 +71,11 @@ should_serialize :: (type: *Type_Info_Struct, member: Type_Info_Struct_Member) -
|
||||
case; return false;
|
||||
}
|
||||
}
|
||||
case "Static_Array"; #through;
|
||||
case "PArray"; #through;
|
||||
case "Stack"; #through;
|
||||
case "Queue";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -154,8 +159,8 @@ generate_member_ui :: (type: *Type_Info_Struct, builder: *String_Builder, path:
|
||||
if tag == {
|
||||
case .STRUCT; {
|
||||
info_struct := cast(*Type_Info_Struct) it.type;
|
||||
if info_struct.name == "Quaternion" {
|
||||
|
||||
if info_struct.name == "Transform" {
|
||||
print_to_builder(builder, TRANSFORM_UI);
|
||||
}
|
||||
else if info_struct.name == "Vector3" {
|
||||
print_to_builder(builder, "\tui_vector_field(tprint(\"%\"), *e.%);\n", new_path, new_path);
|
||||
@@ -183,6 +188,21 @@ generate_member_ui :: (type: *Type_Info_Struct, builder: *String_Builder, path:
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
TRANSFORM_UI :: #string DONE
|
||||
updated := ui_vector_field("Position", *e.transform.position);
|
||||
euler_rotation := quaternion_to_euler_v3(e.transform.orientation);
|
||||
euler_rotation *= RADIANS_TO_DEGREES;
|
||||
updated |= ui_vector_field("Rotation", *euler_rotation);
|
||||
euler_rotation *= DEGREES_TO_RADIANS;
|
||||
e.transform.orientation = euler_to_quaternion(euler_rotation);
|
||||
updated |= ui_vector_field("Scale", *e.transform.scale);
|
||||
|
||||
if updated {
|
||||
update_matrix(*e.transform);
|
||||
}
|
||||
DONE
|
||||
|
||||
generate_member_serialization :: (type: *Type_Info_Struct, builder: *String_Builder, path: string = "") {
|
||||
for type.members {
|
||||
if should_serialize(type, it) {
|
||||
|
||||
Reference in New Issue
Block a user