[Bf-committers] Developer support for new keymap

Brecht Van Lommel brechtvanlommel at pandora.be
Fri May 11 22:19:53 CEST 2012


Hi,

"add_to_selection" is usually called "extend", and
"remove_from_selection" "deselect". In the interest of preserving
compatibility with existing keymaps it might be good to stick with
those property names? I'm not volunteering to implement these but
don't mind reviewing patches.

Brecht.

On Fri, May 11, 2012 at 10:07 PM, Nathan Vegdahl <cessen at cessen.com> wrote:
> Hi everyone,
> As I'm working on the new keymap, I'm running into cases where I need
> certain operators to be extended or added.  In most cases I am able to
> do this via writing my own operators in Python, but there are a few
> cases where this is not the case.
>
> The main ones right now relate to selection.  My intent is to make it
> so that all selection tools Replace Selection by default, but can also
> Add To Selection and Remove From Selection via the shift and ctrl
> modifier keys respectively.  I am at a loss in many cases for how I
> would accomplish this via pure python.
>
> For example, the view3d.select() operator has the following options:
> - extend
> - center
> - enumerate
> - object
>
> I propose that we add two more options:
> - add_to_selection
> - remove_from_selection
> (The names aren't important to me--these may be too verbose.  Or we
> could instead, perhaps, add a "selection_model" enum that would
> replace "extend" and have three possible values.  Or whatever.  The
> specific mechanism is not important.)
>
> add_to_selection would make the operator add whatever is clicked upon
> to the selection if it is not already selected, making it active as
> well.  But unlike extend, it will _not_ unselect an item if it is
> already selected/active (acting as a sort of toggle), it will instead
> at most make the item active if it is not already.
>
> Complementary to that, remove_from_selection will unselect the clicked
> upon item, and will do nothing if the item is already unselected.
>
> That is just one example, but other changes I need are similar sorts
> of things.  The intent is to keep the operators fully compatible with
> the current keymap, whilst also adding support for the needs of the
> new keymap.  The intent is also to only add/modify C operators in
> cases where accomplishing the goal via python is not reasonable.
>
> I am happy to either attempt to make these changes myself in Blender's
> C code (I will submit patches since I am not familiar enough with
> those areas of the code to be confident yet), or if these sorts of
> things are fairly quick changes then I would be very appreciative if
> someone familiar with the code would be willing to work with me.
>
> Any volunteers?
>
> Thanks!
>
> --Nathan
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers


More information about the Bf-committers mailing list