> I think the best solution in this case is to introduce a special event type 
> called "Invoke Event", usable only in modal keymaps. Invoke Event would be 
> the event type that resulted in the operator's invocation (it would be stored 
> in the Operator instance.
> 
> With this, modal keymaps would directly adjust themselves when operators are 
> remapped or if they are mapped to different events at the same time.

That sounds great!

I spent friday night getting the key maps working the way I want (basically 
mimicking 2.49 for the most part, but with emulate 3 buttons on).  I had to 
hack apart the keymaps and add all kinds of confirm events to key and click 
releases to get it working.  I also had to remove the "switch to rotate / 
switch to zoom" events (which I believe are a major part of the problems I was 
experiencing).  Sculpt is still broken, but intermittently so; I need more time 
to sort that out.  I think the reason this hits me most is because I use 
emulate 3 button.

This Invoke event-- could you talk about it a bit more?  I envisioned having 
three key mappings at the top of the list that could be mapped to a combination 
of mouse and keyboard buttons.  Then, when building keymaps you can choose this 
special class instead of mouse / keyboard for input.  This way, turning on 
Emulate 3 Button won't require immediate change on the rest of the keymaps-- 
they'd share the same trigger.  Also, changing the combination for Pan would 
change that combination in 2D image viewports as well.

The other idea I had was that the viewport manipulation operators triggerings 
could be checked as "toggle"-- on press it fires and on release it stops, 
similar to how the grease pencil only works if you hold down the D key to draw.

~ C


_______________________________________________
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers

Reply via email to