removed reset button in turn of R key

parent 44346766
No preview for this file type
No preview for this file type
...@@ -112,9 +112,6 @@ main(int argc, char *argv[]) ...@@ -112,9 +112,6 @@ main(int argc, char *argv[])
SDL_Event event; SDL_Event event;
while (SDL_PollEvent(&event)) while (SDL_PollEvent(&event))
{ {
if (handle_ui_event(&ui, event, &view))
continue;
switch (event.type) switch (event.type)
{ {
case SDL_QUIT: case SDL_QUIT:
...@@ -146,6 +143,13 @@ main(int argc, char *argv[]) ...@@ -146,6 +143,13 @@ main(int argc, char *argv[])
view.y_max = view.y_max * 0.9; view.y_max = view.y_max * 0.9;
view.zoom = view.zoom * 0.9; view.zoom = view.zoom * 0.9;
break; break;
case SDL_SCANCODE_R:
view.x_min = -2.0;
view.x_max = 1.0;
view.y_min = -1.5;
view.y_max = 1.5;
view.zoom = 1.0;
break;
} }
default: default:
handle_mouse(event, &mouse, &view); handle_mouse(event, &mouse, &view);
......
...@@ -22,13 +22,10 @@ render_text(SDL_Renderer* renderer, TTF_Font* font, const char* text, SDL_Rect* ...@@ -22,13 +22,10 @@ render_text(SDL_Renderer* renderer, TTF_Font* font, const char* text, SDL_Rect*
void void
init_ui(UI* ui) init_ui(UI* ui)
{ {
ui->reset_button = (SDL_Rect){UI_PADDING, UI_PADDING, BUTTON_WIDTH, BUTTON_HEIGHT}; ui->zoom_display= (SDL_Rect){UI_PADDING, UI_PADDING, BUTTON_WIDTH, BUTTON_HEIGHT};
ui->zoom_display= (SDL_Rect){UI_PADDING, UI_PADDING * 2 + BUTTON_HEIGHT, ui->fps_display = (SDL_Rect){UI_PADDING, UI_PADDING * 2 + BUTTON_HEIGHT,
BUTTON_WIDTH, BUTTON_HEIGHT}; BUTTON_WIDTH, BUTTON_HEIGHT};
ui->fps_display = (SDL_Rect){UI_PADDING, UI_PADDING * 3 + BUTTON_HEIGHT * 2,
BUTTON_WIDTH, BUTTON_HEIGHT};
TTF_Init(); TTF_Init();
ui->font = TTF_OpenFont("/usr/share/fonts/nerdfonts/TerminessNerdFont-Regular.ttf", FONT_SIZE); ui->font = TTF_OpenFont("/usr/share/fonts/nerdfonts/TerminessNerdFont-Regular.ttf", FONT_SIZE);
if (!ui->font) { if (!ui->font) {
...@@ -40,47 +37,23 @@ void ...@@ -40,47 +37,23 @@ void
render_ui(UI* ui, SDL_Renderer* renderer, ViewInfo view, float fps) render_ui(UI* ui, SDL_Renderer* renderer, ViewInfo view, float fps)
{ {
SDL_SetRenderDrawColor(renderer, 60, 60, 60, UI_ALPHA); SDL_SetRenderDrawColor(renderer, 60, 60, 60, UI_ALPHA);
SDL_RenderFillRect(renderer, &ui->reset_button);
SDL_RenderFillRect(renderer, &ui->zoom_display); SDL_RenderFillRect(renderer, &ui->zoom_display);
SDL_RenderFillRect(renderer, &ui->fps_display); SDL_RenderFillRect(renderer, &ui->fps_display);
SDL_SetRenderDrawColor(renderer, 255, 255, 255, UI_ALPHA); SDL_SetRenderDrawColor(renderer, 255, 255, 255, UI_ALPHA);
SDL_RenderDrawRect(renderer, &ui->reset_button);
SDL_RenderDrawRect(renderer, &ui->zoom_display); SDL_RenderDrawRect(renderer, &ui->zoom_display);
SDL_RenderDrawRect(renderer, &ui->fps_display); SDL_RenderDrawRect(renderer, &ui->fps_display);
if (ui->font) { if (ui->font) {
render_text(renderer, ui->font, "Reset", &ui->reset_button);
char buf[32]; char buf[32];
snprintf(buf, sizeof(buf), "Zoom: %.2fx", view.zoom); snprintf(buf, sizeof(buf), "Zoom: %.2fx", view.zoom);
render_text(renderer, ui->font, buf, &ui->zoom_display); render_text(renderer, ui->font, buf, &ui->zoom_display);
snprintf(buf, sizeof(buf), "Fps: %f", fps); snprintf(buf, sizeof(buf), "Fps: %f", fps);
render_text(renderer, ui->font, buf, &ui->fps_display); render_text(renderer, ui->font, buf, &ui->fps_display);
} }
} }
int
handle_ui_event(UI* ui, SDL_Event event, ViewInfo* view)
{
if (event.type == SDL_MOUSEBUTTONDOWN && event.button.button == SDL_BUTTON_LEFT) {
int x = event.button.x;
int y = event.button.y;
if (SDL_PointInRect(&(SDL_Point){x, y}, &ui->reset_button)) {
view->x_min = -2.0;
view->x_max = 1.0;
view->y_min = -1.5;
view->y_max = 1.5;
view->zoom = 1.0;
return 1;
}
}
return 0;
}
void cleanup_ui(UI* ui) void cleanup_ui(UI* ui)
{ {
if (ui->font) { if (ui->font) {
......
...@@ -15,7 +15,6 @@ ...@@ -15,7 +15,6 @@
typedef struct { typedef struct {
SDL_Rect reset_button;
SDL_Rect zoom_display; SDL_Rect zoom_display;
SDL_Rect fps_display; SDL_Rect fps_display;
TTF_Font* font; TTF_Font* font;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment