bevy_codex/widgets/button/
mod.rs

1use bevy::prelude::*;
2use bevy_lunex::{UiDebugPlugin, UiGenericPlugin, UiSystems};
3use components::CustomButtonUi;
4use systems::build_button;
5
6use crate::resources::CodexSettings;
7
8pub mod components;
9pub mod styles;
10pub mod systems;
11
12#[derive(Clone)]
13pub struct ButtonPlugin;
14
15impl Plugin for ButtonPlugin {
16    fn build(&self, app: &mut App) {
17        app.add_plugins((UiGenericPlugin::<CustomButtonUi>::new(),));
18        if app.world().resource::<CodexSettings>().debug {
19            app.add_plugins(UiDebugPlugin::<CustomButtonUi>::new());
20        }
21        app.add_systems(Update, build_button.before(UiSystems::Compute));
22    }
23}