EventListener.st
changeset 574 a4fe01515dc1
parent 327 08f7c1c026b6
child 1173 8c6ccf98efd9
equal deleted inserted replaced
573:9c21ccad5178 574:a4fe01515dc1
    40 documentation
    40 documentation
    41 "
    41 "
    42     abstract class for event listeners. EventListeners can be used to intercept
    42     abstract class for event listeners. EventListeners can be used to intercept
    43     incoming events (keyboard & mouse) directly from a sensor, or even
    43     incoming events (keyboard & mouse) directly from a sensor, or even
    44     for a complete display device.
    44     for a complete display device.
    45     One application is the automatic help, which tracks entering/leaving
    45     A concrete application is the bubble help, which tracks entering/leaving
    46     views, to popup some help message. See concrete code in ActiveHelp.
    46     views, and pops up some help message. 
       
    47     See concrete code in ActiveHelp.
       
    48 
    47     For each intercepted event, a corresponding method is called for in instances
    49     For each intercepted event, a corresponding method is called for in instances
    48     of myself - these should return true, if the event is to be ignored (i.e.
    50     of myself - these MUST return true, if the event is to be ignored (i.e.
    49     assumed to be processed and consumed by the reader, or false, if the normal
    51     assumed to be processed and consumed by the reader, 
    50     event procedure should be performed. Since this is an abstract class,
    52     and MUST return false, if the normal event procedure should be performed. 
    51     all of my intercept methods return false. They are meant to be redefined
    53     Since this is an abstract class,
    52     in concrete subclasses.
    54     all of my intercept methods return false. 
       
    55     They are meant to be redefined in concrete subclasses.
    53 
    56 
    54     [see also:]
    57     [see also:]
    55         WindowSensor WindowEvent WindowGroup
    58 	WindowSensor WindowEvent WindowGroup
    56 
    59 
    57     [author:]
    60     [author:]
    58         Claus Gittinger
    61 	Claus Gittinger
    59 "
    62 "
    60 ! !
    63 ! !
    61 
    64 
    62 !EventListener methodsFor:'events'!
    65 !EventListener methodsFor:'events'!
    63 
    66 
    64 buttonMotion:state x:x y:y view:aView
    67 buttonMotion:state x:x y:y view:aView
    65     "not handled here - should be redefined in a concrete subclas"
    68     "not handled here - should be redefined in a concrete subclass"
    66 
    69 
    67     ^ false
    70     ^ false
    68 
    71 
    69     "Modified: 23.4.1996 / 21:57:54 / cg"
    72     "Modified: 23.4.1996 / 21:57:54 / cg"
    70 !
    73 !
    71 
    74 
    72 buttonMultiPress:button x:x y:y view:aView
    75 buttonMultiPress:button x:x y:y view:aView
    73     "not handled here - should be redefined in a concrete subclas"
    76     "not handled here - should be redefined in a concrete subclass"
    74 
    77 
    75     ^ false
    78     ^ false
    76 
    79 
    77     "Modified: 23.4.1996 / 21:57:58 / cg"
    80     "Modified: 23.4.1996 / 21:57:58 / cg"
    78 !
    81 !
    79 
    82 
    80 buttonPress:button x:x y:y view:aView
    83 buttonPress:button x:x y:y view:aView
    81     "not handled here - should be redefined in a concrete subclas"
    84     "not handled here - should be redefined in a concrete subclass"
    82 
    85 
    83     ^ false
    86     ^ false
    84 
    87 
    85     "Modified: 23.4.1996 / 21:58:01 / cg"
    88     "Modified: 23.4.1996 / 21:58:01 / cg"
    86 !
    89 !
    87 
    90 
    88 buttonRelease:button x:x y:y view:aView
    91 buttonRelease:button x:x y:y view:aView
    89     "not handled here - should be redefined in a concrete subclas"
    92     "not handled here - should be redefined in a concrete subclass"
    90 
    93 
    91     ^ false
    94     ^ false
    92 
    95 
    93     "Modified: 23.4.1996 / 21:58:03 / cg"
    96     "Modified: 23.4.1996 / 21:58:03 / cg"
    94 !
    97 !
    95 
    98 
    96 keyPress:key x:x y:y view:aView
    99 keyPress:key x:x y:y view:aView
    97     "not handled here - should be redefined in a concrete subclas"
   100     "not handled here - should be redefined in a concrete subclass"
    98 
   101 
    99     ^ false
   102     ^ false
   100 
   103 
   101     "Modified: 23.4.1996 / 21:58:08 / cg"
   104     "Modified: 23.4.1996 / 21:58:08 / cg"
   102 !
   105 !
   103 
   106 
   104 keyRelease:key x:x y:y view:aView
   107 keyRelease:key x:x y:y view:aView
   105     "not handled here - should be redefined in a concrete subclas"
   108     "not handled here - should be redefined in a concrete subclass"
   106 
   109 
   107     ^ false
   110     ^ false
   108 
   111 
   109     "Modified: 23.4.1996 / 21:58:11 / cg"
   112     "Modified: 23.4.1996 / 21:58:11 / cg"
   110 !
   113 !
   111 
   114 
   112 pointerEnter:state x:x y:y view:view
   115 pointerEnter:state x:x y:y view:view
   113     "not handled here - should be redefined in a concrete subclas"
   116     "not handled here - should be redefined in a concrete subclass"
   114 
   117 
   115     ^ false
   118     ^ false
   116 
   119 
   117     "Modified: 23.4.1996 / 21:58:14 / cg"
   120     "Modified: 23.4.1996 / 21:58:14 / cg"
   118 !
   121 !
   119 
   122 
   120 pointerLeave:state view:view
   123 pointerLeave:state view:view
   121     "not handled here - should be redefined in a concrete subclas"
   124     "not handled here - should be redefined in a concrete subclass"
   122 
   125 
   123     ^ false
   126     ^ false
   124 
   127 
   125     "Modified: 23.4.1996 / 21:58:17 / cg"
   128     "Modified: 23.4.1996 / 21:58:17 / cg"
       
   129 ! !
       
   130 
       
   131 !EventListener methodsFor:'events - window creation'!
       
   132 
       
   133 preCreateView:aView origin:org
       
   134     "invoked right before a view is about to be physically created.
       
   135      May return a new origin."
       
   136 
       
   137     ^ org
       
   138 !
       
   139 
       
   140 postCreateView:aView
       
   141     "invoked right after a view was physically created."
       
   142 
       
   143     ^ self
   126 ! !
   144 ! !
   127 
   145 
   128 !EventListener methodsFor:'listen'!
   146 !EventListener methodsFor:'listen'!
   129 
   147 
   130 listen
   148 listen
   149 ! !
   167 ! !
   150 
   168 
   151 !EventListener  class methodsFor:'documentation'!
   169 !EventListener  class methodsFor:'documentation'!
   152 
   170 
   153 version
   171 version
   154     ^ '$Header: /cvs/stx/stx/libview2/EventListener.st,v 1.12 1996-08-01 16:18:57 cg Exp $'
   172     ^ '$Header: /cvs/stx/stx/libview2/EventListener.st,v 1.13 1997-05-07 13:09:22 cg Exp $'
   155 ! !
   173 ! !