[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [32252] trunk/blender/source/blender/ makesrna/intern: Fix #24095: user preferences theme colors didn' t match exactly with what

Brecht Van Lommel brechtvanlommel at pandora.be
Sat Oct 2 16:17:20 CEST 2010


Revision: 32252
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=32252
Author:   blendix
Date:     2010-10-02 16:17:20 +0200 (Sat, 02 Oct 2010)

Log Message:
-----------
Fix #24095: user preferences theme colors didn't match exactly with what
was drawn. Problem was that these were not set to be in gamma space. Also
needed to fix automatic 0..255 to 0..1 range conversion for PROP_COLOR_GAMMA,
was only working for PROP_COLOR.

Modified Paths:
--------------
    trunk/blender/source/blender/makesrna/intern/makesrna.c
    trunk/blender/source/blender/makesrna/intern/rna_userdef.c

Modified: trunk/blender/source/blender/makesrna/intern/makesrna.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/makesrna.c	2010-10-02 14:08:09 UTC (rev 32251)
+++ trunk/blender/source/blender/makesrna/intern/makesrna.c	2010-10-02 14:17:20 UTC (rev 32252)
@@ -364,7 +364,7 @@
 
 static int rna_color_quantize(PropertyRNA *prop, PropertyDefRNA *dp)
 {
-	if(prop->type == PROP_FLOAT && prop->subtype == PROP_COLOR)
+	if(prop->type == PROP_FLOAT && (prop->subtype==PROP_COLOR || prop->subtype==PROP_COLOR_GAMMA))
 		if(strcmp(dp->dnatype, "float") != 0 && strcmp(dp->dnatype, "double") != 0)
 			return 1;
 	

Modified: trunk/blender/source/blender/makesrna/intern/rna_userdef.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_userdef.c	2010-10-02 14:08:09 UTC (rev 32251)
+++ trunk/blender/source/blender/makesrna/intern/rna_userdef.c	2010-10-02 14:17:20 UTC (rev 32252)
@@ -334,32 +334,32 @@
 	RNA_def_struct_sdna(srna, "uiWidgetColors");
 	RNA_def_struct_ui_text(srna, "Theme Widget Color Set", "Theme settings for widget color sets");
 		
-	prop= RNA_def_property(srna, "outline", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "outline", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Outline", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
-	prop= RNA_def_property(srna, "inner", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "inner", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 4);
 	RNA_def_property_ui_text(prop, "Inner", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
-	prop= RNA_def_property(srna, "inner_sel", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "inner_sel", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 4);
 	RNA_def_property_ui_text(prop, "Inner Selected", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
-	prop= RNA_def_property(srna, "item", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "item", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 4);
 	RNA_def_property_ui_text(prop, "Item", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
-	prop= RNA_def_property(srna, "text", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "text", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Text", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
-	prop= RNA_def_property(srna, "text_sel", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "text_sel", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Text Selected", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
@@ -389,32 +389,32 @@
 	RNA_def_struct_sdna(srna, "uiWidgetStateColors");
 	RNA_def_struct_ui_text(srna, "Theme Widget State Color", "Theme settings for widget state colors");
 		
-	prop= RNA_def_property(srna, "inner_anim", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "inner_anim", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Animated", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 
-	prop= RNA_def_property(srna, "inner_anim_sel", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "inner_anim_sel", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Animated Selected", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
-	prop= RNA_def_property(srna, "inner_key", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "inner_key", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Keyframe", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 
-	prop= RNA_def_property(srna, "inner_key_sel", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "inner_key_sel", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Keyframe Selected", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 
-	prop= RNA_def_property(srna, "inner_driven", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "inner_driven", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Driven", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 
-	prop= RNA_def_property(srna, "inner_driven_sel", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "inner_driven_sel", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Driven Selected", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
@@ -566,60 +566,60 @@
 	PropertyRNA *prop;
 
 	/* window */
-	prop= RNA_def_property(srna, "back", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "back", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Window Background", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 
-	prop= RNA_def_property(srna, "title", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "title", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Title", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
-	prop= RNA_def_property(srna, "text", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "text", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Text", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 
-	prop= RNA_def_property(srna, "text_hi", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "text_hi", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Text Highlight", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 
 	/* header */
-	prop= RNA_def_property(srna, "header", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "header", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Header", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 
-	prop= RNA_def_property(srna, "header_text", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "header_text", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Header Text", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
-	prop= RNA_def_property(srna, "header_text_hi", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "header_text_hi", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Header Text Highlight", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
 	/* buttons */
 //	if(! ELEM(spacetype, SPACE_BUTS, SPACE_OUTLINER)) {
-	prop= RNA_def_property(srna, "button", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "button", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Region Background", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
-	prop= RNA_def_property(srna, "button_title", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "button_title", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Region Text Titles", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
-	prop= RNA_def_property(srna, "button_text", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "button_text", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Region Text", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 	
-	prop= RNA_def_property(srna, "button_text_hi", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "button_text_hi", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Region Text Highlight", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
@@ -627,22 +627,22 @@
 	
 	/* list/channels */
 	if(ELEM5(spacetype, SPACE_IPO, SPACE_ACTION, SPACE_NLA, SPACE_NODE, SPACE_FILE)) {
-		prop= RNA_def_property(srna, "list", PROP_FLOAT, PROP_COLOR);
+		prop= RNA_def_property(srna, "list", PROP_FLOAT, PROP_COLOR_GAMMA);
 		RNA_def_property_array(prop, 3);
 		RNA_def_property_ui_text(prop, "Source List", "");
 		RNA_def_property_update(prop, 0, "rna_userdef_update");
 		
-		prop= RNA_def_property(srna, "list_title", PROP_FLOAT, PROP_COLOR);
+		prop= RNA_def_property(srna, "list_title", PROP_FLOAT, PROP_COLOR_GAMMA);
 		RNA_def_property_array(prop, 3);
 		RNA_def_property_ui_text(prop, "Source List Title", "");
 		RNA_def_property_update(prop, 0, "rna_userdef_update");
 		
-		prop= RNA_def_property(srna, "list_text", PROP_FLOAT, PROP_COLOR);
+		prop= RNA_def_property(srna, "list_text", PROP_FLOAT, PROP_COLOR_GAMMA);
 		RNA_def_property_array(prop, 3);
 		RNA_def_property_ui_text(prop, "Source List Text", "");
 		RNA_def_property_update(prop, 0, "rna_userdef_update");
 		
-		prop= RNA_def_property(srna, "list_text_hi", PROP_FLOAT, PROP_COLOR);
+		prop= RNA_def_property(srna, "list_text_hi", PROP_FLOAT, PROP_COLOR_GAMMA);
 		RNA_def_property_array(prop, 3);
 		RNA_def_property_ui_text(prop, "Source List Text Highlight", "");
 		RNA_def_property_update(prop, 0, "rna_userdef_update");
@@ -653,12 +653,12 @@
 {
 	PropertyRNA *prop;
 
-	prop= RNA_def_property(srna, "vertex", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "vertex", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Vertex", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
 
-	prop= RNA_def_property(srna, "vertex_select", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "vertex_select", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);
 	RNA_def_property_ui_text(prop, "Vertex Select", "");
 	RNA_def_property_update(prop, 0, "rna_userdef_update");
@@ -673,27 +673,27 @@
 {
 	PropertyRNA *prop;
 
-	prop= RNA_def_property(srna, "edge_select", PROP_FLOAT, PROP_COLOR);
+	prop= RNA_def_property(srna, "edge_select", PROP_FLOAT, PROP_COLOR_GAMMA);
 	RNA_def_property_array(prop, 3);

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list