Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions examples/animation.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
extern crate sdl3;
use std::path::Path;

use sdl3::event::Event;
use sdl3::event::{Event, KeyState, KeyboardEvent};
use sdl3::keyboard::Keycode;
use sdl3::render::FRect;
use std::time::Duration;
Expand Down Expand Up @@ -55,11 +55,12 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
while running {
for event in event_pump.poll_iter() {
match event {
Event::Quit { .. }
| Event::KeyDown {
Event::Quit(_)
| Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::Escape),
state: KeyState::Down,
..
} => {
}) => {
running = false;
}
_ => {}
Expand Down
18 changes: 12 additions & 6 deletions examples/cursor.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
extern crate sdl3;

use sdl3::event::Event;
use sdl3::event::{Event, KeyState, KeyboardEvent, MouseButtonState, MouseEvent};
use sdl3::image::{InitFlag, LoadSurface};
use sdl3::keyboard::Keycode;
use sdl3::mouse::Cursor;
Expand Down Expand Up @@ -38,12 +38,18 @@ pub fn run(png: &Path) -> Result<(), Box<dyn std::error::Error>> {
'mainloop: loop {
for event in events.poll_iter() {
match event {
Event::Quit { .. }
| Event::KeyDown {
keycode: Option::Some(Keycode::Escape),
Event::Quit(_)
| Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::Escape),
state: KeyState::Down,
..
} => break 'mainloop,
Event::MouseButtonDown { x, y, .. } => {
}) => break 'mainloop,
Event::Mouse(MouseEvent::Button {
x,
y,
state: MouseButtonState::Down,
..
}) => {
canvas.fill_rect(Rect::new(x as i32, y as i32, 1, 1))?;
canvas.present();
}
Expand Down
9 changes: 5 additions & 4 deletions examples/demo.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
extern crate sdl3;

use sdl3::event::Event;
use sdl3::event::{Event, KeyState, KeyboardEvent};
use sdl3::keyboard::Keycode;
use sdl3::pixels::Color;
use std::time::Duration;
Expand All @@ -26,11 +26,12 @@ pub fn main() -> Result<(), Box<dyn std::error::Error>> {
'running: loop {
for event in event_pump.poll_iter() {
match event {
Event::Quit { .. }
| Event::KeyDown {
Event::Quit(_)
| Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::Escape),
state: KeyState::Down,
..
} => break 'running,
}) => break 'running,
_ => {}
}
}
Expand Down
24 changes: 15 additions & 9 deletions examples/demo_games/a02_woodeneye_008.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// original code : https://github.com/libsdl-org/SDL/tree/main/examples/demo/02-woodeneye-008

