notation_bevy_utils 0.4.2

Fun notation - bevy utils
use bevy::prelude::*;

use crate::prelude::{BevyUtil, LayoutData};

#[derive(Bundle, Debug)]
pub struct ViewBundle<T: Component> {
    pub name: Name,
    pub view: T,
    pub layout: LayoutData,
    pub transform: Transform,
    pub global_transform: GlobalTransform,
}

impl<T: Component> From<(String, T, Transform)> for ViewBundle<T> {
    fn from(v: (String, T, Transform)) -> Self {
        Self {
            name: BevyUtil::calc_name(v.0),
            view: v.1,
            layout: LayoutData::default(),
            transform: v.2,
            global_transform: GlobalTransform::default(),
        }
    }
}
impl<T: Component + ToString> From<(T, Transform)> for ViewBundle<T> {
    fn from(v: (T, Transform)) -> Self {
        (v.0.to_string(), v.0, v.1).into()
    }
}
impl<T: Component + ToString> From<T> for ViewBundle<T> {
    fn from(v: T) -> Self {
        (v, Transform::default()).into()
    }
}