the great orientation refactor (move to x & y UiScalars/Spans) + don't call full size in align

This commit is contained in:
2025-11-20 15:44:39 -05:00
parent 96ef0c529b
commit 6251c23d37
20 changed files with 832 additions and 578 deletions

View File

@@ -31,7 +31,6 @@ pub struct PainterCtx<'a> {
pub text: &'a mut TextData,
pub screen_size: Vec2,
pub modules: &'a mut Modules,
pub px_dependent: &'a mut HashSet<Id>,
pub cache_width: HashMap<Id, (UiVec2, Len)>,
pub cache_height: HashMap<Id, (UiVec2, Len)>,
draw_started: HashSet<Id>,
@@ -78,7 +77,6 @@ impl<'a> PainterCtx<'a> {
text: &mut data.text,
screen_size: data.output_size,
modules: &mut data.modules,
px_dependent: &mut data.px_dependent,
masks: &mut data.masks,
cache_width: Default::default(),
cache_height: Default::default(),
@@ -107,7 +105,6 @@ impl<'a> PainterCtx<'a> {
output_size: self.screen_size,
checked_width: &mut Default::default(),
checked_height: &mut Default::default(),
px_dependent: &mut Default::default(),
id,
}
.width_inner(id);
@@ -134,7 +131,6 @@ impl<'a> PainterCtx<'a> {
output_size: self.screen_size,
checked_width: &mut Default::default(),
checked_height: &mut Default::default(),
px_dependent: &mut Default::default(),
id,
}
.height_inner(id);
@@ -164,7 +160,7 @@ impl<'a> PainterCtx<'a> {
pub fn draw(&mut self, id: Id) {
self.draw_started.clear();
self.layers.clear();
self.draw_inner(0, id, UiRegion::full(), None, MaskIdx::NONE, None);
self.draw_inner(0, id, UiRegion::FULL, None, MaskIdx::NONE, None);
}
fn draw_inner(
@@ -300,7 +296,6 @@ impl<'a> PainterCtx<'a> {
m.on_undraw(inst);
}
}
self.px_dependent.remove(&id);
inst
}
@@ -405,7 +400,6 @@ impl<'a, 'c> Painter<'a, 'c> {
textures: self.ctx.textures,
widgets: self.ctx.widgets,
output_size: self.ctx.screen_size,
px_dependent: self.ctx.px_dependent,
checked_width: &mut self.children_width,
checked_height: &mut self.children_height,
cache_width: &mut self.ctx.cache_width,
@@ -417,7 +411,6 @@ impl<'a, 'c> Painter<'a, 'c> {
}
pub fn px_size(&mut self) -> Vec2 {
self.ctx.px_dependent.insert(self.id);
self.region.size().to_abs(self.ctx.screen_size)
}
@@ -443,7 +436,6 @@ pub struct SizeCtx<'a> {
pub textures: &'a mut Textures,
source: Id,
widgets: &'a Widgets,
px_dependent: &'a mut HashSet<Id>,
cache_width: &'a mut HashMap<Id, (UiVec2, Len)>,
cache_height: &'a mut HashMap<Id, (UiVec2, Len)>,
checked_width: &'a mut HashMap<Id, (UiVec2, Len)>,
@@ -523,8 +515,6 @@ impl SizeCtx<'_> {
}
pub fn px_size(&mut self) -> Vec2 {
// WARNING IF UNCOMMENT: self.id is no longer valid
// self.px_dependent.insert(self.id);
self.outer.to_abs(self.output_size)
}