Poke_Transporter_GB/include/button_menu.h
The Gears of Progress 2309f7c493 Adding text debug menu
2026-01-11 17:33:02 -05:00

55 lines
1.3 KiB
C++

#ifndef MAIN_MENU_H
#define MAIN_MENU_H
#include <tonc.h>
#include "libstd_replacements.h"
#include "button_handler.h"
#define BTN_MAIN_MENU 0
#define BTN_TRANSFER 1
#define BTN_POKEDEX 2
#define BTN_EVENTS 3
#define BTN_CREDITS 4
#define BTN_OPENING 5
#define BTN_TEXT_DEBUG 6
#define BUTTON_CANCEL UINT8_MAX
class Button_Menu
{
public:
Button_Menu(int nRows, int nColumns, int nButton_width, int nButton_height, bool enable_cancel);
int button_main();
void add_button(Button btn, int return_val);
void hide_buttons();
void show_buttons();
void organize_buttons();
unsigned int get_pos_from_xy(int nX, int nY);
unsigned int get_x_from_pos(int nPos);
unsigned int get_y_from_pos(int nPos);
void set_xy_min_max(int nX_min, int nX_max, int nY_min, int nY_max);
void set_rows_and_columns(int nRows, int nColumns);
void set_bottom_row_offset(int nBottom_offset);
void clear_vector();
private:
ptgb::vector<Button> button_vector;
ptgb::vector<int> return_values;
int columns;
int rows;
int button_height;
int button_width;
unsigned int curr_position;
int x_min;
int x_max;
int y_min;
int y_max;
int offset_value;
int bottom_offset;
bool cancel_enabled;
};
extern Button_Menu yes_no_menu;
#endif