home *** CD-ROM | disk | FTP | other *** search
/ Kyūkyoku!! X68000 Emulator / X68000Book.dat / mac / OLS / X68000 / Ko-Window / kow142s.lzh / wsrv / window.h < prev    next >
C/C++ Source or Header  |  1995-09-08  |  4KB  |  154 lines

  1.  
  2. #define    WindowType            0
  3. #define    WindowAttrTra        1    /*  ôºû╛æ«É½                */
  4. #define    WindowAttrInvisible    2    /*  òsë┬Äïæ«É½                */
  5. #define    WindowAttrGraphic    4    /*  âOâëâtâBâbâNÄgùpæ«É½    */
  6.  
  7. /*  âOâëâtâBâbâNâéü[âh        */
  8. #define    WindowAttrGraphic16        4
  9. #define    WindowAttrGraphic256    8
  10. #define    WindowAttrGraphic65536    12
  11. #define    WindowAttrGraphicUse    28
  12.  
  13. /*
  14.  *        âCâxâôâgÅεò±
  15.  */
  16.  
  17. #define    EventAttrDefault    (    EventOpenON | EventRedrawON | EventCloseON |     \
  18.                                 EventResizeON | EventIconifyON | EventZoomON |    \
  19.                                 EventMouseSwitchON | EventMouseEnterON |        \
  20.                                 EventMouseOutON | EventKeyON                    )
  21.  
  22. #define    EventOpenON            (1<<EventOpen)
  23. #define    EventRedrawON        (1<<EventRedraw)
  24. #define    EventCloseON        (1<<EventClose)
  25. #define    EventPopON            (1<<EventPop)
  26. #define    EventPushON            (1<<EventPush)
  27. #define    EventMoveON            (1<<EventMove)
  28. #define    EventResizeON        (1<<EventResize)
  29. #define    EventIconifyON        (1<<EventIconify)
  30. #define    EventZoomON            (1<<EventZoom)
  31. #define    EventScrollON        (1<<EventScroll)
  32. #define    EventMouseSwitchON    (1<<EventMouseSwitch)
  33. #define    EventMouseMoveON    (1<<EventMouseMove)
  34. #define    EventMouseEnterON    (1<<EventMouseEnter)
  35. #define    EventMouseOutON        (1<<EventMouseOut)
  36. #define    EventKeyON            (1<<EventKey)
  37. #define    EventIntervalON        (1<<EventInterval)
  38. #define    EventNonON            (1<<EventNon)
  39. #define    EventUserON            (1<<EventUser)
  40. #define    EventGraphicON        (1<<EventGraphic)
  41.  
  42. typedef    enum {
  43.         EventOpen,
  44.         EventRedraw,
  45.         EventClose,
  46.         EventPop,
  47.         EventPush,
  48.         EventMove,
  49.         EventResize,
  50.         EventIconify,
  51.         EventZoom,
  52.         EventScroll,
  53.         EventMouseSwitch,
  54.         EventMouseMove,
  55.         EventMouseEnter,
  56.         EventMouseOut,
  57.         EventKey,
  58.         EventInterval,
  59.         EventNon,
  60.         EventUser,
  61.         EventGraphic,
  62.     }
  63.         EventOption ;
  64.  
  65. typedef    struct    {
  66.         EventOption    option ;
  67.         int            x, y, h, v ;
  68.         int            RightStat, LeftStat ;
  69.         int            LeftON, LeftOFF ;
  70.         int            RightON, RightOFF ;
  71.         int            MoveFlag ;
  72.         int            KeyCode ;
  73.         int            ShiftStat ;
  74.         int            Counter ;
  75.         int            ComData ;
  76.         void        *ComBuffer ;
  77.     }
  78.         EventInfo ;
  79.  
  80.  
  81. /*
  82.  *        âEâCâôâhâEì\æóæ╠
  83.  */
  84. typedef    struct    {
  85.         int            type ;
  86.         int            check ;
  87.         int            client ;
  88.         void        *clientp ;
  89.         int            ownerid ;
  90.         int            attr ;
  91.         int            eventattr ;
  92.         ClipClass    curclip ;
  93.         int            hx, hy ;
  94.         void        *parent ;
  95.         void        *last, *next ;
  96.         void        *childtop, *childbottom ;
  97.         int            id ;
  98.         int            (*event)();
  99.     }
  100.         WindowPart ;
  101.  
  102. typedef    struct    {
  103.         ClipPart    clip ;
  104.         WindowPart    window ;
  105.     }
  106.         WindowClass    ;
  107.  
  108. #if    !defined(_K_WINDOW)
  109.     extern    int        (*SendEventExec)();
  110.     extern    void    (*WindowError)();
  111. #endif
  112.  
  113. /*
  114.     proto -e window.c > temp
  115. */
  116. extern    void    WindowSet( WindowClass*, int, int, int, int, WindowClass*, int, int(*)() );
  117. extern    void    WindowClose( WindowClass* );
  118. extern    void    WindowSetClientData( WindowClass*, int, void* );
  119. extern    void    WindowSetAttr( WindowClass*, int );
  120. extern    void    WindowSetEventAttr( WindowClass*, int );
  121. extern    void    WindowPop( WindowClass* );
  122. extern    void    WindowPush( WindowClass* );
  123. extern    void    WindowRedraw( WindowClass* );
  124. extern    void    WindowMove( WindowClass*, int, int );
  125. extern    void    WindowResize( WindowClass*, int, int, int, int );
  126. extern    void    WindowSetHome( WindowClass*, int, int );
  127. extern    void    WindowScroll( WindowClass*, int, int );
  128. extern    void    WindowDrawAbs( WindowClass*, DrawBuf*, int );
  129. extern    void    WindowDraw( WindowClass*, DrawBuf*, int );
  130.  
  131. extern    int        WindowGetEventAttr( WindowClass* );
  132. extern    int        WindowGetClientData( WindowClass* );
  133. extern    void    *WindowGetClientPointer( WindowClass* );
  134. extern    void    WindowGetPosition( WindowClass*, int*, int* );
  135. extern    void    WindowGetViewPosition( WindowClass*, int*, int* );
  136. extern    void    WindowGetScreenPosition( WindowClass*, int*, int* );
  137. extern    void    WindowGetViewSize( WindowClass*, int*, int* );
  138. extern    void    WindowGetHome( WindowClass*, int*, int* );
  139. extern    WindowClass    *WindowGetParent( WindowClass* );
  140. extern    WindowClass    *WindowGetNext( WindowClass* );
  141. extern    WindowClass    *WindowGetLast( WindowClass* );
  142. extern    WindowClass    *WindowGetChildTop( WindowClass* );
  143. extern    WindowClass    *WindowGetChildBottom( WindowClass* );
  144. extern    WindowClass    *WindowGetChild( WindowClass*, EventInfo* );
  145.  
  146. extern    int        SendEvent( int, int(*)(), WindowClass*, EventInfo* );
  147. extern    int        WindowSendEvent( WindowClass*, EventInfo* );
  148. extern    int        WindowSendEventAll( int, EventInfo* );
  149.  
  150. /* 1991 COR. */
  151. /*extern    void    ErrorCheck( int,char* );*/
  152. #define        ErrorCheck( flag, mes )        (!(flag)? _ErrorCheck(mes) : 0)
  153. extern    void    _ErrorCheck( char* );
  154.