First merge with 2.5 branch.
[blender.git] / release / ui / buttons_scene.py
index 1e14e4d26b46698ef6c9d8191a48a782d381f6a6..6b3c7dca49dc471d914bca071c87e2583dff3622 100644 (file)
@@ -4,7 +4,7 @@ import bpy
 class RenderButtonsPanel(bpy.types.Panel):
        __space_type__ = "BUTTONS_WINDOW"
        __region_type__ = "WINDOW"
-       __context__ = "render"
+       __context__ = "scene"
 
 class RENDER_PT_shading(RenderButtonsPanel):
        __label__ = "Shading"
@@ -13,35 +13,33 @@ class RENDER_PT_shading(RenderButtonsPanel):
                scene = context.scene
                layout = self.layout
 
-               if not scene:
-                       return
-
                rd = scene.render_data
-
-               layout.column_flow()
-               layout.itemR(rd, "render_shadows", text="Shadows")
-               layout.itemR(rd, "render_sss", text="SSS")
-               layout.itemR(rd, "render_envmaps", text="EnvMap")
-               layout.itemR(rd, "render_radiosity", text="Radio")
-               layout.itemR(rd, "render_raytracing", text="Ray Tracing")
-               layout.itemR(rd, "octree_resolution")
-
-               layout.row()
-               layout.itemR(rd, "alpha_mode")
-               layout.row()
-               layout.itemR(rd, "free_image_textures")
-
+               
+               layout.split(number=2)
+               
+               sub = layout.sub(0)
+               sub.column()
+               sub.itemR(rd, "render_shadows", text="Shadows")
+               sub.itemR(rd, "render_sss", text="SSS")
+               sub.itemR(rd, "render_envmaps", text="EnvMap")
+               sub.itemR(rd, "render_radiosity", text="Radio")
+               
+               sub = layout.sub(1)
+               subsub = sub.box()
+               subsub.column()
+               subsub.itemR(rd, "render_raytracing", text="Ray Tracing")
+               if (rd.render_raytracing):
+                       subsub.itemR(rd, "octree_resolution", text="Octree")
+               sub.row()
+               sub.itemR(rd, "alpha_mode")
+               
 class RENDER_PT_image(RenderButtonsPanel):
        __label__ = "Image"
-       __context__ = "render"
 
        def draw(self, context):
                scene = context.scene
                layout = self.layout
 
-               if not scene:
-                       return
-
                rd = scene.render_data
 
                layout.column_flow()
@@ -49,53 +47,48 @@ class RENDER_PT_image(RenderButtonsPanel):
                layout.itemR(rd, "resolution_y", text="SizeY")
                layout.itemR(rd, "pixel_aspect_x", text="AspX")
                layout.itemR(rd, "pixel_aspect_y", text="AspY")
-               
-               layout.row()
-               layout.itemR(rd, "quality")
-               
-               layout.row()
-               layout.itemR(rd, "placeholders")
-               layout.itemR(rd, "no_overwrite")
-               layout.itemR(rd, "file_extensions")
-               
-               layout.row()
-               layout.itemR(rd, "crop_to_border")
 
+               sub = layout.box()
+               sub.row()
+               sub.itemR(rd, "image_type")
+               sub.row()
+               sub.itemR(rd, "file_extensions")
+               sub.itemR(rd, "color_mode")
+               if rd.image_type in ("AVIJPEG", "JPEG"):
+                       sub.row()
+                       sub.itemR(rd, "quality")
+       
 class RENDER_PT_antialiasing(RenderButtonsPanel):
        __label__ = "Anti-Aliasing"
-       __context__ = "render"
 
        def draw(self, context):
                scene = context.scene
                layout = self.layout
 
-               if not scene:
-                       return
-
                rd = scene.render_data
 
-               layout.column_flow()
-               layout.itemR(rd, "antialiasing", text="Enable")
-               layout.itemR(rd, "antialiasing_samples", text="Samples")
-               layout.itemR(rd, "pixel_filter")
-               layout.itemR(rd, "filter_size")
-               
                layout.row()
