home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Pascal / MAXONPASCAL2.DMS / in.adf / INCLUDE / devices / inputevent.h < prev    next >
Encoding:
Text File  |  1994-07-25  |  4.6 KB  |  173 lines

  1. {$if not def DEVICES_INPUTEVENT_H} CONST DEVICES_INPUTEVENT_H=0;
  2.  
  3. { **********************************************************************
  4.   ** KickPascal-Include-Datei "devices/inputevent.h" zu Kickstart 3.0 **
  5.   ********************************************************************** }
  6.  
  7. TYPE p_IEPointerPixel = ^IEPointerPixel;
  8. TYPE p_InputEvent = ^InputEvent;
  9. TYPE p_IEPointerTablet = ^IEPointerTablet;
  10.  
  11. {$if not def DEVICES_TIMER_H;incl "devices/timer.h";endif}
  12. {$if not def UTILITY_HOOKS_H;incl "utility/hooks.h";endif}
  13. {$if not def UTILITY_TAGITEM_H;incl "utility/tagitem.h";endif}
  14.  
  15. { Konstanten, werden zum Teil von "intuition/intuition" benötigt ! }
  16. CONST 
  17.  IECLASS_NULL           = $00;
  18.  IECLASS_RAWKEY         = $01;
  19.  IECLASS_RAWMOUSE       = $02;
  20.  IECLASS_EVENT          = $03;
  21.  IECLASS_POINTERPOS     = $04;
  22.  IECLASS_TIMER          = $06;
  23.  IECLASS_GADGETDOWN     = $07;
  24.  IECLASS_GADGETUP       = $08;
  25.  IECLASS_REQUESTER      = $09;
  26.  IECLASS_MENULIST       = $0A;
  27.  IECLASS_CLOSEWINDOW    = $0B;
  28.  IECLASS_SIZEWINDOW     = $0C;
  29.  IECLASS_REFRESHWINDOW  = $0D;
  30.  IECLASS_NEWPREFS       = $0E;
  31.  IECLASS_DISKREMOVED    = $0F;
  32.  IECLASS_DISKINSERTED   = $10;
  33.  IECLASS_ACTIVEWINDOW   = $11;
  34.  IECLASS_INACTIVEWINDOW = $12;
  35.  IECLASS_NEWPOINTERPOS  = $13;
  36.  IECLASS_MENUHELP       = $14;
  37.  IECLASS_CHANGEWINDOW   = $15;
  38.  IECLASS_MAX            = $15;
  39.  
  40. CONST
  41.  IESUBCLASS_COMPATIBLE = $00;
  42.  IESUBCLASS_PIXEL      = $01;
  43.  IESUBCLASS_TABLET     = $02;
  44.  IESUBCLASS_NEWTABLET  = $03;
  45.  
  46. CONST
  47.  IECODE_UP_PREFIX       = $80;
  48.  IECODE_KEY_CODE_FIRST  = $00;
  49.  IECODE_KEY_CODE_LAST   = $77;
  50.  IECODE_COMM_CODE_FIRST = $78;
  51.  IECODE_COMM_CODE_LAST  = $7F;
  52.  
  53.  IECODE_C0_FIRST     = $00;
  54.  IECODE_C0_LAST      = $1F;
  55.  IECODE_ASCII_FIRST  = $20;
  56.  IECODE_ASCII_LAST   = $7E;
  57.  IECODE_ASCII_DEL    = $7F;
  58.  IECODE_C1_FIRST     = $80;
  59.  IECODE_C1_LAST      = $9F;
  60.  IECODE_LATIN1_FIRST = $A0;
  61.  IECODE_LATIN1_LAST  = $FF;
  62.  
  63.  IECODE_LBUTTON   = $68;
  64.  IECODE_RBUTTON   = $69;
  65.  IECODE_MBUTTON   = $6A;
  66.  IECODE_NOBUTTON  = $FF;
  67.  
  68.  IECODE_NEWACTIVE = $01;
  69.  IECODE_NEWSIZE   = $02;
  70.  IECODE_REFRESH   = $03;
  71.  
  72.  IECODE_REQSET   = $01;
  73.  IECODE_REQCLEAR = $00;
  74.  
  75. CONST
  76.  IEQUALIFIER_LSHIFT     = $0001;
  77.  IEQUALIFIER_RSHIFT     = $0002;
  78.  IEQUALIFIER_CAPSLOCK   = $0004;
  79.  IEQUALIFIER_CONTROL    = $0008;
  80.  IEQUALIFIER_LALT       = $0010;
  81.  IEQUALIFIER_RALT       = $0020;
  82.  IEQUALIFIER_LCOMMAND   = $0040;
  83.  IEQUALIFIER_RCOMMAND   = $0080;
  84.  IEQUALIFIER_NUMERICPAD = $0100;
  85.  IEQUALIFIER_REPEAT     = $0200;
  86.  IEQUALIFIER_INTERRUPT  = $0400;
  87.  IEQUALIFIER_MULTIBROADCAST = $0800;
  88.  IEQUALIFIER_MIDBUTTON  = $1000;
  89.  IEQUALIFIER_RBUTTON    = $2000;
  90.  IEQUALIFIER_LEFTBUTTON = $4000;
  91.  IEQUALIFIER_RELATIVEMOUSE = $8000;
  92.  
  93. CONST
  94.  IEQUALIFIERB_LSHIFT         = 0;
  95.  IEQUALIFIERB_RSHIFT         = 1;
  96.  IEQUALIFIERB_CAPSLOCK       = 2;
  97.  IEQUALIFIERB_CONTROL        = 3;
  98.  IEQUALIFIERB_LALT           = 4;
  99.  IEQUALIFIERB_RALT           = 5;
  100.  IEQUALIFIERB_LCOMMAND       = 6;
  101.  IEQUALIFIERB_RCOMMAND       = 7;
  102.  IEQUALIFIERB_NUMERICPAD     = 8;
  103.  IEQUALIFIERB_REPEAT         = 9;
  104.  IEQUALIFIERB_INTERRUPT      = 10;
  105.  IEQUALIFIERB_MULTIBROADCAST = 11;
  106.  IEQUALIFIERB_MIDBUTTON      = 12;
  107.  IEQUALIFIERB_RBUTTON        = 13;
  108.  IEQUALIFIERB_LEFTBUTTON     = 14;
  109.  IEQUALIFIERB_RELATIVEMOUSE  = 15;
  110.  
  111.  
  112. {$if not def INTUITION_SCREENS_H;incl "intuition/screens.h";endif};
  113.  
  114. TYPE IEPointerPixel = RECORD
  115.  iepp_Screen   : p_Screen;
  116.  iepp_Position : RECORD
  117.                  X : Integer;
  118.                  Y : Integer;
  119.                  END;
  120. END;
  121.  
  122. TYPE IEPointerTablet = RECORD
  123.  iept_Range   : RECORD
  124.                 X : Integer;
  125.                 Y : Integer;
  126.                 END;
  127.  iept_Value   : RECORD
  128.                 X : Integer;
  129.                 Y : Integer;
  130.                 END;
  131.  iept_Pressure : Integer;
  132. END;
  133.  
  134. TYPE IENewTablet = RECORD
  135.  ient_CallBack : p_Hook;
  136.  ient_ScaledX  : Word;
  137.  ient_ScaledY  : Word;
  138.  ient_ScaledXFraction : Word;
  139.  ient_ScaledYFraction : Word;
  140.  ient_TabletX  : Long;
  141.  ient_TabletY  : Long;
  142.  ient_RangeX   : Long;
  143.  ient_RangeY   : Long;
  144.  ient_TagList  : p_TagItem;
  145. END;
  146.  
  147. TYPE InputEvent = RECORD
  148.  ie_NextEvent : p_InputEvent;
  149.  ie_Class     : Byte;
  150.  ie_SubClass  : Byte;
  151.  ie_Code      : Word;
  152.  ie_Qualifier : Word;
  153.  ie_position  : RECORD
  154.                 CASE Integer OF
  155.                 0 : (ie_xy : RECORD
  156.                        ie_x : Integer;
  157.                        ie_y : Integer;
  158.                        END
  159.                     );
  160.                 1 : (ie_addr : Ptr);
  161.                 0 : (ie_Dead : RECORD
  162.                        ie_prev1DownCode : Byte;
  163.                        ie_prev1DownQual : Byte;
  164.                        ie_prev2DownCode : Byte;
  165.                        ie_prev2DownQual : Byte;
  166.                        END
  167.                     );
  168.                 END;
  169.  ie_TimeStamp : timeval;
  170. END;
  171.  
  172. {$endif}
  173.