Blender  V3.3
rna_internal_types.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
7 #pragma once
8 
9 #include "DNA_listBase.h"
10 
11 #include "RNA_types.h"
12 
13 struct BlenderRNA;
15 struct ContainerRNA;
16 struct FunctionRNA;
17 struct GHash;
18 struct IDOverrideLibrary;
20 struct IDProperty;
21 struct Main;
22 struct PointerRNA;
23 struct PropertyRNA;
24 struct ReportList;
25 struct Scene;
26 struct StructRNA;
27 struct bContext;
28 
29 typedef struct IDProperty IDProperty;
30 
31 /* Function Callbacks */
32 
43 typedef void (*UpdateFunc)(struct Main *bmain, struct Scene *active_scene, struct PointerRNA *ptr);
44 typedef void (*ContextPropUpdateFunc)(struct bContext *C,
45  struct PointerRNA *ptr,
46  struct PropertyRNA *prop);
47 typedef void (*ContextUpdateFunc)(struct bContext *C, struct PointerRNA *ptr);
48 
49 typedef int (*EditableFunc)(struct PointerRNA *ptr, const char **r_info);
50 typedef int (*ItemEditableFunc)(struct PointerRNA *ptr, int index);
51 typedef struct IDProperty **(*IDPropertiesFunc)(struct PointerRNA *ptr);
52 typedef struct StructRNA *(*StructRefineFunc)(struct PointerRNA *ptr);
53 typedef char *(*StructPathFunc)(const struct PointerRNA *ptr);
54 
55 typedef int (*PropArrayLengthGetFunc)(const struct PointerRNA *ptr,
57 typedef bool (*PropBooleanGetFunc)(struct PointerRNA *ptr);
58 typedef void (*PropBooleanSetFunc)(struct PointerRNA *ptr, bool value);
59 typedef void (*PropBooleanArrayGetFunc)(struct PointerRNA *ptr, bool *values);
60 typedef void (*PropBooleanArraySetFunc)(struct PointerRNA *ptr, const bool *values);
61 typedef int (*PropIntGetFunc)(struct PointerRNA *ptr);
62 typedef void (*PropIntSetFunc)(struct PointerRNA *ptr, int value);
63 typedef void (*PropIntArrayGetFunc)(struct PointerRNA *ptr, int *values);
64 typedef void (*PropIntArraySetFunc)(struct PointerRNA *ptr, const int *values);
66  struct PointerRNA *ptr, int *min, int *max, int *softmin, int *softmax);
67 typedef float (*PropFloatGetFunc)(struct PointerRNA *ptr);
68 typedef void (*PropFloatSetFunc)(struct PointerRNA *ptr, float value);
69 typedef void (*PropFloatArrayGetFunc)(struct PointerRNA *ptr, float *values);
70 typedef void (*PropFloatArraySetFunc)(struct PointerRNA *ptr, const float *values);
72  struct PointerRNA *ptr, float *min, float *max, float *softmin, float *softmax);
73 typedef void (*PropStringGetFunc)(struct PointerRNA *ptr, char *value);
74 typedef int (*PropStringLengthFunc)(struct PointerRNA *ptr);
75 typedef void (*PropStringSetFunc)(struct PointerRNA *ptr, const char *value);
76 typedef int (*PropEnumGetFunc)(struct PointerRNA *ptr);
77 typedef void (*PropEnumSetFunc)(struct PointerRNA *ptr, int value);
78 typedef const EnumPropertyItem *(*PropEnumItemFunc)(struct bContext *C,
79  struct PointerRNA *ptr,
80  struct PropertyRNA *prop,
81  bool *r_free);
83 typedef StructRNA *(*PropPointerTypeFunc)(struct PointerRNA *ptr);
85  const PointerRNA value,
86  struct ReportList *reports);
87 typedef bool (*PropPointerPollFunc)(struct PointerRNA *ptr, const PointerRNA value);
89  const PointerRNA value,
90  const PropertyRNA *prop);
92  struct PointerRNA *ptr);
96 typedef int (*PropCollectionLengthFunc)(struct PointerRNA *ptr);
98  int key,
99  struct PointerRNA *r_ptr);
101  const char *key,
102  struct PointerRNA *r_ptr);
104  int key,
105  const struct PointerRNA *assign_ptr);
106 
107 /* extended versions with PropertyRNA argument */
108 typedef bool (*PropBooleanGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop);
109 typedef void (*PropBooleanSetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, bool value);
111  struct PropertyRNA *prop,
112  bool *values);
114  struct PropertyRNA *prop,
115  const bool *values);
116 typedef int (*PropIntGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop);
117 typedef void (*PropIntSetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, int value);
119  struct PropertyRNA *prop,
120  int *values);
122  struct PropertyRNA *prop,
123  const int *values);
125  struct PropertyRNA *prop,
126  int *min,
127  int *max,
128  int *softmin,
129  int *softmax);
130 typedef float (*PropFloatGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop);
131 typedef void (*PropFloatSetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, float value);
133  struct PropertyRNA *prop,
134  float *values);
136  struct PropertyRNA *prop,
137  const float *values);
139  struct PropertyRNA *prop,
140  float *min,
141  float *max,
142  float *softmin,
143  float *softmax);
144 typedef void (*PropStringGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, char *value);
145 typedef int (*PropStringLengthFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop);
147  struct PropertyRNA *prop,
148  const char *value);
149 typedef int (*PropEnumGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop);
150 typedef void (*PropEnumSetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, int value);
151 
152 /* Handling override operations, and also comparison. */
153 
155 typedef struct PropertyRNAOrID {
157 
178  const char *identifier;
179 
181  bool is_idprop;
185  bool is_set;
186 
187  bool is_array;
190 
200 typedef int (*RNAPropOverrideDiff)(struct Main *bmain,
201  struct PropertyRNAOrID *prop_a,
202  struct PropertyRNAOrID *prop_b,
203  int mode,
204  struct IDOverrideLibrary *override,
205  const char *rna_path,
206  size_t rna_path_len,
207  int flags,
208  bool *r_override_changed);
209 
220 typedef bool (*RNAPropOverrideStore)(struct Main *bmain,
221  struct PointerRNA *ptr_local,
222  struct PointerRNA *ptr_reference,
223  struct PointerRNA *ptr_storage,
224  struct PropertyRNA *prop_local,
225  struct PropertyRNA *prop_reference,
226  struct PropertyRNA *prop_storage,
227  int len_local,
228  int len_reference,
229  int len_storage,
231 
239 typedef bool (*RNAPropOverrideApply)(struct Main *bmain,
240  struct PointerRNA *ptr_dst,
241  struct PointerRNA *ptr_src,
242  struct PointerRNA *ptr_storage,
243  struct PropertyRNA *prop_dst,
244  struct PropertyRNA *prop_src,
245  struct PropertyRNA *prop_storage,
246  int len_dst,
247  int len_src,
248  int len_storage,
249  struct PointerRNA *ptr_item_dst,
250  struct PointerRNA *ptr_item_src,
251  struct PointerRNA *ptr_item_storage,
253 
254 /* Container - generic abstracted container of RNA properties */
255 typedef struct ContainerRNA {
256  void *next, *prev;
257 
258  struct GHash *prophash;
261 
262 struct FunctionRNA {
263  /* structs are containers of properties */
265 
266  /* unique identifier, keep after 'cont' */
267  const char *identifier;
268  /* various options */
269  int flag;
270 
271  /* single line description, displayed in the tooltip for example */
272  const char *description;
273 
274  /* callback to execute the function */
276 
277  /* parameter for the return value
278  * NOTE: this is only the C return value, rna functions can have multiple return values. */
280 };
281 
282 struct PropertyRNA {
283  struct PropertyRNA *next, *prev;
284 
285  /* magic bytes to distinguish with IDProperty */
286  int magic;
287 
288  /* unique identifier */
289  const char *identifier;
290  /* various options */
291  int flag;
292  /* various override options */
294  /* Function parameters flags. */
296  /* Internal ("private") flags. */
298  /* The subset of StructRNA.prop_tag_defines values that applies to this property. */
299  short tags;
300 
301  /* user readable name */
302  const char *name;
303  /* single line description, displayed in the tooltip for example */
304  const char *description;
305  /* icon ID */
306  int icon;
307  /* context for translation */
308  const char *translation_context;
309 
310  /* property type as it appears to the outside */
312  /* subtype, 'interpretation' of the property */
314  /* if non-NULL, overrides arraylength. Must not return 0? */
316  /* dimension of array */
317  unsigned int arraydimension;
318  /* Array lengths for all dimensions (when `arraydimension > 0`). */
320  unsigned int totarraylength;
321 
322  /* callback for updates on change */
324  int noteflag;
325 
326  /* Callback for testing if editable. Its r_info parameter can be used to
327  * return info on editable state that might be shown to user. E.g. tooltips
328  * of disabled buttons can show reason why button is disabled using this. */
330  /* callback for testing if array-item editable (if applicable) */
332 
333  /* Override handling callbacks (diff is also used for comparison). */
337 
338  /* raw access */
341 
342  /* This is used for accessing props/functions of this property
343  * any property can have this but should only be used for collections and arrays
344  * since python will convert int/bool/pointer's */
345  struct StructRNA *srna; /* attributes attached directly to this collection */
346 
347  /* python handle to hold all callbacks
348  * (in a pointer array at the moment, may later be a tuple) */
349  void *py_data;
350 };
351 
352 /* internal flags WARNING! 16bits only! */
353 typedef enum PropertyFlagIntern {
359  /* Negative mirror of PROP_PTR_NO_OWNERSHIP, used to prevent automatically setting that one in
360  * makesrna when pointer is an ID... */
363 
364 /* Property Types */
365 
366 typedef struct BoolPropertyRNA {
368 
373 
378 
380  const bool *defaultarray;
382 
383 typedef struct IntPropertyRNA {
385 
391 
397 
401  int step;
402 
404  const int *defaultarray;
406 
407 typedef struct FloatPropertyRNA {
409 
415 
421 
423  float softmin, softmax;
424  float hardmin, hardmax;
425  float step;
427 
429  const float *defaultarray;
431 
432 typedef struct StringPropertyRNA {
434 
438 
442 
451 
452  int maxlength; /* includes string terminator! */
453 
454  const char *defaultvalue;
456 
457 typedef struct EnumPropertyRNA {
459 
463 
466 
468  int totitem;
469 
471  const char *native_enum_type;
473 
474 typedef struct PointerPropertyRNA {
476 
482 
483  struct StructRNA *type;
485 
486 typedef struct CollectionPropertyRNA {
488 
491  PropCollectionEndFunc end; /* optional */
497 
498  struct StructRNA *item_type; /* the type of this item */
500 
501 /* changes to this struct require updating rna_generate_struct in makesrna.c */
502 struct StructRNA {
503  /* structs are containers of properties */
505 
506  /* unique identifier, keep after 'cont' */
507  const char *identifier;
508 
511  void *py_type;
513 
514  /* various options */
515  int flag;
516  /* Each StructRNA type can define own tags which properties can set
517  * (PropertyRNA.tags) for changed behavior based on struct-type. */
519 
520  /* user readable name */
521  const char *name;
522  /* single line description, displayed in the tooltip for example */
523  const char *description;
524  /* context for translation */
525  const char *translation_context;
526  /* icon ID */
527  int icon;
528 
529  /* property that defines the name */
531 
532  /* property to iterate over properties */
534 
536  struct StructRNA *base;
537 
538  /* only use for nested structs, where both the parent and child access
539  * the same C Struct but nesting is used for grouping properties.
540  * The parent property is used so we know NULL checks are not needed,
541  * and that this struct will never exist without its parent */
542  struct StructRNA *nested;
543 
544  /* function to give the more specific type */
546 
547  /* function to find path to this struct in an ID */
549 
550  /* function to register/unregister subclasses */
565 
568 
569  /* functions of this struct */
571 };
572 
573 /* Blender RNA
574  *
575  * Root RNA data structure that lists all struct types. */
576 
577 struct BlenderRNA {
579  /* A map of structs: {StructRNA.identifier -> StructRNA}
580  * These are ensured to have unique names (with STRUCT_PUBLIC_NAMESPACE enabled). */
582  /* Needed because types with an empty identifier aren't included in 'structs_map'. */
583  unsigned int structs_len;
584 };
585 
586 #define CONTAINER_RNA_ID(cont) (*(const char **)(((ContainerRNA *)(cont)) + 1))
typedef float(TangentPoint)[2]
unsigned int uint
Definition: BLI_sys_types.h:67
These structs are the foundation for all linked lists in the library system.
#define RNA_MAX_ARRAY_DIMENSION
Definition: RNA_define.h:28
struct StructRNA *(* StructRegisterFunc)(struct Main *bmain, struct ReportList *reports, void *data, const char *identifier, StructValidateFunc validate, StructCallbackFunc call, StructFreeFunc free)
Definition: RNA_types.h:738
PropertyScaleType
Definition: RNA_types.h:96
void **(* StructInstanceFunc)(PointerRNA *ptr)
Definition: RNA_types.h:747
void(* StringPropertySearchFunc)(const struct bContext *C, struct PointerRNA *ptr, struct PropertyRNA *prop, const char *edit_text, StringPropertySearchVisitFunc visit_fn, void *visit_user_data)
Definition: RNA_types.h:581
eStringPropertySearchFlag
Definition: RNA_types.h:547
PropertyType
Definition: RNA_types.h:58
struct PointerRNA PointerRNA
void(* CallFunc)(struct bContext *C, struct ReportList *reports, PointerRNA *ptr, ParameterList *parms)
Definition: RNA_types.h:694
void(* StructUnregisterFunc)(struct Main *bmain, struct StructRNA *type)
Definition: RNA_types.h:746
RawPropertyType
Definition: RNA_types.h:431
PropertySubType
Definition: RNA_types.h:125
#define C
Definition: RandGen.cpp:25
SyclQueue void void size_t num_bytes void
T length(const vec_base< T, Size > &a)
StructRNA *(* PropPointerTypeFunc)(struct PointerRNA *ptr)
void(* PropIntSetFunc)(struct PointerRNA *ptr, int value)
void(* PropBooleanArrayGetFunc)(struct PointerRNA *ptr, bool *values)
struct IntPropertyRNA IntPropertyRNA
void(* PropEnumSetFunc)(struct PointerRNA *ptr, int value)
int(* PropArrayLengthGetFunc)(const struct PointerRNA *ptr, int length[RNA_MAX_ARRAY_DIMENSION])
void(* PropStringSetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, const char *value)
int(* PropIntGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop)
bool(* RNAPropOverrideApply)(struct Main *bmain, struct PointerRNA *ptr_dst, struct PointerRNA *ptr_src, struct PointerRNA *ptr_storage, struct PropertyRNA *prop_dst, struct PropertyRNA *prop_src, struct PropertyRNA *prop_storage, int len_dst, int len_src, int len_storage, struct PointerRNA *ptr_item_dst, struct PointerRNA *ptr_item_src, struct PointerRNA *ptr_item_storage, struct IDOverrideLibraryPropertyOperation *opop)
void(* ContextUpdateFunc)(struct bContext *C, struct PointerRNA *ptr)
int(* PropCollectionAssignIntFunc)(struct PointerRNA *ptr, int key, const struct PointerRNA *assign_ptr)
void(* ContextPropUpdateFunc)(struct bContext *C, struct PointerRNA *ptr, struct PropertyRNA *prop)
void(* PropIntArrayGetFunc)(struct PointerRNA *ptr, int *values)
void(* PropIntArraySetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, const int *values)
void(* PropFloatArrayGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, float *values)
void(* PropIntSetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, int value)
PointerRNA(* PropCollectionGetFunc)(struct CollectionPropertyIterator *iter)
void(* PropBooleanSetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, bool value)
void(* PropStringSetFunc)(struct PointerRNA *ptr, const char *value)
void(* PropFloatArraySetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, const float *values)
bool(* PropBooleanGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop)
bool(* PropPointerPollFunc)(struct PointerRNA *ptr, const PointerRNA value)
PropertyFlagIntern
@ PROP_INTERN_BUILTIN
@ PROP_INTERN_RAW_ACCESS
@ PROP_INTERN_PTR_OWNERSHIP_FORCED
@ PROP_INTERN_FREE_POINTERS
@ PROP_INTERN_RAW_ARRAY
@ PROP_INTERN_RUNTIME
void(* PropFloatRangeFunc)(struct PointerRNA *ptr, float *min, float *max, float *softmin, float *softmax)
int(* PropStringLengthFunc)(struct PointerRNA *ptr)
float(* PropFloatGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop)
void(* PropCollectionNextFunc)(struct CollectionPropertyIterator *iter)
struct StructRNA *(* StructRefineFunc)(struct PointerRNA *ptr)
int(* PropEnumGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop)
int(* PropCollectionLengthFunc)(struct PointerRNA *ptr)
void(* PropPointerSetFunc)(struct PointerRNA *ptr, const PointerRNA value, struct ReportList *reports)
int(* RNAPropOverrideDiff)(struct Main *bmain, struct PropertyRNAOrID *prop_a, struct PropertyRNAOrID *prop_b, int mode, struct IDOverrideLibrary *override, const char *rna_path, size_t rna_path_len, int flags, bool *r_override_changed)
char *(* StructPathFunc)(const struct PointerRNA *ptr)
struct IDProperty **(* IDPropertiesFunc)(struct PointerRNA *ptr)
void(* PropEnumSetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, int value)
int(* PropStringLengthFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop)
struct PointerPropertyRNA PointerPropertyRNA
bool(* RNAPropOverrideStore)(struct Main *bmain, struct PointerRNA *ptr_local, struct PointerRNA *ptr_reference, struct PointerRNA *ptr_storage, struct PropertyRNA *prop_local, struct PropertyRNA *prop_reference, struct PropertyRNA *prop_storage, int len_local, int len_reference, int len_storage, struct IDOverrideLibraryPropertyOperation *opop)
void(* PropFloatSetFunc)(struct PointerRNA *ptr, float value)
void(* PropBooleanArraySetFunc)(struct PointerRNA *ptr, const bool *values)
void(* PropIntArrayGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, int *values)
struct FloatPropertyRNA FloatPropertyRNA
void(* PropStringGetFunc)(struct PointerRNA *ptr, char *value)
const EnumPropertyItem *(* PropEnumItemFunc)(struct bContext *C, struct PointerRNA *ptr, struct PropertyRNA *prop, bool *r_free)
void(* PropIntArraySetFunc)(struct PointerRNA *ptr, const int *values)
bool(* PropBooleanGetFunc)(struct PointerRNA *ptr)
int(* ItemEditableFunc)(struct PointerRNA *ptr, int index)
void(* PropBooleanSetFunc)(struct PointerRNA *ptr, bool value)
struct PropertyRNAOrID PropertyRNAOrID
bool(* PropPointerPollFuncPy)(struct PointerRNA *ptr, const PointerRNA value, const PropertyRNA *prop)
void(* PropBooleanArrayGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, bool *values)
void(* PropFloatArraySetFunc)(struct PointerRNA *ptr, const float *values)
struct EnumPropertyRNA EnumPropertyRNA
struct CollectionPropertyRNA CollectionPropertyRNA
int(* PropEnumGetFunc)(struct PointerRNA *ptr)
PointerRNA(* PropPointerGetFunc)(struct PointerRNA *ptr)
void(* PropCollectionBeginFunc)(struct CollectionPropertyIterator *iter, struct PointerRNA *ptr)
void(* PropIntRangeFunc)(struct PointerRNA *ptr, int *min, int *max, int *softmin, int *softmax)
struct ContainerRNA ContainerRNA
void(* PropCollectionEndFunc)(struct CollectionPropertyIterator *iter)
int(* PropCollectionLookupStringFunc)(struct PointerRNA *ptr, const char *key, struct PointerRNA *r_ptr)
struct BoolPropertyRNA BoolPropertyRNA
struct StringPropertyRNA StringPropertyRNA
int(* PropCollectionLookupIntFunc)(struct PointerRNA *ptr, int key, struct PointerRNA *r_ptr)
void(* PropIntRangeFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, int *min, int *max, int *softmin, int *softmax)
void(* PropFloatArrayGetFunc)(struct PointerRNA *ptr, float *values)
void(* PropFloatRangeFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, float *min, float *max, float *softmin, float *softmax)
void(* UpdateFunc)(struct Main *bmain, struct Scene *active_scene, struct PointerRNA *ptr)
int(* EditableFunc)(struct PointerRNA *ptr, const char **r_info)
float(* PropFloatGetFunc)(struct PointerRNA *ptr)
void(* PropFloatSetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, float value)
int(* PropIntGetFunc)(struct PointerRNA *ptr)
void(* PropStringGetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, char *value)
void(* PropBooleanArraySetFuncEx)(struct PointerRNA *ptr, struct PropertyRNA *prop, const bool *values)
#define min(a, b)
Definition: sort.c:35
struct GHash * structs_map
unsigned int structs_len
PropBooleanArraySetFuncEx setarray_ex
PropBooleanArrayGetFuncEx getarray_ex
PropBooleanArraySetFunc setarray
const bool * defaultarray
PropBooleanSetFunc set
PropBooleanGetFunc get
PropBooleanSetFuncEx set_ex
PropBooleanGetFuncEx get_ex
PropBooleanArrayGetFunc getarray
PropCollectionNextFunc next
PropCollectionLookupStringFunc lookupstring
PropCollectionLengthFunc length
struct StructRNA * item_type
PropCollectionLookupIntFunc lookupint
PropCollectionBeginFunc begin
PropCollectionAssignIntFunc assignint
PropCollectionEndFunc end
PropCollectionGetFunc get
struct GHash * prophash
const EnumPropertyItem * item
PropEnumSetFuncEx set_ex
PropEnumGetFunc get
const char * native_enum_type
PropEnumItemFunc item_fn
PropEnumGetFuncEx get_ex
PropEnumSetFunc set
PropFloatSetFuncEx set_ex
PropertyScaleType ui_scale_type
PropFloatGetFunc get
PropFloatRangeFuncEx range_ex
PropFloatArrayGetFuncEx getarray_ex
PropFloatArraySetFuncEx setarray_ex
PropFloatArrayGetFunc getarray
PropFloatSetFunc set
const float * defaultarray
PropFloatRangeFunc range
PropFloatArraySetFunc setarray
PropFloatGetFuncEx get_ex
const char * identifier
PropertyRNA * c_ret
ContainerRNA cont
const char * description
PropIntRangeFuncEx range_ex
PropIntGetFunc get
PropIntArrayGetFunc getarray
const int * defaultarray
PropIntArrayGetFuncEx getarray_ex
PropIntRangeFunc range
PropIntArraySetFunc setarray
PropIntGetFuncEx get_ex
PropIntSetFunc set
PropertyRNA property
PropIntArraySetFuncEx setarray_ex
PropertyScaleType ui_scale_type
PropIntSetFuncEx set_ex
Definition: BKE_main.h:121
PropPointerTypeFunc type_fn
struct StructRNA * type
PropPointerGetFunc get
PropPointerPollFunc poll
PropPointerSetFunc set
const char * identifier
PropertyRNA * rawprop
PropertyRNA * rnaprop
ItemEditableFunc itemeditable
PropArrayLengthGetFunc getlength
const char * translation_context
RNAPropOverrideApply override_apply
unsigned int arraydimension
struct PropertyRNA * next
EditableFunc editable
RNAPropOverrideStore override_store
RNAPropOverrideDiff override_diff
struct StructRNA * srna
PropertySubType subtype
struct PropertyRNA * prev
unsigned int arraylength[RNA_MAX_ARRAY_DIMENSION]
const char * description
const char * name
unsigned int totarraylength
const char * identifier
RawPropertyType rawtype
PropertyType type
UpdateFunc update
PropStringSetFunc set
const char * defaultvalue
PropStringLengthFuncEx length_ex
PropStringLengthFunc length
PropStringGetFuncEx get_ex
PropStringSetFuncEx set_ex
PropStringGetFunc get
StringPropertySearchFunc search
eStringPropertySearchFlag search_flag
StructRegisterFunc reg
StructUnregisterFunc unreg
const char * name
const char * identifier
StructInstanceFunc instance
ContainerRNA cont
struct StructRNA * nested
const char * translation_context
const EnumPropertyItem * prop_tag_defines
PropertyRNA * nameproperty
const char * description
IDPropertiesFunc idproperties
struct StructRNA * base
PropertyRNA * iteratorproperty
ListBase functions
StructRefineFunc refine
StructPathFunc path
float max
PointerRNA * ptr
Definition: wm_files.c:3480