use sdl3::event::Event;
use sdl3::event::{Event, KeyState, KeyboardEvent, MouseButtonState, MouseEvent};
use sdl3::keyboard::Keycode;
use sdl3::pixels::Color;
use sdl3::rect::Rect;
Expand Down Expand Up @@ -598,10 +598,10 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {

for event in event_pump.poll_iter() {
match event {
Event::Quit { .. } => break 'running,
Event::MouseMotion {
Event::Quit(_) => break 'running,
Event::Mouse(MouseEvent::Motion {
which, xrel, yrel, ..
} => {
}) => {
if let Some(index) =
whose_mouse(which, &app_state.players, app_state.player_count)
{
Expand All @@ -626,18 +626,23 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
}
}

Event::MouseButtonDown { which, .. } => {
Event::Mouse(MouseEvent::Button {
which,
state: MouseButtonState::Down,
..
}) => {
if let Some(index) =
whose_mouse(which, &app_state.players, app_state.player_count)
{
shoot(index, &mut app_state.players, app_state.player_count);
}
}
Event::KeyDown {
Event::Keyboard(KeyboardEvent {
keycode: Some(keycode),
which,
state: KeyState::Down,
..
} => {
}) => {
if let Some(index) =
whose_keyboard(which, &app_state.players, app_state.player_count)
{
Expand All @@ -659,11 +664,12 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
}
}
}
Event::KeyUp {
Event::Keyboard(KeyboardEvent {
keycode: Some(keycode),
which,
state: KeyState::Up,
..
} => {
}) => {
if keycode == Keycode::Escape {
break 'running;
}
Expand Down
24 changes: 14 additions & 10 deletions examples/dialog.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ extern crate sdl3;
use sdl3::dialog::{
show_open_file_dialog, show_open_folder_dialog, show_save_file_dialog, DialogFileFilter,
};
use sdl3::event::Event;
use sdl3::event::{Event, KeyState, KeyboardEvent};
use sdl3::keyboard::Keycode;
use sdl3::pixels::Color;
use std::path::PathBuf;
Expand Down Expand Up @@ -47,17 +47,19 @@ pub fn main() -> Result<(), Box<dyn std::error::Error>> {
'running: loop {
for event in event_pump.poll_iter() {
match event {
Event::Quit { .. }
| Event::KeyDown {
Event::Quit(_)
| Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::Escape),
state: KeyState::Down,
..
} => {
}) => {
break 'running;
}
Event::KeyDown {
Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::O),
state: KeyState::Down,
..
} => {
}) => {
show_open_file_dialog(
&filters,
None::<PathBuf>,
Expand All @@ -76,10 +78,11 @@ pub fn main() -> Result<(), Box<dyn std::error::Error>> {
)
.unwrap_or_else(|e| panic!("Failed to show open file dialog: {e}"));
}
Event::KeyDown {
Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::D),
state: KeyState::Down,
..
} => {
}) => {
show_open_folder_dialog(
Some(&default_path_path),
false,
Expand All @@ -96,10 +99,11 @@ pub fn main() -> Result<(), Box<dyn std::error::Error>> {
}),
);
}
Event::KeyDown {
Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::S),
state: KeyState::Down,
..
} => {
}) => {
show_save_file_dialog(
&filters,
Some("/home"),
Expand Down
14 changes: 10 additions & 4 deletions examples/draw_triangle.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,12 @@
extern crate sdl3;

use sdl3::{
event::Event, keyboard::Keycode, pixels::Color, rect::Point, render::Canvas, video::Window,
event::{Event, KeyState, KeyboardEvent},
keyboard::Keycode,
pixels::Color,
rect::Point,
render::Canvas,
video::Window,
};

use std::time::Duration;
Expand Down Expand Up @@ -94,11 +99,12 @@ pub fn main() -> Result<(), Box<dyn std::error::Error>> {
'running: loop {
for event in event_pump.poll_iter() {
match event {
Event::Quit { .. }
| Event::KeyDown {
Event::Quit(_)
| Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::Escape),
state: KeyState::Down,
..
} => break 'running,
}) => break 'running,
_ => {}
}
}
Expand Down
11 changes: 6 additions & 5 deletions examples/events.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
extern crate sdl3;

use sdl3::event::Event;
use sdl3::event::{Event, KeyState, KeyboardEvent, MouseEvent};
use sdl3::keyboard::Keycode;
use sdl3::pixels::Color;
use std::time::Duration;
Expand Down Expand Up @@ -28,13 +28,14 @@ pub fn main() -> Result<(), Box<dyn std::error::Error>> {
'running: loop {
for event in event_pump.poll_iter() {
match event {
Event::Quit { .. }
| Event::KeyDown {
Event::Quit(_)
| Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::Escape),
state: KeyState::Down,
..
} => break 'running,
}) => break 'running,
// skip mouse motion intentionally because of the verbose it might cause.
Event::MouseMotion { .. } => {}
Event::Mouse(MouseEvent::Motion { .. }) => {}
e => {
println!("{e:?}");
}
Expand Down
22 changes: 13 additions & 9 deletions examples/game-of-life-unsafe-textures.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@ extern crate sdl3;
#[cfg(feature = "unsafe_textures")]
use game_of_life::{PLAYGROUND_HEIGHT, PLAYGROUND_WIDTH, SQUARE_SIZE};
#[cfg(feature = "unsafe_textures")]
use sdl3::event::Event;
use sdl3::event::{Event, KeyState, KeyboardEvent, MouseButtonState, MouseEvent};

#[cfg(feature = "unsafe_textures")]
use sdl3::keyboard::Keycode;
#[cfg(feature = "unsafe_textures")]
Expand Down Expand Up @@ -254,24 +255,27 @@ pub fn main() -> Result<(), Box<dyn std::error::Error>> {
// get the inputs here
for event in event_pump.poll_iter() {
match event {
Event::Quit { .. }
| Event::KeyDown {
Event::Quit(_)
| Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::Escape),
state: KeyState::Down,
..
} => break 'running,
Event::KeyDown {
}) => break 'running,
Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::Space),
state: KeyState::Down,
repeat: false,
..
} => {
}) => {
game.toggle_state();
}
Event::MouseButtonDown {
Event::Mouse(MouseEvent::Button {
x,
y,
mouse_btn: MouseButton::Left,
button: MouseButton::Left,
state: MouseButtonState::Down,
..
} => {
}) => {
let x = (x as u32) / SQUARE_SIZE;
let y = (y as u32) / SQUARE_SIZE;
match game.get_mut(x as i32, y as i32) {
Expand Down
21 changes: 12 additions & 9 deletions examples/game-of-life.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ extern crate sdl3;

#[cfg(not(feature = "unsafe_textures"))]
use crate::game_of_life::{PLAYGROUND_HEIGHT, PLAYGROUND_WIDTH, SQUARE_SIZE};
use sdl3::event::Event;
use sdl3::event::{Event, KeyState, KeyboardEvent, MouseButtonState, MouseEvent};
use sdl3::keyboard::Keycode;
use sdl3::mouse::MouseButton;
use sdl3::pixels::Color;
Expand Down Expand Up @@ -258,24 +258,27 @@ pub fn main() -> Result<(), Box<dyn std::error::Error>> {
// get the inputs here
for event in event_pump.poll_iter() {
match event {
Event::Quit { .. }
| Event::KeyDown {
Event::Quit(_)
| Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::Escape),
state: KeyState::Down,
..
} => break 'running,
Event::KeyDown {
}) => break 'running,
Event::Keyboard(KeyboardEvent {
keycode: Some(Keycode::Space),
state: KeyState::Down,
repeat: false,
..
} => {
}) => {
game.toggle_state();
}
Event::MouseButtonDown {
Event::Mouse(MouseEvent::Button {
x,
y,
mouse_btn: MouseButton::Left,
button: MouseButton::Left,
state: MouseButtonState::Down,
..
} => {
}) => {
let x = (x as u32) / SQUARE_SIZE;
let y = (y as u32) / SQUARE_SIZE;
match game.get_mut(x as i32, y as i32) {
Expand Down
Loading