2.5/Paint:
[blender.git] / source / blender / editors / sculpt_paint / paint_intern.h
index 40423e17fe43bb7db681357c2de374e98c1c0a8d..41764a70686f4743174fdacf10da0821e97ea844 100644 (file)
 #ifndef ED_PAINT_INTERN_H
 #define ED_PAINT_INTERN_H
 
+struct bContext;
 struct Scene;
 struct Object;
 struct Mesh;
+struct PaintStroke;
+struct PointerRNA;
 struct ViewContext;
+struct wmEvent;
+struct wmOperator;
 struct wmOperatorType;
 struct ARegion;
 
+/* paint_stroke.c */
+typedef int (*StrokeTestStart)(struct bContext *C, struct wmOperator *op, struct wmEvent *event);
+typedef void (*StrokeUpdateStep)(struct bContext *C, struct PaintStroke *stroke, struct PointerRNA *itemptr);
+typedef void (*StrokeDone)(struct bContext *C, struct PaintStroke *stroke);
+
+struct PaintStroke *paint_stroke_new(bContext *C, StrokeTestStart test_start,
+                                    StrokeUpdateStep update_step, StrokeDone done);
+int paint_stroke_modal(struct bContext *C, struct wmOperator *op, struct wmEvent *event);
+struct ViewContext *paint_stroke_view_context(struct PaintStroke *stroke);
+
 /* paint_vertex.c */
 void PAINT_OT_weight_paint_toggle(struct wmOperatorType *ot);
 void PAINT_OT_weight_paint_radial_control(struct wmOperatorType *ot);