Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/makesdna/DNA_ID.h')
-rw-r--r--source/blender/makesdna/DNA_ID.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h
index 10a5a0f1c47..5b7c99f2545 100644
--- a/source/blender/makesdna/DNA_ID.h
+++ b/source/blender/makesdna/DNA_ID.h
@@ -59,6 +59,58 @@ typedef struct DrawDataList {
struct DrawData *first, *last;
} DrawDataList;
+typedef struct IDPropertyUIData {
+ /** Tooltip / property description pointer. Owned by the IDProperty. */
+ char *description;
+ /** RNA subtype, used for every type except string properties (PropertySubType). */
+ int rna_subtype;
+
+ char _pad[4];
+} IDPropertyUIData;
+
+/* IDP_UI_DATA_TYPE_INT */
+typedef struct IDPropertyUIDataInt {
+ IDPropertyUIData base;
+ int *default_array; /* Only for array properties. */
+ int default_array_len;
+ char _pad[4];
+
+ int min;
+ int max;
+ int soft_min;
+ int soft_max;
+ int step;
+ int default_value;
+} IDPropertyUIDataInt;
+
+/* IDP_UI_DATA_TYPE_FLOAT */
+typedef struct IDPropertyUIDataFloat {
+ IDPropertyUIData base;
+ double *default_array; /* Only for array properties. */
+ int default_array_len;
+ char _pad[4];
+
+ float step;
+ int precision;
+
+ double min;
+ double max;
+ double soft_min;
+ double soft_max;
+ double default_value;
+} IDPropertyUIDataFloat;
+
+/* IDP_UI_DATA_TYPE_STRING */
+typedef struct IDPropertyUIDataString {
+ IDPropertyUIData base;
+ char *default_value;
+} IDPropertyUIDataString;
+
+/* IDP_UI_DATA_TYPE_ID */
+typedef struct IDPropertyUIDataID {
+ IDPropertyUIData base;
+} IDPropertyUIDataID;
+
typedef struct IDPropertyData {
void *pointer;
ListBase group;
@@ -87,6 +139,8 @@ typedef struct IDProperty {
/* totallen is total length of allocated array/string, including a buffer.
* Note that the buffering is mild; the code comes from python's list implementation. */
int totallen;
+
+ IDPropertyUIData *ui_data;
} IDProperty;
#define MAX_IDPROP_NAME 64