[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [20614] branches/blender2.5/blender/source /blender: UI/RNA:

Brecht Van Lommel brecht at blender.org
Thu Jun 4 01:16:51 CEST 2009


Revision: 20614
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20614
Author:   blendix
Date:     2009-06-04 01:16:51 +0200 (Thu, 04 Jun 2009)

Log Message:
-----------
UI/RNA:
* Added an icon entry to RNA structs, instead of the UI_GetIconRNA
  function, to keep code together a bit more and make the lookup
  faster.

Modified Paths:
--------------
    branches/blender2.5/blender/source/blender/editors/include/UI_resources.h
    branches/blender2.5/blender/source/blender/editors/interface/interface_layout.c
    branches/blender2.5/blender/source/blender/editors/interface/interface_utils.c
    branches/blender2.5/blender/source/blender/editors/space_outliner/outliner.c
    branches/blender2.5/blender/source/blender/makesrna/RNA_access.h
    branches/blender2.5/blender/source/blender/makesrna/RNA_define.h
    branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_ID.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_action.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_armature.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_brush.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_camera.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_curve.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_define.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_fcurve.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_group.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_image.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_internal.h
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_internal_types.h
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_key.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_lamp.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_lattice.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_main.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_material.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_mesh.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_meta.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_modifier.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_nodetree.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_object.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_particle.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_rna.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_scene.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_screen.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_scriptlink.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_sound.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_text.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_texture.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_vfont.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_world.c

Modified: branches/blender2.5/blender/source/blender/editors/include/UI_resources.h
===================================================================
--- branches/blender2.5/blender/source/blender/editors/include/UI_resources.h	2009-06-03 23:04:43 UTC (rev 20613)
+++ branches/blender2.5/blender/source/blender/editors/include/UI_resources.h	2009-06-03 23:16:51 UTC (rev 20614)
@@ -1098,9 +1098,6 @@
 // get a 3 byte color, blended and shaded between two other char color pointers
 void	UI_GetColorPtrBlendShade3ubv(char *cp1, char *cp2, char *col, float fac, int offset);
 
-// get pointer from RNA pointer
-int		UI_GetIconRNA(struct PointerRNA *ptr);
-
 // internal (blender) usage only, for init and set active
 void 	UI_SetTheme(int spacetype, int regionid);
 

Modified: branches/blender2.5/blender/source/blender/editors/interface/interface_layout.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/interface/interface_layout.c	2009-06-03 23:04:43 UTC (rev 20613)
+++ branches/blender2.5/blender/source/blender/editors/interface/interface_layout.c	2009-06-03 23:16:51 UTC (rev 20614)
@@ -213,7 +213,7 @@
 
 static int ui_layout_vary_direction(uiLayout *layout)
 {
-	return (layout->root->type == UI_LAYOUT_HEADER)? UI_ITEM_VARY_X: UI_ITEM_VARY_Y;
+	return (layout->root->type == UI_LAYOUT_HEADER || layout->alignment != UI_LAYOUT_ALIGN_EXPAND)? UI_ITEM_VARY_X: UI_ITEM_VARY_Y;
 }
 
 /* estimated size of text + icon */
@@ -224,9 +224,9 @@
 	if(icon && strcmp(name, "") == 0)
 		return UI_UNIT_X; /* icon only */
 	else if(icon)
-		return (variable)? UI_GetStringWidth(name) + UI_UNIT_X: 10*UI_UNIT_X; /* icon + text */
+		return (variable)? UI_GetStringWidth(name) + 4 + UI_UNIT_X: 10*UI_UNIT_X; /* icon + text */
 	else
-		return (variable)? UI_GetStringWidth(name) + UI_UNIT_X: 10*UI_UNIT_X; /* text only */
+		return (variable)? UI_GetStringWidth(name) + 4 + UI_UNIT_X: 10*UI_UNIT_X; /* text only */
 }
 
 static void ui_item_size(uiItem *item, int *r_w, int *r_h)

