]> git.lizzy.rs Git - nothing.git/blobdiff - src/game/level/level_editor/color_picker.h
(#1118) Inner selection overlay for Rect Layer
[nothing.git] / src / game / level / level_editor / color_picker.h
index 3bc98101751ecc15bb69578529cb443c02a08de2..2d60a085fdb132ae9ca6141f7ef3f9a03d6ede30 100644 (file)
@@ -13,7 +13,6 @@ typedef enum {
 } ColorPickerSlider;
 
 typedef struct {
-    // TODO(#933): ColorPicker should use array of sliders
     Slider sliders[COLOR_SLIDER_N];
 } ColorPicker;
 
@@ -24,12 +23,25 @@ ColorPicker create_color_picker_from_rgba(Color color);
 int color_picker_read_from_line_stream(ColorPicker *color_picker,
                                        LineStream *line_stream);
 
-LayerPtr color_picker_as_layer(ColorPicker *color_picker);
-
 int color_picker_render(const ColorPicker *color_picker,
-                        Camera *camera);
-int color_picker_event(ColorPicker *color_picker, const SDL_Event *event, int *selected);
+                        const Camera *camera);
+int color_picker_event(ColorPicker *color_picker,
+                       const SDL_Event *event,
+                       const Camera *camera,
+                       int *selected);
 
 Color color_picker_rgba(const ColorPicker *color_picker);
 
+static inline
+int color_picker_drag(const ColorPicker *color_picker)
+{
+    int result = 0;
+
+    for (int i = 0; i < COLOR_SLIDER_N; ++i) {
+        result = result || color_picker->sliders[i].drag;
+    }
+
+    return result;
+}
+
 #endif  // COLOR_PICKER_H_