remove need to pass a system struct to prepare a new imgui frame
just needed the destination bitmap dimensions and we don't need the whole system struct for that
This commit is contained in:
parent
0f4ed2965c
commit
d85293d9bf
|
@ -2,8 +2,6 @@ use crate::platform::Platform;
|
||||||
use crate::renderer::Renderer;
|
use crate::renderer::Renderer;
|
||||||
use ggdt::graphics::bitmap::rgb::RgbaBitmap;
|
use ggdt::graphics::bitmap::rgb::RgbaBitmap;
|
||||||
use ggdt::system::event::{SystemEvent, SystemEventHandler};
|
use ggdt::system::event::{SystemEvent, SystemEventHandler};
|
||||||
use ggdt::system::res::standard::Standard;
|
|
||||||
use ggdt::system::System;
|
|
||||||
|
|
||||||
pub mod platform;
|
pub mod platform;
|
||||||
pub mod renderer;
|
pub mod renderer;
|
||||||
|
@ -24,8 +22,8 @@ impl ImGui {
|
||||||
ImGui { context, platform, renderer }
|
ImGui { context, platform, renderer }
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn new_frame(&mut self, system: &mut System<Standard>) -> &mut imgui::Ui {
|
pub fn new_frame(&mut self, dest: &RgbaBitmap) -> &mut imgui::Ui {
|
||||||
self.platform.prepare_frame(&mut self.context, system);
|
self.platform.prepare_frame(&mut self.context, dest);
|
||||||
self.context.new_frame()
|
self.context.new_frame()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
|
use ggdt::graphics::bitmap::rgb::RgbaBitmap;
|
||||||
use ggdt::system::event::{KeyModifiers, KeyboardEvent, MouseEvent, SystemEvent};
|
use ggdt::system::event::{KeyModifiers, KeyboardEvent, MouseEvent, SystemEvent};
|
||||||
use ggdt::system::input_devices::keyboard::scancodes::Scancode;
|
use ggdt::system::input_devices::keyboard::scancodes::Scancode;
|
||||||
use ggdt::system::input_devices::mouse::buttons::MouseButton;
|
use ggdt::system::input_devices::mouse::buttons::MouseButton;
|
||||||
use ggdt::system::res::standard::Standard;
|
|
||||||
use ggdt::system::res::SystemResources;
|
|
||||||
use ggdt::system::System;
|
|
||||||
use std::time::Instant;
|
use std::time::Instant;
|
||||||
|
|
||||||
fn handle_key(io: &mut imgui::Io, key: Scancode, down: bool) {
|
fn handle_key(io: &mut imgui::Io, key: Scancode, down: bool) {
|
||||||
|
@ -201,14 +199,14 @@ impl Platform {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn prepare_frame(&mut self, context: &mut imgui::Context, system: &System<Standard>) {
|
pub fn prepare_frame(&mut self, context: &mut imgui::Context, dest: &RgbaBitmap) {
|
||||||
let io = context.io_mut();
|
let io = context.io_mut();
|
||||||
|
|
||||||
let now = Instant::now();
|
let now = Instant::now();
|
||||||
io.update_delta_time(now.duration_since(self.last_frame));
|
io.update_delta_time(now.duration_since(self.last_frame));
|
||||||
self.last_frame = now;
|
self.last_frame = now;
|
||||||
|
|
||||||
io.display_size = [system.res.width() as f32, system.res.height() as f32];
|
io.display_size = [dest.width() as f32, dest.height() as f32];
|
||||||
io.display_framebuffer_scale = [1.0, 1.0];
|
io.display_framebuffer_scale = [1.0, 1.0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue