#include #include #include #include #include "../define.h" #include "ui_elements.h" Button create_button(Button_types type_arg, Button_sizes size_arg, const std::vector& position_arg, std::string text_arg, const std::vector& screen_arg) { std::vector size = button_size(size_arg, screen_arg); float position_x = screen_arg[0] * position_arg[0] - size[0] / 2; float position_y = screen_arg[1] * position_arg[1] - size[1] / 2; Font font = GetFontDefault(); float font_size = text_size(size_arg); float text_x = screen_arg[0] * position_arg[0] - MeasureText(text_arg.c_str(), font_size) / 2; float text_y = screen_arg[1] * position_arg[1] - font_size / 2; Text text; switch(type_arg) { case BUTTON_BASIC: text = {font, text_arg,Vector2{text_x, text_y}, font_size, 2.0f, BLACK}; return Button{ Rectangle{position_x, position_y, size[0], size[1]}, Color{BLUE}, text }; break; case BUTTON_INACTIVE: text = {font, text_arg,Vector2{text_x, text_y}, font_size, 2.0f, BLACK}; return Button{ Rectangle{position_x, position_y, size[0], size[1]}, Color{GRAY}, text }; break; case BUTTON_DANGER: default: text = {font, text_arg,Vector2{text_x, text_y}, font_size, 2.0f, WHITE}; return Button{ Rectangle{position_x, position_y, size[0], size[1]}, Color{RED}, text }; break; } } void draw_buttons(const std::vector