rename FrameRect to RectFrame

This commit is contained in:
griffi-gh 2024-04-17 15:57:46 +02:00
parent 44b8beaa94
commit d82eb2eeb1
15 changed files with 61 additions and 61 deletions

View file

@ -32,7 +32,7 @@
.with_align(Alignment::Center)
.with_padding(5.)
.with_gap(10.)
.with_background(frame_rect! {
.with_background(rect_frame! {
color: (0.5, 0.5, 0.5, 1.),
corner_radius: 10.,
})
@ -44,7 +44,7 @@
.add_child(ui);
Container::default()
.with_padding((10., 20.))
.with_background(frame_rect! {
.with_background(rect_frame! {
color: color::DARK_RED,
corner_radius: (2.5, 30., 2.5, 2.5),
})

View file

@ -10,7 +10,7 @@ use winit::{
use hui::{
element::{
container::Container, frame_view::FrameView, progress_bar::ProgressBar, ElementList, UiElement
}, frame::FrameRect, layout::{Alignment, Direction, Size}, rect::{Corners, Sides}, UiInstance
}, frame::RectFrame, layout::{Alignment, Direction, Size}, rect::{Corners, Sides}, UiInstance
};
use hui_glium::GliumUiRenderer;
@ -92,7 +92,7 @@ fn main() {
Box::new(Container {
gap: 5.,
padding: Sides::all(5.),
background_frame: Box::new(FrameRect::color(vec4(0., 0., 0., 0.5))),
background_frame: Box::new(RectFrame::color(vec4(0., 0., 0., 0.5))),
direction: Direction::Horizontal,
children: {
let mut x: Vec<Box<dyn UiElement>> = vec![];
@ -111,7 +111,7 @@ fn main() {
..Default::default()
}),
Box::new(Container {
background_frame: Box::new(FrameRect::color((1., 0., 0.)).with_corner_radius(Corners {
background_frame: Box::new(RectFrame::color((1., 0., 0.)).with_corner_radius(Corners {
top_left: 0.,
top_right: 30.,
bottom_left: 0.,

View file

@ -5,7 +5,7 @@ use hui::{
progress_bar::ProgressBar,
text::Text,
UiElementExt,
}, frame::FrameRect, frame_rect, layout::{Alignment, Direction}, size
}, frame::RectFrame, rect_frame, layout::{Alignment, Direction}, size
};
#[path = "../boilerplate.rs"]
@ -31,7 +31,7 @@ ui_main!{
.with_gap(5.)
.with_padding(10.)
.with_size(size!(450, auto))
.with_background(frame_rect! {
.with_background(rect_frame! {
color: (0.2, 0.2, 0.5),
corner_radius: 8.
})
@ -43,11 +43,11 @@ ui_main!{
.add_child(ui);
ProgressBar::default()
.with_value(mom_ratio)
.with_background(frame_rect! {
.with_background(rect_frame! {
color: color::BLACK,
corner_radius: 0.125 * ProgressBar::DEFAULT_HEIGHT
})
.with_foreground(frame_rect! {
.with_foreground(rect_frame! {
color: color::BLUE,
corner_radius: 0.125 * ProgressBar::DEFAULT_HEIGHT
})

View file

@ -10,7 +10,7 @@ use winit::{
use hui::{
element::{
container::Container, frame_view::FrameView, spacer::Spacer, text::Text, ElementList
}, frame::FrameRect, layout::Size, UiInstance
}, frame::RectFrame, layout::Size, UiInstance
};
use hui_glium::GliumUiRenderer;
@ -49,7 +49,7 @@ fn main() {
hui.add(Container {
size: (Size::Relative(1.), Size::Relative(1.)).into(),
background_frame: Box::new(FrameRect::color((0.1, 0.1, 0.1, 1.))),
background_frame: Box::new(RectFrame::color((0.1, 0.1, 0.1, 1.))),
children: elements(|elem| {
elem.push(Box::new(Text {
text: "THIS LINE SHOULD BE SHARP!".into(),

View file

@ -1,7 +1,7 @@
use hui::{
color, size, frame_rect,
color, size, rect_frame,
element::{container::Container, text::Text, UiElementExt},
frame::FrameRect,
frame::RectFrame,
layout::Alignment,
};
@ -15,7 +15,7 @@ ui_main!(|ui, size, _| {
.with_align(Alignment::Center)
.with_padding(5.)
.with_gap(10.)
.with_background(frame_rect! {
.with_background(rect_frame! {
color: (0.5, 0.5, 0.5, 1.),
corner_radius: 10.,
})
@ -27,7 +27,7 @@ ui_main!(|ui, size, _| {
.add_child(ui);
Container::default()
.with_padding((10., 20.))
.with_background(frame_rect! {
.with_background(rect_frame! {
color: color::DARK_RED,
corner_radius: (2.5, 30., 2.5, 2.5),
})

View file

@ -1,6 +1,6 @@
use glam::vec4;
use hui::{
size, frame_rect,
size, rect_frame,
color,
element::{
container::Container,
@ -8,7 +8,7 @@ use hui::{
text::Text,
UiElementExt
},
frame::FrameRect,
frame::RectFrame,
layout::Alignment,
rect::Corners,
text::FontHandle
@ -45,7 +45,7 @@ ui_main!(
.with_children(|ui| {
Container::default()
.with_padding((10., 15.))
.with_background(frame_rect! {
.with_background(rect_frame! {
color: (0., 0., 0., 0.5),
corner_radius: 8.,
})
@ -70,7 +70,7 @@ ui_main!(
.with_align((Alignment::Center, Alignment::Begin))
.with_padding(15.)
.with_gap(10.)
.with_background(frame_rect! {
.with_background(rect_frame! {
color: (0., 0., 0., 0.5),
corner_radius: 8.,
})
@ -111,7 +111,7 @@ ui_main!(
.with_children(|ui| {
Container::default()
.with_padding(10.)
.with_background(frame_rect!{
.with_background(rect_frame!{
color: (0., 0., 0., 0.5),
corner_radius: 8.,
})

View file

@ -7,7 +7,7 @@ use hui::{
text::Text,
transformer::ElementTransformExt,
UiElementExt
}, frame::FrameRect, frame_rect, layout::Alignment, rect::Corners, size, text::FontHandle
}, frame::RectFrame, rect_frame, layout::Alignment, rect::Corners, size, text::FontHandle
};
#[path = "../boilerplate.rs"]
@ -37,7 +37,7 @@ ui_main!(
.with_align((Alignment::Center, Alignment::Begin))
.with_padding(15.)
.with_gap(10.)
.with_background(frame_rect! {
.with_background(rect_frame! {
color: (0., 0., 0., 0.5),
corner_radius: 8.
})

View file

@ -4,7 +4,7 @@ use hui::{
container::Container,
frame_view::FrameView,
UiElementExt
}, frame_rect, layout::{Alignment, Direction}, size
}, rect_frame, layout::{Alignment, Direction}, size
};
#[path = "../boilerplate.rs"]
@ -30,7 +30,7 @@ ui_main!(
for i in 0..10 {
FrameView::default()
.with_size(size!((40 + i * 10)))
.with_frame(frame_rect! {
.with_frame(rect_frame! {
color: color::DARK_RED,
corner_radius: 8.
})

View file

@ -4,7 +4,7 @@ use derive_setters::Setters;
use glam::{Vec2, vec2};
use crate::{
element::{ElementList, MeasureContext, ProcessContext, UiElement},
frame::{Frame, FrameRect},
frame::{Frame, RectFrame},
layout::{compute_size, Alignment, Alignment2d, Direction, LayoutInfo, Size, Size2d, WrapBehavior},
measure::{Hints, Response},
rect::Sides,
@ -82,7 +82,7 @@ impl Default for Container {
gap: 0.,
padding: Sides::all(0.),
align: Alignment2d::default(),
background_frame: Box::<FrameRect>::default(),
background_frame: Box::<RectFrame>::default(),
wrap: WrapBehavior::Allow,
children: ElementList(Vec::new()),
}

View file

@ -3,7 +3,7 @@
use derive_setters::Setters;
use crate::{
element::{MeasureContext, ProcessContext, UiElement},
frame::{Frame, FrameRect},
frame::{Frame, RectFrame},
layout::{compute_size, Size2d},
measure::Response,
size
@ -41,7 +41,7 @@ impl Default for FrameView {
fn default() -> Self {
Self {
size: size!(10, 10),
frame: Box::new(FrameRect::color((0., 0., 0., 0.5))),
frame: Box::new(RectFrame::color((0., 0., 0., 0.5))),
}
}
}

View file

@ -2,7 +2,7 @@ use derive_setters::Setters;
use glam::vec2;
use crate::{
element::{MeasureContext, ProcessContext, UiElement},
frame::{Frame, FrameRect},
frame::{Frame, RectFrame},
layout::{compute_size, Size, Size2d},
measure::Response,
};
@ -47,8 +47,8 @@ impl Default for ProgressBar {
Self {
value: 0.,
size: Size::Auto.into(),
foreground: Box::new(FrameRect::color((0.0, 0.0, 1.0, 1.0))),
background: Box::new(FrameRect::color((0.0, 0.0, 0.0, 1.0))),
foreground: Box::new(RectFrame::color((0.0, 0.0, 1.0, 1.0))),
background: Box::new(RectFrame::color((0.0, 0.0, 0.0, 1.0))),
}
}
}

View file

@ -4,7 +4,7 @@ use derive_setters::Setters;
use glam::{Vec2, vec2};
use crate::{
draw::UiDrawCommand, element::{MeasureContext, ProcessContext, UiElement}, frame::{Frame, FrameRect}, layout::{compute_size, Size2d}, measure::Response, rect::FillColor, signal::{trigger::SignalTriggerArg, Signal}
draw::UiDrawCommand, element::{MeasureContext, ProcessContext, UiElement}, frame::{Frame, RectFrame}, layout::{compute_size, Size2d}, measure::Response, rect::FillColor, signal::{trigger::SignalTriggerArg, Signal}
};
@ -79,9 +79,9 @@ impl Default for Slider {
Self {
value: 0.0,
size: Size2d::default(),
handle: Box::new(FrameRect::color((0.0, 0.0, 1.))),
track: Box::new(FrameRect::color((0.5, 0.5, 0.5))),
track_active: Box::new(FrameRect::color((0.0, 0.0, 0.75))),
handle: Box::new(RectFrame::color((0.0, 0.0, 1.))),
track: Box::new(RectFrame::color((0.5, 0.5, 0.5))),
track_active: Box::new(RectFrame::color((0.0, 0.0, 0.75))),
track_height: 0.25,
handle_size: (15.0, 1.),
follow_mode: SliderFollowMode::default(),

View file

@ -9,7 +9,7 @@ pub mod stack;
pub mod nine_patch;
mod impls;
pub use rect::FrameRect;
pub use rect::RectFrame;
/// Trait for a drawable frame
pub trait Frame {

View file

@ -10,7 +10,7 @@ use super::{Frame, point::FramePoint2d};
///
/// Can optionally be tinted, textured, and have rounded corners
#[derive(Clone, Copy)]
pub struct FrameRect {
pub struct RectFrame {
/// Background color of the frame\
///
/// If the container has a background texture, it will be multiplied by this color
@ -35,26 +35,26 @@ pub struct FrameRect {
pub corner_radius: Corners<f32>,
}
// impl<T: Into<FillColor>> From<T> for FrameRect {
// impl<T: Into<FillColor>> From<T> for RectFrame {
// fn from(color: T) -> Self {
// Self::from_color(color)
// }
// }
impl From<FillColor> for FrameRect {
impl From<FillColor> for RectFrame {
fn from(color: FillColor) -> Self {
Self::color(color)
}
}
impl From<ImageHandle> for FrameRect {
impl From<ImageHandle> for RectFrame {
fn from(image: ImageHandle) -> Self {
Self::image(image)
}
}
impl FrameRect {
/// Create a new [`FrameRect`] with the given color
impl RectFrame {
/// Create a new [`RectFrame`] with the given color
pub fn color(color: impl Into<FillColor>) -> Self {
Self {
color: color.into(),
@ -62,7 +62,7 @@ impl FrameRect {
}
}
/// Create a new [`FrameRect`] with the given image\
/// Create a new [`RectFrame`] with the given image\
///
/// Color will be set to [`WHITE`](crate::color::WHITE) to ensure the image is visible
pub fn image(image: ImageHandle) -> Self {
@ -73,7 +73,7 @@ impl FrameRect {
}
}
/// Create a new [`FrameRect`] with the given color and image
/// Create a new [`RectFrame`] with the given color and image
pub fn color_image(color: impl Into<FillColor>, image: ImageHandle) -> Self {
Self {
color: color.into(),
@ -82,7 +82,7 @@ impl FrameRect {
}
}
/// Set the corner radius of the [`FrameRect`]
/// Set the corner radius of the [`RectFrame`]
pub fn with_corner_radius(self, radius: impl Into<Corners<f32>>) -> Self {
Self {
corner_radius: radius.into(),
@ -102,7 +102,7 @@ impl FrameRect {
}
}
impl Default for FrameRect {
impl Default for RectFrame {
fn default() -> Self {
Self {
color: FillColor::transparent(),
@ -114,7 +114,7 @@ impl Default for FrameRect {
}
}
impl Frame for FrameRect {
impl Frame for RectFrame {
fn draw(&self, draw: &mut UiDrawCommandList, position: Vec2, parent_size: Vec2) {
//TODO: handle bottom_right < top_left
let top_left = self.top_left.resolve(parent_size);
@ -132,14 +132,14 @@ impl Frame for FrameRect {
}
fn covers_opaque(&self) -> bool {
self.top_left.x.absolute <= 0. &&
self.top_left.x.relative <= 0. &&
self.top_left.y.absolute <= 0. &&
self.top_left.x.absolute <= 0. &&
self.top_left.y.relative <= 0. &&
self.bottom_right.x.absolute >= 0. &&
self.top_left.y.absolute <= 0. &&
self.bottom_right.x.relative >= 1. &&
self.bottom_right.y.absolute >= 0. &&
self.bottom_right.x.absolute >= 0. &&
self.bottom_right.y.relative >= 1. &&
self.bottom_right.y.absolute >= 0. &&
self.color.is_opaque() &&
self.image.is_none() &&
self.corner_radius.max_f32() == 0.

View file

@ -75,7 +75,7 @@ macro_rules! size {
};
}
/// Helper macro for constructing a `FrameRect`
/// Helper macro for constructing a `RectFrame`
///
/// # Example:
/// ```
@ -89,24 +89,24 @@ macro_rules! size {
/// - If the `image` field is set, but not `color`, the `color` field will default to [`WHITE`](crate::color::WHITE) (to ensure visibility)
/// - If both `color` and `image` are not set, the `color` field will default to [`TRANSPARENT`](crate::color::TRANSPARENT)
#[macro_export]
macro_rules! frame_rect {
macro_rules! rect_frame {
{} => {
$crate::frame::FrameRect::default()
$crate::frame::RectFrame::default()
};
// () => {
// $crate::frame::FrameRect::default()
// $crate::frame::RectFrame::default()
// };
($expr:expr) => {
{
let _frame_rect: $crate::frame::FrameRect = $crate::frame::FrameRect::from($expr);
let _frame_rect: $crate::frame::RectFrame = $crate::frame::RectFrame::from($expr);
_frame_rect
}
};
($image:expr, $color:expr) => {
$crate::frame::FrameRect::color_image($color, $image)
$crate::frame::RectFrame::color_image($color, $image)
};
{$($ident:ident : $expr:expr),+$(,)?} => {
@ -115,9 +115,9 @@ macro_rules! frame_rect {
#[allow(non_upper_case_globals)]
{$(const $ident: () = ();)+}
// construct the FrameRect
// construct the RectFrame
{
let mut frame_rect = $crate::frame::FrameRect::default();
let mut frame_rect = $crate::frame::RectFrame::default();
let mut _color_is_set = false;
let mut _image_is_set = false;
$(
@ -148,9 +148,9 @@ macro_rules! frame_rect {
// const $ident: () = ();
// )+
// }
// // construct the FrameRect
// // construct the RectFrame
// {
// let mut _frame_rect: $crate::frame::FrameRect = ($from).into();
// let mut _frame_rect: $crate::frame::RectFrame = ($from).into();
// $(
// let $ident = ($expr).into();
// _frame_rect.$ident = $ident;