Files
PixelDefense/game/ui_widgets.h
2024-02-13 11:58:56 +01:00

40 lines
1.5 KiB
C

#ifndef PIXELDEFENSE_UI_WIDGETS_H
#define PIXELDEFENSE_UI_WIDGETS_H
#include <breeze.h>
#include <raygui.h>
#include "components.h"d
extern BzUI *UI; // defined in main.c
f32 uiGetScale();
BzUINode *uiPushDivParentPercentage(f32 xPercent, f32 yPercent);
// Template stuff
void uiBaseLabel(const char *txt, Font font, f32 scl, Color color);
bool uiBaseTextButton(const char *txt, Font font, f32 scl, bool enabled);
void uiBaseCheckbox(const char *txt, Font font, f32 scl, bool *check);
void uiBaseSlider(const char *txt, Font font, f32 scl, f32 *value, f32 min, f32 max);
// actual UI
void uiMainMenuLabel(const char *txt);
bool uiMainMenuButton(const char *txt, bool enabled);
void uiSettingsLabel(const char *txt);
bool uiSettingsButton(const char *txt);
void uiSettingsCheckbox(const char *txt, bool *check);
void uiSettingsSlider(const char *txt, f32 *value);
void uiGameResCount(i32 amount, i32 capacity, Rectangle icon, Texture2D texture);
void uiGameRecruit(const char *label, Rectangle rec, Texture2D tex, i32 numRecruiting,
f32 progress, bool canAfford, bool *selected, bool *hovered);
void uiGameBuild(const char *label, Rectangle rec, Texture2D tex, bool canAfford, bool *selected, bool *hovered);
bool uiGameTrade(const char *label, Rectangle rec, Texture2D tex, bool canAfford);
bool uiGameUnit(const char *label, i32 count, Rectangle rec, Texture2D tex);
void uiGameTooltipCost(Vector2 pos, i32 costs[RES_COUNT], Texture2D tex);
#endif //PIXELDEFENSE_UI_WIDGETS_H