make painter not stupid (size ctx is kinda tho)
This commit is contained in:
@@ -144,13 +144,13 @@ pub trait SensorUi<State> {
|
||||
|
||||
impl<State: 'static + HasUi> SensorUi<State> for State {
|
||||
fn run_sensors(&mut self, cursor: &CursorState, window_size: Vec2) {
|
||||
let layers = std::mem::take(&mut self.ui().data.layers);
|
||||
let layers = std::mem::take(&mut self.ui().layers);
|
||||
let mut active =
|
||||
std::mem::take(&mut self.ui().data.events.get_type::<CursorSense>().active);
|
||||
std::mem::take(&mut self.ui().events.get_type::<CursorSense>().active);
|
||||
for layer in layers.indices().rev() {
|
||||
let mut sensed = false;
|
||||
for (id, sensor) in active.get_mut(&layer).into_iter().flatten() {
|
||||
let shape = self.ui().data.active.get(id).unwrap().region;
|
||||
let shape = self.ui().active.get(id).unwrap().region;
|
||||
let region = shape.to_px(window_size);
|
||||
let in_shape = cursor.exists && region.contains(cursor.pos);
|
||||
sensor.hover.update(in_shape);
|
||||
@@ -175,8 +175,8 @@ impl<State: 'static + HasUi> SensorUi<State> for State {
|
||||
break;
|
||||
}
|
||||
}
|
||||
self.ui().data.events.get_type::<CursorSense>().active = active;
|
||||
self.ui().data.layers = layers;
|
||||
self.ui().events.get_type::<CursorSense>().active = active;
|
||||
self.ui().layers = layers;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -87,7 +87,7 @@ impl<State: 'static> TextBuilderOutput<State> for TextOutput {
|
||||
builder.attrs.line_height,
|
||||
));
|
||||
let hint = builder.hint.get(ui);
|
||||
let font_system = &mut ui.data.text.font_system;
|
||||
let font_system = &mut ui.text.font_system;
|
||||
buf.set_text(font_system, &builder.content, &Attrs::new(), SHAPING, None);
|
||||
let mut text = Text {
|
||||
content: builder.content.into(),
|
||||
@@ -117,7 +117,7 @@ impl<State: 'static> TextBuilderOutput<State> for TextEditOutput {
|
||||
TextView::new(buf, builder.attrs, builder.hint.get(ui)),
|
||||
builder.output.single_line,
|
||||
);
|
||||
let font_system = &mut ui.data.text.font_system;
|
||||
let font_system = &mut ui.text.font_system;
|
||||
text.buf
|
||||
.set_text(font_system, &builder.content, &Attrs::new(), SHAPING, None);
|
||||
builder.attrs.apply(font_system, &mut text.buf, None);
|
||||
|
||||
@@ -617,8 +617,8 @@ pub trait TextEditable<State> {
|
||||
impl<State: 'static, I: IdLike<State, Widget = TextEdit<State>>> TextEditable<State> for I {
|
||||
fn edit<'a>(&self, ui: &'a mut Ui<State>) -> TextEditCtx<'a, State> {
|
||||
TextEditCtx {
|
||||
text: ui.data.widgets.get_mut(self).unwrap(),
|
||||
font_system: &mut ui.data.text.font_system,
|
||||
text: ui.widgets.get_mut(self).unwrap(),
|
||||
font_system: &mut ui.text.font_system,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user