-               layout.itemR(rd, "save_buffers")
-               if (rd.save_buffers):
-                       layout.itemR(rd, "full_sample")
+               layout.itemR(rd, "antialiasing", text="Enable")
+               if (rd.antialiasing):
+                       layout.row()
+                       layout.itemL(text="Samples:")
+                       layout.itemR(rd, "antialiasing_samples", expand=True)
+                       layout.row()
+                       layout.itemR(rd, "pixel_filter")
+                       layout.itemR(rd, "filter_size")
+
+                       layout.row()
+                       layout.itemR(rd, "save_buffers")
+                       if (rd.save_buffers):
+                               layout.itemR(rd, "full_sample")
 
 class RENDER_PT_render(RenderButtonsPanel):
        __label__ = "Render"
-       __context__ = "render"
 
        def draw(self, context):
                scene = context.scene
                layout = self.layout
 
-               if not scene:
-                       return
-
                rd = scene.render_data
 
                layout.row()
@@ -104,46 +97,65 @@ class RENDER_PT_render(RenderButtonsPanel):
 
                layout.row()
                layout.itemR(scene, "start_frame", text="Start")
-               layout.itemR(scene, "end_frame", text="End")
+               layout.itemR(rd, "fps")
                layout.itemR(scene, "current_frame", text="Frame")
+               
                layout.row()
-               layout.itemR(rd, "fps")
+               layout.itemR(scene, "end_frame", text="End")
                layout.itemR(rd, "fps_base",text="/")
+               layout.itemR(scene, "frame_step", text="Step")
 
                layout.row()
                layout.itemR(rd, "do_composite")
                layout.itemR(rd, "do_sequence")
 
                layout.row()
-               layout.itemL(text="General")
+               layout.itemL(text="General:")
 
-               layout.row()
+               layout.column_flow()
                layout.itemR(rd, "resolution_percentage", text="Size ")
-               layout.row()
                layout.itemR(rd, "dither_intensity")
-
-               layout.row()
                layout.itemR(rd, "parts_x")
                layout.itemR(rd, "parts_y")
-
-               layout.row()
-               layout.itemR(rd, "threads_mode")
-               if (rd.threads_mode == 'THREADS_FIXED'):
-                       layout.itemR(rd, "threads")
                
-               layout.row()
-               layout.itemR(rd, "fields", text="Fields")
-               layout.itemR(rd, "field_order", text="Order")
-               layout.itemR(rd, "fields_still", text="Still")
-
-               layout.row()
-               layout.itemL(text="Extra:")
-               layout.row()
-               layout.itemR(rd, "border", text="Border Render")
-               layout.itemR(rd, "panorama")
-               layout.itemR(rd, "backbuf")
+               layout.split(number=2)
+               
+               sub = layout.sub(0)
+               subsub = sub.box()
+               subsub.column()
+               subsub.itemL(text="Threads Mode:")
+               subsub.itemR(rd, "threads_mode", expand=True)
+               if rd.threads_mode == 'THREADS_FIXED':
+                       subsub.itemR(rd, "threads")
+               
+               subsub = sub.box()
+               subsub.column()
+               subsub.itemL(text="Distributed Rendering:")
+               subsub.itemR(rd, "placeholders")
+               subsub.itemR(rd, "no_overwrite")
+               subsub = sub.box()
+               subsub.column()
+               subsub.itemR(rd, "fields", text="Fields")
+               if (rd.fields):
+                       subsub.itemR(rd, "fields_still", text="Still")
+                       subsub.itemR(rd, "field_order", text="Order")
+               
+               sub = layout.sub(1)
+               subsub = sub.box()
+               subsub.column()
+               subsub.itemL(text="Extra:")
+               subsub.itemR(rd, "panorama")
+               subsub.itemR(rd, "backbuf")
+               subsub.itemR(rd, "free_image_textures")
+               
+               subsub = sub.box()
+               subsub.column()
+               subsub.itemL(text="Border:")
+               subsub.itemR(rd, "border", text="Border Render")
+               if (rd.border):
+                       subsub.itemR(rd, "crop_to_border")
 
 bpy.types.register(RENDER_PT_render)
 bpy.types.register(RENDER_PT_antialiasing)
 bpy.types.register(RENDER_PT_shading)
-bpy.types.register(RENDER_PT_image)
\ No newline at end of file
+bpy.types.register(RENDER_PT_image)