diff options
| author | Polesznyák Márk <contact@pml68.dev> | 2025-09-25 19:56:19 +0200 |
|---|---|---|
| committer | Polesznyák Márk <contact@pml68.dev> | 2025-09-25 19:56:19 +0200 |
| commit | a17a972276569722a4979dfe9a304740beb96c1b (patch) | |
| tree | ba172670ff7502a635c35623687d569ead53fccf /src | |
| parent | fix(ci): wrong dirname (diff) | |
| download | iced-builder-a17a972276569722a4979dfe9a304740beb96c1b.tar.gz | |
chore: get rid of `Widget::new()` constructor uses
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.rs | 28 | ||||
| -rw-r--r-- | src/panes/element_list.rs | 27 |
2 files changed, 24 insertions, 31 deletions
diff --git a/src/main.rs b/src/main.rs index c6812b1..d04183a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -20,7 +20,7 @@ use config::Config; use dialog::{Dialog, UnsavedChanges}; use error::Error; use iced::advanced::widget::Id; -use iced::widget::{Column, container, pane_grid, pick_list, row, text_editor}; +use iced::widget::{column, container, pane_grid, pick_list, row, text_editor}; use iced::{ Alignment, Length, Subscription, Task, clipboard, keyboard, window, }; @@ -498,9 +498,8 @@ impl IcedBuilder { |theme| Message::SwitchTheme(theme.into()) )] .width(200); - let pane_grid = pane_grid::PaneGrid::new( - &self.pane_state, - |id, pane, _is_maximized| { + let pane_grid = + pane_grid(&self.pane_state, |id, pane, _is_maximized| { let is_focused = Some(id) == self.focus; match pane { Panes::Designer => match &self.designer_page { @@ -515,18 +514,15 @@ impl IcedBuilder { }, Panes::ElementList => element_list::view(is_focused), } - }, - ) - .width(Length::Fill) - .height(Length::Fill) - .spacing(10) - .on_resize(10, Message::PaneResized) - .on_click(Message::PaneClicked) - .on_drag(Message::PaneDragged); - - let base = Column::new() - .push(header) - .push(pane_grid) + }) + .width(Length::Fill) + .height(Length::Fill) + .spacing(10) + .on_resize(10, Message::PaneResized) + .on_click(Message::PaneClicked) + .on_drag(Message::PaneDragged); + + let base = column![header, pane_grid] .spacing(5) .align_x(Alignment::Center) .width(Length::Fill); diff --git a/src/panes/element_list.rs b/src/panes/element_list.rs index b18c275..137405e 100644 --- a/src/panes/element_list.rs +++ b/src/panes/element_list.rs @@ -1,4 +1,4 @@ -use iced::widget::{Column, column, container, pane_grid, text}; +use iced::widget::{column, container, pane_grid, text}; use iced::{Alignment, Length}; use iced_drop::droppable; use iced_material::Theme; @@ -7,20 +7,17 @@ use super::style; use crate::types::{Element, ElementName, Message}; fn items_list_view<'a>() -> Element<'a, Message> { - let mut column = Column::new() - .spacing(20) - .align_x(Alignment::Center) - .width(Length::Fill); - - for item in ElementName::ALL { - column = column.push( - droppable(text(item.clone().to_string())) - .drag_center(true) - .on_drop(|point, rect| { - Message::DropNewElement(item.clone(), point, rect) - }), - ); - } + let column = column(ElementName::ALL.iter().map(|item| { + droppable(text(item.to_string())) + .drag_center(true) + .on_drop(|point, rect| { + Message::DropNewElement(item.clone(), point, rect) + }) + .into() + })) + .spacing(20) + .align_x(Alignment::Center) + .width(Length::Fill); container(column) .width(Length::Fill) |
