[Bf-funboard] New Keymap: selection

proxe proxe.err0r at gmail.com
Sat May 26 22:03:48 CEST 2012


I think that where missing a highly unused call menu in object mode, Its
the Select mode call menu, currently set to Alt+Select Mouse (RMB/LMB), I
think this menu should be upgraded to include functionality for other
modes. as far as I know it only works in object mode.

Could solve several issues with mapping selection, for example in edit mode
the call menu could incorporate select edge loop, edge ring or face loop.

I'm torn in the idea of having border select being mapped to select mouse,
I love the idea but when it comes to vertex pushing I love the speed
of tweak translating. perhaps a tweak mouse4button or mouse5button could be
used for border select for those people with a mouse with the forward and
back browser buttons.

Then again the forward and back buttons probably should be mapped to change
screens.

I wrote a pivot point menu that could be included in the key map, helps
reduce the frequency of  moving the left hand to the right side of keyboard
and encourages more use of different pivot points (at-least for me):

class VIEW3D_MT_pivot_point(bpy.types.Menu):
    """ A menu for switching between pivot point modes in 3D View.
    """
    bl_idname = "OBJECT_MT_pivot_point"
    bl_label = "Pivot Point"
    def draw(self, context):
        layout = self.layout
        obj = context.active_object
        props = layout.operator("wm.context_set_enum", text="Bounding Box
Center", icon='ROTATE')
        props.value = "BOUNDING_BOX_CENTER"
        props.data_path = "space_data.pivot_point"
        props = layout.operator("wm.context_set_enum", text="3D Cursor",
icon='CURSOR')
        props.value = "CURSOR"
        props.data_path = "space_data.pivot_point"
        props = layout.operator("wm.context_set_enum", text="Individual
Origins", icon='ROTATECOLLECTION')
        props.value = "INDIVIDUAL_ORIGINS"
        props.data_path = "space_data.pivot_point"
        props = layout.operator("wm.context_set_enum", text="Median Point",
icon='ROTATECENTER')
        props.value = "MEDIAN_POINT"
        props.data_path = "space_data.pivot_point"
        props = layout.operator("wm.context_set_enum", text="Active
Element", icon='ROTACTIVE')
        props.value = "ACTIVE_ELEMENT"
        props.data_path = "space_data.pivot_point"
        if (obj.mode == 'OBJECT' or obj.mode == 'POSE'):
            layout.separator()
            props = layout.operator("wm.context_toggle", text="Manipulate
Center Points", icon='ALIGN')
            props.data_path = "space_data.use_pivot_point_align"
bpy.utils.register_class(VIEW3D_MT_pivot_point)

Only bug I noticed is when each pivot mode don't use a hot-key in the key
map, the the menu displays them with the hot keys Shift-F2 for the pivot
points and O for manipulate center points. Maybe this isn't the proper way
to write this? Seemed to be the most straightforward to me.

I tested it with Ctrl-Tab, works nicely.

To be honest I think that the mode switch call menu should be mapped to Tab
key, maybe I've been using blender too long but using space bar feels so
weird.

I also thought about writing a menu for the shader modes, possibly mapping
it to alt-z would work, this way z still toggles between wire and solid.


More information about the Bf-funboard mailing list