mirror of
https://gitlab.com/dosowisko.net/libsuperderpy.git
synced 2024-12-05 00:38:00 +01:00
utils: Add DrawFullscreen function
This commit is contained in:
parent
6d7f6c6450
commit
015b9dbaff
2 changed files with 12 additions and 0 deletions
11
src/utils.c
11
src/utils.c
|
@ -131,6 +131,17 @@ SYMBOL_EXPORT void DrawCenteredTintedScaled(ALLEGRO_BITMAP* bitmap, ALLEGRO_COLO
|
||||||
x, y, sx, sy, 0, flags);
|
x, y, sx, sy, 0, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SYMBOL_EXPORT void DrawFullscreen(ALLEGRO_BITMAP* bitmap, int flags) {
|
||||||
|
int x, y, w, h;
|
||||||
|
ALLEGRO_TRANSFORM transform, orig = *al_get_current_transform();
|
||||||
|
al_identity_transform(&transform);
|
||||||
|
al_get_clipping_rectangle(&x, &y, &w, &h);
|
||||||
|
al_use_transform(&transform);
|
||||||
|
al_draw_scaled_bitmap(bitmap, 0, 0, al_get_bitmap_width(bitmap), al_get_bitmap_height(bitmap),
|
||||||
|
x, y, w, h, flags);
|
||||||
|
al_use_transform(&orig);
|
||||||
|
}
|
||||||
|
|
||||||
SYMBOL_EXPORT void ClearToColor(struct Game* game, ALLEGRO_COLOR color) {
|
SYMBOL_EXPORT void ClearToColor(struct Game* game, ALLEGRO_COLOR color) {
|
||||||
ALLEGRO_BITMAP* target = al_get_target_bitmap();
|
ALLEGRO_BITMAP* target = al_get_target_bitmap();
|
||||||
if (game->_priv.current_gamestate && GetFramebuffer(game) == target && al_get_parent_bitmap(target) == al_get_backbuffer(game->display)) {
|
if (game->_priv.current_gamestate && GetFramebuffer(game) == target && al_get_parent_bitmap(target) == al_get_backbuffer(game->display)) {
|
||||||
|
|
|
@ -46,6 +46,7 @@ int DrawWrappedTextWithShadow(ALLEGRO_FONT* font, ALLEGRO_COLOR color, float x,
|
||||||
void DrawCentered(ALLEGRO_BITMAP* bitmap, float x, float y, int flags);
|
void DrawCentered(ALLEGRO_BITMAP* bitmap, float x, float y, int flags);
|
||||||
void DrawCenteredScaled(ALLEGRO_BITMAP* bitmap, float x, float y, double sx, double sy, int flags);
|
void DrawCenteredScaled(ALLEGRO_BITMAP* bitmap, float x, float y, double sx, double sy, int flags);
|
||||||
void DrawCenteredTintedScaled(ALLEGRO_BITMAP* bitmap, ALLEGRO_COLOR tint, float x, float y, double sx, double sy, int flags);
|
void DrawCenteredTintedScaled(ALLEGRO_BITMAP* bitmap, ALLEGRO_COLOR tint, float x, float y, double sx, double sy, int flags);
|
||||||
|
void DrawFullscreen(ALLEGRO_BITMAP* bitmap, int flags);
|
||||||
|
|
||||||
/*! \brief Clears the current target completely, without taking current clipping rectangle into account. */
|
/*! \brief Clears the current target completely, without taking current clipping rectangle into account. */
|
||||||
void ClearToColor(struct Game* game, ALLEGRO_COLOR color);
|
void ClearToColor(struct Game* game, ALLEGRO_COLOR color);
|
||||||
|
|
Loading…
Reference in a new issue