1 #include "game/camera.h"
2 #include "rect_layer.h"
3 #include "point_layer.h"
4 #include "player_layer.h"
5 #include "label_layer.h"
8 int layer_render(LayerPtr layer, Camera *camera, int active)
12 return rect_layer_render(layer.ptr, camera, active);
15 return point_layer_render(layer.ptr, camera, active);
18 return player_layer_render(layer.ptr, camera, active);
20 case LAYER_COLOR_PICKER:
21 return active ? color_picker_render(layer.ptr, camera) : 0;
24 return label_layer_render(layer.ptr, camera, active);
30 int layer_event(LayerPtr layer,
31 const SDL_Event *event,
33 UndoHistory *undo_history)
37 return rect_layer_event(layer.ptr, event, camera, undo_history);
40 return point_layer_event(layer.ptr, event, camera, undo_history);
43 return player_layer_event(layer.ptr, event, camera, undo_history);
45 case LAYER_COLOR_PICKER:
46 // TODO: undo history is not really applicable to color picker as layer
47 return color_picker_event(layer.ptr, event, NULL);
50 return label_layer_event(layer.ptr, event, camera, undo_history);
56 int layer_dump_stream(LayerPtr layer,
61 return rect_layer_dump_stream(layer.ptr, stream);
64 return point_layer_dump_stream(layer.ptr, stream);
67 return player_layer_dump_stream(layer.ptr, stream);
69 case LAYER_COLOR_PICKER: {
70 color_hex_to_stream(color_picker_rgba(layer.ptr), stream);
71 return fprintf(stream, "\n");
75 return label_layer_dump_stream(layer.ptr, stream);