Revision: 20126
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20126
Author:   dingto
Date:     2009-05-10 14:12:05 +0200 (Sun, 10 May 2009)

Log Message:
-----------
2.5 Buttons:

*Added initial material buttons (Material Color, Ray Transparency, Ray Mirror, 
Subsurface Scattering)
Only works for default material atm. 

*some layout tweaks to the lamp panels. 

Modified Paths:
--------------
    branches/blender2.5/blender/release/ui/buttons_data_lamp.py

Added Paths:
-----------
    branches/blender2.5/blender/release/ui/buttons_material.py

Modified: branches/blender2.5/blender/release/ui/buttons_data_lamp.py
===================================================================
--- branches/blender2.5/blender/release/ui/buttons_data_lamp.py 2009-05-10 
08:53:47 UTC (rev 20125)
+++ branches/blender2.5/blender/release/ui/buttons_data_lamp.py 2009-05-10 
12:12:05 UTC (rev 20126)
@@ -33,6 +33,20 @@
                sub.itemR(lamp, "distance")
        
                sub = layout.sub(1)
+               sub.column()
+               sub.itemR(lamp, "color")
+               
+               layout.split(number=2)  
+               
+               sub = layout.sub(0)
+               sub.column()
+               sub.itemL(text="Illumination:")
+               sub.itemR(lamp, "layer")
+               sub.itemR(lamp, "negative")
+               sub.itemR(lamp, "specular")
+               sub.itemR(lamp, "diffuse")
+               
+               sub = layout.sub(1)
                if (lamp.type in ('LOCAL', 'SPOT')):
                        sub.column()
                        sub.itemR(lamp, "falloff_type")
@@ -51,20 +65,6 @@
                        if (lamp.shape == 'RECTANGLE'):
                                sub.itemR(lamp, "size", text="Size X")
                                sub.itemR(lamp, "size_y")
-               
-               layout.split(number=2)  
-               
-               sub = layout.sub(0)
-               sub.column()
-               sub.itemL(text="Illumination:")
-               sub.itemR(lamp, "layer")
-               sub.itemR(lamp, "negative")
-               sub.itemR(lamp, "specular")
-               sub.itemR(lamp, "diffuse")
-               
-               sub = layout.sub(1)
-               sub.column()
-               sub.itemR(lamp, "color")
                                
 class DATA_PT_sunsky(DataButtonsPanel):
        __idname__ = "DATA_PT_sunsky"
@@ -95,17 +95,17 @@
                        if (lamp.sky):
                                sub = layout.sub(0)
                                sub.column()
