add update_ui to TestbedPlugin

This commit is contained in:
rezural
2021-07-06 07:24:56 +10:00
committed by Sébastien Crozet
parent 7c249c873d
commit 0e1215e4ed
2 changed files with 23 additions and 1 deletions

View File

@@ -2,6 +2,7 @@ use crate::harness::Harness;
use crate::physics::PhysicsState;
use crate::GraphicsManager;
use bevy::prelude::{Assets, Commands, Mesh, Query, StandardMaterial, Transform};
use bevy_egui::EguiContext;
use na::Point3;
pub trait TestbedPlugin {
@@ -13,7 +14,6 @@ pub trait TestbedPlugin {
materials: &mut Assets<StandardMaterial>,
components: &mut Query<(&mut Transform,)>,
harness: &mut Harness,
gen_color: &mut dyn FnMut() -> Point3<f32>,
);
fn clear_graphics(&mut self, graphics: &mut GraphicsManager, commands: &mut Commands);
@@ -28,5 +28,15 @@ pub trait TestbedPlugin {
components: &mut Query<(&mut Transform,)>,
harness: &mut Harness,
);
fn update_ui(
&mut self,
ui_context: &EguiContext,
harness: &mut Harness,
graphics: &mut GraphicsManager,
commands: &mut Commands,
meshes: &mut Assets<Mesh>,
materials: &mut Assets<StandardMaterial>,
components: &mut Query<(&mut Transform,)>,
);
fn profiling_string(&self) -> String;
}

View File

@@ -875,6 +875,18 @@ fn update_testbed(
{
let harness = &mut *harness;
ui::update_ui(&ui_context, &mut state, harness);
for plugin in &mut plugins.0 {
plugin.update_ui(
&ui_context,
harness,
&mut graphics,
&mut commands,
&mut *meshes,
&mut *materials,
&mut gfx_components,
);
}
}
// Handle UI actions.