/[fenfire]/fenfire/org/fenfire/fenpdf/events/eventhandler.py
ViewVC logotype

Diff of /fenfire/org/fenfire/fenpdf/events/eventhandler.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2 by tjl, Fri Aug 22 09:06:58 2003 UTC revision 1.3 by tjl, Sat Aug 23 10:48:41 2003 UTC
# Line 18  class EventHandler: Line 18  class EventHandler:
18          """          """
19          if dbg: p(ev)          if dbg: p(ev)
20    
21            if ev.getType() == ev.MOUSE_CLICKED:
22                if (self.fenPDF.events.mousemenu.mouse(ev, oldvs) or
23                    self.fenPDF.events.buttons.mouseEvent(ev, oldvs)):
24                    p('context seen, now cleaning it')
25                    self.context.clean()
26                    self.fenPDF.events.mouse.mainMouse.flush()
27                    vob.AbstractUpdateManager.chg()
28                    return 1
29    
30                self.context.clean()
31    
32          if ev.getType() == ev.MOUSE_RELEASED:          if ev.getType() == ev.MOUSE_RELEASED:
33              p('mainMouse released? - there\'s a bug in here!')              p('mainMouse released? - there\'s a bug in here!')
34    
# Line 36  class EventHandler: Line 47  class EventHandler:
47    
48              # There is a bug in AbstractUpdateManager code(?) and that's why now is must to return.              # There is a bug in AbstractUpdateManager code(?) and that's why now is must to return.
49          self.context.states.lastEvent = ev          self.context.states.lastEvent = ev
         return 0  
50    
51      def contextMouse(self, ev, oldvs):          buoymanager = self.fenPDF.views.getBuoyManager()
52          if ev.getType() != ev.MOUSE_CLICKED:          """ Returns true if buoymanager has eaten the event ;)"""
53              return 0          if not hasattr(buoymanager, 'vs'):
54                vob.AbstractUpdateManager.setNoAnimation()
55          if (self.context.doMouse(ev, oldvs) or              vob.AbstractUpdateManager.chg()
56              self.fenPDF.events.buttons.mouseEvent(ev, oldvs)):              return 1
57              p('context seen, now cleaning it')  
58              self.context.clean()  
59              self.fenPDF.events.mouse.mainMouse.flush()          if ev.getType() == ev.MOUSE_DRAGGED:
60                if buoymanager.singles[buoymanager.lastIndex].mainNode.mouse(ev, buoymanager.vs):
61                    buoymanager.replaceScene = buoymanager.vs
62                    vob.AbstractUpdateManager.setNoAnimation()
63              vob.AbstractUpdateManager.chg()              vob.AbstractUpdateManager.chg()
64              return 1              return 1
65    
66          self.context.clean()          buoyhit = buoymanager.findIfBuoyHit(buoymanager.vs, ev.getX(), ev.getY())
67            if buoyhit != None:
68                single, link  = buoyhit
69                # pa("IN CS: ",cs, link)
70                buoymanager.buoyHit.set(buoymanager.singles[single], link)
71                if buoymanager.eventHandler.buoyMouse(buoymanager, ev, buoymanager.singles[single], link):
72                    return 1
73                return 0
74    
75            topmostMainNode = buoymanager.findTopmostMainNode(buoymanager.vs, ev.getX(), ev.getY())
76    
77            # If the most upper main node is available use it.
78            if topmostMainNode:
79                if topmostMainNode.mouse(ev, buoymanager.vs):
80                    buoymanager.replaceScene = buoymanager.vs
81                    vob.AbstractUpdateManager.setNoAnimation()
82                vob.AbstractUpdateManager.chg()
83                return 1
84          return 0          return 0
85    
86    
87            return 0
88    
89    
90    
91      def buoyMouse(self, mgr, ev, single, link):      def buoyMouse(self, mgr, ev, single, link):
92          if self.fenPDF.events.mouse.buoyMouse.deliverEvent(ev):          if self.fenPDF.events.mouse.buoyMouse.deliverEvent(ev):
93              vob.AbstractUpdateManager.chg()              vob.AbstractUpdateManager.chg()

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26