summaryrefslogtreecommitdiffstats
path: root/src/graphics.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/graphics.rs')
-rw-r--r--src/graphics.rs25
1 files changed, 5 insertions, 20 deletions
diff --git a/src/graphics.rs b/src/graphics.rs
index ca98946..003f182 100644
--- a/src/graphics.rs
+++ b/src/graphics.rs
@@ -1,6 +1,5 @@
extern crate sfml;
-
use sfml::window::{
ContextSettings,
Event,
@@ -13,20 +12,10 @@ use sfml::graphics::{
Color,
};
-
-struct State {
- running: bool
-}
-
-
-pub fn start() {
+pub fn start() -> RenderWindow {
let default_window_size = (1280, 720);
let default_framerate = 80;
- let mut state = State {
- running: true
- };
-
let context_settings = ContextSettings {
antialiasing_level: 0,
..Default::default()
@@ -42,22 +31,18 @@ pub fn start() {
window.set_framerate_limit(default_framerate);
window.set_vertical_sync_enabled(true);
-
- while state.running {
- render(&mut window);
- update(&mut window, &mut state);
- }
+ return window;
}
-fn render(window: &mut RenderWindow) {
+pub fn render(window: &mut RenderWindow) {
window.clear(&Color::BLACK);
window.display();
}
-fn update(window: &mut RenderWindow, state: &mut State) {
+pub fn update(window: &mut RenderWindow) {
while let Some(ev) = window.poll_event() {
match ev {
- Event::Closed => state.running = false,
+ Event::Closed => window.close(),
_ => {},
}
}