[Bf-committers] Re: [Bf-blender-cvs] CVS commit: blender/source/blender/blenkernel BKE_bad_level_calls.h BKE_global.h blender/source/blender/blenkernel/bad_level_call_stubs stubs.c blender/source/blender/blenkernel/intern blender.c object.c scene.c screen.c text.c blender/source/blender/blenloader/intern readfile.c writefile.c ...

Willian Padovani Germano wgermano at ig.com.br
Mon May 9 01:43:48 CEST 2005


Willian Padovani Germano wrote:

># SPACEHANDLER.VIEW3D.EVENT
>
>import Blender
>from Blender import Draw
>
>evt = Blender.event
>if evt == Draw.AKEY:
>  print "a"
>elif evt == Draw.LEFTMOUSE:
>  print "left mouse button"
>else:
>  return # ignore, pass event back to Blender
>
>Blender.event = None # tell Blender not to process itself the event
>  
>
Just in case someone tries, my example above is wrong, that "return" is 
out of a function, duh! (thanks pidhash for testing).  This should work 
(make it a Blender Text, go to the 3d View -> View menu -> Space Handler 
Scripts submenu and click on the text name there to make it active for 
that window):

# SPACEHANDLER.VIEW3D.EVENT
  
import Blender
from Blender import Draw
  
evt = Blender.event
if evt >= Draw.AKEY and evt <= Draw.ZKEY:
  Draw.PupMenu("%s", % chr(evt))
elif evt in [Draw.LEFTMOUSE, Draw.MIDDLEMOUSE, Draw.RIGHTMOUSE]:
  Draw.Pupmenu("Mouse button %d pressed" % evt)
else: evt = None # tell that we want to return the event

# set Blender.event to None so grabbed event won't be
# further processed by Blender:
if evt: Blender.event = None

# ---

Not sure poping buttons in the event handler will be recommended practice, or if this too should only be done from the draw handler, but this is just a test.


-- 
Willian



More information about the Bf-committers mailing list