ANY EVENT_CATCHER LOOP_ITEM LOOP_STACK NONE VISION
class interface EVENT_CATCHER
   -- EVENT_CATCHER is the JOB that handle graphic interface
   -- relative events. The event_catcher wait for such events and
   -- emit signal relative to this event. Previously registred
   -- procedure (via vision.*_connect) are executed.
   --
   -- For more information about JOB, see lib/sequencer and
   -- tutorial/sequencer directories.

creation
   make (g_c: GRAPHIC_CONNECTION)

feature(s) from EVENT_CATCHER
   continue
      -- Continue to do the job
      -- The work to do has to be small work and non blocking, it
      -- will continue on next call

feature(s) from EVENT_CATCHER
   current_event_type: INTEGER

   stop

   preprocess_left_down (p: PROCEDURE[ANY,TUPLE])

feature(s) from EVENT_CATCHER
   widget: HASHED_DICTIONARY[SENSITIVE, POINTER]

feature(s) from EVENT_CATCHER
   event: FAST_ARRAY[DICTIONARY[SIGNAL_0, SENSITIVE]]

   pointer_move_event: HASHED_DICTIONARY[SIGNAL_2[INTEGER, INTEGER], SENSITIVE]

   geometry_change_event: HASHED_DICTIONARY[SIGNAL_4[INTEGER, INTEGER, INTEGER, INTEGER], SENSITIVE]


invariant

    priority /= Minimum_integer;

end of EVENT_CATCHER