126 ot->
name =
"Add Drawing Brush";
128 ot->
idname =
"BRUSH_OT_add_gpencil";
149 int size = (int)(scalar * old_size);
151 if (
abs(old_size -
size) <
U.pixelsize) {
155 else if (scalar < 1) {
167 if (unprojected_radius < 0.001f) {
168 unprojected_radius = 0.001f;
183 ot->
name =
"Scale Sculpt/Paint Brush Size";
193 RNA_def_float(
ot->
srna,
"scalar", 1, 0, 2,
"Scalar",
"Factor to scale brush size by", 0, 2);
214 ot->
name =
"Add New Palette";
267 ot->
name =
"New Palette Color";
269 ot->
idname =
"PALETTE_OT_color_add";
294 ot->
name =
"Delete Palette Color";
296 ot->
idname =
"PALETTE_OT_color_delete";
335 if (ibuf && ibuf->
rect) {
337 const int range = (int)
pow(10.0f, threshold);
338 for (
int row = 0; row < ibuf->
y; row++) {
342 for (
int i = 0; i < 3; i++) {
343 color[i] = truncf(color[i] * range) / range;
372 ot->
name =
"Extract Palette from Image";
373 ot->
idname =
"PALETTE_OT_extract_from_image";
374 ot->
description =
"Extract all colors used in Image and create a Palette";
396 if (palette ==
NULL) {
411 rgb_to_hsv(color->rgb[0], color->rgb[1], color->rgb[2], &h, &s, &
v);
412 col_elm = &color_array[
t];
414 col_elm->
value = color->value;
424 else if (
type == 2) {
427 else if (
type == 3) {
437 color_next = color->
next;
442 for (
int i = 0; i < totcol; i++) {
443 col_elm = &color_array[i];
464 {1,
"HSV", 0,
"Hue, Saturation, Value",
""},
465 {2,
"SVH", 0,
"Saturation, Value, Hue",
""},
466 {3,
"VHS", 0,
"Value, Hue, Saturation",
""},
467 {4,
"LUMINANCE", 0,
"Luminance",
""},
472 ot->
name =
"Sort Palette";
493 if (palcolor ==
NULL) {
511 {-1,
"UP", 0,
"Up",
""},
512 {1,
"DOWN", 0,
"Down",
""},
517 ot->
name =
"Move Palette Color";
518 ot->
idname =
"PALETTE_OT_color_move";
519 ot->
description =
"Move the active Color up/down in the list";
543 if ((palette ==
NULL) || (name[0] ==
'\0')) {
548 if (palette_join ==
NULL) {
559 palcol->
value = color->value;
569 color_next = color->
next;
583 ot->
name =
"Join Palette Swatches";
624 ot->
description =
"Return brush to defaults based on current tool";
636 return *(((
char *)brush) + tool_offset);
641 *(((
char *)brush) + tool_offset) = tool;
646 Brush *brush, *first_brush;
648 if (!brush_orig && !(brush_orig = bmain->
brushes.
first)) {
661 if (first_brush ==
NULL) {
682 }
while (brush != first_brush);
713 const char *tool_name,
714 const bool create_missing,
726 if (((brush ==
NULL) && create_missing) &&
750 SNPRINTF(tool_id,
"builtin_brush.%s", tool_name);
775 const char *tool_name =
"Brush";
811 ot->
name =
"Brush Select";
812 ot->
description =
"Select a paint mode's brush by tool type";
813 ot->
idname =
"PAINT_OT_brush_select";
832 ot->
srna,
"toggle", 0,
"Toggle",
"Toggle between two brushes rather than cycling");
838 "If the requested brush type does not exist, create a new brush");
915 const float mvalf[2] = {
event->mval[0],
event->mval[1]};
967 #define PIXEL_MARGIN 5
970 const float mvalf[2] = {mval[0], mval[1]};
1028 switch (event->
type) {
1105 ot->
name =
"Stencil Brush Control";
1107 ot->
idname =
"BRUSH_OT_stencil_control";
1142 float orig_area, stencil_area, factor;
1146 aspx *= mtex->
size[0];
1147 aspy *= mtex->
size[1];
1155 orig_area =
fabsf(aspx * aspy);
1164 factor =
sqrtf(stencil_area / orig_area);
1184 ot->
name =
"Image Aspect";
1186 "When using an image texture, adjust the stencil size to fit the image aspect ratio";
1187 ot->
idname =
"BRUSH_OT_stencil_fit_image_aspect";
1199 ot->
srna,
"mask", 0,
"Modify Mask Stencil",
"Modify either the primary or mask stencil");
1239 ot->
name =
"Reset Transform";
1240 ot->
description =
"Reset the stencil transformation to the default";
1241 ot->
idname =
"BRUSH_OT_stencil_reset_transform";
1251 ot->
srna,
"mask", 0,
"Modify Mask Stencil",
"Modify either the primary or mask stencil");
1262 "Add Curve Point and Slide",
1263 "Add new curve point and slide it",
1382 keymap =
WM_keymap_ensure(keyconf,
"Paint Vertex Selection (Weight, Vertex)", 0, 0);
1390 keymap =
WM_keymap_ensure(keyconf,
"Paint Face Mask (Weight, Vertex, Texture)", 0, 0);
typedef float(TangentPoint)[2]
void BKE_brush_size_set(struct Scene *scene, struct Brush *brush, int size)
void BKE_brush_init_gpencil_settings(struct Brush *brush)
const float * BKE_brush_color_get(const struct Scene *scene, const struct Brush *brush)
void BKE_brush_sculpt_reset(struct Brush *brush)
int BKE_brush_size_get(const struct Scene *scene, const struct Brush *brush)
float BKE_brush_unprojected_radius_get(const struct Scene *scene, const struct Brush *brush)
void BKE_brush_unprojected_radius_set(struct Scene *scene, struct Brush *brush, float unprojected_radius)
struct Brush * BKE_brush_add(struct Main *bmain, const char *name, const eObjectMode ob_mode)
struct Scene * CTX_data_scene(const bContext *C)
struct Object * CTX_data_active_object(const bContext *C)
struct SpaceLink * CTX_wm_space_data(const bContext *C)
struct ARegion * CTX_wm_region(const bContext *C)
struct SpaceImage * CTX_wm_space_image(const bContext *C)
struct Main * CTX_data_main(const bContext *C)
struct ToolSettings * CTX_data_tool_settings(const bContext *C)
void BKE_image_release_ibuf(struct Image *ima, struct ImBuf *ibuf, void *lock)
bool BKE_image_has_ibuf(struct Image *ima, struct ImageUser *iuser)
struct ImBuf * BKE_image_acquire_ibuf(struct Image *ima, struct ImageUser *iuser, void **r_lock)
struct ID * BKE_id_copy(struct Main *bmain, const struct ID *id)
void id_us_min(struct ID *id)
struct ID * BKE_libblock_find_name(struct Main *bmain, const short type, const char *name) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL()
eObjectMode BKE_paint_object_mode_from_paintmode(ePaintMode mode)
void BKE_paint_brush_set(struct Paint *paint, struct Brush *br)
struct Palette * BKE_palette_add(struct Main *bmain, const char *name)
void BKE_palette_sort_svh(struct tPaletteColorHSV *color_array, const int totcol)
struct Paint * BKE_paint_get_active_from_paintmode(struct Scene *sce, ePaintMode mode)
ePaintMode BKE_paintmode_get_active_from_context(const struct bContext *C)
void BKE_palette_sort_luminance(struct tPaletteColorHSV *color_array, const int totcol)
struct Brush * BKE_paint_toolslots_brush_get(struct Paint *paint, int slot_index)
struct Brush * BKE_paint_brush(struct Paint *paint)
bool BKE_palette_from_hash(struct Main *bmain, struct GHash *color_table, const char *name, const bool linear)
void BKE_paint_palette_set(struct Paint *p, struct Palette *palette)
void BKE_palette_color_remove(struct Palette *palette, struct PaletteColor *color)
struct Paint * BKE_paint_get_active_from_context(const struct bContext *C)
const struct EnumPropertyItem * BKE_paint_get_tool_enum_from_paintmode(ePaintMode mode)
void BKE_palette_sort_vhs(struct tPaletteColorHSV *color_array, const int totcol)
void BKE_palette_sort_hsv(struct tPaletteColorHSV *color_array, const int totcol)
void BKE_paint_invalidate_overlay_all(void)
@ PAINT_MODE_VERTEX_GPENCIL
@ PAINT_MODE_WEIGHT_GPENCIL
@ PAINT_MODE_SCULPT_GPENCIL
const char * BKE_paint_get_tool_prop_id_from_paintmode(ePaintMode mode)
struct PaletteColor * BKE_palette_color_add(struct Palette *palette)
void BKE_reportf(ReportList *reports, ReportType type, const char *format,...) ATTR_PRINTF_FORMAT(3
bool BLI_ghash_haskey(GHash *gh, const void *key) ATTR_WARN_UNUSED_RESULT
GHash * BLI_ghash_int_new(const char *info) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT
void BLI_ghash_insert(GHash *gh, void *key, void *val)
void BLI_ghash_free(GHash *gh, GHashKeyFreeFP keyfreefp, GHashValFreeFP valfreefp)
#define LISTBASE_FOREACH(type, var, list)
void void void bool BLI_listbase_link_move(ListBase *listbase, void *vlink, int step) ATTR_NONNULL()
void * BLI_findlink(const struct ListBase *listbase, int number) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
int BLI_listbase_count(const struct ListBase *listbase) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
unsigned int rgb_to_cpack(float r, float g, float b)
void rgb_to_hsv(float r, float g, float b, float *r_h, float *r_s, float *r_v)
MINLINE void copy_v2_v2(float r[2], const float a[2])
MINLINE void copy_v3_v3(float r[3], const float a[3])
MINLINE void clamp_v2(float vec[2], const float min, const float max)
MINLINE void add_v2_v2v2(float r[2], const float a[2], const float b[2])
MINLINE void sub_v2_v2v2(float r[2], const float a[2], const float b[2])
MINLINE float len_v2(const float a[2]) ATTR_WARN_UNUSED_RESULT
MINLINE void zero_v3(float r[3])
#define SNPRINTF(dst, format,...)
#define POINTER_FROM_INT(i)
Object is a sort of wrapper for general info.
#define MTEX_MAP_MODE_STENCIL
void ED_image_get_uv_aspect(struct Image *ima, struct ImageUser *iuser, float *r_aspx, float *r_aspy)
void ED_region_tag_redraw(struct ARegion *region)
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei GLsizei GLenum type _GL_VOID_RET _GL_VOID GLsizei GLenum GLenum const void *pixels _GL_VOID_RET _GL_VOID const void *pointer _GL_VOID_RET _GL_VOID GLdouble v _GL_VOID_RET _GL_VOID GLfloat v _GL_VOID_RET _GL_VOID GLint GLint i2 _GL_VOID_RET _GL_VOID GLint j _GL_VOID_RET _GL_VOID GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble GLdouble GLdouble zFar _GL_VOID_RET _GL_UINT GLdouble *equation _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLenum GLfloat *v _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLfloat *values _GL_VOID_RET _GL_VOID GLushort *values _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLenum GLdouble *params _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_BOOL GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLushort pattern _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble u2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLdouble GLdouble v2 _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLdouble GLdouble nz _GL_VOID_RET _GL_VOID GLfloat GLfloat nz _GL_VOID_RET _GL_VOID GLint GLint nz _GL_VOID_RET _GL_VOID GLshort GLshort nz _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const GLfloat *values _GL_VOID_RET _GL_VOID GLsizei const GLushort *values _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID const GLuint const GLclampf *priorities _GL_VOID_RET _GL_VOID GLdouble y _GL_VOID_RET _GL_VOID GLfloat y _GL_VOID_RET _GL_VOID GLint y _GL_VOID_RET _GL_VOID GLshort y _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLfloat GLfloat z _GL_VOID_RET _GL_VOID GLint GLint z _GL_VOID_RET _GL_VOID GLshort GLshort z _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble w _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat w _GL_VOID_RET _GL_VOID GLint GLint GLint w _GL_VOID_RET _GL_VOID GLshort GLshort GLshort w _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble y2 _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat y2 _GL_VOID_RET _GL_VOID GLint GLint GLint y2 _GL_VOID_RET _GL_VOID GLshort GLshort GLshort y2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLuint *buffer _GL_VOID_RET _GL_VOID GLdouble t _GL_VOID_RET _GL_VOID GLfloat t _GL_VOID_RET _GL_VOID GLint t _GL_VOID_RET _GL_VOID GLshort t _GL_VOID_RET _GL_VOID GLdouble t
void IMB_sampleImageAtLocation(struct ImBuf *ibuf, float x, float y, bool make_linear_rgb, float color[4])
Contains defines and structs used throughout the imbuf module.
Read Guarded memory(de)allocation.
Group RGB to Bright Vector Camera CLAMP
Group RGB to Bright Vector Camera Vector Combine Material Light Line Style Layer Add Ambient Diffuse Glossy Refraction Transparent Toon Principled Hair Volume Principled Light Particle Volume TEX_IMAGE
ATTR_WARN_UNUSED_RESULT const BMVert * v
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
SIMD_FORCE_INLINE btScalar angle(const btVector3 &v) const
Return the angle between this and another vector.
void(* MEM_freeN)(void *vmemh)
void *(* MEM_calloc_arrayN)(size_t len, size_t size, const char *str)
void *(* MEM_mallocN)(size_t len, const char *str)
INLINE Rall1d< T, V, S > pow(const Rall1d< T, V, S > &arg, double m)
bool paint_curve_poll(bContext *C)
void PAINTCURVE_OT_new(wmOperatorType *ot)
void PAINTCURVE_OT_add_point(wmOperatorType *ot)
void PAINTCURVE_OT_delete_point(wmOperatorType *ot)
void PAINTCURVE_OT_draw(wmOperatorType *ot)
void PAINTCURVE_OT_cursor(wmOperatorType *ot)
void PAINTCURVE_OT_slide(wmOperatorType *ot)
void PAINTCURVE_OT_select(wmOperatorType *ot)
void PAINT_OT_hide_show(struct wmOperatorType *ot)
bool vert_paint_poll(bContext *C)
bool facemask_paint_poll(bContext *C)
bool image_texture_paint_poll(bContext *C)
void PAINT_OT_sample_color(wmOperatorType *ot)
void PAINT_OT_texture_paint_toggle(wmOperatorType *ot)
void PAINT_OT_brush_colors_flip(wmOperatorType *ot)
void PAINT_OT_grab_clone(wmOperatorType *ot)
void PAINT_OT_image_paint(wmOperatorType *ot)
void PAINT_OT_add_texture_paint_slot(wmOperatorType *ot)
void PAINT_OT_add_simple_uvs(wmOperatorType *ot)
void PAINT_OT_project_image(wmOperatorType *ot)
void PAINT_OT_image_from_view(wmOperatorType *ot)
bool vertex_paint_mode_poll(struct bContext *C)
void PAINT_OT_vertex_color_set(struct wmOperatorType *ot)
void PAINT_OT_weight_from_bones(struct wmOperatorType *ot)
void PAINT_OT_face_select_linked_pick(struct wmOperatorType *ot)
void PAINT_OT_mask_line_gesture(struct wmOperatorType *ot)
void PAINT_OT_weight_set(struct wmOperatorType *ot)
void PAINT_OT_face_select_hide(struct wmOperatorType *ot)
void PAINT_OT_mask_lasso_gesture(struct wmOperatorType *ot)
void PAINT_OT_weight_paint_toggle(struct wmOperatorType *ot)
void PAINT_OT_vertex_color_hsv(struct wmOperatorType *ot)
bool paint_supports_texture(enum ePaintMode mode)
void PAINT_OT_mask_box_gesture(struct wmOperatorType *ot)
void PAINT_OT_face_select_all(struct wmOperatorType *ot)
void PAINT_OT_weight_sample_group(struct wmOperatorType *ot)
void SCULPT_OT_uv_sculpt_stroke(struct wmOperatorType *ot)
void PAINT_OT_vertex_color_brightness_contrast(struct wmOperatorType *ot)
void PAINT_OT_mask_flood_fill(struct wmOperatorType *ot)
bool weight_paint_mode_poll(struct bContext *C)
void PAINT_OT_weight_paint(struct wmOperatorType *ot)
void PAINT_OT_face_select_reveal(struct wmOperatorType *ot)
void PAINT_OT_vertex_paint(struct wmOperatorType *ot)
void PAINT_OT_vertex_color_smooth(struct wmOperatorType *ot)
void PAINT_OT_vert_select_all(struct wmOperatorType *ot)
void PAINT_OT_vert_select_ungrouped(struct wmOperatorType *ot)
void PAINT_OT_face_select_linked(struct wmOperatorType *ot)
void PAINT_OT_weight_gradient(struct wmOperatorType *ot)
void PAINT_OT_vertex_color_levels(struct wmOperatorType *ot)
struct wmKeyMap * paint_stroke_modal_keymap(struct wmKeyConfig *keyconf)
void PAINT_OT_vertex_paint_toggle(struct wmOperatorType *ot)
void PAINT_OT_vertex_color_invert(struct wmOperatorType *ot)
void PAINT_OT_weight_sample(struct wmOperatorType *ot)
void PAINT_OT_vertex_color_from_weight(struct wmOperatorType *ot)
void BRUSH_OT_curve_preset(struct wmOperatorType *ot)
static void BRUSH_OT_scale_size(wmOperatorType *ot)
static int palette_color_move_exec(bContext *C, wmOperator *op)
static void brush_tool_set(const Brush *brush, size_t tool_offset, int tool)
static int stencil_fit_image_aspect_exec(bContext *C, wmOperator *op)
static void PALETTE_OT_join(wmOperatorType *ot)
static bool stencil_control_poll(bContext *C)
static void PAINT_OT_brush_select(wmOperatorType *ot)
static void PALETTE_OT_extract_from_image(wmOperatorType *ot)
static void BRUSH_OT_stencil_reset_transform(wmOperatorType *ot)
static bool palette_poll(bContext *C)
static void BRUSH_OT_stencil_fit_image_aspect(wmOperatorType *ot)
static void BRUSH_OT_add(wmOperatorType *ot)
static void stencil_control_calculate(StencilControlData *scd, const int mval[2])
static int brush_add_exec(bContext *C, wmOperator *UNUSED(op))
static int palette_join_exec(bContext *C, wmOperator *op)
static bool brush_generic_tool_set(bContext *C, Main *bmain, Paint *paint, const int tool, const char *tool_name, const bool create_missing, const bool toggle)
static int brush_reset_exec(bContext *C, wmOperator *UNUSED(op))
static int stencil_control_invoke(bContext *C, wmOperator *op, const wmEvent *event)
static void stencil_set_target(StencilControlData *scd)
static Brush * brush_tool_cycle(Main *bmain, Paint *paint, Brush *brush_orig, const int tool)
static void BRUSH_OT_add_gpencil(wmOperatorType *ot)
static int palette_color_add_exec(bContext *C, wmOperator *UNUSED(op))
static int palette_extract_img_exec(bContext *C, wmOperator *op)
static int brush_add_gpencil_exec(bContext *C, wmOperator *UNUSED(op))
static int brush_select_exec(bContext *C, wmOperator *op)
static void BRUSH_OT_reset(wmOperatorType *ot)
static int brush_tool(const Brush *brush, size_t tool_offset)
static void PALETTE_OT_new(wmOperatorType *ot)
static void PALETTE_OT_color_delete(wmOperatorType *ot)
static int stencil_control_modal(bContext *C, wmOperator *op, const wmEvent *event)
static void PALETTE_OT_color_move(wmOperatorType *ot)
static int palette_new_exec(bContext *C, wmOperator *UNUSED(op))
static int palette_color_delete_exec(bContext *C, wmOperator *UNUSED(op))
static int palette_sort_exec(bContext *C, wmOperator *op)
static Brush * brush_tool_toggle(Main *bmain, Paint *paint, Brush *brush_orig, const int tool)
static void PALETTE_OT_color_add(wmOperatorType *ot)
static const ePaintMode brush_select_paint_modes[]
static int stencil_reset_transform_exec(bContext *C, wmOperator *op)
static void BRUSH_OT_stencil_control(wmOperatorType *ot)
static int brush_scale_size_exec(bContext *C, wmOperator *op)
static void stencil_restore(StencilControlData *scd)
static void stencil_control_cancel(bContext *UNUSED(C), wmOperator *op)
static bool palette_extract_img_poll(bContext *C)
static void PALETTE_OT_sort(wmOperatorType *ot)
void ED_operatormacros_paint(void)
void ED_operatortypes_paint(void)
void ED_keymap_paint(wmKeyConfig *keyconf)
void RNA_boolean_set(PointerRNA *ptr, const char *name, bool value)
bool RNA_property_is_set(PointerRNA *ptr, PropertyRNA *prop)
PropertyRNA * RNA_struct_find_property(PointerRNA *ptr, const char *identifier)
void RNA_string_get(PointerRNA *ptr, const char *name, char *value)
int RNA_int_get(PointerRNA *ptr, const char *name)
bool RNA_enum_name_from_value(const EnumPropertyItem *item, int value, const char **r_name)
float RNA_float_get(PointerRNA *ptr, const char *name)
int RNA_property_enum_get(PointerRNA *ptr, PropertyRNA *prop)
bool RNA_boolean_get(PointerRNA *ptr, const char *name)
int RNA_enum_get(PointerRNA *ptr, const char *name)
PropertyRNA * RNA_def_float(StructOrFunctionRNA *cont_, const char *identifier, float default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
PropertyRNA * RNA_def_boolean(StructOrFunctionRNA *cont_, const char *identifier, bool default_value, const char *ui_name, const char *ui_description)
PropertyRNA * RNA_def_string(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
void RNA_def_property_flag(PropertyRNA *prop, PropertyFlag flag)
PropertyRNA * RNA_def_int(StructOrFunctionRNA *cont_, const char *identifier, int default_value, int hardmin, int hardmax, const char *ui_name, const char *ui_description, int softmin, int softmax)
PropertyRNA * RNA_def_enum(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description)
bool SCULPT_mode_poll(bContext *C)
void sculpt_expand_modal_keymap(wmKeyConfig *keyconf)
float stencil_dimension[2]
float mask_stencil_pos[2]
struct Brush * toggle_brush
float mask_stencil_dimension[2]
struct Paint_Runtime runtime
struct PaletteColor * next
StencilConstraint constrain_mode
bool(* poll)(struct bContext *)
int(* invoke)(struct bContext *, struct wmOperator *, const struct wmEvent *) ATTR_WARN_UNUSED_RESULT
int(* modal)(struct bContext *, struct wmOperator *, const struct wmEvent *) ATTR_WARN_UNUSED_RESULT
bool(* poll)(struct bContext *) ATTR_WARN_UNUSED_RESULT
void(* cancel)(struct bContext *, struct wmOperator *)
int(* exec)(struct bContext *, struct wmOperator *) ATTR_WARN_UNUSED_RESULT
struct ReportList * reports
__forceinline const avxi abs(const avxi &a)
ccl_device_inline float4 mask(const int4 &mask, const float4 &a)
int WM_userdef_event_type_from_keymap_type(int kmitype)
wmEventHandler_Op * WM_event_add_modal_handler(bContext *C, wmOperator *op)
void WM_main_add_notifier(unsigned int type, void *reference)
void WM_event_add_notifier(const bContext *C, uint type, void *reference)
wmKeyMap * WM_keymap_ensure(wmKeyConfig *keyconf, const char *idname, int spaceid, int regionid)
void WM_modalkeymap_assign(wmKeyMap *km, const char *opname)
wmOperatorType * WM_operatortype_append_macro(const char *idname, const char *name, const char *description, int flag)
wmOperatorTypeMacro * WM_operatortype_macro_define(wmOperatorType *ot, const char *idname)
void WM_operatortype_append(void(*opfunc)(wmOperatorType *))