aboutsummaryrefslogtreecommitdiff
path: root/src/button/inc
diff options
context:
space:
mode:
authorXavier Del Campo Romero <xavi.dcr@tutanota.com>2022-06-24 16:55:18 +0200
committerXavier Del Campo Romero <xavi.dcr@tutanota.com>2022-06-26 20:00:27 +0200
commit7c75118429596dcfd86dbefb32e9ae79585c4da0 (patch)
treed06478b8e303d0e2729c57b079f481fbcf5b9adf /src/button/inc
parentf17c76c4007563389188c147d4e1c766039fb686 (diff)
downloadrts-7c75118429596dcfd86dbefb32e9ae79585c4da0.tar.gz
Revamp gui component
`gui` was tighly coupled to game logic, and could not be extended for other purposes. Therefore, a generic GUI implementation, loosely inspired by well-known GUI frameworks such as GTK, is now provided, with the following properties: - Does not depend on dynamic or static memory allocation, only automatic (i.e., stack) memory allocation required. - Portable among existing implementations. - Simple to extend. - Tiny memory footprint. `gui` is now composed by GUI elements that can be chained to form a tree structure. This is useful e.g.: to calculate X/Y coordinates for a given GUI element given its parent(s). This commit also refactors the older implementation, moving game-specific logic into `player` and making use of the new component.
Diffstat (limited to 'src/button/inc')
-rw-r--r--src/button/inc/button.h36
1 files changed, 0 insertions, 36 deletions
diff --git a/src/button/inc/button.h b/src/button/inc/button.h
deleted file mode 100644
index 062cb07..0000000
--- a/src/button/inc/button.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#ifndef BUTTON_H
-#define BUTTON_H
-
-#include <gfx.h>
-#include <stdbool.h>
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-enum
-{
- BUTTON_LEFT,
- BUTTON_MID,
- BUTTON_RIGHT,
-
- MAX_BUTTON_SPRITES
-};
-
-struct button
-{
- const char *text;
- short x, y, w;
-};
-
-bool button_is_pressed(const struct button *b);
-int button_render(const struct button *b);
-
-extern struct sprite button_sprites[MAX_BUTTON_SPRITES];
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* BUTTON_H */