|
|
|
|
@ -7,12 +7,22 @@ ControlPanel::ControlPanel() { |
|
|
|
|
|
|
|
|
|
void ControlPanel::init(sf::Vector2f size) { |
|
|
|
|
$gui.position(0, size.y, size.x, WINDOW_HEIGHT - size.y); |
|
|
|
|
$gui.layout("[buttons|code]"); |
|
|
|
|
$gui.layout( |
|
|
|
|
"[pause |*%(200, 400)code|_]" |
|
|
|
|
"[step |_|_]" |
|
|
|
|
"[play |_|_]" |
|
|
|
|
"[restart|_|_]" |
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
for(auto& [name, cell] : $gui.cells()) { |
|
|
|
|
auto id = $gui.entity(name); |
|
|
|
|
$gui.set<guecs::Rectangle>(id, {}); |
|
|
|
|
$gui.set<guecs::Text>(id, {guecs::to_wstring(name)}); |
|
|
|
|
if(name != "code") { |
|
|
|
|
$gui.set<guecs::Clickable>(id, {[name](auto) { |
|
|
|
|
fmt::println("CLICKED {}", name); |
|
|
|
|
}}); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$gui.init(); |
|
|
|
|
@ -24,3 +34,7 @@ void ControlPanel::render(sf::RenderTarget& window) { |
|
|
|
|
|
|
|
|
|
void ControlPanel::update(Chip8& vm) { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
bool ControlPanel::mouse(float x, float y, guecs::Modifiers mods) { |
|
|
|
|
return $gui.mouse(x, y, mods); |
|
|
|
|
} |
|
|
|
|
|