remove validate_input widget
This commit is contained in:
parent
624989d039
commit
ad8f1a43cc
2 changed files with 8 additions and 24 deletions
|
|
@ -1,8 +1,7 @@
|
||||||
use cosmic::app::{Application, Command, Core, Settings};
|
use cosmic::app::{Application, Command, Core, Settings};
|
||||||
use cosmic::iced;
|
|
||||||
use cosmic::iced::executor;
|
use cosmic::iced::executor;
|
||||||
use cosmic::iced_core::Size;
|
use cosmic::iced_core::Size;
|
||||||
use cosmic::widget::{column, text_input, validate_input};
|
use cosmic::widget::{column, text_input};
|
||||||
use cosmic::Element;
|
use cosmic::Element;
|
||||||
use regex::Regex;
|
use regex::Regex;
|
||||||
|
|
||||||
|
|
@ -43,10 +42,7 @@ impl Application for Window {
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn update(
|
fn update(&mut self, message: Self::Message) -> Command<Self::Message> {
|
||||||
&mut self,
|
|
||||||
message: Self::Message,
|
|
||||||
) -> iced::Command<cosmic::app::Message<Self::Message>> {
|
|
||||||
match message {
|
match message {
|
||||||
Message::InputName(name) => self.name = name,
|
Message::InputName(name) => self.name = name,
|
||||||
Message::InputEmail(email) => self.email = email,
|
Message::InputEmail(email) => self.email = email,
|
||||||
|
|
@ -59,7 +55,8 @@ impl Application for Window {
|
||||||
let validation_condition = emailregex.is_match(&self.email);
|
let validation_condition = emailregex.is_match(&self.email);
|
||||||
|
|
||||||
let name_input = text_input("Name", &self.name).on_input(Message::InputName);
|
let name_input = text_input("Name", &self.name).on_input(Message::InputName);
|
||||||
let email_input = validate_input("E-mail", &self.email, validation_condition)
|
let email_input = text_input("E-mail", &self.email)
|
||||||
|
.validation_condition(validation_condition)
|
||||||
.on_input(Message::InputEmail);
|
.on_input(Message::InputEmail);
|
||||||
|
|
||||||
column()
|
column()
|
||||||
|
|
|
||||||
|
|
@ -160,20 +160,6 @@ where
|
||||||
.padding([spacing, spacing, spacing, spacing])
|
.padding([spacing, spacing, spacing, spacing])
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Creates a new validate input [`TextInput`].
|
|
||||||
///
|
|
||||||
/// [`TextInput`]: widget::TextInput
|
|
||||||
pub fn validate_input<'a, Message>(
|
|
||||||
placeholder: impl Into<Cow<'a, str>>,
|
|
||||||
value: impl Into<Cow<'a, str>>,
|
|
||||||
validate_condition: bool,
|
|
||||||
) -> TextInput<'a, Message>
|
|
||||||
where
|
|
||||||
Message: Clone + 'static,
|
|
||||||
{
|
|
||||||
TextInput::new(placeholder, value).validation_condition(validate_condition)
|
|
||||||
}
|
|
||||||
|
|
||||||
#[cfg(feature = "wayland")]
|
#[cfg(feature = "wayland")]
|
||||||
pub(crate) const SUPPORTED_TEXT_MIME_TYPES: &[&str; 6] = &[
|
pub(crate) const SUPPORTED_TEXT_MIME_TYPES: &[&str; 6] = &[
|
||||||
"text/plain;charset=utf-8",
|
"text/plain;charset=utf-8",
|
||||||
|
|
@ -314,7 +300,7 @@ where
|
||||||
self
|
self
|
||||||
}
|
}
|
||||||
|
|
||||||
fn validation_condition(mut self, validation_condition: bool) -> Self {
|
pub fn validation_condition(mut self, validation_condition: bool) -> Self {
|
||||||
self.is_validated = Some(validation_condition);
|
self.is_validated = Some(validation_condition);
|
||||||
self
|
self
|
||||||
}
|
}
|
||||||
|
|
@ -2054,8 +2040,9 @@ pub fn draw<'a, Message>(
|
||||||
}
|
}
|
||||||
|
|
||||||
if is_validated.is_some() {
|
if is_validated.is_some() {
|
||||||
if !is_validated.unwrap() {
|
if !is_validated.unwrap_or_default() {
|
||||||
border_color = Color::from_rgb(0.95, 0.30, 0.30);
|
border_color =
|
||||||
|
Color::from(palette::Srgb::new(0.890, 0.145, 0.420));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue