[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [33433] trunk/blender: fix [#25015] Ctrl+L linking to scene list does not scroll when the list is larger than screen resolution

Campbell Barton ideasman42 at gmail.com
Thu Dec 2 23:58:23 CET 2010


Revision: 33433
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=33433
Author:   campbellbarton
Date:     2010-12-02 23:58:23 +0100 (Thu, 02 Dec 2010)

Log Message:
-----------
fix [#25015] Ctrl+L linking to scene list does not scroll when the list is larger than screen resolution

Modified Paths:
--------------
    trunk/blender/release/scripts/ui/space_sequencer.py
    trunk/blender/release/scripts/ui/space_view3d.py
    trunk/blender/source/blender/editors/object/object_relations.c
    trunk/blender/source/blender/editors/space_sequencer/sequencer_add.c

Modified: trunk/blender/release/scripts/ui/space_sequencer.py
===================================================================
--- trunk/blender/release/scripts/ui/space_sequencer.py	2010-12-02 21:55:55 UTC (rev 33432)
+++ trunk/blender/release/scripts/ui/space_sequencer.py	2010-12-02 22:58:23 UTC (rev 33433)
@@ -202,7 +202,12 @@
         layout.operator_context = 'INVOKE_REGION_WIN'
 
         layout.column()
-        layout.operator_menu_enum("sequencer.scene_strip_add", "scene", text="Scene...")
+        if len(bpy.data.scenes) > 10:
+            layout.operator_context = 'INVOKE_DEFAULT'
+            layout.operator("sequencer.scene_strip_add", text="Scene...")
+        else:
+            layout.operator_menu_enum("sequencer.scene_strip_add", "scene", text="Scene...")
+
         layout.operator("sequencer.movie_strip_add", text="Movie")
         layout.operator("sequencer.image_strip_add", text="Image")
         layout.operator("sequencer.sound_strip_add", text="Sound")

Modified: trunk/blender/release/scripts/ui/space_view3d.py
===================================================================
--- trunk/blender/release/scripts/ui/space_view3d.py	2010-12-02 21:55:55 UTC (rev 33432)
+++ trunk/blender/release/scripts/ui/space_view3d.py	2010-12-02 22:58:23 UTC (rev 33433)
@@ -916,8 +916,14 @@
     def draw(self, context):
         layout = self.layout
 
-        layout.operator_menu_enum("object.make_links_scene", "scene", text="Objects to Scene...")
-        layout.operator_menu_enum("marker.make_links_scene", "scene", text="Markers to Scene...")
+        if(len(bpy.data.scenes) > 10):
+            layout.operator_context = 'INVOKE_DEFAULT'
+            layout.operator("object.make_links_scene", text="Objects to Scene...", icon='OUTLINER_OB_EMPTY')
+            layout.operator("object.make_links_scene", text="Markers to Scene...", icon='OUTLINER_OB_EMPTY')
+        else:
+            layout.operator_menu_enum("object.make_links_scene", "scene", text="Objects to Scene...")
+            layout.operator_menu_enum("marker.make_links_scene", "scene", text="Markers to Scene...")
+
         layout.operator_enums("object.make_links_data", "type")  # inline
 
 

Modified: trunk/blender/source/blender/editors/object/object_relations.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_relations.c	2010-12-02 21:55:55 UTC (rev 33432)
+++ trunk/blender/source/blender/editors/object/object_relations.c	2010-12-02 22:58:23 UTC (rev 33433)
@@ -1313,6 +1313,7 @@
 	ot->idname= "OBJECT_OT_make_links_scene";
 
 	/* api callbacks */
+	ot->invoke= WM_enum_search_invoke;
 	ot->exec= make_links_scene_exec;
 	/* better not run the poll check */
 

Modified: trunk/blender/source/blender/editors/space_sequencer/sequencer_add.c
===================================================================
--- trunk/blender/source/blender/editors/space_sequencer/sequencer_add.c	2010-12-02 21:55:55 UTC (rev 33432)
+++ trunk/blender/source/blender/editors/space_sequencer/sequencer_add.c	2010-12-02 22:58:23 UTC (rev 33433)
@@ -253,6 +253,9 @@
 		return OPERATOR_CANCELLED;
 	}
 
+	if(!RNA_property_is_set(op->ptr, "scene"))
+		return WM_enum_search_invoke(C, op, event);
+
 	sequencer_generic_invoke_xy__internal(C, op, event, 0);
 	return sequencer_add_scene_strip_exec(C, op);
 	// needs a menu





More information about the Bf-blender-cvs mailing list