+ switch (layer.type) {
+ case LAYER_RECT:
+ return rect_layer_event(layer.ptr, event, camera, undo_history);
+
+ case LAYER_POINT:
+ return point_layer_event(layer.ptr, event, camera, undo_history);
+
+ case LAYER_PLAYER:
+ return player_layer_event(layer.ptr, event, camera, undo_history);
+
+ case LAYER_BACKGROUND:
+ return background_layer_event(layer.ptr, event, camera, undo_history);
+
+ case LAYER_LABEL:
+ return label_layer_event(layer.ptr, event, camera, undo_history);
+ }
+
+ return -1;