summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--web/src/css.rs (renamed from web/src/style.rs)50
-rw-r--r--web/src/element.rs6
-rw-r--r--web/src/lib.rs10
-rw-r--r--web/src/widget.rs4
-rw-r--r--web/src/widget/button.rs10
-rw-r--r--web/src/widget/checkbox.rs4
-rw-r--r--web/src/widget/column.rs16
-rw-r--r--web/src/widget/container.rs14
-rw-r--r--web/src/widget/image.rs4
-rw-r--r--web/src/widget/radio.rs4
-rw-r--r--web/src/widget/row.rs16
-rw-r--r--web/src/widget/scrollable.rs8
-rw-r--r--web/src/widget/slider.rs4
-rw-r--r--web/src/widget/space.rs8
-rw-r--r--web/src/widget/text.rs10
-rw-r--r--web/src/widget/text_input.rs10
16 files changed, 89 insertions, 89 deletions
diff --git a/web/src/style.rs b/web/src/css.rs
index 4f72b22c..df0938da 100644
--- a/web/src/style.rs
+++ b/web/src/css.rs
@@ -3,9 +3,9 @@ use crate::{bumpalo, Align, Color, Length};
use std::collections::BTreeMap;
-/// The style of a VDOM node.
+/// A CSS rule of a VDOM node.
#[derive(Debug)]
-pub enum Style {
+pub enum Rule {
/// Container with vertical distribution
Column,
@@ -19,16 +19,16 @@ pub enum Style {
Spacing(u16),
}
-impl Style {
+impl Rule {
/// Returns the class name of the [`Style`].
///
/// [`Style`]: enum.Style.html
pub fn class<'a>(&self) -> String {
match self {
- Style::Column => String::from("c"),
- Style::Row => String::from("r"),
- Style::Padding(padding) => format!("p-{}", padding),
- Style::Spacing(spacing) => format!("s-{}", spacing),
+ Rule::Column => String::from("c"),
+ Rule::Row => String::from("r"),
+ Rule::Padding(padding) => format!("p-{}", padding),
+ Rule::Spacing(spacing) => format!("s-{}", spacing),
}
}
@@ -39,24 +39,24 @@ impl Style {
let class = self.class();
match self {
- Style::Column => {
+ Rule::Column => {
let body = "{ display: flex; flex-direction: column; }";
bumpalo::format!(in bump, ".{} {}", class, body).into_bump_str()
}
- Style::Row => {
+ Rule::Row => {
let body = "{ display: flex; flex-direction: row; }";
bumpalo::format!(in bump, ".{} {}", class, body).into_bump_str()
}
- Style::Padding(padding) => bumpalo::format!(
+ Rule::Padding(padding) => bumpalo::format!(
in bump,
".{} {{ box-sizing: border-box; padding: {}px }}",
class,
padding
)
.into_bump_str(),
- Style::Spacing(spacing) => bumpalo::format!(
+ Rule::Spacing(spacing) => bumpalo::format!(
in bump,
".c.{} > * {{ margin-bottom: {}px }} \
.r.{} > * {{ margin-right: {}px }} \
@@ -74,34 +74,34 @@ impl Style {
}
}
-/// A sheet of styles.
+/// A cascading style sheet.
#[derive(Debug)]
-pub struct Sheet<'a> {
- styles: BTreeMap<String, &'a str>,
+pub struct Css<'a> {
+ rules: BTreeMap<String, &'a str>,
}
-impl<'a> Sheet<'a> {
+impl<'a> Css<'a> {
/// Creates an empty style [`Sheet`].
///
/// [`Sheet`]: struct.Sheet.html
pub fn new() -> Self {
- Self {
- styles: BTreeMap::new(),
+ Css {
+ rules: BTreeMap::new(),
}
}
- /// Inserts the [`Style`] in the [`Sheet`], if it was not previously
+ /// Inserts the [`rule`] in the [`Sheet`], if it was not previously
/// inserted.
///
- /// It returns the class name of the provided [`Style`].
+ /// It returns the class name of the provided [`Rule`].
///
/// [`Sheet`]: struct.Sheet.html
- /// [`Style`]: enum.Style.html
- pub fn insert(&mut self, bump: &'a bumpalo::Bump, style: Style) -> String {
- let class = style.class();
+ /// [`Rule`]: enum.Rule.html
+ pub fn insert(&mut self, bump: &'a bumpalo::Bump, rule: Rule) -> String {
+ let class = rule.class();
- if !self.styles.contains_key(&class) {
- let _ = self.styles.insert(class.clone(), style.declaration(bump));
+ if !self.rules.contains_key(&class) {
+ let _ = self.rules.insert(class.clone(), rule.declaration(bump));
}
class
@@ -124,7 +124,7 @@ impl<'a> Sheet<'a> {
"button { border: none; cursor: pointer; outline: none }",
));
- for declaration in self.styles.values() {
+ for declaration in self.rules.values() {
declarations.push(text(*declaration));
}
diff --git a/web/src/element.rs b/web/src/element.rs
index 0315d7d6..93e73713 100644
--- a/web/src/element.rs
+++ b/web/src/element.rs
@@ -1,4 +1,4 @@
-use crate::{style, Bus, Color, Widget};
+use crate::{Bus, Color, Css, Widget};
use dodrio::bumpalo;
use std::rc::Rc;
@@ -57,7 +57,7 @@ impl<'a, Message> Element<'a, Message> {
&self,
bump: &'b bumpalo::Bump,
bus: &Bus<Message>,
- style_sheet: &mut style::Sheet<'b>,
+ style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
self.widget.node(bump, bus, style_sheet)
}
@@ -89,7 +89,7 @@ where
&self,
bump: &'b bumpalo::Bump,
bus: &Bus<B>,
- style_sheet: &mut style::Sheet<'b>,
+ style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
self.widget
.node(bump, &bus.map(self.mapper.clone()), style_sheet)
diff --git a/web/src/lib.rs b/web/src/lib.rs
index 0b9c0c3d..7b54a07a 100644
--- a/web/src/lib.rs
+++ b/web/src/lib.rs
@@ -63,11 +63,12 @@ mod bus;
mod element;
mod hasher;
-pub mod style;
+pub mod css;
pub mod subscription;
pub mod widget;
pub use bus::Bus;
+pub use css::Css;
pub use dodrio;
pub use element::Element;
pub use hasher::Hasher;
@@ -76,7 +77,6 @@ pub use iced_core::{
VerticalAlignment,
};
pub use iced_futures::{executor, futures, Command};
-pub use style::Style;
pub use subscription::Subscription;
#[doc(no_inline)]
@@ -241,13 +241,13 @@ where
let mut ui = self.application.borrow_mut();
let element = ui.view();
- let mut style_sheet = style::Sheet::new();
+ let mut css = Css::new();
- let node = element.widget.node(bump, &self.bus, &mut style_sheet);
+ let node = element.widget.node(bump, &self.bus, &mut css);
div(bump)
.attr("style", "width: 100%; height: 100%")
- .children(vec![style_sheet.node(bump), node])
+ .children(vec![css.node(bump), node])
.finish()
}
}
diff --git a/web/src/widget.rs b/web/src/widget.rs
index 0ac536bd..2e80346e 100644
--- a/web/src/widget.rs
+++ b/web/src/widget.rs
@@ -14,7 +14,7 @@
//! ```
//!
//! [`Widget`]: trait.Widget.html
-use crate::{style, Bus};
+use crate::{Bus, Css};
use dodrio::bumpalo;
pub mod button;
@@ -64,6 +64,6 @@ pub trait Widget<Message> {
&self,
bump: &'b bumpalo::Bump,
_bus: &Bus<Message>,
- style_sheet: &mut style::Sheet<'b>,
+ style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b>;
}
diff --git a/web/src/widget/button.rs b/web/src/widget/button.rs
index 6fef48ce..f3b3e69a 100644
--- a/web/src/widget/button.rs
+++ b/web/src/widget/button.rs
@@ -4,7 +4,7 @@
//!
//! [`Button`]: struct.Button.html
//! [`State`]: struct.State.html
-use crate::{style, Background, Bus, Element, Length, Style, Widget};
+use crate::{css, Background, Bus, Css, Element, Length, Widget};
use dodrio::bumpalo;
@@ -126,18 +126,18 @@ where
&self,
bump: &'b bumpalo::Bump,
bus: &Bus<Message>,
- style_sheet: &mut style::Sheet<'b>,
+ style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
- let width = style::length(self.width);
+ let width = css::length(self.width);
let padding_class =
- style_sheet.insert(bump, Style::Padding(self.padding));
+ style_sheet.insert(bump, css::Rule::Padding(self.padding));
let background = match self.background {
None => String::from("none"),
Some(background) => match background {
- Background::Color(color) => style::color(color),
+ Background::Color(color) => css::color(color),
},
};
diff --git a/web/src/widget/checkbox.rs b/web/src/widget/checkbox.rs
index 1e864875..d1d30048 100644
--- a/web/src/widget/checkbox.rs
+++ b/web/src/widget/checkbox.rs
@@ -1,4 +1,4 @@
-use crate::{style, Bus, Color, Element, Widget};
+use crate::{Bus, Color, Css, Element, Widget};
use dodrio::bumpalo;
use std::rc::Rc;
@@ -68,7 +68,7 @@ where
&self,
bump: &'b bumpalo::Bump,
bus: &Bus<Message>,
- _style_sheet: &mut style::Sheet<'b>,
+ _style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
diff --git a/web/src/widget/column.rs b/web/src/widget/column.rs
index 9aa988ff..8e36231a 100644
--- a/web/src/widget/column.rs
+++ b/web/src/widget/column.rs
@@ -1,4 +1,4 @@
-use crate::{style, Align, Bus, Element, Length, Style, Widget};
+use crate::{css, Align, Bus, Css, Element, Length, Widget};
use dodrio::bumpalo;
use std::u32;
@@ -112,7 +112,7 @@ impl<'a, Message> Widget<Message> for Column<'a, Message> {
&self,
bump: &'b bumpalo::Bump,
publish: &Bus<Message>,
- style_sheet: &mut style::Sheet<'b>,
+ style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
@@ -122,18 +122,18 @@ impl<'a, Message> Widget<Message> for Column<'a, Message> {
.map(|element| element.widget.node(bump, publish, style_sheet))
.collect();
- let column_class = style_sheet.insert(bump, Style::Column);
+ let column_class = style_sheet.insert(bump, css::Rule::Column);
let spacing_class =
- style_sheet.insert(bump, Style::Spacing(self.spacing));
+ style_sheet.insert(bump, css::Rule::Spacing(self.spacing));
let padding_class =
- style_sheet.insert(bump, Style::Padding(self.padding));
+ style_sheet.insert(bump, css::Rule::Padding(self.padding));
- let width = style::length(self.width);
- let height = style::length(self.height);
+ let width = css::length(self.width);
+ let height = css::length(self.height);
- let align_items = style::align(self.align_items);
+ let align_items = css::align(self.align_items);
// TODO: Complete styling
div(bump)
diff --git a/web/src/widget/container.rs b/web/src/widget/container.rs
index bdc88979..55995795 100644
--- a/web/src/widget/container.rs
+++ b/web/src/widget/container.rs
@@ -1,4 +1,4 @@
-use crate::{bumpalo, style, Align, Bus, Element, Length, Style, Widget};
+use crate::{bumpalo, css, Align, Bus, Css, Element, Length, Widget};
/// An element decorating some content.
///
@@ -94,17 +94,17 @@ where
&self,
bump: &'b bumpalo::Bump,
bus: &Bus<Message>,
- style_sheet: &mut style::Sheet<'b>,
+ style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
- let column_class = style_sheet.insert(bump, Style::Column);
+ let column_class = style_sheet.insert(bump, css::Rule::Column);
- let width = style::length(self.width);
- let height = style::length(self.height);
+ let width = css::length(self.width);
+ let height = css::length(self.height);
- let align_items = style::align(self.horizontal_alignment);
- let justify_content = style::align(self.vertical_alignment);
+ let align_items = css::align(self.horizontal_alignment);
+ let justify_content = css::align(self.vertical_alignment);
let node = div(bump)
.attr(
diff --git a/web/src/widget/image.rs b/web/src/widget/image.rs
index 413b663e..17e9b0f7 100644
--- a/web/src/widget/image.rs
+++ b/web/src/widget/image.rs
@@ -1,4 +1,4 @@
-use crate::{style, Bus, Element, Length, Widget};
+use crate::{Bus, Css, Element, Length, Widget};
use dodrio::bumpalo;
@@ -57,7 +57,7 @@ impl<Message> Widget<Message> for Image {
&self,
bump: &'b bumpalo::Bump,
_bus: &Bus<Message>,
- _style_sheet: &mut style::Sheet<'b>,
+ _style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
diff --git a/web/src/widget/radio.rs b/web/src/widget/radio.rs
index 6dd0ad45..4570639c 100644
--- a/web/src/widget/radio.rs
+++ b/web/src/widget/radio.rs
@@ -1,4 +1,4 @@
-use crate::{style, Bus, Color, Element, Widget};
+use crate::{Bus, Color, Css, Element, Widget};
use dodrio::bumpalo;
@@ -76,7 +76,7 @@ where
&self,
bump: &'b bumpalo::Bump,
bus: &Bus<Message>,
- _style_sheet: &mut style::Sheet<'b>,
+ _style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
diff --git a/web/src/widget/row.rs b/web/src/widget/row.rs
index c26cb91b..6e184cab 100644
--- a/web/src/widget/row.rs
+++ b/web/src/widget/row.rs
@@ -1,4 +1,4 @@
-use crate::{style, Align, Bus, Element, Length, Style, Widget};
+use crate::{css, Align, Bus, Css, Element, Length, Widget};
use dodrio::bumpalo;
use std::u32;
@@ -113,7 +113,7 @@ impl<'a, Message> Widget<Message> for Row<'a, Message> {
&self,
bump: &'b bumpalo::Bump,
publish: &Bus<Message>,
- style_sheet: &mut style::Sheet<'b>,
+ style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
@@ -123,18 +123,18 @@ impl<'a, Message> Widget<Message> for Row<'a, Message> {
.map(|element| element.widget.node(bump, publish, style_sheet))
.collect();
- let row_class = style_sheet.insert(bump, Style::Row);
+ let row_class = style_sheet.insert(bump, css::Rule::Row);
let spacing_class =
- style_sheet.insert(bump, Style::Spacing(self.spacing));
+ style_sheet.insert(bump, css::Rule::Spacing(self.spacing));
let padding_class =
- style_sheet.insert(bump, Style::Padding(self.padding));
+ style_sheet.insert(bump, css::Rule::Padding(self.padding));
- let width = style::length(self.width);
- let height = style::length(self.height);
+ let width = css::length(self.width);
+ let height = css::length(self.height);
- let justify_content = style::align(self.align_items);
+ let justify_content = css::align(self.align_items);
// TODO: Complete styling
div(bump)
diff --git a/web/src/widget/scrollable.rs b/web/src/widget/scrollable.rs
index f146e007..19810531 100644
--- a/web/src/widget/scrollable.rs
+++ b/web/src/widget/scrollable.rs
@@ -1,5 +1,5 @@
//! Navigate an endless amount of content with a scrollbar.
-use crate::{bumpalo, style, Align, Bus, Column, Element, Length, Widget};
+use crate::{bumpalo, css, Align, Bus, Column, Css, Element, Length, Widget};
/// A widget that can vertically display an infinite amount of content with a
/// scrollbar.
@@ -105,12 +105,12 @@ where
&self,
bump: &'b bumpalo::Bump,
bus: &Bus<Message>,
- style_sheet: &mut style::Sheet<'b>,
+ style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
- let width = style::length(self.width);
- let height = style::length(self.height);
+ let width = css::length(self.width);
+ let height = css::length(self.height);
let node = div(bump)
.attr(
diff --git a/web/src/widget/slider.rs b/web/src/widget/slider.rs
index 25c57933..843003e6 100644
--- a/web/src/widget/slider.rs
+++ b/web/src/widget/slider.rs
@@ -4,7 +4,7 @@
//!
//! [`Slider`]: struct.Slider.html
//! [`State`]: struct.State.html
-use crate::{style, Bus, Element, Length, Widget};
+use crate::{Bus, Css, Element, Length, Widget};
use dodrio::bumpalo;
use std::{ops::RangeInclusive, rc::Rc};
@@ -88,7 +88,7 @@ where
&self,
bump: &'b bumpalo::Bump,
bus: &Bus<Message>,
- _style_sheet: &mut style::Sheet<'b>,
+ _style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
use wasm_bindgen::JsCast;
diff --git a/web/src/widget/space.rs b/web/src/widget/space.rs
index baf4c80b..4ce52595 100644
--- a/web/src/widget/space.rs
+++ b/web/src/widget/space.rs
@@ -1,4 +1,4 @@
-use crate::{style, Bus, Element, Length, Widget};
+use crate::{css, Bus, Css, Element, Length, Widget};
use dodrio::bumpalo;
/// An amount of empty space.
@@ -44,12 +44,12 @@ impl<'a, Message> Widget<Message> for Space {
&self,
bump: &'b bumpalo::Bump,
_publish: &Bus<Message>,
- _style_sheet: &mut style::Sheet<'b>,
+ _css: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
- let width = style::length(self.width);
- let height = style::length(self.height);
+ let width = css::length(self.width);
+ let height = css::length(self.height);
let style = bumpalo::format!(
in bump,
diff --git a/web/src/widget/text.rs b/web/src/widget/text.rs
index 5b0bee55..c5b07747 100644
--- a/web/src/widget/text.rs
+++ b/web/src/widget/text.rs
@@ -1,5 +1,5 @@
use crate::{
- style, Bus, Color, Element, Font, HorizontalAlignment, Length,
+ css, Bus, Color, Css, Element, Font, HorizontalAlignment, Length,
VerticalAlignment, Widget,
};
use dodrio::bumpalo;
@@ -112,15 +112,15 @@ impl<'a, Message> Widget<Message> for Text {
&self,
bump: &'b bumpalo::Bump,
_publish: &Bus<Message>,
- _style_sheet: &mut style::Sheet<'b>,
+ _style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
let content = bumpalo::format!(in bump, "{}", self.content);
- let color = style::color(self.color.unwrap_or(Color::BLACK));
+ let color = css::color(self.color.unwrap_or(Color::BLACK));
- let width = style::length(self.width);
- let height = style::length(self.height);
+ let width = css::length(self.width);
+ let height = css::length(self.height);
let text_align = match self.horizontal_alignment {
HorizontalAlignment::Left => "left",
diff --git a/web/src/widget/text_input.rs b/web/src/widget/text_input.rs
index 078e05b2..1fea787a 100644
--- a/web/src/widget/text_input.rs
+++ b/web/src/widget/text_input.rs
@@ -4,7 +4,7 @@
//!
//! [`TextInput`]: struct.TextInput.html
//! [`State`]: struct.State.html
-use crate::{bumpalo, style, Bus, Element, Length, Style, Widget};
+use crate::{bumpalo, css, Bus, Css, Element, Length, Widget};
use std::rc::Rc;
/// A field that can be filled with text.
@@ -133,15 +133,15 @@ where
&self,
bump: &'b bumpalo::Bump,
bus: &Bus<Message>,
- style_sheet: &mut style::Sheet<'b>,
+ style_sheet: &mut Css<'b>,
) -> dodrio::Node<'b> {
use dodrio::builder::*;
use wasm_bindgen::JsCast;
- let width = style::length(self.width);
- let max_width = style::length(self.max_width);
+ let width = css::length(self.width);
+ let max_width = css::length(self.max_width);
let padding_class =
- style_sheet.insert(bump, Style::Padding(self.padding));
+ style_sheet.insert(bump, css::Rule::Padding(self.padding));
let on_change = self.on_change.clone();
let event_bus = bus.clone();