Modified: branches/blender2.5/blender/source/blender/editors/interface/interface_utils.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/interface/interface_utils.c	2009-06-03 23:04:43 UTC (rev 20613)
+++ branches/blender2.5/blender/source/blender/editors/interface/interface_utils.c	2009-06-03 23:16:51 UTC (rev 20614)
@@ -65,186 +65,6 @@
 
 /*************************** RNA Utilities ******************************/
 
-int UI_GetIconRNA(PointerRNA *ptr)
-{
-	StructRNA *rnatype= ptr->type;
-
-	if(rnatype == &RNA_Scene)
-		return ICON_SCENE_DATA;
-	else if(rnatype == &RNA_World)
-		return ICON_WORLD_DATA;
-	else if(rnatype == &RNA_Object)
-		return ICON_OBJECT_DATA;
-	else if(rnatype == &RNA_Mesh)
-		return ICON_MESH_DATA;
-	else if(rnatype == &RNA_MeshVertex)
-		return ICON_VERTEXSEL;
-	else if(rnatype == &RNA_MeshEdge)
-		return ICON_EDGESEL;
-	else if(rnatype == &RNA_MeshFace)
-		return ICON_FACESEL;
-	else if(rnatype == &RNA_MeshTextureFace)
-		return ICON_FACESEL_HLT;
-	else if(rnatype == &RNA_VertexGroup)
-		return ICON_GROUP_VERTEX;
-	else if(rnatype == &RNA_VertexGroupElement)
-		return ICON_GROUP_VERTEX;
-	else if(rnatype == &RNA_Curve)
-		return ICON_CURVE_DATA;
-	else if(rnatype == &RNA_MetaBall)
-		return ICON_META_DATA;
-	else if(rnatype == &RNA_MetaElement)
-		return ICON_OUTLINER_DATA_META;
-	else if(rnatype == &RNA_Lattice)
-		return ICON_LATTICE_DATA;
-	else if(rnatype == &RNA_Armature)
-		return ICON_ARMATURE_DATA;
-	else if(rnatype == &RNA_Bone)
-		return ICON_BONE_DATA;
-	else if(rnatype == &RNA_Camera)
-		return ICON_CAMERA_DATA;
-	else if(rnatype == &RNA_LocalLamp)
-		return ICON_LAMP_DATA;
-	else if(rnatype == &RNA_AreaLamp)
-		return ICON_LAMP_DATA;
-	else if(rnatype == &RNA_SpotLamp)
-		return ICON_LAMP_DATA;
-	else if(rnatype == &RNA_SunLamp)
-		return ICON_LAMP_DATA;
-	else if(rnatype == &RNA_HemiLamp)
-		return ICON_LAMP_DATA;
-	else if(rnatype == &RNA_Lamp)
-		return ICON_LAMP_DATA;
-	else if(rnatype == &RNA_Group)
-		return ICON_GROUP;
-	else if(rnatype == &RNA_ParticleSystem)
-		return ICON_PARTICLE_DATA;
-	else if(rnatype == &RNA_ParticleSettings)
-		return ICON_PARTICLE_DATA;
-	else if(rnatype == &RNA_Material)
-		return ICON_MATERIAL_DATA;
-	else if(rnatype == &RNA_Texture)
-		return ICON_TEXTURE_DATA;
-	else if(rnatype == &RNA_TextureSlot)
-		return ICON_TEXTURE_DATA;
-	else if(rnatype == &RNA_WorldTextureSlot)
-		return ICON_TEXTURE_DATA;
-	else if(rnatype == &RNA_MaterialTextureSlot)
-		return ICON_TEXTURE_DATA;
-	else if(rnatype == &RNA_Image)
-		return ICON_IMAGE_DATA;
-	else if(rnatype == &RNA_Screen)
-		return ICON_SPLITSCREEN;
-	else if(rnatype == &RNA_NodeTree)
-		return ICON_NODE;
-	else if(rnatype == &RNA_Text)
-		return ICON_TEXT;
-	else if(rnatype == &RNA_Sound)
-		return ICON_SOUND;
-	else if(rnatype == &RNA_Brush)
-		return ICON_BRUSH_DATA;
-	else if(rnatype == &RNA_VectorFont)
-		return ICON_FONT_DATA;
-	else if(rnatype == &RNA_Library)
-		return ICON_LIBRARY_DATA_DIRECT;
-	else if(rnatype == &RNA_Action)
-		return ICON_ACTION;
-	else if(rnatype == &RNA_FCurve)
-		return ICON_ANIM_DATA;
-	//else if(rnatype == &RNA_Ipo)
-	//	return ICON_ANIM_DATA;
-	else if(rnatype == &RNA_Key)
-		return ICON_SHAPEKEY_DATA;
-	else if(rnatype == &RNA_Main)
-		return ICON_BLENDER;
-	else if(rnatype == &RNA_Struct)
-		return ICON_RNA;
-	else if(rnatype == &RNA_Property)
-		return ICON_RNA;
-	else if(rnatype == &RNA_BooleanProperty)
-		return ICON_RNA;
-	else if(rnatype == &RNA_IntProperty)
-		return ICON_RNA;
-	else if(rnatype == &RNA_FloatProperty)
-		return ICON_RNA;
-	else if(rnatype == &RNA_StringProperty)
-		return ICON_RNA;
-	else if(rnatype == &RNA_EnumProperty)
-		return ICON_RNA;
-	else if(rnatype == &RNA_EnumPropertyItem)
-		return ICON_RNA;
-	else if(rnatype == &RNA_PointerProperty)
-		return ICON_RNA;
-	else if(rnatype == &RNA_CollectionProperty)
-		return ICON_RNA;
-	else if(rnatype == &RNA_GameObjectSettings)
-		return ICON_GAME;
-	else if(rnatype == &RNA_ScriptLink)
-		return ICON_PYTHON;
-	
-	/* modifiers */
-	else if(rnatype == &RNA_SubsurfModifier)
-		return ICON_MOD_SUBSURF;
-	else if(rnatype == &RNA_ArmatureModifier)
-		return ICON_MOD_ARMATURE;
-	else if(rnatype == &RNA_LatticeModifier)
-		return ICON_MOD_LATTICE;
-	else if(rnatype == &RNA_CurveModifier)
-		return ICON_MOD_CURVE;
-	else if(rnatype == &RNA_BuildModifier)
-		return ICON_MOD_BUILD;
-	else if(rnatype == &RNA_MirrorModifier)
-		return ICON_MOD_MIRROR;
-	else if(rnatype == &RNA_DecimateModifier)
-		return ICON_MOD_DECIM;
-	else if(rnatype == &RNA_WaveModifier)
-		return ICON_MOD_WAVE;
-	else if(rnatype == &RNA_HookModifier)
-		return ICON_HOOK;
-	else if(rnatype == &RNA_SoftbodyModifier)
-		return ICON_MOD_SOFT;
-	else if(rnatype == &RNA_BooleanModifier)
-		return ICON_MOD_BOOLEAN;
-	else if(rnatype == &RNA_ParticleInstanceModifier)
-		return ICON_MOD_PARTICLES;
-	else if(rnatype == &RNA_ParticleSystemModifier)
-		return ICON_MOD_PARTICLES;
-	else if(rnatype == &RNA_EdgeSplitModifier)
-		return ICON_MOD_EDGESPLIT;
-	else if(rnatype == &RNA_ArrayModifier)
-		return ICON_MOD_ARRAY;
-	else if(rnatype == &RNA_UVProjectModifier)
-		return ICON_MOD_UVPROJECT;
-	else if(rnatype == &RNA_DisplaceModifier)
-		return ICON_MOD_DISPLACE;
-	else if(rnatype == &RNA_ShrinkwrapModifier)
-		return ICON_MOD_SHRINKWRAP;
-	else if(rnatype == &RNA_CastModifier)
-		return ICON_MOD_CAST;
-	else if(rnatype == &RNA_MeshDeformModifier)
-		return ICON_MOD_MESHDEFORM;
-	else if(rnatype == &RNA_BevelModifier)
-		return ICON_MOD_BEVEL;
-	else if(rnatype == &RNA_SmoothModifier)
-		return ICON_MOD_SMOOTH;
-	else if(rnatype == &RNA_SimpleDeformModifier)
-		return ICON_MOD_SIMPLEDEFORM;
-	else if(rnatype == &RNA_MaskModifier)
-		return ICON_MOD_MASK;
-	else if(rnatype == &RNA_ClothModifier)
-		return ICON_MOD_CLOTH;
-	else if(rnatype == &RNA_ExplodeModifier)
-		return ICON_MOD_EXPLODE;
-	else if(rnatype == &RNA_CollisionModifier)
-		return ICON_MOD_PHYSICS;
-	else if(rnatype == &RNA_FluidSimulationModifier)
-		return ICON_MOD_FLUIDSIM;
-	else if(rnatype == &RNA_MultiresModifier)
-		return ICON_MOD_MULTIRES;
-	else
-		return ICON_DOT;
-}
-
 uiBut *uiDefAutoButR(uiBlock *block, PointerRNA *ptr, PropertyRNA *prop, int index, char *name, int icon, int x1, int y1, int x2, int y2)
 {
 	uiBut *but=NULL;
@@ -297,7 +117,7 @@
 			pptr= RNA_property_pointer_get(ptr, prop);
 			if(!pptr.type)
 				pptr.type= RNA_property_pointer_type(prop);
-			icon= UI_GetIconRNA(&pptr);
+			icon= RNA_struct_ui_icon(pptr.type);
 
 			but= uiDefIconTextButR(block, IDPOIN, 0, icon, name, x1, y1, x2, y2, ptr, propname, index, 0, 0, -1, -1, NULL);
 			break;

Modified: branches/blender2.5/blender/source/blender/editors/space_outliner/outliner.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/space_outliner/outliner.c	2009-06-03 23:04:43 UTC (rev 20613)
+++ branches/blender2.5/blender/source/blender/editors/space_outliner/outliner.c	2009-06-03 23:16:51 UTC (rev 20614)
@@ -3643,7 +3643,7 @@
 				UI_icon_draw(x, y, ICON_OBJECT_DATA);
 				break;
 			case TSE_RNA_STRUCT:
-				UI_icon_draw(x, y, UI_GetIconRNA(&te->rnaptr));
+				UI_icon_draw(x, y, RNA_struct_ui_icon(te->rnaptr.type));
 				break;
 			default:
 				UI_icon_draw(x, y, ICON_DOT); break;

Modified: branches/blender2.5/blender/source/blender/makesrna/RNA_access.h
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/RNA_access.h	2009-06-03 23:04:43 UTC (rev 20613)
+++ branches/blender2.5/blender/source/blender/makesrna/RNA_access.h	2009-06-03 23:16:51 UTC (rev 20614)
@@ -331,6 +331,7 @@
 const char *RNA_struct_identifier(StructRNA *type);
 const char *RNA_struct_ui_name(StructRNA *type);
 const char *RNA_struct_ui_description(StructRNA *type);
+int RNA_struct_ui_icon(StructRNA *type);
 
 PropertyRNA *RNA_struct_name_property(StructRNA *type);
 PropertyRNA *RNA_struct_iterator_property(StructRNA *type);

Modified: branches/blender2.5/blender/source/blender/makesrna/RNA_define.h
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/RNA_define.h	2009-06-03 23:04:43 UTC (rev 20613)
+++ branches/blender2.5/blender/source/blender/makesrna/RNA_define.h	2009-06-03 23:16:51 UTC (rev 20614)
@@ -59,6 +59,7 @@

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list