This commit is contained in:
2023-05-06 00:34:04 +02:00
parent 2d3dfe3ae4
commit b16f76bcec
3 changed files with 92 additions and 13 deletions

View File

@@ -6,13 +6,16 @@ pub enum UiTag {
Menu(UiMenu),
Image(UiImage),
TextButton(UiTextButton),
TextArea(UiTextArea),
StaticText(UiStaticText),
ToggleButton(UiToggleButton),
}
#[derive(Debug, Deserialize)]
pub struct UiMenu {
pub selected: String,
#[serde(rename = "OnBack")]
pub on_back: String,
pub on_back: Option<String>,
#[serde(rename = "$value")]
pub children: Vec<UiTag>,
}
@@ -42,10 +45,59 @@ pub struct UiTextButton {
pub on_select: String,
}
#[derive(Debug, Deserialize)]
pub struct UiTextArea {
#[serde(deserialize_with = "deserialize_vec2")]
pub position: [i32; 2],
#[serde(deserialize_with = "deserialize_vec2")]
pub size: [i32; 2],
#[serde(rename = "$value")]
pub children: Vec<UiTag>,
}
#[derive(Debug, Deserialize)]
pub struct UiStaticText {
pub text: String,
#[serde(deserialize_with = "deserialize_vec2")]
pub position: [i32; 2],
#[serde(rename = "halign")]
pub horizontal_align: HorizontalAlign,
#[serde(rename = "fademode")]
pub fade_mode: FadeMode,
}
#[derive(Debug, Deserialize)]
pub struct UiToggleButton {
pub name: Option<String>,
pub text: String,
#[serde(deserialize_with = "deserialize_vec2")]
pub position: [i32; 2],
pub value: String,
#[serde(rename = "minValue")]
pub min_value: i32,
#[serde(rename = "maxValue")]
pub max_value: i32,
#[serde(rename = "valueStep")]
pub value_step: i32,
pub target: String,
#[serde(rename = "targetLOffset", deserialize_with = "deserialize_vec2")]
pub target_l_offset: [i32; 2],
#[serde(rename = "targetROffset", deserialize_with = "deserialize_vec2")]
pub target_r_offset: [i32; 2],
#[serde(rename = "noSound")]
pub no_sound: Option<bool>,
#[serde(rename = "OnChange")]
pub on_change: String,
#[serde(rename = "OnSelect")]
pub on_select: String,
}
#[derive(Debug, Deserialize)]
#[serde(rename_all = "lowercase")]
pub enum HorizontalAlign {
Left,
Center,
Right,
}
#[derive(Debug, Deserialize)]