pub struct FormData {
pub sections: Vec<DataSection>,
pub tabs: Vec<(String, Rc<Vec<DataSection>>)>,
pub top_controls: ControlsConfig,
pub bottom_controls: ControlsConfig,
}Expand description
Used to define structure of a Form.
Example:
use vertigo_forms::form::{DataSection, FieldsetStyle, FormData};
#[derive(Clone, PartialEq)]
pub struct MyModel {
pub slug: String,
pub name: String,
pub dimension_x: String,
pub dimension_y: String,
}
impl From<&MyModel> for FormData {
fn from(value: &MyModel) -> Self {
Self::default()
.with(DataSection::with_string_field("Slug", "slug", &value.slug))
.with(DataSection::with_string_field("Name", "name", &value.name))
.with(
DataSection::with_string_field("Dimensions", "dimension_x", &value.dimension_x)
.add_string_field("dimension_y", &value.dimension_y)
.set_fieldset_style(FieldsetStyle::Dimensions),
)
}
}See story book for more examples.
Fields§
§sections: Vec<DataSection>§tabs: Vec<(String, Rc<Vec<DataSection>>)>§top_controls: ControlsConfig§bottom_controls: ControlsConfigImplementations§
Source§impl FormData
impl FormData
Sourcepub fn with(self, section: DataSection) -> Self
pub fn with(self, section: DataSection) -> Self
Add new data section (outside of tabs)
Sourcepub fn add_tab(
self,
tab_label: impl Into<String>,
sections: Vec<DataSection>,
) -> Self
pub fn add_tab( self, tab_label: impl Into<String>, sections: Vec<DataSection>, ) -> Self
Add new tab with sections
pub fn add_top_controls(self) -> Self
pub fn add_top_controls_styled(self, css: Css) -> Self
pub fn add_bottom_controls(self) -> Self
pub fn add_bottom_controls_styled(self, css: Css) -> Self
pub fn export(&self) -> FormExport
Trait Implementations§
Auto Trait Implementations§
impl Freeze for FormData
impl !RefUnwindSafe for FormData
impl !Send for FormData
impl !Sync for FormData
impl Unpin for FormData
impl !UnwindSafe for FormData
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more