[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18411] branches/blender2.5/blender/source /blender: RNA
Brecht Van Lommel
brecht at blender.org
Wed Jan 7 22:05:53 CET 2009
Revision: 18411
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18411
Author: blendix
Date: 2009-01-07 22:05:51 +0100 (Wed, 07 Jan 2009)
Log Message:
-----------
RNA
* DNA_userdef_types.h, done. Patch by Nathaniel Garbutt, thanks!
Modified Paths:
--------------
branches/blender2.5/blender/source/blender/makesdna/DNA_userdef_types.h
branches/blender2.5/blender/source/blender/makesrna/RNA_access.h
branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c
branches/blender2.5/blender/source/blender/makesrna/intern/rna_constraint.c
branches/blender2.5/blender/source/blender/makesrna/intern/rna_text.c
branches/blender2.5/blender/source/blender/makesrna/intern/rna_userdef.c
Modified: branches/blender2.5/blender/source/blender/makesdna/DNA_userdef_types.h
===================================================================
--- branches/blender2.5/blender/source/blender/makesdna/DNA_userdef_types.h 2009-01-07 20:40:27 UTC (rev 18410)
+++ branches/blender2.5/blender/source/blender/makesdna/DNA_userdef_types.h 2009-01-07 21:05:51 UTC (rev 18411)
@@ -331,5 +331,11 @@
#define GP_PAINT_DOSMOOTH (1<<0)
#define GP_PAINT_DOSIMPLIFY (1<<1)
+/* theme drawtypes */
+#define TH_MINIMAL 0
+#define TH_ROUNDSHADED 1
+#define TH_ROUNDED 2
+#define TH_OLDSKOOL 3
+#define TH_SHADED 4
#endif
Modified: branches/blender2.5/blender/source/blender/makesrna/RNA_access.h
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/RNA_access.h 2009-01-07 20:40:27 UTC (rev 18410)
+++ branches/blender2.5/blender/source/blender/makesrna/RNA_access.h 2009-01-07 21:05:51 UTC (rev 18411)
@@ -36,6 +36,8 @@
extern BlenderRNA BLENDER_RNA;
extern StructRNA RNA_Action;
+extern StructRNA RNA_ActionChannel;
+extern StructRNA RNA_ActionGroup;
extern StructRNA RNA_Actuator;
extern StructRNA RNA_ActuatorSensor;
extern StructRNA RNA_AlwaysSensor;
@@ -55,8 +57,8 @@
extern StructRNA RNA_Camera;
extern StructRNA RNA_CastModifier;
extern StructRNA RNA_CharInfo;
+extern StructRNA RNA_ClothCollisionSettings;
extern StructRNA RNA_ClothModifier;
-extern StructRNA RNA_ClothCollisionSettings;
extern StructRNA RNA_ClothSettings;
extern StructRNA RNA_CollectionProperty;
extern StructRNA RNA_CollisionModifier;
@@ -118,7 +120,6 @@
extern StructRNA RNA_LatticeModifier;
extern StructRNA RNA_LatticePoint;
extern StructRNA RNA_Library;
-extern StructRNA RNA_MappingTexture;
extern StructRNA RNA_MCol;
extern StructRNA RNA_MColLayer;
extern StructRNA RNA_MFloatProperty;
@@ -223,11 +224,30 @@
extern StructRNA RNA_TextLine;
extern StructRNA RNA_TextMarker;
extern StructRNA RNA_Texture;
+extern StructRNA RNA_TextureSlot;
+extern StructRNA RNA_Theme;
+extern StructRNA RNA_ThemeActionEditor;
+extern StructRNA RNA_ThemeAudioWindow;
+extern StructRNA RNA_ThemeBoneColorSet;
+extern StructRNA RNA_ThemeButtonsWindow;
+extern StructRNA RNA_ThemeFileBrowser;
+extern StructRNA RNA_ThemeImageEditor;
+extern StructRNA RNA_ThemeIpoEditor;
+extern StructRNA RNA_ThemeNLAEditor;
+extern StructRNA RNA_ThemeNodeEditor;
+extern StructRNA RNA_ThemeOutliner;
+extern StructRNA RNA_ThemeSequenceEditor;
+extern StructRNA RNA_ThemeTextEditor;
+extern StructRNA RNA_ThemeTimeline;
+extern StructRNA RNA_ThemeUserInterface;
+extern StructRNA RNA_ThemeUserPreferences;
+extern StructRNA RNA_ThemeView3D;
extern StructRNA RNA_TouchSensor;
extern StructRNA RNA_TransformSequence;
extern StructRNA RNA_UVProjectModifier;
extern StructRNA RNA_UnknownType;
extern StructRNA RNA_UserPreferences;
+extern StructRNA RNA_UserSolidLight;
extern StructRNA RNA_VectorFont;
extern StructRNA RNA_VertexGroup;
extern StructRNA RNA_WaveModifier;
Modified: branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c 2009-01-07 20:40:27 UTC (rev 18410)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c 2009-01-07 21:05:51 UTC (rev 18411)
@@ -167,6 +167,15 @@
return mask;
}
+static int rna_color_quantize(PropertyRNA *prop, PropertyDefRNA *dp)
+{
+ if(prop->type == PROP_FLOAT && prop->subtype == PROP_COLOR)
+ if(strcmp(dp->dnatype, "float") != 0 && strcmp(dp->dnatype, "double") != 0)
+ return 1;
+
+ return 0;
+}
+
static char *rna_def_property_get_func(FILE *f, StructRNA *srna, PropertyRNA *prop, PropertyDefRNA *dp)
{
char *func;
@@ -212,6 +221,8 @@
else {
if(prop->type == PROP_BOOLEAN && dp->booleanbit)
fprintf(f, " return (%s(data->%s[index] & %d) != 0);\n", (dp->booleannegative)? "!": "", dp->dnaname, dp->booleanbit);
+ else if(rna_color_quantize(prop, dp))
+ fprintf(f, " return (%s)(data->%s[index]/255.0f);\n", rna_type_type(prop), dp->dnaname);
else
fprintf(f, " return (%s)%s(data->%s[index]);\n", rna_type_type(prop), (dp->booleannegative)? "!": "", dp->dnaname);
}
@@ -326,6 +337,9 @@
fprintf(f, " if(%svalue) data->%s[index] |= %d;\n", (dp->booleannegative)? "!": "", dp->dnaname, dp->booleanbit);
fprintf(f, " else data->%s[index] &= ~%d;\n", dp->dnaname, dp->booleanbit);
}
+ else if(rna_color_quantize(prop, dp)) {
+ fprintf(f, " data->%s[index]= FTOCHAR(value);\n", dp->dnaname);
+ }
else {
rna_clamp_value(f, prop);
fprintf(f, " data->%s[index]= %svalue;\n", dp->dnaname, (dp->booleannegative)? "!": "");
Modified: branches/blender2.5/blender/source/blender/makesrna/intern/rna_constraint.c
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/intern/rna_constraint.c 2009-01-07 20:40:27 UTC (rev 18410)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_constraint.c 2009-01-07 21:05:51 UTC (rev 18411)
@@ -84,7 +84,7 @@
/* data */
srna= RNA_def_struct(brna, "Constraint", NULL );
RNA_def_struct_ui_text(srna, "Constraint", "alter the transformation of 'Objects' or 'Bones' from a number of predefined constraints");
- //RNA_def_struct_refine_func(srna, "rna_Constraint_refine"); // XXX or should this go down below with the data?
+ RNA_def_struct_refine_func(srna, "rna_Constraint_refine");
RNA_def_struct_sdna(srna, "bConstraint");
/* strings */
Modified: branches/blender2.5/blender/source/blender/makesrna/intern/rna_text.c
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/intern/rna_text.c 2009-01-07 20:40:27 UTC (rev 18410)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_text.c 2009-01-07 21:05:51 UTC (rev 18411)
@@ -36,18 +36,6 @@
#ifdef RNA_RUNTIME
-static float rna_TextMarker_color_get(PointerRNA *ptr, int index)
-{
- TextMarker *marker= (TextMarker*)ptr->data;
- return marker->color[index]/255.0f;
-}
-
-static void rna_TextMarker_color_set(PointerRNA *ptr, int index, float value)
-{
- TextMarker *marker= (TextMarker*)ptr->data;
- marker->color[index] = (char)(CLAMPIS(value*255.0f, 0, 255));
-}
-
static void rna_Text_filename_get(PointerRNA *ptr, char *value)
{
Text *text= (Text*)ptr->data;
@@ -163,7 +151,6 @@
RNA_def_property_ui_text(prop, "Edit All", "Edit all markers of the same group as one.");
prop= RNA_def_property(srna, "color", PROP_FLOAT, PROP_COLOR);
- RNA_def_property_float_funcs(prop, "rna_TextMarker_color_get", "rna_TextMarker_color_set", NULL);
RNA_def_property_ui_text(prop, "Color", "Color to display the marker with.");
}
Modified: branches/blender2.5/blender/source/blender/makesrna/intern/rna_userdef.c
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/intern/rna_userdef.c 2009-01-07 20:40:27 UTC (rev 18410)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_userdef.c 2009-01-07 21:05:51 UTC (rev 18411)
@@ -30,28 +30,1671 @@
#include "rna_internal.h"
#include "DNA_userdef_types.h"
+#include "DNA_ipo_types.h"
#ifdef RNA_RUNTIME
+static void rna_userdef_lmb_select_set(struct PointerRNA *ptr,int value)
+{
+ UserDef *userdef = (UserDef*)ptr->data;
+
+ if(value) {
+ userdef->flag |= USER_LMOUSESELECT;
+ userdef->flag &= ~USER_TWOBUTTONMOUSE;
+ }
+ else
+ userdef->flag &= ~USER_LMOUSESELECT;
+}
+
+static void rna_userdef_rmb_select_set(struct PointerRNA *ptr,int value)
+{
+ rna_userdef_lmb_select_set(ptr, !value);
+}
+
+static void rna_userdef_emulate_set(struct PointerRNA *ptr,int value)
+{
+ UserDef *userdef = (UserDef*)ptr->data;
+
+ if(userdef->flag & USER_LMOUSESELECT)
+ userdef->flag &= ~USER_TWOBUTTONMOUSE;
+ else
+ userdef->flag ^= USER_TWOBUTTONMOUSE;
+}
+
+static int rna_userdef_autokeymode_get(struct PointerRNA *ptr)
+{
+ UserDef *userdef = (UserDef*)ptr->data;
+ short retval = userdef->autokey_mode;
+
+ if(!(userdef->autokey_mode & AUTOKEY_ON))
+ retval |= AUTOKEY_ON;
+
+ return retval;
+}
+
+static void rna_userdef_autokeymode_set(struct PointerRNA *ptr,int value)
+{
+ UserDef *userdef = (UserDef*)ptr->data;
+
+ if(value == AUTOKEY_MODE_NORMAL) {
+ userdef->autokey_mode |= (AUTOKEY_MODE_NORMAL - AUTOKEY_ON);
+ userdef->autokey_mode &= ~(AUTOKEY_MODE_EDITKEYS - AUTOKEY_ON);
+ }
+ else if(value == AUTOKEY_MODE_EDITKEYS) {
+ userdef->autokey_mode |= (AUTOKEY_MODE_EDITKEYS - AUTOKEY_ON);
+ userdef->autokey_mode &= ~(AUTOKEY_MODE_NORMAL - AUTOKEY_ON);
+ }
+}
+
#else
-static void rna_def_userdef(BlenderRNA *brna)
+static void rna_def_userdef_theme_ui(BlenderRNA *brna)
{
StructRNA *srna;
PropertyRNA *prop;
- srna= RNA_def_struct(brna, "UserPreferences", NULL);
- RNA_def_struct_sdna(srna, "UserDef");
- RNA_def_struct_ui_text(srna, "User Preferences", "");
+ static EnumPropertyItem button_theme_styles[] = {
+ {TH_MINIMAL, "MINIMAL", "Minimal", ""},
+ {TH_SHADED, "SHADED", "Shaded", ""},
+ {TH_ROUNDED, "ROUNDED", "Rounded", ""},
+ {TH_ROUNDSHADED, "ROUNDSHADED", "Round Shaded", ""},
+ {TH_OLDSKOOL, "OLDSKOOL", "Old Skool", ""},
+ {0, NULL, NULL, NULL}};
+ srna= RNA_def_struct(brna, "ThemeUserInterface", NULL);
+ RNA_def_struct_sdna(srna, "ThemeUI");
+ RNA_def_struct_ui_text(srna, "Theme User Interface", "Theme settings for user interface elements.");
+
+ prop= RNA_def_property(srna, "outline", PROP_FLOAT, PROP_COLOR);
+ RNA_def_property_array(prop, 3);
+ RNA_def_property_ui_text(prop, "Outline", "");
+
+ prop= RNA_def_property(srna, "neutral", PROP_FLOAT, PROP_COLOR);
+ RNA_def_property_array(prop, 3);
+ RNA_def_property_ui_text(prop, "Neutral", "");
+
+ prop= RNA_def_property(srna, "action", PROP_FLOAT, PROP_COLOR);
+ RNA_def_property_array(prop, 3);
+ RNA_def_property_ui_text(prop, "Action", "");
+
+ prop= RNA_def_property(srna, "setting", PROP_FLOAT, PROP_COLOR);
+ RNA_def_property_array(prop, 3);
+ RNA_def_property_ui_text(prop, "Setting", "");
+
+ prop= RNA_def_property(srna, "special_setting_1", PROP_FLOAT, PROP_COLOR);
+ RNA_def_property_float_sdna(prop, NULL, "setting1");
+ RNA_def_property_array(prop, 3);
+ RNA_def_property_ui_text(prop, "Special Setting 1", "");
+
+ prop= RNA_def_property(srna, "special_setting_2", PROP_FLOAT, PROP_COLOR);
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list