diff options
Diffstat (limited to 'winit/src/program')
-rw-r--r-- | winit/src/program/state.rs | 27 | ||||
-rw-r--r-- | winit/src/program/window_manager.rs | 13 |
2 files changed, 21 insertions, 19 deletions
diff --git a/winit/src/program/state.rs b/winit/src/program/state.rs index b8a58960..e883d04a 100644 --- a/winit/src/program/state.rs +++ b/winit/src/program/state.rs @@ -1,17 +1,18 @@ use crate::conversion; -use crate::core::{mouse, window}; +use crate::core::{mouse, theme, window}; use crate::core::{Color, Size}; use crate::graphics::Viewport; -use crate::program::{self, Program}; -use std::fmt::{Debug, Formatter}; +use crate::program::Program; use winit::event::{Touch, WindowEvent}; use winit::window::Window; +use std::fmt::{Debug, Formatter}; + /// The state of a multi-windowed [`Program`]. pub struct State<P: Program> where - P::Theme: program::DefaultStyle, + P::Theme: theme::Base, { title: String, scale_factor: f64, @@ -20,12 +21,12 @@ where cursor_position: Option<winit::dpi::PhysicalPosition<f64>>, modifiers: winit::keyboard::ModifiersState, theme: P::Theme, - appearance: program::Appearance, + style: theme::Style, } impl<P: Program> Debug for State<P> where - P::Theme: program::DefaultStyle, + P::Theme: theme::Base, { fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { f.debug_struct("multi_window::State") @@ -34,14 +35,14 @@ where .field("viewport", &self.viewport) .field("viewport_version", &self.viewport_version) .field("cursor_position", &self.cursor_position) - .field("appearance", &self.appearance) + .field("style", &self.style) .finish() } } impl<P: Program> State<P> where - P::Theme: program::DefaultStyle, + P::Theme: theme::Base, { /// Creates a new [`State`] for the provided [`Program`]'s `window`. pub fn new( @@ -52,7 +53,7 @@ where let title = application.title(window_id); let scale_factor = application.scale_factor(window_id); let theme = application.theme(window_id); - let appearance = application.style(&theme); + let style = application.style(&theme); let viewport = { let physical_size = window.inner_size(); @@ -71,7 +72,7 @@ where cursor_position: None, modifiers: winit::keyboard::ModifiersState::default(), theme, - appearance, + style, } } @@ -127,12 +128,12 @@ where /// Returns the current background [`Color`] of the [`State`]. pub fn background_color(&self) -> Color { - self.appearance.background_color + self.style.background_color } /// Returns the current text [`Color`] of the [`State`]. pub fn text_color(&self) -> Color { - self.appearance.text_color + self.style.text_color } /// Processes the provided window event and updates the [`State`] accordingly. @@ -237,6 +238,6 @@ where // Update theme and appearance self.theme = application.theme(window_id); - self.appearance = application.style(&self.theme); + self.style = application.style(&self.theme); } } diff --git a/winit/src/program/window_manager.rs b/winit/src/program/window_manager.rs index 10a973fe..451b2caf 100644 --- a/winit/src/program/window_manager.rs +++ b/winit/src/program/window_manager.rs @@ -1,9 +1,10 @@ use crate::core::mouse; +use crate::core::theme; use crate::core::time::Instant; use crate::core::window::Id; use crate::core::{Point, Size}; use crate::graphics::Compositor; -use crate::program::{DefaultStyle, Program, State}; +use crate::program::{Program, State}; use std::collections::BTreeMap; use std::sync::Arc; @@ -14,7 +15,7 @@ pub struct WindowManager<P, C> where P: Program, C: Compositor<Renderer = P::Renderer>, - P::Theme: DefaultStyle, + P::Theme: theme::Base, { aliases: BTreeMap<winit::window::WindowId, Id>, entries: BTreeMap<Id, Window<P, C>>, @@ -24,7 +25,7 @@ impl<P, C> WindowManager<P, C> where P: Program, C: Compositor<Renderer = P::Renderer>, - P::Theme: DefaultStyle, + P::Theme: theme::Base, { pub fn new() -> Self { Self { @@ -132,7 +133,7 @@ impl<P, C> Default for WindowManager<P, C> where P: Program, C: Compositor<Renderer = P::Renderer>, - P::Theme: DefaultStyle, + P::Theme: theme::Base, { fn default() -> Self { Self::new() @@ -144,7 +145,7 @@ pub struct Window<P, C> where P: Program, C: Compositor<Renderer = P::Renderer>, - P::Theme: DefaultStyle, + P::Theme: theme::Base, { pub raw: Arc<winit::window::Window>, pub state: State<P>, @@ -160,7 +161,7 @@ impl<P, C> Window<P, C> where P: Program, C: Compositor<Renderer = P::Renderer>, - P::Theme: DefaultStyle, + P::Theme: theme::Base, { pub fn position(&self) -> Option<Point> { self.raw |