Spaces:
Runtime error
Runtime error
| # Xlib.protocol.event -- definitions of core events | |
| # | |
| # Copyright (C) 2000-2002 Peter Liljenberg <petli@ctrl-c.liu.se> | |
| # | |
| # This library is free software; you can redistribute it and/or | |
| # modify it under the terms of the GNU Lesser General Public License | |
| # as published by the Free Software Foundation; either version 2.1 | |
| # of the License, or (at your option) any later version. | |
| # | |
| # This library is distributed in the hope that it will be useful, | |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| # See the GNU Lesser General Public License for more details. | |
| # | |
| # You should have received a copy of the GNU Lesser General Public | |
| # License along with this library; if not, write to the | |
| # Free Software Foundation, Inc., | |
| # 59 Temple Place, | |
| # Suite 330, | |
| # Boston, MA 02111-1307 USA | |
| # Xlib modules | |
| from .. import X | |
| # Xlib.protocol modules | |
| from . import rq | |
| class AnyEvent(rq.Event): | |
| _code = None | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Card8('detail'), | |
| rq.Card16('sequence_number'), | |
| rq.FixedBinary('data', 28), | |
| ) | |
| class KeyButtonPointer(rq.Event): | |
| _code = None | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Card8('detail'), | |
| rq.Card16('sequence_number'), | |
| rq.Card32('time'), | |
| rq.Window('root'), | |
| rq.Window('window'), | |
| rq.Window('child', (X.NONE, )), | |
| rq.Int16('root_x'), | |
| rq.Int16('root_y'), | |
| rq.Int16('event_x'), | |
| rq.Int16('event_y'), | |
| rq.Card16('state'), | |
| rq.Card8('same_screen'), | |
| rq.Pad(1), | |
| ) | |
| class KeyPress(KeyButtonPointer): | |
| _code = X.KeyPress | |
| class KeyRelease(KeyButtonPointer): | |
| _code = X.KeyRelease | |
| class ButtonPress(KeyButtonPointer): | |
| _code = X.ButtonPress | |
| class ButtonRelease(KeyButtonPointer): | |
| _code = X.ButtonRelease | |
| class MotionNotify(KeyButtonPointer): | |
| _code = X.MotionNotify | |
| class EnterLeave(rq.Event): | |
| _code = None | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Card8('detail'), | |
| rq.Card16('sequence_number'), | |
| rq.Card32('time'), | |
| rq.Window('root'), | |
| rq.Window('window'), | |
| rq.Window('child', (X.NONE, )), | |
| rq.Int16('root_x'), | |
| rq.Int16('root_y'), | |
| rq.Int16('event_x'), | |
| rq.Int16('event_y'), | |
| rq.Card16('state'), | |
| rq.Card8('mode'), | |
| rq.Card8('flags'), | |
| ) | |
| class EnterNotify(EnterLeave): | |
| _code = X.EnterNotify | |
| class LeaveNotify(EnterLeave): | |
| _code = X.LeaveNotify | |
| class Focus(rq.Event): | |
| _code = None | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Card8('detail'), | |
| rq.Card16('sequence_number'), | |
| rq.Window('window'), | |
| rq.Card8('mode'), | |
| rq.Pad(23), | |
| ) | |
| class FocusIn(Focus): | |
| _code = X.FocusIn | |
| class FocusOut(Focus): | |
| _code = X.FocusOut | |
| class Expose(rq.Event): | |
| _code = X.Expose | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('window'), | |
| rq.Card16('x'), | |
| rq.Card16('y'), | |
| rq.Card16('width'), | |
| rq.Card16('height'), | |
| rq.Card16('count'), | |
| rq.Pad(14), | |
| ) | |
| class GraphicsExpose(rq.Event): | |
| _code = X.GraphicsExpose | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Drawable('drawable'), | |
| rq.Card16('x'), | |
| rq.Card16('y'), | |
| rq.Card16('width'), | |
| rq.Card16('height'), | |
| rq.Card16('minor_event'), | |
| rq.Card16('count'), | |
| rq.Card8('major_event'), | |
| rq.Pad(11), | |
| ) | |
| class NoExpose(rq.Event): | |
| _code = X.NoExpose | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Drawable('window'), | |
| rq.Card16('minor_event'), | |
| rq.Card8('major_event'), | |
| rq.Pad(21), | |
| ) | |
| class VisibilityNotify(rq.Event): | |
| _code = X.VisibilityNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('window'), | |
| rq.Card8('state'), | |
| rq.Pad(23), | |
| ) | |
| class CreateNotify(rq.Event): | |
| _code = X.CreateNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('parent'), | |
| rq.Window('window'), | |
| rq.Int16('x'), | |
| rq.Int16('y'), | |
| rq.Card16('width'), | |
| rq.Card16('height'), | |
| rq.Card16('border_width'), | |
| rq.Card8('override'), | |
| rq.Pad(9), | |
| ) | |
| class DestroyNotify(rq.Event): | |
| _code = X.DestroyNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('event'), | |
| rq.Window('window'), | |
| rq.Pad(20), | |
| ) | |
| class UnmapNotify(rq.Event): | |
| _code = X.UnmapNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('event'), | |
| rq.Window('window'), | |
| rq.Card8('from_configure'), | |
| rq.Pad(19), | |
| ) | |
| class MapNotify(rq.Event): | |
| _code = X.MapNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('event'), | |
| rq.Window('window'), | |
| rq.Card8('override'), | |
| rq.Pad(19), | |
| ) | |
| class MapRequest(rq.Event): | |
| _code = X.MapRequest | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('parent'), | |
| rq.Window('window'), | |
| rq.Pad(20), | |
| ) | |
| class ReparentNotify(rq.Event): | |
| _code = X.ReparentNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('event'), | |
| rq.Window('window'), | |
| rq.Window('parent'), | |
| rq.Int16('x'), | |
| rq.Int16('y'), | |
| rq.Card8('override'), | |
| rq.Pad(11), | |
| ) | |
| class ConfigureNotify(rq.Event): | |
| _code = X.ConfigureNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('event'), | |
| rq.Window('window'), | |
| rq.Window('above_sibling', (X.NONE, )), | |
| rq.Int16('x'), | |
| rq.Int16('y'), | |
| rq.Card16('width'), | |
| rq.Card16('height'), | |
| rq.Card16('border_width'), | |
| rq.Card8('override'), | |
| rq.Pad(5), | |
| ) | |
| class ConfigureRequest(rq.Event): | |
| _code = X.ConfigureRequest | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Card8('stack_mode'), | |
| rq.Card16('sequence_number'), | |
| rq.Window('parent'), | |
| rq.Window('window'), | |
| rq.Window('sibling', (X.NONE, )), | |
| rq.Int16('x'), | |
| rq.Int16('y'), | |
| rq.Card16('width'), | |
| rq.Card16('height'), | |
| rq.Card16('border_width'), | |
| rq.Card16('value_mask'), | |
| rq.Pad(4), | |
| ) | |
| class GravityNotify(rq.Event): | |
| _code = X.GravityNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('event'), | |
| rq.Window('window'), | |
| rq.Int16('x'), | |
| rq.Int16('y'), | |
| rq.Pad(16), | |
| ) | |
| class ResizeRequest(rq.Event): | |
| _code = X.ResizeRequest | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('window'), | |
| rq.Card16('width'), | |
| rq.Card16('height'), | |
| rq.Pad(20), | |
| ) | |
| class Circulate(rq.Event): | |
| _code = None | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('event'), | |
| rq.Window('window'), | |
| rq.Pad(4), | |
| rq.Card8('place'), | |
| rq.Pad(15), | |
| ) | |
| class CirculateNotify(Circulate): | |
| _code = X.CirculateNotify | |
| class CirculateRequest(Circulate): | |
| _code = X.CirculateRequest | |
| class PropertyNotify(rq.Event): | |
| _code = X.PropertyNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('window'), | |
| rq.Card32('atom'), | |
| rq.Card32('time'), | |
| rq.Card8('state'), | |
| rq.Pad(15), | |
| ) | |
| class SelectionClear(rq.Event): | |
| _code = X.SelectionClear | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Card32('time'), | |
| rq.Window('window'), | |
| rq.Card32('atom'), | |
| rq.Pad(16), | |
| ) | |
| class SelectionRequest(rq.Event): | |
| _code = X.SelectionRequest | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Card32('time'), | |
| rq.Window('owner'), | |
| rq.Window('requestor'), | |
| rq.Card32('selection'), | |
| rq.Card32('target'), | |
| rq.Card32('property'), | |
| rq.Pad(4), | |
| ) | |
| class SelectionNotify(rq.Event): | |
| _code = X.SelectionNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Card32('time'), | |
| rq.Window('requestor'), | |
| rq.Card32('selection'), | |
| rq.Card32('target'), | |
| rq.Card32('property'), | |
| rq.Pad(8), | |
| ) | |
| class ColormapNotify(rq.Event): | |
| _code = X.ColormapNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('window'), | |
| rq.Colormap('colormap', (X.NONE, )), | |
| rq.Card8('new'), | |
| rq.Card8('state'), | |
| rq.Pad(18), | |
| ) | |
| class MappingNotify(rq.Event): | |
| _code = X.MappingNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Pad(1), | |
| rq.Card16('sequence_number'), | |
| rq.Card8('request'), | |
| rq.Card8('first_keycode'), | |
| rq.Card8('count'), | |
| rq.Pad(25), | |
| ) | |
| class ClientMessage(rq.Event): | |
| _code = X.ClientMessage | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.Format('data', 1), | |
| rq.Card16('sequence_number'), | |
| rq.Window('window'), | |
| rq.Card32('client_type'), | |
| rq.FixedPropertyData('data', 20), | |
| ) | |
| class KeymapNotify(rq.Event): | |
| _code = X.KeymapNotify | |
| _fields = rq.Struct( rq.Card8('type'), | |
| rq.FixedList('data', 31, rq.Card8Obj, pad = 0) | |
| ) | |
| event_class = { | |
| X.KeyPress: KeyPress, | |
| X.KeyRelease: KeyRelease, | |
| X.ButtonPress: ButtonPress, | |
| X.ButtonRelease: ButtonRelease, | |
| X.MotionNotify: MotionNotify, | |
| X.EnterNotify: EnterNotify, | |
| X.LeaveNotify: LeaveNotify, | |
| X.FocusIn: FocusIn, | |
| X.FocusOut: FocusOut, | |
| X.KeymapNotify: KeymapNotify, | |
| X.Expose: Expose, | |
| X.GraphicsExpose: GraphicsExpose, | |
| X.NoExpose: NoExpose, | |
| X.VisibilityNotify: VisibilityNotify, | |
| X.CreateNotify: CreateNotify, | |
| X.DestroyNotify: DestroyNotify, | |
| X.UnmapNotify: UnmapNotify, | |
| X.MapNotify: MapNotify, | |
| X.MapRequest: MapRequest, | |
| X.ReparentNotify: ReparentNotify, | |
| X.ConfigureNotify: ConfigureNotify, | |
| X.ConfigureRequest: ConfigureRequest, | |
| X.GravityNotify: GravityNotify, | |
| X.ResizeRequest: ResizeRequest, | |
| X.CirculateNotify: CirculateNotify, | |
| X.CirculateRequest: CirculateRequest, | |
| X.PropertyNotify: PropertyNotify, | |
| X.SelectionClear: SelectionClear, | |
| X.SelectionRequest: SelectionRequest, | |
| X.SelectionNotify: SelectionNotify, | |
| X.ColormapNotify: ColormapNotify, | |
| X.ClientMessage: ClientMessage, | |
| X.MappingNotify: MappingNotify, | |
| } | |