]> git.lizzy.rs Git - nothing.git/blob - src/game/level/level_editor/rect_layer.h
Delete LineStream from the existance
[nothing.git] / src / game / level / level_editor / rect_layer.h
1 #ifndef RECT_LAYER_H_
2 #define RECT_LAYER_H_
3
4 #include "layer.h"
5 #include "game/level/action.h"
6 #include "ui/cursor.h"
7
8 typedef struct RectLayer RectLayer;
9
10 LayerPtr rect_layer_as_layer(RectLayer *layer);
11 // NOTE: create_rect_layer and create_rect_layer_from_line_stream does
12 // not own id_name_prefix
13 RectLayer *create_rect_layer(const char *id_name_prefix,
14                              Cursor *cursor);
15 RectLayer *chop_rect_layer(Memory *memory,
16                            String *input,
17                            const char *id_name_prefix,
18                            Cursor *cursor);
19 void destroy_rect_layer(RectLayer *layer);
20
21 int rect_layer_render(const RectLayer *layer, const Camera *camera, int active);
22 int rect_layer_event(RectLayer *layer,
23                      const SDL_Event *event,
24                      const Camera *camera,
25                      UndoHistory *undo_history);
26
27 int rect_layer_dump_stream(const RectLayer *layer, FILE *filedump);
28
29 size_t rect_layer_count(const RectLayer *layer);
30 const Rect *rect_layer_rects(const RectLayer *layer);
31 const Color *rect_layer_colors(const RectLayer *layer);
32 const char *rect_layer_ids(const RectLayer *layer);
33 const Action *rect_layer_actions(const RectLayer *layer);
34
35 #endif  // RECT_LAYER_H_