+                               sub.itemR(lamp, "sky_blend_type", text="Blend 
Type")
+                               sub.itemR(lamp, "sky_blend")
+                               sub.itemR(lamp, "sky_color_space", text="Color 
Space")
+                               sub.itemR(lamp, "sky_exposure")
+                               sub.column()
                                sub.itemR(lamp, "horizon_brightness", text="Hor 
Bright")
                                sub.itemR(lamp, "spread", text="Hor Spread")
                                sub.itemR(lamp, "sun_brightness", text="Sun 
Bright")
                                sub.itemR(lamp, "sun_size")
                                sub.itemR(lamp, "backscattered_light", 
text="Back Light")
-                               sub.column()
-                               sub.itemR(lamp, "sky_blend_type", text="Blend 
Type")
-                               sub.itemR(lamp, "sky_blend")
-                               sub.itemR(lamp, "sky_color_space", text="Color 
Space")
-                               sub.itemR(lamp, "sky_exposure")
-                       
+                               
                        if (lamp.atmosphere):
                                sub = layout.sub(1)
                                sub.column()
@@ -133,6 +133,20 @@
                layout.row()
                layout.itemR(lamp, "shadow_method", expand=True)
                
+               if (lamp.shadow_method in ('BUFFER_SHADOW', 'RAY_SHADOW')):
+               
+                       layout.split(number=2)
+                       
+                       sub = layout.sub(0)
+                       sub.column()
+                       sub.itemL(text="Options:")
+                       sub.itemR(lamp, "only_shadow")
+                       sub.itemR(lamp, "shadow_layer")
+                       
+                       sub = layout.sub(1)
+                       sub.column()
+                       sub.itemR(lamp, "shadow_color")
+               
                if (lamp.shadow_method == 'RAY_SHADOW'):
                
                        layout.column()
@@ -157,15 +171,16 @@
                                        layout.itemR(lamp, "jitter")    
                
                if (lamp.shadow_method == 'BUFFER_SHADOW'):
-                       layout.row()
-                       layout.itemR(lamp, "shadow_buffer_type")
+                       layout.column()
+                       layout.itemL(text="Buffer Type:")
+                       layout.itemR(lamp, "shadow_buffer_type", expand=True)
 
                        if (lamp.shadow_buffer_type in ('REGULAR', 'HALFWAY')):
                                layout.column_flow()
                                layout.itemL(text="Sample Buffers:")
-                               layout.itemR(lamp, "shadow_sample_buffers", 
text="")
+                               layout.itemR(lamp, "shadow_sample_buffers", 
expand=True)
                                layout.itemL(text="Filter Type:")
-                               layout.itemR(lamp, "shadow_filter_type", 
text="")
+                               layout.itemR(lamp, "shadow_filter_type", 
expand=True)
                                layout.column_flow()
                                layout.itemR(lamp, "shadow_buffer_size", 
text="Size")
                                layout.itemR(lamp, "shadow_buffer_samples", 
text="Samples")
@@ -175,7 +190,7 @@
                        if (lamp.shadow_buffer_type == 'IRREGULAR'):
                                layout.row()
                                layout.itemR(lamp, "shadow_buffer_bias", 
text="Bias")
-                               
+                       
                        layout.row()
                        layout.itemR(lamp, "auto_clip_start", text="Autoclip 
Start")
                        if not (lamp.auto_clip_start):
@@ -184,21 +199,7 @@
                        layout.itemR(lamp, "auto_clip_end", text="Autoclip End")
                        if not (lamp.auto_clip_end):
                                layout.itemR(lamp, "shadow_buffer_clip_end", 
text=" Clip End")
-               
-               if (lamp.shadow_method in ('BUFFER_SHADOW', 'RAY_SHADOW')):
-               
-                       layout.split(number=2)
-                       
-                       sub = layout.sub(0)
-                       sub.column()
-                       sub.itemL(text="Display:")
-                       sub.itemR(lamp, "only_shadow")
-                       sub.itemR(lamp, "shadow_layer")
-                       
-                       sub = layout.sub(1)
-                       sub.column()
-                       sub.itemR(lamp, "shadow_color")
-               
+
 class DATA_PT_spot(DataButtonsPanel):
        __idname__ = "DATA_PT_spot"
        __label__ = "Spot"

Added: branches/blender2.5/blender/release/ui/buttons_material.py
===================================================================
--- branches/blender2.5/blender/release/ui/buttons_material.py                  
        (rev 0)
+++ branches/blender2.5/blender/release/ui/buttons_material.py  2009-05-10 
12:12:05 UTC (rev 20126)
@@ -0,0 +1,130 @@
+
+import bpy
+
+class MaterialButtonsPanel(bpy.types.Panel):
+       __space_type__ = "BUTTONS_WINDOW"
+       __region_type__ = "WINDOW"
+       __context__ = "material"
+       
+class MATERIAL_PT_material(MaterialButtonsPanel):
+       __idname__= "MATERIAL_PT_material"
+       __label__ = "Material"
+       
+       def draw(self, context):
+               mat = context.main.materials[0]
+               layout = self.layout
+               
+               if not mat:
+                       return 
+       
+               layout.row()
+               layout.itemR(mat, "diffuse_color")
+               layout.itemR(mat, "specular_color")
+               layout.itemR(mat, "mirror_color")
+               
+               layout.row()
+               layout.itemR(mat, "color_model")
+               layout.itemR(mat, "alpha")
+               
+class MATERIAL_PT_sss(MaterialButtonsPanel):
+       __idname__= "MATERIAL_PT_sss"
+       __label__ = "Subsurface Scattering"
+       
+       def draw(self, context):
+               sss = context.main.materials[0].subsurface_scattering 
+               layout = self.layout
+               
+               if not sss:
+                       return 
+               
+               layout.row()
+               layout.itemR(sss, "enabled", text="Enable")
+               
+               layout.column_flow()
+               layout.itemR(sss, "error_tolerance")
+               layout.itemR(sss, "ior")
+               layout.itemR(sss, "scale")
+               
+               layout.row()
+               layout.itemR(sss, "color")
+               layout.itemR(sss, "radius")
+               
+               layout.column_flow()
+               layout.itemR(sss, "color_factor")
+               layout.itemR(sss, "texture_factor")
+               layout.itemR(sss, "front")
+               layout.itemR(sss, "back")
+               
+class MATERIAL_PT_raymir(MaterialButtonsPanel):
+       __idname__= "MATERIAL_PT_raymir"
+       __label__ = "Ray Mirror"
+       
+       def draw(self, context):
+               raym = context.main.materials[0].raytrace_mirror
+               layout = self.layout
+               
+               if not raym:
+                       return 
+
+               layout.row()
+               layout.itemR(raym, "enabled", text="Enable")
+               
+               layout.split(number=2)
+               
+               sub = layout.sub(0)
+               sub.column_flow()
+               sub.itemR(raym, "reflect", text="RayMir")
+               sub.itemR(raym, "fresnel")
+               sub.itemR(raym, "fresnel_fac", text="Fac")
+               
+               sub = layout.sub(1)
+               sub.column_flow()
+               sub.itemR(raym, "gloss")
+               sub.itemR(raym, "gloss_threshold")
+               sub.itemR(raym, "gloss_samples")
+               sub.itemR(raym, "gloss_anisotropic")
+               
+               layout.column_flow()
+               layout.itemR(raym, "distance", text="Max Dist")
+               layout.itemR(raym, "depth")
+               layout.itemR(raym, "fade_to")
+               
+class MATERIAL_PT_raytransp(MaterialButtonsPanel):
+       __idname__= "MATERIAL_PT_raytransp"
+       __label__= "Ray Transparency"
+
+       def draw(self, context):
+               rayt = context.main.materials[0].raytrace_transparency
+               layout = self.layout
+
+               if not rayt:
+                       return
+
+               layout.row()
+               layout.itemR(rayt, "enabled", text="Enable")
+               
+               layout.split(number=2)
+               
+               sub = layout.sub(0)
+               sub.column()
+               sub.itemR(rayt, "ior")
+               sub.itemR(rayt, "fresnel")
+               sub.itemR(rayt, "fresnel_fac", text="Fac")
+               
+               sub = layout.sub(1)
+               sub.column()
+               sub.itemR(rayt, "gloss")
+               sub.itemR(rayt, "gloss_threshold")
+               sub.itemR(rayt, "gloss_samples")
+               
+               layout.column_flow()
+               layout.itemR(rayt, "filter")
+               layout.itemR(rayt, "limit")
+               layout.itemR(rayt, "falloff")
+               layout.itemR(rayt, "specular_opacity")
+               layout.itemR(rayt, "depth")
+
+bpy.types.register(MATERIAL_PT_material)
+bpy.types.register(MATERIAL_PT_raymir)
+bpy.types.register(MATERIAL_PT_raytransp)
+bpy.types.register(MATERIAL_PT_sss)
\ No newline at end of file


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to