Skip to content

Commit 04a37f7

Browse files
committed
Moved events to ECS (#1823)
Fixes #1809. It makes it also possible to use `derive` for `SystemParam` inside ECS and avoid manual implementation. An alternative solution to macro changes is to use `use crate as bevy_ecs;` in `event.rs`.
1 parent 01142a1 commit 04a37f7

File tree

11 files changed

+18
-21
lines changed

11 files changed

+18
-21
lines changed

crates/bevy_app/src/app_builder.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
use crate::{
22
app::{App, AppExit},
3-
event::Events,
43
plugin::Plugin,
54
CoreStage, PluginGroup, PluginGroupBuilder, StartupStage,
65
};
76
use bevy_ecs::{
87
component::{Component, ComponentDescriptor},
8+
event::Events,
99
schedule::{
1010
RunOnce, Schedule, Stage, StageLabel, State, SystemDescriptor, SystemSet, SystemStage,
1111
},

crates/bevy_app/src/lib.rs

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,21 @@
11
mod app;
22
mod app_builder;
3-
mod event;
43
mod plugin;
54
mod plugin_group;
65
mod schedule_runner;
76

87
pub use app::*;
98
pub use app_builder::*;
109
pub use bevy_derive::DynamicPlugin;
11-
pub use event::*;
10+
pub use bevy_ecs::event::*;
1211
pub use plugin::*;
1312
pub use plugin_group::*;
1413
pub use schedule_runner::*;
1514

1615
pub mod prelude {
1716
pub use crate::{
18-
app::App,
19-
app_builder::AppBuilder,
20-
event::{EventReader, EventWriter},
21-
CoreStage, DynamicPlugin, Plugin, PluginGroup, StartupStage,
17+
app::App, app_builder::AppBuilder, CoreStage, DynamicPlugin, Plugin, PluginGroup,
18+
StartupStage,
2219
};
2320
}
2421

crates/bevy_app/src/schedule_runner.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
use super::{App, AppBuilder};
2-
use crate::{app::AppExit, event::Events, plugin::Plugin, ManualEventReader};
2+
use crate::{app::AppExit, plugin::Plugin, ManualEventReader};
3+
use bevy_ecs::event::Events;
34
use bevy_utils::{Duration, Instant};
45

56
#[cfg(target_arch = "wasm32")]

crates/bevy_ecs/macros/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,4 @@ proc-macro = true
1616
syn = "1.0"
1717
quote = "1.0"
1818
proc-macro2 = "1.0"
19-
find-crate = "0.6"
19+
find-crate = "0.6"

crates/bevy_app/src/event.rs renamed to crates/bevy_ecs/src/event.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
use bevy_ecs::{
1+
use crate as bevy_ecs;
2+
use crate::{
23
component::Component,
34
system::{Local, Res, ResMut, SystemParam},
45
};
@@ -76,7 +77,7 @@ enum State {
7677
///
7778
/// # Example
7879
/// ```
79-
/// use bevy_app::Events;
80+
/// use bevy_ecs::event::Events;
8081
///
8182
/// struct MyEvent {
8283
/// value: usize

crates/bevy_ecs/src/lib.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ pub mod archetype;
22
pub mod bundle;
33
pub mod component;
44
pub mod entity;
5+
pub mod event;
56
pub mod query;
67
#[cfg(feature = "bevy_reflect")]
78
pub mod reflect;
@@ -16,6 +17,7 @@ pub mod prelude {
1617
pub use crate::{
1718
bundle::Bundle,
1819
entity::Entity,
20+
event::{EventReader, EventWriter},
1921
query::{Added, ChangeTrackers, Changed, Or, QueryState, With, WithBundle, Without},
2022
schedule::{
2123
AmbiguitySetLabel, ExclusiveSystemDescriptorCoercion, ParallelSystemDescriptorCoercion,

crates/bevy_input/src/mouse.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
use crate::{ElementState, Input};
2-
use bevy_app::prelude::EventReader;
3-
use bevy_ecs::system::ResMut;
2+
use bevy_ecs::{event::EventReader, system::ResMut};
43
use bevy_math::Vec2;
54

65
/// A mouse button input event

crates/bevy_input/src/system.rs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,8 @@ use crate::{
22
keyboard::{KeyCode, KeyboardInput},
33
ElementState,
44
};
5-
use bevy_app::{
6-
prelude::{EventReader, EventWriter},
7-
AppExit,
8-
};
5+
use bevy_app::AppExit;
6+
use bevy_ecs::prelude::{EventReader, EventWriter};
97

108
/// Sends the AppExit event whenever the "esc" key is pressed.
119
pub fn exit_on_esc_system(

crates/bevy_render/src/camera/camera.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
use super::CameraProjection;
2-
use bevy_app::prelude::EventReader;
32
use bevy_ecs::{
43
component::Component,
54
entity::Entity,
5+
event::EventReader,
66
query::Added,
77
reflect::ReflectComponent,
88
system::{Query, QuerySet, Res},

crates/bevy_render/src/mesh/mesh.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ use crate::{
22
pipeline::{IndexFormat, PrimitiveTopology, RenderPipelines, VertexFormat},
33
renderer::{BufferInfo, BufferUsage, RenderResourceContext, RenderResourceId},
44
};
5-
use bevy_app::prelude::EventReader;
65
use bevy_asset::{AssetEvent, Assets, Handle};
76
use bevy_core::AsBytes;
87
use bevy_ecs::{
98
entity::Entity,
9+
event::EventReader,
1010
query::{Changed, With},
1111
system::{Local, Query, QuerySet, Res},
1212
world::Mut,

0 commit comments

Comments
 (0)