idanarye / bevy-yoleck

Your Own Level Editor Creation Kit
Other
172 stars 11 forks source link

Bevy-egui has been updated #32

Closed naomijub closed 1 year ago

naomijub commented 1 year ago

Migration guide states that

YoleckUi is now a non-Send resource, which means it can no longer be accessed as a regular Res/ResMut. It must now be accessed as NonSend/NonSendMut.

Hopefully once https://github.com/emilk/egui/issues/3148 is fixed (and gets in to bevy_egui) this can be changed back.

This has been fixed. I tried to update to bevy_egui 0.22 and move yoleckui to res/resmut. However, I got stuck in the fact that egui::Ui doesn't implement Default or bevy::ecs::FromWorld, can you give me any light to help with this change?

I tried to switch to egui::context, but it did not expose the Ui as a consumable.

Hope you are safe

idanarye commented 1 year ago

Due to how Cargo works (and it has good reasons to work that way), Yoleck still uses bevy_egui 0.21 while your own code uses bevy_egui 0.22 - and Rust treats the types declared in them as separate types.

I'll have to update Yoleck. Shouldn't be a problem.

naomijub commented 1 year ago

The answer was actually line 594 of sec/editor.rs, as I was talking about a fork. I did not see that line before and was trying to insert resource as a default or from world

idanarye commented 1 year ago

User code is not supposed to insert the YoleckUi resource. Yoleck does it, and only when the edit systems are running.