Remove widgets built by methods on WidgetHolder

This commit is contained in:
Keavon Chambers
2023-07-31 23:36:12 -07:00
parent de27f2c006
commit 8e87e42f3e
21 changed files with 270 additions and 264 deletions
@@ -45,7 +45,7 @@ impl PropertyHolder for ExportDialogMessageHandler {
fn properties(&self) -> Layout {
let file_name = vec![
TextLabel::new("File Name").table_align(true).widget_holder(),
WidgetHolder::unrelated_separator(),
Separator::new(SeparatorType::Unrelated).widget_holder(),
TextInput::new(&self.file_name)
.on_update(|text_input: &TextInput| ExportDialogMessage::FileName(text_input.value.clone()).into())
.widget_holder(),
@@ -58,7 +58,7 @@ impl PropertyHolder for ExportDialogMessageHandler {
let export_type = vec![
TextLabel::new("File Type").table_align(true).widget_holder(),
WidgetHolder::unrelated_separator(),
Separator::new(SeparatorType::Unrelated).widget_holder(),
RadioInput::new(entries).selected_index(self.file_type as u32).widget_holder(),
];
@@ -76,13 +76,13 @@ impl PropertyHolder for ExportDialogMessageHandler {
let export_area = vec![
TextLabel::new("Bounds").table_align(true).widget_holder(),
WidgetHolder::unrelated_separator(),
Separator::new(SeparatorType::Unrelated).widget_holder(),
DropdownInput::new(entries).selected_index(Some(index as u32)).widget_holder(),
];
let transparent_background = vec![
TextLabel::new("Transparency").table_align(true).widget_holder(),
WidgetHolder::unrelated_separator(),
Separator::new(SeparatorType::Unrelated).widget_holder(),
CheckboxInput::new(self.transparent_background)
.disabled(self.file_type == FileType::Jpg)
.on_update(move |value: &CheckboxInput| ExportDialogMessage::TransparentBackground(value.checked).into())
@@ -91,7 +91,7 @@ impl PropertyHolder for ExportDialogMessageHandler {
let resolution = vec![
TextLabel::new("Scale Factor").table_align(true).widget_holder(),
WidgetHolder::unrelated_separator(),
Separator::new(SeparatorType::Unrelated).widget_holder(),
NumberInput::new(Some(self.scale_factor))
.unit(" ")
.min(0.)
@@ -55,7 +55,7 @@ impl PropertyHolder for NewDocumentDialogMessageHandler {
let name = vec![
TextLabel::new("Name").table_align(true).widget_holder(),
WidgetHolder::unrelated_separator(),
Separator::new(SeparatorType::Unrelated).widget_holder(),
TextInput::new(&self.name)
.on_update(|text_input: &TextInput| NewDocumentDialogMessage::Name(text_input.value.clone()).into())
.widget_holder(),
@@ -63,7 +63,7 @@ impl PropertyHolder for NewDocumentDialogMessageHandler {
let infinite = vec![
TextLabel::new("Infinite Canvas").table_align(true).widget_holder(),
WidgetHolder::unrelated_separator(),
Separator::new(SeparatorType::Unrelated).widget_holder(),
CheckboxInput::new(self.infinite)
.on_update(|checkbox_input: &CheckboxInput| NewDocumentDialogMessage::Infinite(checkbox_input.checked).into())
.widget_holder(),
@@ -71,7 +71,7 @@ impl PropertyHolder for NewDocumentDialogMessageHandler {
let scale = vec![
TextLabel::new("Dimensions").table_align(true).widget_holder(),
WidgetHolder::unrelated_separator(),
Separator::new(SeparatorType::Unrelated).widget_holder(),
NumberInput::new(Some(self.dimensions.x as f64))
.label("W")
.unit(" px")
@@ -81,7 +81,7 @@ impl PropertyHolder for NewDocumentDialogMessageHandler {
.min_width(100)
.on_update(|number_input: &NumberInput| NewDocumentDialogMessage::DimensionsX(number_input.value.unwrap()).into())
.widget_holder(),
WidgetHolder::related_separator(),
Separator::new(SeparatorType::Related).widget_holder(),
NumberInput::new(Some(self.dimensions.y as f64))
.label("H")
.unit(" px")
@@ -30,7 +30,7 @@ impl PreferencesDialogMessageHandler {
let zoom_with_scroll = vec![
TextLabel::new("Input").min_width(60).italic(true).widget_holder(),
TextLabel::new("Zoom with Scroll").table_align(true).widget_holder(),
WidgetHolder::unrelated_separator(),
Separator::new(SeparatorType::Unrelated).widget_holder(),
CheckboxInput::new(preferences.zoom_with_scroll)
.tooltip("Use the scroll wheel for zooming instead of vertically panning (not recommended for trackpads)")
.on_update(|checkbox_input: &CheckboxInput| {
@@ -45,7 +45,7 @@ impl PreferencesDialogMessageHandler {
let imaginate_server_hostname = vec![
TextLabel::new("Imaginate").min_width(60).italic(true).widget_holder(),
TextLabel::new("Server Hostname").table_align(true).widget_holder(),
WidgetHolder::unrelated_separator(),
Separator::new(SeparatorType::Unrelated).widget_holder(),
TextInput::new(&preferences.imaginate_server_hostname)
.min_width(200)
.on_update(|text_input: &TextInput| PreferencesMessage::ImaginateServerHostname { hostname: text_input.value.clone() }.into())
@@ -55,7 +55,7 @@ impl PreferencesDialogMessageHandler {
let imaginate_refresh_frequency = vec![
TextLabel::new("").min_width(60).widget_holder(),
TextLabel::new("Refresh Frequency").table_align(true).widget_holder(),
WidgetHolder::unrelated_separator(),
Separator::new(SeparatorType::Unrelated).widget_holder(),
NumberInput::new(Some(preferences.imaginate_refresh_frequency))
.unit(" seconds")
.min(0.)