summaryrefslogtreecommitdiffstats
path: root/wgpu/src/renderer/widget/radio.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2020-05-19 17:15:44 +0200
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2020-05-19 17:15:44 +0200
commit05af8d00d4c0f7b8e0ece85224fd90a92da86da8 (patch)
tree98e4774a2c0d4a2a0a01aff1d772f89c4cb0aa5e /wgpu/src/renderer/widget/radio.rs
parentd4743183d40c6044ce6fa39e2a52919a32912cda (diff)
downloadiced-05af8d00d4c0f7b8e0ece85224fd90a92da86da8.tar.gz
iced-05af8d00d4c0f7b8e0ece85224fd90a92da86da8.tar.bz2
iced-05af8d00d4c0f7b8e0ece85224fd90a92da86da8.zip
Draft new `iced_graphics` crate :tada:
Diffstat (limited to 'wgpu/src/renderer/widget/radio.rs')
-rw-r--r--wgpu/src/renderer/widget/radio.rs63
1 files changed, 0 insertions, 63 deletions
diff --git a/wgpu/src/renderer/widget/radio.rs b/wgpu/src/renderer/widget/radio.rs
deleted file mode 100644
index cee0deb6..00000000
--- a/wgpu/src/renderer/widget/radio.rs
+++ /dev/null
@@ -1,63 +0,0 @@
-use crate::{radio::StyleSheet, Primitive, Renderer};
-use iced_native::{mouse, radio, Background, Color, Rectangle};
-
-const SIZE: f32 = 28.0;
-const DOT_SIZE: f32 = SIZE / 2.0;
-
-impl radio::Renderer for Renderer {
- type Style = Box<dyn StyleSheet>;
-
- const DEFAULT_SIZE: u16 = SIZE as u16;
- const DEFAULT_SPACING: u16 = 15;
-
- fn draw(
- &mut self,
- bounds: Rectangle,
- is_selected: bool,
- is_mouse_over: bool,
- (label, _): Self::Output,
- style_sheet: &Self::Style,
- ) -> Self::Output {
- let style = if is_mouse_over {
- style_sheet.hovered()
- } else {
- style_sheet.active()
- };
-
- let radio = Primitive::Quad {
- bounds,
- background: style.background,
- border_radius: (SIZE / 2.0) as u16,
- border_width: style.border_width,
- border_color: style.border_color,
- };
-
- (
- Primitive::Group {
- primitives: if is_selected {
- let radio_circle = Primitive::Quad {
- bounds: Rectangle {
- x: bounds.x + DOT_SIZE / 2.0,
- y: bounds.y + DOT_SIZE / 2.0,
- width: bounds.width - DOT_SIZE,
- height: bounds.height - DOT_SIZE,
- },
- background: Background::Color(style.dot_color),
- border_radius: (DOT_SIZE / 2.0) as u16,
- border_width: 0,
- border_color: Color::TRANSPARENT,
- };
-
- vec![radio, radio_circle, label]
- } else {
- vec![radio, label]
- },
- },
- if is_mouse_over {
- mouse::Interaction::Pointer
- } else {
- mouse::Interaction::default()
- },
- )
- }
-}