[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [24251] trunk/blender: Enabled theme editing in user preferences.

William Reynish william at reynish.com
Mon Nov 2 18:18:17 CET 2009


Revision: 24251
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=24251
Author:   billrey
Date:     2009-11-02 18:18:17 +0100 (Mon, 02 Nov 2009)

Log Message:
-----------
Enabled theme editing in user preferences. There's still no way to Load/Save/Add/Delete though.
Code could be optimized greatly, but found it hard to get it to work nicely with auto-generated code.

Modified Paths:
--------------
    trunk/blender/release/scripts/ui/space_userpref.py
    trunk/blender/source/blender/editors/include/UI_icons.h
    trunk/blender/source/blender/makesrna/intern/rna_userdef.c

Modified: trunk/blender/release/scripts/ui/space_userpref.py
===================================================================
--- trunk/blender/release/scripts/ui/space_userpref.py	2009-11-02 17:15:14 UTC (rev 24250)
+++ trunk/blender/release/scripts/ui/space_userpref.py	2009-11-02 17:18:17 UTC (rev 24251)
@@ -342,6 +342,722 @@
         sub1.itemR(system, "memory_cache_limit")
 
 
+class USERPREF_PT_theme(bpy.types.Panel):
+    bl_space_type = 'USER_PREFERENCES'
+    bl_label = "Themes"
+    bl_region_type = 'WINDOW'
+    bl_show_header = False
+
+    def poll(self, context):
+        userpref = context.user_preferences
+
+        return (userpref.active_section == 'THEMES')
+
+    def draw(self, context):
+        layout = self.layout
+        
+        theme = context.user_preferences.themes[0]
+        
+        
+        split = layout.split(percentage=0.33)
+        split.itemR(theme, "active_theme", text="")
+        
+        layout.itemS()
+        
+        split = layout.split()
+        
+        if theme.active_theme == 'VIEW_3D':
+            v3d = theme.view_3d
+            
+            col = split.column()  
+            col.itemR(v3d, "back")
+            col.itemR(v3d, "title")
+            col.itemR(v3d, "text")
+            col.itemR(v3d, "text_hi")
+            col.itemR(v3d, "header")
+            col.itemR(v3d, "header_text")
+            
+            col = split.column()  
+            col.itemR(v3d, "header_text_hi")    
+            col.itemR(v3d, "grid")
+            col.itemR(v3d, "panel", slider=True)
+            col.itemR(v3d, "wire")
+            col.itemR(v3d, "lamp", slider=True)
+            
+            col = split.column()  
+            col.itemR(v3d, "current_frame")
+            col.itemR(v3d, "editmesh_active", slider=True)  
+            col.itemR(v3d, "object_selected")
+            col.itemR(v3d, "object_active")
+            col.itemR(v3d, "object_grouped")
+            col.itemR(v3d, "object_grouped_active")
+            
+            col = split.column()  
+            col.itemR(v3d, "transform")
+            col.itemR(v3d, "vertex")
+            col.itemR(v3d, "face", slider=True)
+            col.itemR(v3d, "normal")
+            col.itemR(v3d, "bone_solid")
+            col.itemR(v3d, "bone_pose") 
+
+#           col.itemR(v3d, "edge") Doesn't seem to work
+        elif theme.active_theme == 'USER_INTERFACE':
+            
+            ui = theme.user_interface.wcol_regular
+            
+            layout.itemL(text="Regular:")
+            
+            sub = layout.row()
+            sub1 = sub.column()  
+            sub1.itemR(ui, "outline")
+            sub1.itemR(ui, "item", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "inner", slider=True)
+            sub1.itemR(ui, "inner_sel", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "text")
+            sub1.itemR(ui, "text_sel")
+            sub1 = sub.column()
+            sub1.itemR(ui, "shaded")
+            sub2 = sub1.column(align=True)
+            sub2.active = ui.shaded
+            sub2.itemR(ui, "shadetop")
+            sub2.itemR(ui, "shadedown")
+            layout.itemS()
+            
+            ui = theme.user_interface.wcol_tool
+            layout.itemL(text="Tool:")
+            
+            sub = layout.row()
+            sub1 = sub.column()  
+            sub1.itemR(ui, "outline")
+            sub1.itemR(ui, "item", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "inner", slider=True)
+            sub1.itemR(ui, "inner_sel", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "text")
+            sub1.itemR(ui, "text_sel")
+            sub1 = sub.column()
+            sub1.itemR(ui, "shaded")
+            sub2 = sub1.column(align=True)
+            sub2.active = ui.shaded
+            sub2.itemR(ui, "shadetop")
+            sub2.itemR(ui, "shadedown")
+            
+            ui = theme.user_interface.wcol_radio
+            layout.itemL(text="Radio Buttons:")
+            
+            sub = layout.row()
+            sub1 = sub.column()  
+            sub1.itemR(ui, "outline")
+            sub1.itemR(ui, "item", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "inner", slider=True)
+            sub1.itemR(ui, "inner_sel", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "text")
+            sub1.itemR(ui, "text_sel")
+            sub1 = sub.column()
+            sub1.itemR(ui, "shaded")
+            sub2 = sub1.column(align=True)
+            sub2.active = ui.shaded
+            sub2.itemR(ui, "shadetop")
+            sub2.itemR(ui, "shadedown")
+            
+            ui = theme.user_interface.wcol_text
+            layout.itemL(text="Text:")
+            
+            sub = layout.row()
+            sub1 = sub.column()  
+            sub1.itemR(ui, "outline")
+            sub1.itemR(ui, "item", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "inner", slider=True)
+            sub1.itemR(ui, "inner_sel", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "text")
+            sub1.itemR(ui, "text_sel")
+            sub1 = sub.column()
+            sub1.itemR(ui, "shaded")
+            sub2 = sub1.column(align=True)
+            sub2.active = ui.shaded
+            sub2.itemR(ui, "shadetop")
+            sub2.itemR(ui, "shadedown")
+            
+            ui = theme.user_interface.wcol_option
+            layout.itemL(text="Option:")
+            
+            sub = layout.row()
+            sub1 = sub.column()  
+            sub1.itemR(ui, "outline")
+            sub1.itemR(ui, "item", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "inner", slider=True)
+            sub1.itemR(ui, "inner_sel", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "text")
+            sub1.itemR(ui, "text_sel")
+            sub1 = sub.column()
+            sub1.itemR(ui, "shaded")
+            sub2 = sub1.column(align=True)
+            sub2.active = ui.shaded
+            sub2.itemR(ui, "shadetop")
+            sub2.itemR(ui, "shadedown")
+            
+            ui = theme.user_interface.wcol_toggle
+            layout.itemL(text="Toggle:")
+            
+            sub = layout.row()
+            sub1 = sub.column()  
+            sub1.itemR(ui, "outline")
+            sub1.itemR(ui, "item", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "inner", slider=True)
+            sub1.itemR(ui, "inner_sel", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "text")
+            sub1.itemR(ui, "text_sel")
+            sub1 = sub.column()
+            sub1.itemR(ui, "shaded")
+            sub2 = sub1.column(align=True)
+            sub2.active = ui.shaded
+            sub2.itemR(ui, "shadetop")
+            sub2.itemR(ui, "shadedown")
+            
+            ui = theme.user_interface.wcol_num
+            layout.itemL(text="Number Field:")
+            
+            sub = layout.row()
+            sub1 = sub.column()  
+            sub1.itemR(ui, "outline")
+            sub1.itemR(ui, "item", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "inner", slider=True)
+            sub1.itemR(ui, "inner_sel", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "text")
+            sub1.itemR(ui, "text_sel")
+            sub1 = sub.column()
+            sub1.itemR(ui, "shaded")
+            sub2 = sub1.column(align=True)
+            sub2.active = ui.shaded
+            sub2.itemR(ui, "shadetop")
+            sub2.itemR(ui, "shadedown")
+            
+            ui = theme.user_interface.wcol_numslider
+            layout.itemL(text="Value Slider:")
+            
+            sub = layout.row()
+            sub1 = sub.column()  
+            sub1.itemR(ui, "outline")
+            sub1.itemR(ui, "item", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "inner", slider=True)
+            sub1.itemR(ui, "inner_sel", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "text")
+            sub1.itemR(ui, "text_sel")
+            sub1 = sub.column()
+            sub1.itemR(ui, "shaded")
+            sub2 = sub1.column(align=True)
+            sub2.active = ui.shaded
+            sub2.itemR(ui, "shadetop")
+            sub2.itemR(ui, "shadedown")
+            
+            ui = theme.user_interface.wcol_box
+            layout.itemL(text="Box:")
+            
+            sub = layout.row()
+            sub1 = sub.column()  
+            sub1.itemR(ui, "outline")
+            sub1.itemR(ui, "item", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "inner", slider=True)
+            sub1.itemR(ui, "inner_sel", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "text")
+            sub1.itemR(ui, "text_sel")
+            sub1 = sub.column()
+            sub1.itemR(ui, "shaded")
+            sub2 = sub1.column(align=True)
+            sub2.active = ui.shaded
+            sub2.itemR(ui, "shadetop")
+            sub2.itemR(ui, "shadedown")
+            
+            ui = theme.user_interface.wcol_menu
+            layout.itemL(text="Menu:")
+            
+            sub = layout.row()
+            sub1 = sub.column()  
+            sub1.itemR(ui, "outline")
+            sub1.itemR(ui, "item", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "inner", slider=True)
+            sub1.itemR(ui, "inner_sel", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "text")
+            sub1.itemR(ui, "text_sel")
+            sub1 = sub.column()
+            sub1.itemR(ui, "shaded")
+            sub2 = sub1.column(align=True)
+            sub2.active = ui.shaded
+            sub2.itemR(ui, "shadetop")
+            sub2.itemR(ui, "shadedown")
+            
+            ui = theme.user_interface.wcol_pulldown
+            layout.itemL(text="Pulldown:")
+            
+            sub = layout.row()
+            sub1 = sub.column()  
+            sub1.itemR(ui, "outline")
+            sub1.itemR(ui, "item", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "inner", slider=True)
+            sub1.itemR(ui, "inner_sel", slider=True)
+            sub1 = sub.column()
+            sub1.itemR(ui, "text")

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list