treballant en el overlay, el text i les notificacions
This commit is contained in:
47
source/core/input/global_inputs.cpp
Normal file
47
source/core/input/global_inputs.cpp
Normal file
@@ -0,0 +1,47 @@
|
||||
#include "core/input/global_inputs.hpp"
|
||||
|
||||
#include <cstdio>
|
||||
#include <string>
|
||||
|
||||
#include "core/jail/jinput.hpp"
|
||||
#include "core/rendering/overlay.hpp"
|
||||
#include "core/rendering/screen.hpp"
|
||||
#include "game/options.hpp"
|
||||
|
||||
namespace GlobalInputs {
|
||||
|
||||
static bool dec_zoom_was_pressed = false;
|
||||
static bool inc_zoom_was_pressed = false;
|
||||
static bool fullscreen_was_pressed = false;
|
||||
|
||||
void handle() {
|
||||
// Decrement zoom
|
||||
bool dec_zoom = JI_KeyPressed(Options::keys_gui.dec_zoom);
|
||||
if (dec_zoom && !dec_zoom_was_pressed) {
|
||||
Screen::get()->decZoom();
|
||||
char msg[32];
|
||||
snprintf(msg, sizeof(msg), "ZOOM %dx", Screen::get()->getZoom());
|
||||
Overlay::showNotification(msg);
|
||||
}
|
||||
dec_zoom_was_pressed = dec_zoom;
|
||||
|
||||
// Increment zoom
|
||||
bool inc_zoom = JI_KeyPressed(Options::keys_gui.inc_zoom);
|
||||
if (inc_zoom && !inc_zoom_was_pressed) {
|
||||
Screen::get()->incZoom();
|
||||
char msg[32];
|
||||
snprintf(msg, sizeof(msg), "ZOOM %dx", Screen::get()->getZoom());
|
||||
Overlay::showNotification(msg);
|
||||
}
|
||||
inc_zoom_was_pressed = inc_zoom;
|
||||
|
||||
// Toggle fullscreen
|
||||
bool fullscreen = JI_KeyPressed(Options::keys_gui.fullscreen);
|
||||
if (fullscreen && !fullscreen_was_pressed) {
|
||||
Screen::get()->toggleFullscreen();
|
||||
Overlay::showNotification(Screen::get()->isFullscreen() ? "FULLSCREEN" : "WINDOWED");
|
||||
}
|
||||
fullscreen_was_pressed = fullscreen;
|
||||
}
|
||||
|
||||
} // namespace GlobalInputs
|
||||
Reference in New Issue
Block a user