home *** CD-ROM | disk | FTP | other *** search
/ Kyūkyoku!! X68000 Emulator / X68000Book.dat / mac / OLS / X68000 / Ko-Window / kow142s.lzh / corlib / corlib.man < prev    next >
Text File  |  1995-12-05  |  51KB  |  1,298 lines

  1.  
  2.     X680x0 Ko-Window ùpâëâCâuâëâè
  3.     corlib.a  Version +14 è╓Éöâ}âjâàâAâï
  4.                     Copyright 1991-1995 Å¼è}î┤öÄöV(COR.)
  5.  
  6.  
  7. 0. é═é╢é▀é╔
  8.  
  9.   é▒é╠âëâCâuâëâèé╔é═ê╚ë║é╠è╓ÉöîQé¬ö[é▀éτéΩé─éóé▄é╖üB
  10.  
  11.      1. Sheet æÇì∞é╔è╓é╖éΘòΓÅòè╓Éö
  12.      2. âEâBâôâhâEè╓é╠âfü[â^Æ╩ÉM
  13.      3. âAâCâRâôë╗
  14.      4. âEâBâôâhâEâ^âCâgâïâAâNâZâX
  15.      5. âtâ@âCâïû╝è╓ÿA
  16.      6. ò╢ÄÜù±æÇì∞
  17.      7. Clip & Paste
  18.      8. EventInterval ùpÄ₧è╘è╟ù¥
  19.      9. âEâBâôâhâEâvâìâZâXè╓ÿA
  20.     10. ConsoleâëâCâuâëâè
  21.     11. â}âEâXâJü[â\âïè╓îW
  22.     12. DefGraphic âëâCâuâëâè(è╚ÆPâOâëâtâBâbâNâEâBâôâhâE)
  23.     13. Mg Window âëâCâuâëâè(è╚ÆPâEâBâôâhâEâIü[âvâô)
  24.     14. MgButton âëâCâuâëâè(è╚ÆPâvâbâVâàâ{â^âô)
  25.     15. MgInput âëâCâuâëâè(è╚ÆPìsôⁿù═)
  26.     16. Gpos âëâCâuâëâè(Graphicâ|âWâVâçâôè╟ù¥)
  27.     17. Dialog âëâCâuâëâè
  28.     18. é╗é╠æ╝âEâBâôâhâEè╓ÿA
  29.  
  30. é▒éΩéτé╠âëâCâuâëâèé≡ÄgéñÄ₧é═ corlib.h é≡âCâôâNâïü[âhé╡é─ë║é│éóüB
  31.  
  32.  
  33.  
  34. 1. Sheet æÇì∞é╔è╓é╖éΘòΓÅòâëâCâuâëâè
  35.  
  36. int    SheetGetSize( fp, sp )
  37. ----------------------------------------------------------------------------
  38. FILE    *fp;    âtâ@âCâïâ|âCâôâ^
  39. Sheet    *sp;    Ælé≡ò╘é╖âoâbâtâ@ sp->h, sp->v, sp->hword é╔Ælé≡ò╘é╖
  40.  
  41.   âtâ@âCâïé⌐éτòKùvé╚ Sheet âTâCâYé≡ô╛é▄é╖üBû▀éΦÆlé═òKùvé╚âÅü[âhÉöüAé┬é▄éΦ
  42.    sp->v * sp->hword é┼é╖üB
  43. ----------------------------------------------------------------------------
  44.  
  45.  
  46. void    SheetLoad( fp, sp )
  47. ----------------------------------------------------------------------------
  48. FILE    *fp;    âtâ@âCâïâ|âCâôâ^
  49. Sheet    *sp;    Ælé≡ò╘é╖âoâbâtâ@ sp->buf1, sp->buf2 é╔âoâbâtâ@é≡ò╘é╖
  50.  
  51.   âtâ@âCâïé⌐éτâoâbâtâ@é╔ Sheet âfü[â^é≡ô╟é▌ì₧é▌é▄é╖üB
  52.  
  53. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  54.     [LOAD]
  55.         Sheet    sp;
  56.         int    size;
  57.         size= SheetGetSize( fp, &sp );
  58.         sp.buf2= ( sp.buf1= MALLOC( size*sizeof(short)*2 ) )+size;
  59.         SheetLoad( fp, &sp );
  60.  
  61.     [SAVE]
  62.         SheetSave( fp, &sp, mode );
  63. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  64. ----------------------------------------------------------------------------
  65.  
  66.  
  67. void    SheetSave( fp, sp, mode, name )
  68. ----------------------------------------------------------------------------
  69. FILE    *fp;    âtâ@âCâïâ|âCâôâ^
  70. Sheet    *sp;    âtâ@âCâïé╔Åæé½Åoé╖âfü[â^
  71. int    mode;    mode=0:Source  mode=1:Include
  72. char    *name;    Åæé½ì₧é▐âfü[â^é╠û╝æO
  73.  
  74.   âoâbâtâ@é╠ Sheet âfü[â^é≡âtâ@âCâïé╔Åæé½Åoé╡é▄é╖üB
  75. ----------------------------------------------------------------------------
  76.  
  77.  
  78. void    SheetCut( sp, cp, x, y )
  79. ----------------------------------------------------------------------------
  80. Sheet    *sp;    î│é╠âfü[â^
  81. Sheet    *cp;    É╪éΦÅoé╖âoâbâtâ@
  82. int    x, y;    É╪éΦÅoé╖ì╢Åπé╠ì└òW
  83.  
  84.   Sheet âfü[â^é╠öCê╙é╠ê╩Æué⌐éτüAöCê╙é╠æσé½é│é╠ Sheet é≡ĵéΦÅoé╡é▄é╖üBcp->h,
  85.   cp->v, cp->word é╔é═É╪éΦÅoé╖ëµæ£é╠æσé½é│é≡É▌ÆΦé╡üAcp->buf1, cp->buf2 é╔É╪
  86.   éΦÅoé╖ëµæ£é╠æσé½é│é╔ìçéφé╣é─âoâbâtâ@é≡ùpê╙é╡é─é⌐éτî─é╤Åoé╖òKùvé¬éáéΦé▄é╖üB
  87. ----------------------------------------------------------------------------
  88.  
  89.  
  90. 2. âEâBâôâhâEè╘é╠âfü[â^ô]æù
  91.  
  92.  
  93. void    UserSendOperation( wp, info, data, buffer )
  94. ----------------------------------------------------------------------------
  95. WindowID    wp;     é▒é╠âïü[â`âôé≡Ägùpé╖éΘâEâBâôâhâEé╠ ID (NULLé┼éαéµéó)
  96. EventInfo    *info;     âCâxâôâgâoâbâtâ@é╠âAâhâîâX
  97. int        data;     UserPaste/UserString/UserStrings/UserSheet
  98. void        *buffer; ù^éªéΘâfü[â^é╠âAâhâîâX
  99.  
  100.   ÄwÆΦé╡é╜âfü[â^é≡ EventUser é╔é╠é╣é─üAâ}âEâXé┼ÄwÆΦé╡é╜æ╝é╠âEâBâôâhâEé╔ô]æù
  101.   é╡é▄é╖üBé▒é╠é╞é½ wp é┼ù^éªé╜âEâBâôâhâEé╔é═âCâxâôâgé═æùÉMé│éΩé▄é╣é±(Æ╩ÅφÄ⌐
  102.   ò¬Ä⌐Ég)üBdata é╔é═ EventInfo é╠âüâôâo ComData, buffer é╔é═ ComBuf é╔æèôûé╖
  103.   éΘôαùeé¬ôⁿéΦé▄é╖üBïîè╓Éöû╝é═ SendData() é┼é╖üBè╓Éöû╝é═é╟é┐éτé┼î─é╤Åoé╡é─éα
  104.   ì\éóé▄é╣é±üBwp é╔ NULL é≡ù^éªé╜ÅΩìçé═Ä⌐ò¬Ä⌐Égé╔éαâCâxâôâgé¬æùÉMé│éΩéΘë┬ö\
  105.   É½é¬éáéΘé▒é╞é╔Æìê╙é╡é─ë║é│éóüB
  106.  
  107. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  108.     [UserString]
  109.     UserSendOperation( wp, info, UserString, "Tensousuru mojiretu." );
  110. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  111. ----------------------------------------------------------------------------
  112.  
  113.  
  114. void    UserSendExec( exec, cmd, str )
  115. ----------------------------------------------------------------------------
  116. char        *exec;    âCâxâôâgé≡æùéΦé╜éóâvâìâOâëâÇ
  117. char        *cmd;    ïNô«é╖éΘÅΩìçé╠âRâ}âôâhâIâvâVâçâô
  118. char        *str;    æùÉMé╖éΘò╢ÄÜù±
  119.  
  120.   exec é┼ÄwÆΦé╡é╜âvâìâOâëâÇé¬æ╢ì▌é╖éΩé╬üAò╢ÄÜù± str é≡ EventUser, UserString
  121.   é┼æùÉMé╡é▄é╖üBéαé╡âvâìâOâëâÇé¬ïNô«é│éΩé─éóé╚é»éΩé╬üAcmd é╞ str é≡ê°Éöé╔é╡é─
  122.   âvâìâOâëâÇé≡ïNô«é╡é▄é╖üBâvâìâOâëâÇû╝é╔é═òKé╕ègÆúÄq .win é▄é┼ù^éªé─ë║é│éóüB
  123.   âCâxâôâgé≡æùÉMé╡é╜ÅΩìçé═ TRUE é≡üAâvâìâOâëâÇïNô«é≡é╡é╜ÅΩìçé═ FALSE é≡ò╘é╡é▄
  124.   é╖üB
  125.  
  126. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  127.     UserSendExec( "view.win", "-f12", "denden.doc" );
  128. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  129. ----------------------------------------------------------------------------
  130.  
  131. int    UserSendPaste( wp, info )
  132. ----------------------------------------------------------------------------
  133. WindowID    wp;    âCâxâôâgé≡æùÉMé╖é╫é½WINDOWé╠ID(Æ╩ÅφÄ⌐ò¬Ä⌐Ég)
  134. EventInfo    *info;
  135.  
  136.   ClipBoard é╠ÆåÉgé≡ UserPaste âCâxâôâgé╞é╡é─æùéΦé▄é╖üBâ|âbâvâAâbâvâüâjâàü[é╠
  137.   Åêù¥é┼ Paste é≡ìséóé╜éóÅΩìç(wp=Ä⌐ò¬Ä⌐Ég)üAé▄é╜é═âEâBâôâhâEâ}âlü[âWââü[é┼æ╝
  138.   é╠âEâBâôâhâEé╔ Paste é≡ìséóé╜éóÅΩìç(wp=öCê╙é╠âEâBâôâhâEID)é╔Ägéóé▄é╖üBû▀éΦ
  139.   Ælé═ WindowSendEvent() é╠Ælé┼é╖üBæùÉMé┼é½é╜ÅΩìçé═ TRUE é┼é½é╚é⌐é┴é╜ÅΩìçé═
  140.   FALSE é≡ò╘é╡é▄é╖üB
  141. ----------------------------------------------------------------------------
  142.  
  143.  
  144. 3. âAâCâRâôë╗
  145.  
  146.  
  147. void    IconEnt( wp, title, attr, font )
  148. ----------------------------------------------------------------------------
  149. WindowID    wp;    Window ID
  150. char        *title;    ICON Å≤æ╘é┼ò\Īé╖éΘò╢ÄÜù±
  151. int        attr;    title é≡ò\Īé╖éΘâAâgâèârâàü[âg
  152. int        font;    title é≡ò\Īé╖éΘâtâHâôâgâTâCâY ( 12/16/24 )
  153.  
  154.   wp é┼ÄwÆΦé╡é╜âEâBâôâhâEé≡âAâCâRâôë╗é╡é▄é╖üBÆåé╔ò╢ÄÜé≡ò\Īé╖éΘé╛é»é╠ï╔é▀é─
  155. âVâôâvâïé╚éαé╠é┼é╖üBé╗é╠æπéφéΦòíÄGé╚ÄΦæ▒é½é╚é╡é╔æªÄgéñé▒é╞é¬é┼é½é▄é╖üB
  156.  
  157. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  158.     (ÄûæOé╔ EventIconifyON é╔é╡é─é¿é¡òKùvé¬éáéΘ)
  159.         case EventIconify:
  160.             IconEnt( wp, "IconTitle", AttrDefault, 12 );
  161.             return    TRUE;
  162. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  163. ----------------------------------------------------------------------------
  164.  
  165.  
  166. 4. âEâBâôâhâEâ^âCâgâïé╓é╠âAâNâZâX
  167.  
  168.  
  169. char    *TitleGetAddress( wp )
  170. ----------------------------------------------------------------------------
  171. WindowID    wp;    Window ID ( WindowTitleOpen é╡é╜éαé╠é╠é▌ )
  172.  
  173.   TITLE WINDOW é╠â^âCâgâïò╢ÄÜù±âAâhâîâXé≡ô╛é▄é╖üBû▀éΦÆlé═é╗é╠âAâhâîâXé┼é╖üB
  174.   wp é¬ TitleWindow é┼é╚éóÅΩìçé═ NULL é≡ò╘é╡é▄é╖üB
  175. ----------------------------------------------------------------------------
  176.  
  177.  
  178. char    *TitleSetLabel( wp, label )
  179. ----------------------------------------------------------------------------
  180. WindowID    wp;    Window ID ( WindowTitleOpen é╡é╜éαé╠é╠é▌ )
  181. char        *label;    ÉVé╡éóò╢ÄÜù±
  182.  
  183.   TITLE WINDOW é╠â^âCâgâïò╢ÄÜù±é≡É▌ÆΦé╡Æ╝é╡é▄é╖üBû▀éΦÆlé═ TitleGetAddress é╞
  184.   ô»é╢é┼É▌ÆΦé╡é╜âëâxâïâoâbâtâ@é╠âAâhâîâXé╔é╚éΦé▄é╖üBé▒é╠è╓Éöé═É▌ÆΦÄ₧é╔ôαòöé┼
  185.   EventRedraw é≡ö¡É╢é╡é▄é╖üBé╜é╛é╡ wp é¬ TitleWindow é⌐é╟éñé⌐â`âFâbâNé╡é─éó
  186.   é▄é╣é±é╠é┼üATitleWindow ê╚èOé┼é═é▒é╠è╓Éöé≡ÉΓæ╬é╔Ägéφé╚éóé┼ë║é│éóüB
  187. ----------------------------------------------------------------------------
  188.  
  189.  
  190. 5. âtâ@âCâïû╝è╓ÿA
  191.  
  192.  
  193. char    *PathGetFullName( name )
  194. ----------------------------------------------------------------------------
  195. char    *name;    âtâ@âCâïû╝
  196.  
  197.   ôné│éΩé╜âtâ@âCâïû╝é≡âïü[âgé⌐éτé╠âtâïâpâXû╝é╔ò╧ìXé╡é▄é╖üBû▀éΦÆlé═ô╛é╜âpâXû╝
  198.   é≡ôWèJé╡é╜ static ù╠êµé╓é╠â|âCâôâ^é┼éáéΘé▒é╞é╔Æìê╙é╡é─ë║é│éóüBîïë╩é≡Ägùpé╖
  199.   éΘÄ₧é═üAò╩é╠âoâbâtâ@é╔âRâsü[é╡é╜îπÅæé½è╖éªéΘé╚é╟é╠Åêù¥é¬òKùvé┼é╖üB
  200.   âEâBâôâhâEÅπé┼é═âJâîâôâgâfâBâîâNâgâèé╠èTöOé¬₧Bûåé╚é╠é┼üAâAâvâèâPü[âVâçâôé┼
  201.   é═é┼é½éΘé╛é»âtâïâpâXû╝é┼è╟ù¥é╖éΘéµéñé╔é╡é─ë║é│éóüB
  202. ----------------------------------------------------------------------------
  203.  
  204. char    *PathGetFullName2( buf, name )
  205. ----------------------------------------------------------------------------
  206. char    *buf;    âoâbâtâ@
  207. char    *name;    âtâ@âCâïû╝
  208.  
  209.   PathGetFullName()é╞ô»êΩé┼é╖é¬üAstatic é╓é╠ù╠êµé≡ò╘é│é╕é╔ôWèJé╡é╜âpâXé≡âoâb
  210.   âtâ@é╔èiö[é╡é▄é╖üBû▀éΦÆlé═ buf é┼é╖üB
  211. ----------------------------------------------------------------------------
  212.  
  213. void    PathGetExecDir( buf )
  214. ----------------------------------------------------------------------------
  215. char    *buf;    âpâXû╝èiö[âoâbâtâ@
  216.  
  217.   Ä⌐ò¬é¬ïNô«é│éΩé╜âfâBâîâNâgâèû╝é≡ÄwÆΦâoâbâtâ@é╔ô╛é▄é╖üBâfâBâîâNâgâèû╝é╠ì┼îπ
  218.   é╔é═òKé╕âfâBâîâNâgâèé╠ïµÉ╪éΦüu\üvé¬é┬éóé─éóé▄é╖üB
  219. ----------------------------------------------------------------------------
  220.  
  221.  
  222. 6. ò╢ÄÜù±æÇì∞
  223.  
  224.  
  225. void    StringGetEsc( str, ptr )
  226. ----------------------------------------------------------------------------
  227. char    *str;    îïë╩é≡èiö[é╖éΘâoâbâtâ@
  228. char    *ptr;    ò╧è╖éαé╞é╠ò╢ÄÜù±
  229.  
  230.   '\' é┼Äné▄éΘâGâXâPü[âvò╢ÄÜé╠ôWèJé≡ìséóé▄é╖üBâGâXâPü[âvò╢ÄÜé═ê╚ë║é╠Æ╩éΦé┼é╖üB
  231.   îïë╩é═ str é╔èiö[é╡é▄é╖üB
  232.  
  233.     \n    ëⁿìs LF (0x0a)
  234.     \r    ò£ïA CR (0x0d)
  235.     \xXX    16ÉiÉö
  236.     \\    ò╢ÄÜ '\'
  237.  
  238. ----------------------------------------------------------------------------
  239.  
  240. 7. âNâèâbâvüòâyü[âXâg
  241.  
  242.  
  243. void    *ClipSetOperation( wp, info, cb, max, x, y, sc, color, font )
  244. ----------------------------------------------------------------------------
  245. WindowID    wp;    Clip ò\Īé╖éΘâEâBâôâhâEé╠ ID
  246. EventInfo    *info;    âCâxâôâgÅεò±
  247. char        **cb;    âXâNâèü[âôâCâüü[âWé╠âAâhâîâX
  248. int        max;    ì┼æσò\ĪâëâCâô
  249. int        x;    Clip Åêù¥ê╩Æué▄é┼é╠âIâtâZâbâgì└òW
  250. int        y;    Clip Åêù¥ê╩Æué▄é┼é╠âIâtâZâbâgì└òW
  251. int        sc;    ìsûûé╠âXâyü[âXìφÅ£âtâëâO
  252. int        color;    ö╜ô]Ä₧é╠âJâëü[ÄwÆΦ
  253. int        font;    ò\ĪâtâHâôâgâTâCâY(Ä└ì█é═ìsè╘âXâeâbâv)
  254.  
  255.   âEâBâôâhâEôαòöé╠öCê╙é╠âeâLâXâgé╔æ╬é╡é─üAâ}âEâXé╔éµéΘ clip Åêù¥é≡ìséóé▄é╖üB
  256.   èeìsé═ '\0' é┼ÅIéφéΘò╢ÄÜù±é┼üAé╗é╠â|âCâôâ^özù±é≡ cb é╔ôné╡é▄é╖üBÅêù¥é≡ìséñ
  257.   ìsÉöé≡ max é╔ù^éªé▄é╖üBsc é¬ TRUE é╠ÅΩìçé═üAìsûûé╠âXâyü[âXé≡Å£ïÄé╡é╜é╠é┐
  258.   ClipBoard é╔É▌ÆΦé╡é▄é╖üBÉ▄éΦï╚é░éτéΩé╜ìsé═î┤æÑé╞é╡é─Åêù¥é┼é½é▄é╣é±üBâtâHâô
  259.   âgâTâCâYé═Ä└ì█é═ìsè╘é╠âXâeâbâvâhâbâgÉöé┼éáéΘé╜é▀üAòKé╕é╡éα 10,12,16,24 é┼éá
  260.   éΘòKùvé═éáéΦé▄é╣é±üBé▒é╠è╓Éö1é┬é┼üACommand.win, view.win, kf.win ôÖé╞ô»é╢
  261.   clip Åêù¥é¬é┼é½éΘéµéñé╔é╚éΦé▄é╖üB
  262.  
  263. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  264.     case EventMouseSwitch:
  265.         if( info->LeftON ){
  266.         ClipSetOperation( wp, info, screen, 25, 0, 0, TRUE, 1, 12 );
  267.             return  TRUE;
  268.         }
  269. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  270. ----------------------------------------------------------------------------
  271.  
  272.  
  273. void    *ClipSetSimpleOperation( wp, info, cb, max, sc, font )
  274. ----------------------------------------------------------------------------
  275. WindowID    wp;    Clip ò\Īé╖éΘâEâBâôâhâEé╠ ID
  276. EventInfo    *info;    âCâxâôâgÅεò±
  277. char        **cb;    âXâNâèü[âôâCâüü[âWé╠âAâhâîâX
  278. int        max;    ì┼æσò\ĪâëâCâô
  279. int        sc;    ìsûûé╠âXâyü[âXìφÅ£âtâëâO
  280. int        font;    ò\ĪâtâHâôâgâTâCâY(ìsè╘âXâeâbâv)
  281.  
  282.   âEâBâôâhâEôαé╠öCê╙é╠âeâLâXâgé╔æ╬é╖éΘ Clip Åêù¥é≡ìséóé▄é╖üBClipSetOperation()
  283.   é╠ê°Éöé≡ x= 0, y= 0, color= 1 é╔é╡é╜éαé╠é╞ô»êΩé┼é╖üBî▌è╖ɽé╠é╜é▀é╔Äcé│éΩé─
  284.   éóéΘè╓Éöé┼é╖üBÆ╩Åφé═ ClipSetOperation() é≡Ägùpé╡é─ë║é│éóüB
  285. ----------------------------------------------------------------------------
  286.  
  287.  
  288. int    ClipGetKeyboard( wp, info )
  289. ----------------------------------------------------------------------------
  290. WindowID    wp;    âCâxâôâgé≡æùÉMé╖é╫é½WINDOWé╠ID
  291. EventInfo    *info;
  292.  
  293.   Paste é│éΩé╜âfü[â^é≡üAEventKey é╔ò╧è╖é╡é─Ä⌐ò¬Ä⌐Égé╔ì─æùé╡é▄é╖üBEventUser Ä₧
  294.   é╔ùpéóé▄é╖üB1ò╢ÄÜûêé╠âCâxâôâgé╔ôWèJé│éΩéΘé╜é▀üAÄcöOé╚é¬éτéáé▄éΦî°ùªé╠ù╟éóÅê
  295.   ù¥é┼é═éáéΦé▄é╣é±üBEventUser Åêù¥é≡ìsé┴é╜Ä₧é═ TRUE é≡üAUserPaste ê╚èOé╠âCâx
  296.   âôâgé┼éáé┴é╜ÅΩìçé═ë╜éαé╣é╕é╔ FALSE é≡ò╘é╡é▄é╖üB
  297.  
  298. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  299.     case EventUser:
  300.         if( !ClipGetKeyboard( wp, info ) ){
  301.             switch( info->ComData ){
  302.             case UserStrings:
  303.                 :
  304.             }
  305.         }
  306.         return    TRUE;
  307. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  308. ----------------------------------------------------------------------------
  309.  
  310.  
  311. int    ClipGetKeyboardAll( wp, info )
  312. ----------------------------------------------------------------------------
  313. WindowID    wp;    âCâxâôâgé≡æùÉMé╖é╫é½WINDOWé╠ID
  314. EventInfo    *info;
  315.  
  316.   EventUser é┼æùéτéΩé─é½é╜âfü[â^é≡üAEventKey é╔ò╧è╖é╡é─Ä⌐ò¬Ä⌐Égé╔ì─æùé╡é▄é╖üB
  317.   UserPaste, UserString, UserStrings é╠æSòöé≡Åêù¥é╡é▄é╖üBé▒éΩéτé═é╖é╫é─1ò╢ÄÜ
  318.   ûêé╠âCâxâôâgé╔ôWèJé│éΩéΘé╜é▀üAÄcöOé╚é¬éτéáé▄éΦî°ùªé╠ù╟éóÅêù¥é┼é═éáéΦé▄é╣é±üB
  319.   âCâxâôâgæùÉMÅêù¥é≡ìsé┴é╜Ä₧é═ TRUE é≡üAé╗éΩê╚èOé╠âCâxâôâgé┼éáé┴é╜ÅΩìçé═ë╜éα
  320.   é╣é╕é╔ FALSE é≡ò╘é╡é▄é╖üB
  321. ----------------------------------------------------------------------------
  322.  
  323.  
  324.  
  325. 8. Ä₧è╘Åêù¥
  326.  
  327.  
  328. unsigned int    IntervalTime( void )
  329. ----------------------------------------------------------------------------
  330.    X680x0 é≡ïNô«é╡é─é⌐éτé╠îoë▀Ä₧è╘é≡ 1/100 òbÆPê╩é┼ò╘é╡é▄é╖üBIOCS CALL é╔éáéΘ
  331.    $7f ONTIME é╞ô»é╢é┼é╖é¬üAôdî╣ ON é╠éáé╞ 24Ä₧è╘îoé┴é─éα 0 é╔û▀éτé╕Ælé═Åφé╔
  332.    æ¥ë┴é╡æ▒é»é▄é╖üBé╗é╠é╜é▀Ä₧è╘é≡é═é⌐éΘé╜é▀é╔üAÆPÅâé╚öΣèréΓë┴ÄZé≡ìséñé▒é╞é¬
  333.    é┼é½é▄é╖üBé╜é╛é╡24Ä₧è╘é╠ï½û┌é┼é═üAÄ₧è╘é╠ì╖ò¬é¬É│é╡éóîoë▀Ä₧è╘é╔é╚éτé╚éóÅΩ
  334.    ìçé¬éáéΦé▄é╖üB
  335. ----------------------------------------------------------------------------
  336.  
  337.  
  338. int    IntervalWait( wait, work )
  339. ----------------------------------------------------------------------------
  340. unsigned int    wait;        æ╥Ä₧è╘ 1/100 òbÆPê╩
  341. unsigned int    *work;        âÅü[âNùpâoâbâtâ@
  342.  
  343.   ÄwÆΦé╡é╜Ä₧è╘é¬îoë▀é╡é╜é⌐é╟éñé⌐Æ▓é╫é▄é╖üBÄwÆΦÄ₧è╘ê╚Åπîoë▀é╡é─éóéΩé╬ TRUE é≡üA
  344.   é╗éñé┼é╚é»éΩé╬ FALSE é≡ò╘é╡é▄é╖üBêΩôx TRUE é≡ò╘é╖é╞âJâEâôâ^é═âèâZâbâgé│éΩ
  345.   îpæ▒é╡é▄é╖üBì─é╤ wait Ä₧è╘é╜é┬é╞ TRUE é≡ò╘é╡é▄é╖üBEventInterval é≡Ägé┴é╜âv
  346.   âìâOâëâÇé┼Ä₧è╘è╟ù¥é╔Ägùpé╖éΘé╞ò╓ùÿé┼é╖üBâÅü[âNùpâoâbâtâ@é═âåü[âUü[é¬ùpê╙é╡
  347.   é╚é»éΩé╬é╚éΦé▄é╣é±üBé▒éΩé≡éáéτé⌐é╢é▀ 0 é┼Åëè·ë╗é╡é─é¿é»é╬üAì┼Åëé╠î─é╤Åoé╡
  348.   Ä₧é╔òKé╕ TRUE é≡ò╘é╖éµéñé╔é╚éΦé▄é╖üB
  349.  
  350. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  351.         static unsigned    work; /* 3òbé╔êΩôxé╛é»Åêù¥é≡ìséñâïü[â`âô */
  352.             :
  353.         case EventInterval:
  354.             if( IntervalWait( 300, &work ) ){
  355.                 .... Åêù¥
  356.                 return    TRUE;
  357.             }
  358.             return    FALSE;
  359. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  360. ----------------------------------------------------------------------------
  361.  
  362.  
  363. 9. âvâìâZâXè╓ÿA
  364.  
  365.   é▒é▒é┼é╠âvâìâZâXé╞é═üAKo-Window Åπé┼è╟ù¥é│éΩéΘéαé╠é≡Äwé╡é▄é╖üB
  366.  
  367.  
  368. int    PidSearch( name, id )
  369. ----------------------------------------------------------------------------
  370. char    *name;    îƒì⌡é╖éΘâvâìâOâëâÇû╝
  371. int    id;    îƒì⌡é≡èJÄné╖éΘ pid ö╘ìå (ì┼Åëé═1é≡ÄwÆΦé╖éΘ)
  372.  
  373.   âvâìâOâëâÇû╝é⌐éτ Ko-Window é╠âvâìâZâXé≡îƒì⌡é╡é▄é╖üBé▌é┬é⌐é┴é╜ pid é≡ò╘é╡é▄
  374.   é╖(PorcessID)üBâvâìâZâXé¬î⌐é┬é⌐éτé╚é»éΩé╬ 0 é≡ò╘é╡é▄é╖üBé▌é┬é⌐é┴é╜ pid+1
  375.   é≡ id é╔É▌ÆΦé╡é─ì─Ä└ìsé╖éΘé╞üAăîƒì⌡é¬é┼é½é▄é╖üB
  376.  
  377. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  378.     é╖é╫é─é╠ô»û╝é╠âvâìâZâXé≡Æ▓é╫éΘùß
  379.     for( pid= 0 ; pid= PidSearch( Name, pid+1 ) ;){
  380.         ...
  381.     }
  382. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  383. ----------------------------------------------------------------------------
  384.  
  385.  
  386. int    PidSendEvent( name, info, mode )
  387. ----------------------------------------------------------------------------
  388. char      *name;    îƒì⌡é╖éΘâvâìâOâëâÇû╝
  389. EventInfo *info;    æùéΘâCâxâôâgÅεò±
  390. int      mode;        break âtâëâO ( TRUE: break ON üA FALSE: break OFF )
  391.  
  392.   âvâìâOâëâÇû╝é⌐éτ Ko-Window é╠âvâìâZâXé≡îƒì⌡é╡üAÄwÆΦé╠âCâxâôâgé≡æùÉMé╡é▄é╖üB
  393.   é▒é╠Ä₧é╗é╠âvâìâZâXé╔æ«é╖éΘâEâBâôâhâEæSòöé╔æùÉMé│éΩé▄é╖üBéαé╡ô»û╝é╠âvâìâOâë
  394.   âÇé¬òíÉöïNô«é│éΩé─éóéΘé╚éτé╬üAæSòöé╠âvâìâOâëâÇé╔âCâxâôâgé≡æùÉMé╡é▄é╖üBé╜é╛
  395.   é╡ mode é╔ TRUE é≡ÄwÆΦé╡é─é¿é¡é╞üAì┼Åëé╔î⌐é┬é⌐é┴é╜âvâìâOâëâÇé╔é╛é»âCâxâôâg
  396.   é≡æùÉMé╖éΘéµéñé╔é╚éΦé▄é╖üBû▀éΦÆlé═ WindowSendEventAll() é╠Ælé┼é╖üBæùÉMé┼é½
  397.   é╚é⌐é┴é╜ÅΩìçéαé╡é¡é═æùÉMé╡é╜âvâìâOâëâÇé¬âCâxâôâgé┼ FALSE é≡ò╘é╡é╜ÅΩìçé═üA
  398.   FALSE é¬ò╘éΦé▄é╖üB
  399. ----------------------------------------------------------------------------
  400.  
  401.  
  402. 10. âRâôâ\ü[âïâëâCâuâëâè
  403.  
  404.  
  405. void    *ConsoleOpen( void )
  406. ----------------------------------------------------------------------------
  407.   âEâBâôâhâEÅπé╠âRâôâ\ü[âïé╠æ╢ì▌é≡Æ▓é╫üAê╚ë║é╠ Console è╓Éöé≡ÄgéªéΘéµéñé╔é╡
  408.   é▄é╖üBû▀éΦÆlé═ struct WindowConsoleType é╓é╠â|âCâôâ^é┼üAâRâôâ\ü[âïé¬æ╢ì▌é╡
  409.   é╚éóÅΩìçé═ NULL é≡ò╘é╡é▄é╖é¬üAé▒éΩé≡âåü[âUü[é¬ê╙Ä»é╖éΘòKùvé═éáéΦé▄é╣é±üBâG
  410.   âëü[â`âFâbâNéαòsùvé┼é╖üBé▒é╠è╓Éöé≡ë╜ôxéαîJéΦò╘é╡î─é╤Åoé╡é─éαûΓæΦéáéΦé▄é╣é±üB
  411.   Close é╖éΘòKùvéαéáéΦé▄é╣é±üB
  412.  
  413.   é▒é╠è╓Éöé═ ê╚ë║é╠ ConsolePrint() éΓ ConsoleChar() ôÖé≡Ägùpé╖éΘæOé╔òKé╕Ä└ìs
  414.   é╡é─é¿é¡òKùvé¬éáéΦé▄é╖üBConsoleOpen() é═éPâCâxâôâgÆPê╩é┼Ä└ìsé╡é▄é╖üBé┬é▄éΦüA
  415.   éóé┴é╜é±âCâxâôâgé≡èJò·é╡é─é╡é▄éñé╞üAConsole é¬ò┬é╢é─é╡é▄é┴é╜éΦïNô«é╡Æ╝é│éΩ
  416.   é─éóé╜éΦé╖éΘë┬ö\ɽé¬éáéΘé⌐éτé┼é╖üBòsê└é╚Ä₧é═üAConsolePrintü` é╠ôxé╔üAÆ╝æOé╔
  417.   ConsoleOpen() é≡æSòöé┬é»é─é¿éóé─ë║é│éóüB
  418. ----------------------------------------------------------------------------
  419.  
  420.  
  421. void    ConsolePrint( str )
  422. ----------------------------------------------------------------------------
  423. char    *str;    Åoù═ò╢ÄÜù±
  424.  
  425.   âRâôâ\ü[âïé╔ò╢ÄÜù±é≡Åoù═é╡é▄é╖üBÆ╝æOé╔ ConsoleOpen() é≡Ä└ìsé╡é─é¿é¡òKùvé¬
  426.   éáéΦé▄é╖üBâRâôâ\ü[âïé¬æ╢ì▌é╡é╚éóÅΩìçé═ë╜éαé╡é▄é╣é±üBé╚é¿üAâRâôâ\ü[âïæñé╠âv
  427.   âìâOâëâÇé═Æ╩Åφìsâoâbâtâ@âèâôâOé│éΩé─éóéΘé╠é¬òüÆ╩é┼é╖üBé╗é╠é╜é▀ëⁿìsâRü[âhé¬
  428.   Åoé─é½é─é═é╢é▀é─ëµû╩é╔î╗éΩé▄é╖é╠é┼Æìê╙é╡é─ë║é│éóüB
  429.  
  430. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  431.     ConsoleOpen();
  432.     ConsolePrint( "DoDoon\r\n" );
  433. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  434. ----------------------------------------------------------------------------
  435.  
  436.  
  437. void    ConsoleChar( code )
  438. ----------------------------------------------------------------------------
  439. int    code;    Åoù═ò╢ÄÜ
  440.  
  441.   âRâôâ\ü[âïé╔éPò╢ÄÜÅoù═é╡é▄é╖üBÆ╝æOé╔ ConsoleOpen() é≡Ä└ìsé╡é─é¿é¡òKùvé¬éá
  442.   éΦé▄é╖üBâRâôâ\ü[âïé¬æ╢ì▌é╡é╚éóÅΩìçé═ë╜éαé╡é▄é╣é±üBâRâôâ\ü[âïé¬ìsâoâbâtâ@âè
  443.   âôâOé│éΩé─éóéΘè╓îWÅπëⁿìsâRü[âhé¬Åoé─é¡éΘé▄é┼ëµû╩é╔é═î╗éΩé▄é╣é±é╠é┼Æìê╙é╡é─
  444.   ë║é│éóüB
  445. ----------------------------------------------------------------------------
  446.  
  447.  
  448. void    ConsolePrintf( fmt, arglist .. )
  449. ----------------------------------------------------------------------------
  450. char    *fmt;    âtâHü[â}âbâgÅoù═ò╢ÄÜù±
  451.  
  452.    âRâôâ\ü[âïé╔âtâHü[â}âbâgò╢ÄÜù±é≡Åoù═é╡é▄é╖üBprintf() ôÖé╞ô»é╢ÅæÄ«é¬Ägéªé▄
  453.    é╖üB(__fmtout Ägùp) Æ╝æOé╔ ConsoleOpen() é≡Ä└ìsé╡é─é¿é¡òKùvé¬éáéΦé▄é╖üBâR
  454.    âôâ\ü[âïé¬æ╢ì▌é╡é╚éóÅΩìçé═ë╜éαé╡é▄é╣é±üBâRâôâ\ü[âïé¬ìsâoâbâtâ@âèâôâOé│éΩ
  455.    é─éóéΘè╓îWÅπëⁿìsâRü[âhé¬Åoé─é¡éΘé▄é┼ëµû╩é╔é═î╗éΩé▄é╣é±é╠é┼Æìê╙é╡é─ë║é│éóüB
  456. ----------------------------------------------------------------------------
  457.  
  458.  
  459. 11. â}âEâXâJü[â\âïè╓îW
  460.  
  461.  
  462. void    MouseSetPattern( num, sp, offx, offy )
  463. ----------------------------------------------------------------------------
  464. int    num;    ÆΦï`é╖éΘâ}âEâXâJü[â\âïâiâôâoü[
  465. Sheet    *sp;    ÆΦï`âpâ^ü[âô
  466. int    offx;    âJü[â\âïê╩Æué╓é╠âIâtâZâbâgX
  467. int    offy;    âJü[â\âïê╩Æué╓é╠âIâtâZâbâgY
  468.  
  469.   Sheet âfü[â^é≡â}âEâXâJü[â\âïé╞é╡é─ôoÿ^é╡é▄é╖üBSheet âfü[â^é═òKé╕ 16x16 dot
  470.   é╠âpâ^ü[âôé┼é╚é»éΩé╬é╚éΦé▄é╣é±üBnum é═ÆΦï`é╖éΘâ}âEâXâJü[â\âïé╠ö╘ìåé┼é╖üB
  471.   offx, offy é═üAâJü[â\âïê╩Æué╞âpâ^ü[âôì╢Åπì└òWé╞é╠é╕éΩé≡ÄwÆΦé╖éΘéαé╠é┼é╖üB
  472.   â}âEâXâJü[â\âïùpé╠ Sheet é═ Color0 é¬ôºû╛òöé┼é╖üBòKé╕ Color1 é╞ Color3 é╛
  473.   é»é┼âfâUâCâôé╡é─ë║é│éóüBColor2 é═Ägùpé┼é½é▄é╣é±üB
  474. ----------------------------------------------------------------------------
  475.  
  476.  
  477. void    MouseSetDefPat_TUKAMI()
  478. ----------------------------------------------------------------------------
  479.   â}âEâXâJü[â\âïé≡üuÄΦüvé╠î`é╔é╡é▄é╖üBé▒éΩé═éαé╞éαé╞ UserSendOperation() é¬
  480.   ôαòöé┼Ägéñé╜é▀é╔Ä¥é┴é─éóé╜âpâ^ü[âôé┼é╖üBêΩë₧èOòöé⌐éτéαÄgéªéΘéµéñâGâôâgâèé≡
  481.   É▌é»é▄é╡é╜üBê¼é┴é╜ÄΦé╠î`é┼üAâfü[â^é≡é┬é⌐é±é┼æ╝é╠âEâBâôâhâEé╓âhâëâbâOô]æùé╖
  482.   éΘÅΩìçé╔ùpéóé▄é╖üB
  483. ----------------------------------------------------------------------------
  484.  
  485.  
  486. void    MouseSetNormalPat()
  487. ----------------------------------------------------------------------------
  488.   î│é╠âpâ^ü[âôé╔û▀é╡é▄é╖üBIOCS CALL é╠ MS_SEL( 0 ) é╞ô»ôÖé┼é╖üB
  489. ----------------------------------------------------------------------------
  490.  
  491.  
  492. 12. âfâtâHâïâgâOâëâtâBâbâNâëâCâuâëâè
  493.  
  494.   âOâëâtâBâbâNâEâBâôâhâEÄⁿéΦé╠Åêù¥é≡è╚ù¬ë╗é╖éΘé╜é▀é╔ì∞éτéΩé╜âëâCâuâëâèé┼é╖üB
  495.  
  496.  
  497. void    DefGraphicInit( gra, mode, sleep, palet )
  498. ----------------------------------------------------------------------------
  499. DefGraphic    *gra;        DefGraphic ì\æóæ╠
  500. int        mode;        ÉFâéü[âh( WindowAttrGraphic16/256/65536)
  501. int        (*sleep)();    SLEEPÆåé╠ò`ëµâïü[â`âô
  502. unsigned short    *palet;        PALETèiö[ù╠êµé╠ɵô¬âAâhâîâX
  503.  
  504.   âfâtâHâïâgâOâëâtâBâbâNâëâCâuâëâèé≡Åëè·ë╗é╡é▄é╖üBWindowSetGraphicMode() é≡
  505.   ôαòöé┼Ä└ìsé╡é▄é╖üBsleep é≡ NULL é╔é╖éΘé╞üAò`ëµâïü[â`âôî─é╤Åoé╡é═ìséφéΩé▄é╣
  506.   é±üBsleep é≡ô┴é╔ÄwÆΦé╡é╚éóÅΩìçé═âfâtâHâïâgÅêù¥é╞é╡é─ DefGraphicSleep é≡Äw
  507.   ÆΦé╡é─ë║é│éóüBpalet é≡ NULL é╔é╖éΘé╞âpâîâbâgÉ▌ÆΦé≡ìsé╚éóé▄é╣é±(65536ÉFâéü[
  508.   âhÄ₧é╚é╟)üBpalet é═ 16 ÉFâéü[âhé╠Ä₧é═ 16âZâbâg(32byte)üA256/65536ÉFâéü[âh
  509.   é╠Ä₧é═ 256âZâbâg(512byte)òKùvé┼é╖üB
  510.  
  511.   SLEEP é╞éóéñé╠é═üAæ╝é╠âAâvâèé¬âAâNâeâBâué╔é╚é┴é─éóé─üAé╗é╠âAâvâèâPü[âVâçâô
  512.   é┼Ägùpé╖éΘâOâëâtâBâbâNâéü[âhé╞ê┘é╚éΘÅ≤æ╘é≡éóéóé▄é╖üBé▒é╠é╞é½é╗é╠âAâvâèâPü[
  513.   âVâçâôé═ò`ëµé≡ìsé╚éñé▒é╞é¬é┼é½é╚éóé╠é┼Åêù¥é≡ÆåÆfé╡é─éóéΘéφé»é┼é╖üB
  514.   EventGraphic é┼ëµû╩âéü[âhé╠ò╧ìXé¬Æméτé│éΩüAéαé╡Ä⌐ò¬é╠Ägùpé╖éΘâéü[âhé┼éáéΘ
  515.   é╚éτÅêù¥é≡ì─èJé╡é▄é╖üB(SLEEP Å≤æ╘é╠ë≡Å£)
  516.  
  517.   palet é╔òWÅÇ (X680x0âfâtâHâïâg) é╠âpâîâbâgÆlé≡Ägùpé╡é╜éóÄ₧é═üAăé╠éQé┬é╠âV
  518.   âôâ{âïé≡Ägùpé╡é─ë║é│éóüB65536ÉFâéü[âhé╠é╞é½é═ NULL é≡ÄwÆΦé╡é▄é╖üB
  519.  
  520.         16 ÉFâéü[âhÄ₧    DefGraphicPal16
  521.         256ÉFâéü[âhÄ₧    DefGraphicPal256
  522.  
  523. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  524.     DefGraphicInit( &gra, WindowAttrGraphic16, NULL, DefGraphicPal16 );
  525.     DefGraphicInit( &gra, WindowAttrGraphic256, NULL, DefGraphicPal256 );
  526. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  527. ----------------------------------------------------------------------------
  528.  
  529.  
  530. int    DefGraphicRedraw( gra, wp, info )
  531. ----------------------------------------------------------------------------
  532. DefGraphic    *gra;    DefGrahic ì\æóæ╠
  533. WindowID    wp;
  534. EventInfo    *info;
  535.  
  536.   âfâtâHâïâgâOâëâtâBâbâNâëâCâuâëâèé╠ò`ëµâ`âFâbâNé≡é╡é▄é╖üBEventRedraw é┼ì┼Åë
  537.   é╔î─é╤Åoé╡é─ë║é│éóüBéαé╡ SLEEP é╚éτ DefGraphicInit() é┼É▌ÆΦé╡é╜ SLEEP ò`ëµ
  538.   âïü[â`âôé≡Ä└ìsé╡é▄é╖üBsleep é╔ DefGraphicSleep é≡ÄwÆΦé╡é─éóé╜ÅΩìçé═âEâBâô
  539.   âhâEæSæ╠é≡âJâëü[1é┼ DrawSetClear() é╡é▄é╖üB
  540.   é╜é╛é╡ DefGraphicInit() é┼ sleep é╔ NULL é≡ÄwÆΦé╡é─éóé╜ÅΩìçé═é▒é╠Ä└ìsé═ìs
  541.   éφéΩé▄é╣é±üB
  542.   û▀éΦÆlé═ sleep é¬ NULL é╠ÅΩìçé═ FALSEüAé╗éΩê╚èOé═ TRUE é╔é╚éΦé▄é╖üB
  543. ----------------------------------------------------------------------------
  544.  
  545.  
  546. void    DefGraphicPalet( gra )
  547. ----------------------------------------------------------------------------
  548. DefGraphic    *gra;
  549.  
  550.   âOâëâtâBâbâNâpâîâbâgé╠É▌ÆΦé≡ìséóé▄é╖üBDefGraphicInit() é┼ÄwÆΦé╡é╜âOâëâtâBâb
  551.   âNâpâîâbâgé╔Åëè·ë╗é╡é▄é╖üB
  552. ----------------------------------------------------------------------------
  553.  
  554.  
  555. int    DefGraphicEnt( gra, wp, info )
  556. ----------------------------------------------------------------------------
  557. DefGraphic    *gra;
  558. WindowID    wp;
  559. EventInfo    *info;
  560.  
  561.   âfâtâHâïâgé╠âOâëâtâBâbâNâCâxâôâgÅêù¥é≡é╡é▄é╖üBEventGraphic, EventPop,
  562.   EventMove é┼é▒é╠è╓Éöé≡î─é╤Åoé╡é─ë║é│éóüB(êΩÅÅé╔î─é╤Åoé╡é┼é½é▄é╖) ôαòöé┼
  563.   DefGraphicInit() é┼ÄwÆΦé╡é─éóé╜ palet é≡É▌ÆΦé╖éΘÅΩìçé¬éáéΦé▄é╖üBpalet é¬
  564.   NULL é╠ÅΩìçé═é▒é╠É▌ÆΦé╡é▄é╣é±üBò╘éΦÆlé═òKé╕ TRUE é╔é╚éΦé▄é╖üB
  565.  
  566. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  567.     static DefGraphic    gra;
  568.     switch( info->option ){
  569.     case EventOpen:
  570.     DefGraphicInit( &gra, WindowAttrGraphic16, DefGraphicSleep, palet );
  571.     WindowSetAttr( wp, WindowAttrGraphic16 );
  572.     WindowSetEventAttr( wp, EventAttrDefault | EventGraphciON |
  573.                         EventPopON | EventMoveON );
  574.     GposInit( wp );
  575.     WindowRedraw( wp );
  576.     return    TRUE;
  577.     case EventRedraw:
  578.     if( !DefGraphicRedraw( &gra, wp, info ) ){
  579.         Ä└ì█é╠ò`ëµÅêù¥(âOâëâtâBâbâNëµû╩é≡Ägùpé┼é½éΘ)
  580.     }
  581.     DefGraphicPalet( &gra );
  582.     return    TRUE;
  583.     case EventMove:
  584.     case EventPop:
  585.     case EventGraphic:
  586.     return    DefGraphicEnt( &gra, wp, info );
  587.     : æ╝é╠ Event Åêù¥
  588.     }
  589. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  590. ----------------------------------------------------------------------------
  591.  
  592.  
  593. int    DefGraphicCheck( gra )
  594. ----------------------------------------------------------------------------
  595. DefGraphic    *gra;
  596.  
  597.   î╗ì▌ SLEEP Å≤æ╘é⌐é╟éñé⌐é≡Æ▓é╫é▄é╖(â}âNâì)üBSLEEP Ä₧é═ TRUE, é╗éñé┼é╚é»éΩé╬
  598.   FALSE é≡ò╘é╡é▄é╖üB
  599. ----------------------------------------------------------------------------
  600.  
  601.  
  602. 13. Mg âëâCâuâëâè
  603.  
  604.   è╚ÆPé╔âvâìâOâëâÇé≡ì∞éΘé▒é╞é¬é┼é½éΘüAè╚ù¬ë╗âëâCâuâëâèé┼é╖üBé╜éóé╓é±ò╓ùÿé┼é╖
  605.   é¬üAé╗é╠ò¬òsùpé╚âïü[â`âôé¬æ╜Éöægé▌ì₧é▄éΩé─éóé─üAÄ└ì█é╠âAâvâèâPü[âVâçâôé╔Äd
  606.   Åπé░é╜ÅΩìçÄ└ìsé¿éµé╤âtâ@âCâïâTâCâYé╔éαû│æ╩é¬æ╜é¡é╚éΘé▒é╞é╔Æìê╙é╡é─ë║é│éóüB
  607.  
  608.   é▄é╜üAÄgùpé╔éáé╜é┴é─é═üAòKé╕ WindowHeapSize é≡É▌ÆΦé╖éΘéµéñé╔é╡é─ë║é│éóüBé▒
  609.   é╠âïü[â`âôîQé═ HEAP é≡Å┴ö∩é╡é▄é╖üBÅ┴ö∩ù╩é═ÅΩìçé╔éµé┴é─ê┘é╚éΦé▄é╖üB
  610.  
  611.  
  612. WindowID    MgWindowDefaultOpen( x, y, h, v, title, mode, Exec )
  613. ----------------------------------------------------------------------------
  614. int        x, y,        âEâBâôâhâEé≡èJé¡ê╩Æu
  615.         h, v;        âEâBâôâhâEé≡èJé¡æσé½é│
  616. char        *title;        â^âCâgâïò╢ÄÜù±
  617. int        mode;        æ«É½
  618. int        (*Exec)();    âCâxâôâgÄ└ìsè╓Éö
  619.  
  620.   ì┼éαè╚ÆPé╔âEâBâôâhâEé≡èJé¡é╜é▀é╠è╓Éöé┼é╖üBÄgéóò√é═Æ╩Åφé╠ WindowOpen() é╞ô»
  621.   é╢é┼é╖üBé╜é╛é╡üAÄwÆΦé╡é╜âCâxâôâgÄ└ìsè╓Éöé¬òKùvì┼Æßî└é╠âCâxâôâgé╔éα FALSE
  622.   é≡ò╘é╡é─é½é╜ÅΩìçüAôαòöé┼æπë┐Åêù¥é≡ìséóé▄é╖üBé╗é╠é╜é▀âCâxâôâgÄ└ìsâïü[â`âôé═
  623.   æσò¥é╔Å╚ù¬é╖éΘé▒é╞é¬é┼é½é▄é╖üB
  624.   ï╔Æ[é╚ÿbüAăé╠éµéñé╚âvâìâOâëâÇé╛é»é┼æªâEâBâôâhâEé¬èJé½é▄é╖üB(é▒éΩé┼æSòö)
  625.  
  626. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  627. #include    "corlib.h"
  628. EventExec()
  629. {
  630.     return    FALSE;
  631. }
  632.  
  633. WindowMain()
  634. {
  635.     MgWindowDefaultOpen( 10, 10, 200, 200, "Test", 0, EventExec );
  636. }
  637. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  638.  
  639.   é▒é╠è╓Éöé═ôαòöé┼ malloc() é╖éΘé╠é┼òKé╕ WindowHeapSize é≡É▌ÆΦé╡é─ë║é│éóüBùe
  640.   ù╩é═ì┼Æßé┼ 1Kbyte éαéáéΩé╬Å\ò¬é┼é╖üB
  641.   æ«É½ mode é╔é═üAWindowTitleOpen() é╞ô»ùlâ^âCâgâïâEâBâôâhâEé╠â{âbâNâXâXâCâb
  642.   â`ò└é╤é≡ÄwÆΦé╡é▄é╖üBé╜é╛é╡üAë╜éαÄwÆΦé╡é╚é¡é─éα( 0 é╠ÅΩìçé┼éα) Close|Push é═
  643.   ÄwÆΦé│éΩé╜éαé╠é╞î⌐é╚é╡é▄é╖üB
  644.   é▄é╜üAâOâëâtâBâbâNëµû╩é≡Ägùpé╖éΘâAâvâèé╠ÅΩìçüAé▒é╠æ«É½é╔ MgGraphic16,
  645.   MgGraphic256,  MgGraphic65536 é╠éñé┐é╟éΩé⌐é≡ë┴éªé─ë║é│éóüB
  646.   âfâtâHâïâgé╠âCâxâôâgÅêù¥âïü[â`âôôαòöé┼ DefGraphic() âëâCâuâëâèé≡ŃÄΦé╔î─é╤
  647.   Åoé╡é▄é╖é╠é┼üAÆ╩Åφé═ê╙Ä»é╣é╕é╔âOâëâtâBâbâNÄgùpâAâvâèé≡ì∞éΘé▒é╞é¬é┼é½é▄é╖üB
  648.   û▀éΦÆlé═âIü[âvâôé╡é╜âEâBâôâhâEé╠ ID é┼é╖üB
  649. ----------------------------------------------------------------------------
  650.  
  651.  
  652. WindowID    MgWindowDefaultOpenArgs( x, y, h, v, title, argc, argv,
  653.                                 mode, Exec );
  654. ----------------------------------------------------------------------------
  655. int        x, y,        âEâBâôâhâEé≡èJé¡âfâtâHâïâgê╩Æu
  656.         h, v;        âEâBâôâhâEé≡èJé¡âfâtâHâïâgé╠æσé½é│
  657. int        argc;        âvâìâOâëâÇé╠ arg Éö
  658. char        **argv;        âvâìâOâëâÇé╠ arg âèâXâg
  659. int        mode;        æ«É½
  660. char        *title;        â^âCâgâïò╢ÄÜù±
  661. int        (*Exec)();    âCâxâôâgÄ└ìsè╓Éö
  662.  
  663.   MgWindowDefaultOpen() é╔üAAnalyzeArgs() é≡éαægé▌ì₧é±é╛è╓Éöé┼é╖üBé▒éΩ1é┬é╛é»
  664.   é┼ WindowMain() é═è«îïé╡é▄é╖üBæ«É½é═ MgWindowDefaultOpen() é╞ô»é╢é┼é╖é¬üA
  665.   éαéñéPé┬ MgSwitchHV é≡ù^éªéΘé▒é╞é¬é┼é½é▄é╖üBÆ╩Åφé═ -x, -y âXâCâbâ`é╛é»î⌐é─
  666.   òKùvé╔ë₧é╢é─ x, y é≡Åæé½è╖éªé▄é╖é¬üAé▒é╠ MgSwitchHV é¬éáéΘÅΩìçé═ -h, -v âX
  667.   âCâbâ`éαÅêù¥é╡é▄é╖üBôαòöé┼ malloc() é╖éΘé╠é┼òKé╕ WindowHeapSize é╠É▌ÆΦé¬òK
  668.   ùvé┼é╖üBû▀éΦÆlé═âIü[âvâôé╡é╜âEâBâôâhâEé╠ ID é┼é╖üB
  669.  
  670. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  671. #include    "corlib.h"
  672. EventExec( wp, info )
  673. WindowID    wp;
  674. EventInfo    *info;
  675. {
  676.     if( info->option == EventRedraw ){
  677.         DrawBuf    dbuf[20];
  678.         DrawSetClear( dbuf, 1 );
  679.         DrawSetSymbol( dbuf+1, 8, 8, "ò\Īé╖éΘé╛é»", AttrDefault, 16 );
  680.         WindowDraw( wp, dbuf, 2 );
  681.         return    TRUE;
  682.     }
  683.     return    FALSE;
  684. }
  685.  
  686. WindowMain( argc, argv )
  687. {
  688.     MgWindowDefaultOpenArgs( 10, 10, 200, 200, "Test", argc, argv,
  689.                             Icon, EventExec );
  690. }
  691. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  692.   é▒é╠éµéñé╔üAÄ⌐ò¬é┼ù~é╡éóâCâxâôâgé╛é»ïLÅqé╖éΩé╬üAé┐éßé±é╞âAâvâèé╔é╚éΦé▄é╖üB
  693. ----------------------------------------------------------------------------
  694.  
  695.  
  696. void    MgWindowSetClientData( wp, data, ptr )
  697. ----------------------------------------------------------------------------
  698. WindowID    wp;    âEâBâôâhâEID
  699. int        data;    É▌ÆΦé╖éΘâNâëâCâAâôâgâfü[â^
  700. void        *ptr;    É▌ÆΦé╖éΘâNâëâCâAâôâgâ|âCâôâ^
  701.  
  702.   MgLIB é┼âNâëâCâAâôâgâfü[â^é≡Ägùpé╖éΘé╜é▀é╠è╓Éöé┼é╖üBMgLIB é┼é═òKé╕é▒é╠è╓Éö
  703.   é┼âNâëâCâAâôâgâfü[â^é≡ÆΦï`é╡é╚é»éΩé╬é╚éΦé▄é╣é±üB
  704.   é▒é╠è╓Éöé═òKé╕âCâxâôâgÄ└ìsâïü[â`âôôαé┼Ägùpé╡é─ë║é│éóüBï∩æ╠ôIé╔é═ EventOpen
  705.   é¬êΩôxé┼éαÄ└ìsé│éΩé─é⌐éτé┼é╖üB
  706. ----------------------------------------------------------------------------
  707.  
  708.  
  709. int    MgWindowGetClientData( wp )
  710. ----------------------------------------------------------------------------
  711. WindowID    wp;    âEâBâôâhâEID
  712.  
  713.   MgWindowSetClientData() é┼ÆΦï`é╡é╜âNâëâCâAâôâgâfü[â^é≡ò╘é╡é▄é╖üB
  714. ----------------------------------------------------------------------------
  715.  
  716.  
  717. void    *MgWindowGetClientPointer( wp )
  718. ----------------------------------------------------------------------------
  719. WindowID    wp;    âEâBâôâhâEID
  720.  
  721.   MgWindowSetClientData() é┼ÆΦï`é╡é╜âNâëâCâAâôâgâ|âCâôâ^é≡ò╘é╡é▄é╖üB
  722. ----------------------------------------------------------------------------
  723.  
  724.  
  725. WindowID    MgWindowScrollOpen( x, y, h, v, title, maxh, maxv, mode, Exec )
  726. ----------------------------------------------------------------------------
  727. int        x, y,        âEâBâôâhâEé≡èJé¡ê╩Æu
  728.         h, v;        âEâBâôâhâEé≡èJé¡æσé½é│
  729. char        *title;        â^âCâgâïò╢ÄÜù±
  730. int        maxh,        âEâBâôâhâEé╠âXâNâìü[âïö═ê═üiëíò√îⁿì┼æσÆlüj
  731.         maxv;        âEâBâôâhâEé╠âXâNâìü[âïö═ê═üiÅcò√îⁿì┼æσÆlüj
  732. int        mode;        æ«É½
  733. int        (*Exec)();    âCâxâôâgÄ└ìsè╓Éö
  734.  
  735.   âXâNâìü[âïâEâBâôâhâEé≡è╚ÆPé╔è╚ÆPé╔èJé¡é╜é▀é╠âëâCâuâëâèé┼é╖üBview.win é╠éµ
  736.   éñé╚âXâNâìü[âïâoü[òté½âEâBâôâhâEé≡èJé½é▄é╖üBèεû{ôIé╔é═ MgWindowDefaultOpen()
  737.   é╞ô»é╢Ägéóò√é┼é╖üBâ^âCâgâïâoü[é╔é═òKé╕âèâTâCâYâ{âbâNâXé¬é┬é½é▄é╖üBé▄é╜üAâEâB
  738.   âôâhâEëEë║é╠èpé═âèâTâCâYâ{âbâNâXé╞ô»é╢ô¡é½é╔é╚éΦé▄é╖üBé╜é╛é╡ò`ëµé╔âOâëâtâBâb
  739.   âNé═Ägéªé▄é╣é±üBôαòöé┼ malloc() é╖éΘé╠é┼òKé╕ WindowHeapSize é╠É▌ÆΦé¬òKùvé┼
  740.   é╖üBû▀éΦÆlé═âIü[âvâôé╡é╜âEâBâôâhâEé╠ ID é┼é╖üB
  741. ----------------------------------------------------------------------------
  742.  
  743.  
  744. WindowID    MgWindowScrollOpenArgs( x, y, h, v, title, argc, argv,
  745.                         maxh, maxv, mode, Exec )
  746. ----------------------------------------------------------------------------
  747. int        x, y,        âEâBâôâhâEé≡èJé¡ê╩Æu
  748.         h, v;        âEâBâôâhâEé≡èJé¡æσé½é│
  749. char        *title;        â^âCâgâïò╢ÄÜù±
  750. int        argc;        âRâ}âôâhê°Éöé╠î┬Éö
  751. char        **argv;        âRâ}âôâhê°ÉöâèâXâg
  752. int        maxh,        âEâBâôâhâEé╠âXâNâìü[âïö═ê═üiëíò√îⁿì┼æσÆlüj
  753.         maxv;        âEâBâôâhâEé╠âXâNâìü[âïö═ê═üiÅcò√îⁿì┼æσÆlüj
  754. int        mode;        æ«É½
  755. int        (*Exec)();    âCâxâôâgÄ└ìsè╓Éö
  756.  
  757.   MgWindowScrollOpen() é┼ê°ÉöÅêù¥é¬é┼é½éΘéµéñé╔é╡é╜éαé╠é┼é╖üB
  758.   MgWindowDefaultOpenArgs() ô»ùlé╠ÄwÆΦé¬é┼é½é▄é╖üBû▀éΦÆlé═âIü[âvâôé╡é╜âEâBâô
  759.   âhâEé╠ ID é┼é╖üB
  760. ----------------------------------------------------------------------------
  761.  
  762.  
  763. 14. MgButton âëâCâuâëâè
  764.  
  765.   âvâbâVâàâ{â^âôé≡ê╡éñâëâCâuâëâèé┼é╖üBHEAP é≡Å┴ö∩é╖éΘé╠é┼ WindowHeapSize é╠
  766.   É▌ÆΦé¬òKùvé┼é╖üB
  767.  
  768.  
  769. void    MgButtonInit( mbp )
  770. ----------------------------------------------------------------------------
  771. MgButton    *mbp;
  772.  
  773.   âvâbâVâàâ{â^âôì\æóæ╠é≡Åëè·ë╗é╡é▄é╖üBMgButtonSetü` è╓Éöé≡Ä└ìsé╖éΘæOé╔òKé╕é▒
  774.   é╠Åëè·ë╗é≡ìsé╚é┴é─é¿éóé─ë║é│éóüB
  775. ----------------------------------------------------------------------------
  776.  
  777.  
  778. int    MgButtonSet( mbp, x, y, h, v, num );
  779. ----------------------------------------------------------------------------
  780. MgButton    *mbp;
  781. int        x, y, h, v;    â{â^âôé╠ê╩Æué╞æσé½é│
  782. int        num;        é▒é╠â{â^âôé¬ëƒé│éΩé╜Ä₧é╔ò╘é╖Æl
  783.  
  784.   âvâbâVâàâ{â^âôì\æóæ╠é╔â{â^âôé≡ÆΦï`é≡Æ╟ë┴é╡é▄é╖üBé▒é╠â{â^âôé═ÿgé╛é»é┼Æåé╔ë╜
  785.   éαò\Īé╡é▄é╣é±üBMgButtonOperation() è╓Éöé≡î─é╤Åoé╡é╜Ä₧üAé▒é╠â{â^âôé¬ëƒé│éΩ
  786.   é─éóéΩé╬ num é┼É▌ÆΦé╡é╜Ælé≡ò╘é╡é▄é╖üBé▒é╠è╓Éöé═üAâ{â^âôÆΦï`é¬Ä╕ösé╡é╜ÅΩìç
  787.   é═ FALSE é≡ò╘é╡é▄é╖üB
  788. ----------------------------------------------------------------------------
  789.  
  790.  
  791. int    MgButtonSetSymbol( mbp, x, y, w, num, msg, attr, font )
  792. ----------------------------------------------------------------------------
  793. MgButton    *mbp;
  794. int        x, y;    â{â^âôé╠ò\Īê╩Æu
  795. int        w;    ò╢ÄÜù±(msg)é⌐éτÿgé▄é┼é╠âhâbâgÉö
  796. int        num;    é▒é╠â{â^âôé¬ëƒé│éΩé╜Ä₧é╔ò╘é╖Æl
  797. char        *msg;    â{â^âôôαòöé╔ò\Īé╖éΘò╢ÄÜù±
  798. int        attr;    msgé≡ò\Īé╖éΘâAâgâèârâàü[âg
  799. int        font;    msgé≡ò\Īé╖éΘâtâHâôâgâTâCâY
  800.  
  801.   âvâbâVâàâ{â^âôì\æóæ╠é╔â{â^âôé≡ÆΦï`é≡Æ╟ë┴é╡é▄é╖üBÆåé╔ò╢ÄÜù±é≡ò\Īé╡é▄é╖üB
  802.   num é═ MgButtonOperation() è╓Éöé≡î─é╤Åoé╡é╜Ä₧üAé▒é╠â{â^âôé¬ëƒé│éΩé─éóé╜ÅΩ
  803.   ìçé╔ò╘é│éΩéΘÆlé┼é╖üBâ{â^âôé╠âTâCâYé═üAò╢ÄÜù±é╠Æ╖é│é╔éµé┴é─îêé▄éΦé▄é╖üBò╢ÄÜ
  804.   ù±é⌐éτÿgé▄é┼é╠âhâbâgÉöé≡ w é┼ÄwÆΦé╡é▄é╖üBò╢ÄÜù±é═üAstatic ù╠êµé╓é╠â|âCâôâ^
  805.   é┼é╚é»éΩé╬é╚éΦé▄é╣é±üBé▒é╠è╓Éöé═üAâ{â^âôÆΦï`é¬Ä╕ösé╡é╜ÅΩìçé═ FALSE é≡ò╘é╡
  806.   é▄é╖üB
  807. ----------------------------------------------------------------------------
  808.  
  809.  
  810. int    MgButtonSetSheet( mbp, x, y, num, shon, shoff )
  811. ----------------------------------------------------------------------------
  812. MgButton    *mbp;
  813. int        x, y;        â{â^âôé╠ê╩Æu
  814. int        num;        é▒é╠â{â^âôé¬ëƒé│éΩé╜Ä₧é╔ò╘é╖Æl
  815. Sheet        *shon,        â{â^âôé¬ëƒé│éΩé╜Ä₧é╠ Sheet
  816.         *shoff;        â{â^âôé¬ëƒé│éΩé─éóé╚éóÄ₧é╠ Sheet
  817.  
  818.   âvâbâVâàâ{â^âôì\æóæ╠é╔â{â^âôé≡ÆΦï`é≡Æ╟ë┴é╡é▄é╖üBâ{â^âôé╠ò\Īé═âåü[âUü[é¬ù^
  819.   éªé╜ Sheet âpâ^ü[âôé╔éµé┴é─ìsé╚éóé▄é╖üBMgButtonOperation() è╓Éöé≡î─é╤Åoé╡
  820.   é╜Ä₧üAé▒é╠â{â^âôé¬ëƒé│éΩé─éóéΩé╬ num é┼É▌ÆΦé╡é╜Ælé≡ò╘é╡é▄é╖üBé▒é╠è╓Éöé═üA
  821.   â{â^âôÆΦï`é¬Ä╕ösé╡é╜ÅΩìçé═ FALSE é≡ò╘é╡é▄é╖üB
  822. ----------------------------------------------------------------------------
  823.  
  824.  
  825. int    MgButtonSetToggle( mbp, x, y, h, v, num, sw )
  826. ----------------------------------------------------------------------------
  827. MgButton    *mbp;
  828. int        x, y, h, v;    â{â^âôé╠ê╩Æué╞æσé½é│
  829. int        num;        é▒é╠â{â^âôé¬ò╧ìXé│éΩé╜Ä₧é╔ò╘é╖Æl
  830. int        *sw;        â{â^âôé╠Å≤æ╘é≡èiö[é╖éΘù╠êµé╓é╠â|âCâôâ^
  831.  
  832.   âvâbâVâàâ{â^âôì\æóæ╠é╔âgâOâïâ{â^âôé╠ÆΦï`é≡Æ╟ë┴é╡é▄é╖üBé▒é╠â{â^âôé═ÿgé╛é»é┼
  833.   é╖é¬üAëƒé│éΩé╜ÅΩìçé╔ ON/OFF é≡É╪éΦæ╓éªéΘâgâOâïô«ì∞é≡é╡é▄é╖üBÆåé╔ë╜é⌐ò\Īé╡
  834.   é╜éóÅΩìçé═æ╝é╠ Draw û╜ù▀é╞ægé▌ìçéφé╣é─é╡éµéñé╡é─ë║é│éóüBMgButtonOperation()
  835.   è╓Éöé≡î─é╤Åoé╡é╜Ä₧üAé▒é╠â{â^âôé╠Å≤æ╘é¬ò╧ë╗é╡é╜éτ num é┼É▌ÆΦé╡é╜Ælé≡ò╘é╡é▄
  836.   é╖üBé▄é╜üAON/OFF é╠Å≤æ╘é═ *sw é╠ù╠êµé╔ TRUE or FALSE é╠Ælé┼èiö[é╡é▄é╖üB*sw
  837.   ù╠êµé╠Åëè·ë╗é═âåü[âUü[âAâvâèâPü[âVâçâôé┼ìsé╚é┴é─ë║é│éóüBé▒é╠è╓Éöé═üAâ{â^âô
  838.   ÆΦï`é¬Ä╕ösé╡é╜ÅΩìçé═ FALSE é≡ò╘é╡é▄é╖üB
  839. ----------------------------------------------------------------------------
  840.  
  841.  
  842. int    MgButtonSetTouch( mbp, x, y, h, v, num )
  843. ----------------------------------------------------------------------------
  844. MgButton    *mbp;
  845. int        x, y, h, v;    â{â^âôé╠ê╩Æué╞æσé½é│
  846. int        num;        é▒é╠â{â^âôé¬ëƒé│éΩé╜Ä₧é╔ò╘é╖Æl
  847.  
  848.  âvâbâVâàâ{â^âôì\æóæ╠é╔â^âbâ`â{â^âôÆΦï`é≡Æ╟ë┴é╡é▄é╖üBé▒é╠â{â^âôé═ÿgé╛é»é┼üA
  849.  Æåé╔ë╜éαò\Īé╡é▄é╣é±üBMgButtonOperation() è╓Éöé≡î─é╤Åoé╡é╜Ä₧üAé▒é╠â{â^âôé¬
  850.  ëƒé│éΩé─éóéΩé╬ num é┼É▌ÆΦé╡é╜Ælé≡ò╘é╡é▄é╖üBèOî⌐é═ MgButtonSet é╞ô»ùlé┼é╖üB
  851.  MgButtonSet é╠ò√é═â{â^âôé¬ëƒé│éΩé─é⌐éτùúé│éΩéΘé▄é┼ MgButtonOperation() é╠Åê
  852.  ù¥é═ò╘é┴é─é½é▄é╣é±é¬üAé▒éΩé═é╖é«ò╘éΦé▄é╖üBëƒé│éΩé╜éτé╖é«Åêù¥é≡ìséóé╜éóÅΩìç
  853.  é╔Ägéóé▄é╖üBé▒é╠è╓Éöé═üAâ{â^âôÆΦï`é¬Ä╕ösé╡é╜ÅΩìçé═ FALSE é≡ò╘é╡é▄é╖üB
  854. ----------------------------------------------------------------------------
  855.  
  856.  
  857. int    MgButtonSetMenu( mdp, x, y, h, v, num, exec, opt )
  858. ----------------------------------------------------------------------------
  859. MgButton    *mbp;
  860. int        x, y, h, v;    â{â^âôé╠ê╩Æué╞æσé½é│
  861. int        num;        âIâvâVâçâôâRü[âhéP
  862. int        (*exec)();
  863. int        opt;        âIâvâVâçâôâRü[âhéQ
  864.  
  865.   âvâbâVâàâ{â^âôì\æóæ╠é╔âCâxâôâgâ{â^âôÆΦï`é≡Æ╟ë┴é╡é▄é╖üBâCâxâôâgâ{â^âôé≡É▌ÆΦ
  866.   é╡é▄é╖üBé▒é╠â{â^âôé═ÿgé╛é»é┼üAÆåé╔ë╜éαò\Īé╡é▄é╣é±üBëƒé│éΩéΘé╞üAexec é┼Äw
  867.   ÆΦé╡é╜è╓Éöé≡ wp, info, mdp, opt é╠ê°Éöé┼î─é╤Åoé╡é▄é╖üBexec è╓Éöé╠û▀éΦÆlé¬üA
  868.   é╗é╠é▄é▄â{â^âôé≡ëƒé╡é╜Ä₧é╠ò╘éΦÆlé╞é╚éΦé▄é╖üBùßéªé╬ exec âïü[â`âôé≡ăé╠éµéñ
  869.   é╔ÆΦï`é╡é─é¿é»é╬üAâüâjâàü[â{â^âôé╞é╡é─ï@ö\é╡é▄é╖üBopt é═òíÉöé╠âüâjâàü[é╠æI
  870.   æ≡é╚é╟üAâåü[âUü[é¬Ä⌐ùRé╔Ägùpé╖éΘé▒é╞é¬é┼é½é▄é╖üBé▒é╠è╓Éöé═üAâ{â^âôÆΦï`é¬Ä╕
  871.   ösé╡é╜ÅΩìçé═ FALSE é≡ò╘é╡é▄é╖üB
  872.  
  873. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  874. MenuButtonExec( wp, info, mdp, opt )
  875. WindowID    wp;
  876. EventInfo    *info;
  877. MgButton    *mdp;
  878. int        opt;
  879. {
  880.     int    menu, sx, sy;
  881.     WindowGetScreenPosition( wp, &sx, &sy );
  882.     menu= PopUpMenu( mdp->x1+sx, mdp->y2+sy, item, items, font );
  883.     return    mdp->ret + menu;
  884. }
  885. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  886. ----------------------------------------------------------------------------
  887.  
  888.  
  889. int    MgButtonSetDraw( mbp, dbuf )
  890. ----------------------------------------------------------------------------
  891. MgButton    *mbp;
  892. DrawBuf        *dbuf;
  893.  
  894.   âvâbâVâàâ{â^âôì\æóæ╠é⌐éτò`ëµÄΦæ▒é½é≡É▌ÆΦé╡é▄é╖üBÆΦï`é╡é╜â{â^âôé╠ò`ëµÄΦæ▒é½
  895.   é≡êΩïCé╔É▌ÆΦé╡é▄é╖üBû▀éΦÆlé═òKùvé╚ò`ëµÄΦæ▒é½é╠âXâeâbâvÉöé┼é╖üB1é┬é╠ mdp é╔
  896.   æ╜Éöâ{â^âôé═ÆΦï`é┼é½é▄é╖üBé╜é╛é╡üAò`ëµé═îπé⌐éτÆ╟ë┴é╡é╜ò√é¬Éµé╔ìsé╚éφéΩéΘé▒
  897.   é╞é╔Æìê╙é╡é─ë║é│éóüB
  898. ----------------------------------------------------------------------------
  899.  
  900.  
  901. int    MgButtonClear( mbp )
  902. ----------------------------------------------------------------------------
  903. MgButton    *mbp;
  904.  
  905.   âvâbâVâàâ{â^âôì\æóæ╠é╠â{â^âôÆΦï`é≡èJò·é╡é▄é╖üBôoÿ^é╡é╜â{â^âôé═æSòöÅ┴ïÄé│éΩ
  906.   éΘé╠é┼üAé╗é╠îπì─é╤ MgButtonInit() é╡é─ÉVé╜é╔â{â^âôé≡ôoÿ^é╡Æ╝é╖é▒é╞é¬é┼é½é▄
  907.   é╖üB
  908. ----------------------------------------------------------------------------
  909.  
  910.  
  911. int    MgButtonOperation( wp, info, mdp )
  912. ----------------------------------------------------------------------------
  913. WindowID    wp;
  914. EventInfo    *info;
  915. MgButton    *mbp;
  916.  
  917.  âvâbâVâàâ{â^âôé╠Ä└ì█é╠æÇì∞é≡ìsé╚éóé▄é╖üBé▒é╠è╓Éöé¬î─é╤Åoé│éΩéΘé╞â}âEâXâ{â^
  918.  âôé╔éµé┴é─ëƒé│éΩé╜é⌐é╟éñé⌐Æ▓é╫é▄é╖üBëƒé│éΩé─éóéΩé╬üAé╗éΩé╝éΩé╠â{â^âôé╔ÆΦï`
  919.  é╡é╜û▀éΦÆlé≡ò╘é╡é▄é╖üBé╟é╠â{â^âôéαëƒé│éΩé─éóé╚é»éΩé╬ FALSE é¬ò╘éΦé▄é╖üBÆlé═
  920.  â}âEâXâ{â^âôé≡ùúé╡é╜Ä₧é╔ò╘éΦé▄é╖üBâ{â^âôé≡ëƒé╡é╜é▄é▄üAÿgèOé╔âhâëâbâOé╡é╜ÅΩ
  921.  ìçé═é╗é╠â{â^âôæÇì∞é≡û│î°é╔é╖éΘé▒é╞é¬é┼é½é▄é╖üB(Touchâ{â^âôé≡Å£é¡)
  922.  
  923.  MgButton é≡Ägé┴é╜âTâôâvâïâvâìâOâëâÇé┼é╖üB
  924.  
  925. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  926. #include    <corlib.h>
  927. #define    OSE    1
  928. #define    KOREMO    2
  929.  
  930. EventExec( wp, info )
  931. WindowID    wp;
  932. EventInfo    *info;
  933. {
  934.     static MgButton    mb;
  935.     DrawBuf    dbuf[20];
  936.  
  937.     switch( info->option ){
  938.     case EventOpen:
  939.         MgButtonInit( &mb );
  940.         MgButtonSetSymbol( &mb, 10, 10, 3, OSE, "ëƒé╣üI",
  941.                             AttrDefault, 16 );
  942.         MgButtonSetSymbol( &mb, 30, 40, 3, KOREMO, "é▒éΩéαëƒé╣",
  943.                             AttrDefault,16 );
  944.         return    FALSE;
  945.     case EventRedraw:
  946.         DrawSetClear( dbuf, 1 );
  947.         WindowDraw( wp, dbuf, MgButtonSetDraw( &mb, dbuf+1 )+1 );
  948.         return    TRUE;
  949.     case EventMouseSwitch:
  950.         if( info->LeftON ){
  951.             switch( MgButtonOperation( wp, info, &mb ) ){
  952.             case OSE:
  953.                 ConsoleOpen();
  954.                 ConsolePrint( "ëƒé│éΩé╜üI\r\n" );
  955.                 break;
  956.             case KOREMO:
  957.                 ConsoleOpen();
  958.                 ConsolePrint( "é▒éΩéαëƒé│éΩé╜üI\r\n" );
  959.                 break;
  960.             }
  961.         }
  962.         return    TRUE;
  963.     }
  964.     return    FALSE;
  965. }
  966.  
  967. int    WindowHeapSize= 1024*2;
  968.  
  969. WindowMain()
  970. {
  971.     MgWindowDefaultOpen( 10, 10, 300, 80, "Ose", Icon, EventExec );
  972. }
  973. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  974. ----------------------------------------------------------------------------
  975.  
  976.  
  977. 15. MgInput âëâCâuâëâè
  978.  
  979.   âåü[âUü[é╔1ìsôⁿù═é≡ìséφé╣éΘé╜é▀é╠âëâCâuâëâèé┼é╖üBò\ĪâGâèâAé═żé│é¡é─éαüA
  980.   ì╢ëEâXâNâìü[âïé╔éµé┴é─öΣèrôIÆ╖éóìsé╠ôⁿù═é¬ë┬ö\é╔é╚éΦé▄é╖üB
  981.  
  982.  
  983. WindowID    MgInputScrollOpen( mp, x, y, wp, len, attr, font )
  984. ----------------------------------------------------------------------------
  985. MgInput        *mp;    MgInput ì\æóæ╠
  986. int        x;    ò\Īê╩Æué╠ì└òW
  987. int        y;
  988. WindowID    wp;    ÉeâEâBâôâhâEé╠ ID
  989. int        len;    ò\Īé│é╣éΘò╢ÄÜÉö
  990. int        attr;    ò\Īò╢ÄÜé╠âAâgâèârâàü[âg
  991. int        font;    Ägùpé╖éΘâtâHâôâgâTâCâY
  992.  
  993.   MgInput ì\æóæ╠é≡Åëè·ë╗é╡üAÄwÆΦê╩Æué╔âXâNâìü[âïâoü[é┬é½ InputWindow é≡èJé½é▄
  994.   é╖üBé▒é╠âEâBâôâhâEé╠æσé½é│é═üAâtâHâôâgâTâCâY font é╞ò\Īé│é╣éΘò╢ÄÜÉö len é╔
  995.   éµé┴é─îêé▄éΦé╖üBôⁿù═é┼é½éΘò╢ÄÜÉöé═Åφé╔ì┼æσ 128 ò╢ÄÜé┼é╖üBû▀éΦÆlé═èJéóé╜
  996.   InputWindow é╠ ID é┼é╖üBôⁿù═é═ InputKey() é╔éµéΘìsò╥ÅWé¬ë┬ö\é┼é╖üBé▄é╜âJü[
  997.   â\âïê╩Æué╔ìçé╣é─Ä⌐ô«âXâNâìü[âïé╡é▄é╖üBâ}âEâXé╠ì╢â{â^âôé╔éµéΦüAôⁿù═Æåé╠ò╢ÄÜ
  998.   ù±é═éóé┬é┼éαæ╝é╠âEâBâôâhâEé╔ô]æùé¬ë┬ö\é╞é╚éΦé▄é╖üB
  999. ----------------------------------------------------------------------------
  1000.  
  1001.  
  1002. WindowID    MgInputSimpleOpen( mp, x, y, wp, len, attr, font )
  1003. ----------------------------------------------------------------------------
  1004. MgInput        *mp;    MgInput ì\æóæ╠
  1005. int        x;    ò\Īê╩Æué╠ì└òW
  1006. int        y;
  1007. WindowID    wp;    ÉeâEâBâôâhâEé╠ ID
  1008. int        len;    ò\Īé│é╣éΘò╢ÄÜÉö
  1009. int        attr;    ò\Īò╢ÄÜé╠âAâgâèârâàü[âg
  1010. int        font;    Ägùpé╖éΘâtâHâôâgâTâCâY
  1011.  
  1012.   MgInput ì\æóæ╠é≡Åëè·ë╗é╡üAÄwÆΦê╩Æué╔ InputWindow é≡èJé½é▄é╖üBé▒é╠ÅΩìçé═ÿgéα
  1013.   âXâNâìü[âïâoü[éαâXâNâìü[âïâXâCâbâ`éαéáéΦé▄é╣é±üBî─é╤Åoé╡î│é╠âvâìâOâëâÇé┼Ä⌐
  1014.   ùRé╔ôⁿù═âGâèâAé≡ÅⁿéΘé▒é╞é¬é┼é½é▄é╖üBé▒é╠âEâBâôâhâEé╠æσé½é│é═üAâtâHâôâgâTâC
  1015.   âY font é╞ò\Īé│é╣éΘò╢ÄÜÉö len é╔éµé┴é─îêé▄éΦé╖üBôⁿù═é┼é½éΘò╢ÄÜÉöé═Åφé╔ì┼æσ
  1016.   128 ò╢ÄÜé┼é╖üBû▀éΦÆlé═èJéóé╜ InputWindow é╠ ID é┼é╖üBôⁿù═é═ InputKey() é╔éµ
  1017.   éΘìsò╥ÅWé¬ë┬ö\é┼é╖üBé▄é╜âJü[â\âïê╩Æué╔ìçé╣é─Ä⌐ô«âXâNâìü[âïé╡é▄é╖üBâ}âEâXé╠
  1018.   ì╢â{â^âôé╔éµéΦüAôⁿù═Æåé╠ò╢ÄÜù±é═éóé┬é┼éαæ╝é╠âEâBâôâhâEé╔ô]æùé¬ë┬ö\é╞é╚éΦé▄
  1019.   é╖üB
  1020. ----------------------------------------------------------------------------
  1021.  
  1022.  
  1023. void    MgInputRedraw( mp )
  1024. ----------------------------------------------------------------------------
  1025. MgInput        *mp;    MgInput ì\æóæ╠
  1026.  
  1027.   mp é╠Äwé╖ InputWindow é≡ò`ëµé╡é▄é╖üBÉeâEâBâôâhâEé╠ EventRedraw Ä₧é╔ì┼îπé╔
  1028.   Ä└ìsé╡é─é¿éóé─ë║é│éóüB
  1029. ----------------------------------------------------------------------------
  1030.  
  1031.  
  1032. int    MgInputSendEvent( mp, info )
  1033. ----------------------------------------------------------------------------
  1034. MgInput        *mp;    MgInput ì\æóæ╠
  1035. EventInfo    *info;
  1036.  
  1037.   mp é╠Äwé╖ InputWindow é╔âCâxâôâgé≡æùÉMé╡é▄é╖üBé▒é╠è╓Éöé╔éµé┴é─üAòKùvé╚Åê
  1038.   ù¥é≡ InputWindow é╔ìséφé╣éΘé▒é╞é¬é┼é½é▄é╖üBInputWindow é┼Åêù¥é┼é½éΘé╠é═
  1039.   EventKey, EventMouseSwitch, EventMouseEnter, EventMouseOut é┼é╖üBé▒é╠éñé┐
  1040.   EventKey é╞ EventMouseSwitch é═òKÉ{é┼é╖üBé▄é╜ EventMouseEnter/Out é≡ôné╖é▒
  1041.   é╞é╔éµéΦüAâJü[â\âïé╠ ON/OFF é≡ìséφé╣éΘé▒é╞é¬é┼é½é▄é╖üBâCâxâôâgÄ└ìsâïü[â`âô
  1042.   é╠û▀éΦÆlé¬é▒é╠è╓Éöé╠û▀éΦÆlé╞é╚éΦé▄é╖üBé┬é▄éΦâCâxâôâgé¬Ä≤ù¥é│éΩé╜ÅΩìç TRUE
  1043.   é≡ò╘é╡é▄é╖üB
  1044. ----------------------------------------------------------------------------
  1045.  
  1046.  
  1047. char    *MgInputGetPointer( mp )        (â}âNâì)
  1048. ----------------------------------------------------------------------------
  1049. MgInput        *mp;    MgInput ì\æóæ╠
  1050.  
  1051.   ôⁿù═é╡é╜ò╢ÄÜù±é¬èiö[é│éΩéΘâoâbâtâ@é╠âAâhâîâXé≡ô╛é▄é╖üB
  1052. ----------------------------------------------------------------------------
  1053.  
  1054.  
  1055. void    MgInputClear( mp )
  1056. ----------------------------------------------------------------------------
  1057. MgInput        *mp;    MgInput ì\æóæ╠
  1058.  
  1059.   ôⁿù═Æåé╠âoâbâtâ@é≡æSòöÅ┴ïÄé╡é▄é╖üB
  1060. ----------------------------------------------------------------------------
  1061.  
  1062.  
  1063. void    MgInputKey( mp, code, shift )
  1064. ----------------------------------------------------------------------------
  1065. MgInput        *mp;    MgInput ì\æóæ╠
  1066. int        code;    âLü[âRü[âh
  1067. int        shift;    âVâtâgâLü[é╠Å≤æ╘
  1068.  
  1069.   InputWindow é╔âLü[ôⁿù═Åêù¥é≡ìséφé╣é▄é╖üBÆ╩Åφé▒é╠è╓Éöé═üAMgInput é╠âCâxâôâg
  1070.   âïü[â`âôé┼ŃÄΦé╔î─é╤Åoé│éΩé▄é╖é╠é┼üAô┴é╔ÄgéñòKùvé═éáéΦé▄é╣é±üBâvâìâOâëâÇæñ
  1071.   é┼ô┴ò╩é╔ò╢ÄÜé≡ôné╡é╜éóÄ₧é╔Ägé┴é─ë║é│éóüB
  1072. ----------------------------------------------------------------------------
  1073.  
  1074.  
  1075. void    MgInputSetCursorVisible( mp, sw )
  1076. ----------------------------------------------------------------------------
  1077. MgInput        *mp;    MgInput ì\æóæ╠
  1078. int        sw;    ò\ĪâXâCâbâ`
  1079.  
  1080.   âJü[â\âïò\Īé╠ ON/OFF é≡ìséφé╣é▄é╖üBé▒éΩéαÆ╩Åφé═ MgInput é╠âCâxâôâgâïü[â`
  1081.   âôé┼Åêù¥é≡ìséñéµéñé╔é╚é┴é─éóé▄é╖üBôⁿù═âGâèâAé¬òíÉöéáéΦüAâåü[âUü[é╔æIæ≡é│é╣
  1082.   éΘòKùvé¬éáéΘÅΩìçôÖé╔Ägé┴é─ë║é│éóüB
  1083. ----------------------------------------------------------------------------
  1084.  
  1085.  
  1086. - - - - - Ägùpùß - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  1087. #include    <corlib.h>
  1088.  
  1089. int    WindowHeapSize= 0;
  1090.  
  1091. EventExec( wp, info )
  1092. WindowID    wp;
  1093. EventInfo    *info;
  1094. {
  1095.     DrawBuf    dbuf;
  1096.     static MgInput    mp;
  1097.     switch( info->option ){
  1098.     case EventOpen:
  1099.         WindowSetEventAttr( wp, EventAttrDefault|EventUserON );
  1100.         MgInputScrollOpen( &mp, 10, 10, wp, 30, AttrDefault, 10 );
  1101.         WindowRedraw( wp );
  1102.         return    TRUE;
  1103.     case EventClose:
  1104.         WindowClose( wp );
  1105.         WindowConnectionClose();
  1106.         return    TRUE;
  1107.     case EventRedraw:
  1108.         DrawSetClear( &dbuf, 1 );
  1109.         WindowDraw( wp, &dbuf, 1 );
  1110.         MgInputRedraw( &mp );
  1111.         return    TRUE;
  1112.     case EventKey:
  1113.         if( info->KeyCode == '\r' ){
  1114.             MgInputClear( &mp );
  1115.             return    TRUE;
  1116.         }
  1117.     case EventMouseSwitch:
  1118.     case EventMouseEnter:
  1119.     case EventMouseOut:
  1120.         return    MgInputSendEvent( &mp, info );
  1121.     case EventUser:
  1122.         return    ClipGetKeyboardAll( wp, info );
  1123.     }
  1124.     return    FALSE;
  1125. }
  1126.  
  1127. WindowMain()
  1128. {
  1129.     WindowTitleOpen( 10, 10, 200, 80, NULL, "mg", Push|Close, EventExec );
  1130. }
  1131. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  1132.  
  1133.  
  1134. 16. GposâëâCâuâëâè
  1135.  
  1136.   256/65536ÉFâéü[âhé╠ÅΩìçò\Īé┼é½éΘâGâèâAé═ 512x512dot é╠ö═ê═é╔î└éτéΩé▄é╖üB
  1137.   WSRV.X v2.24+13 ê╚ì~Æ╟ë┴é│éΩé╜üA512x512dot ö═ê═é≡öCê╙é╠ÅΩÅèé╔ê┌ô«é╖éΘï@ö\
  1138.   é≡ÄgéóéΓé╖é¡è╟ù¥é╖éΘé╜é▀é╠âëâCâuâëâèîQé┼é╖üB
  1139.  
  1140.  
  1141. int    GposPopAndMove( wp, info )
  1142. ----------------------------------------------------------------------------
  1143. WindowID    wp;    âEâBâôâhâEé╠ ID
  1144. EventInfo    *info;    âCâxâôâgÅεò±
  1145.  
  1146.   EventPop,EventMove é╠Åêù¥é≡ìséóé▄é╖üBé▒é╠Ä₧é┼é½éΘé╛é»Ä⌐ò¬é╠âEâBâôâhâEé¬âO
  1147.   âëâtâBâbâNò\Īé┼é½éΘéµéñüAGV-RAM é╠ HOME(Gpos) é≡ò╧ìXé╡üAòKùvé╚éτæ╝é╠âEâB
  1148.   âôâhâEé≡ Redraw é╡é▄é╖üBû▀éΦÆlé═Åφé╔ TRUE é┼é╖üB
  1149. ----------------------------------------------------------------------------
  1150.  
  1151.  
  1152. int    GposSetOffset( x, y, h, v )
  1153. ----------------------------------------------------------------------------
  1154. int    x;    â|âWâVâçâôò╧ìXì╢Åπì└òWX
  1155. int    y;    â|âWâVâçâôò╧ìXì╢Åπì└òWY
  1156. int    h;    â|âWâVâçâôò╧ìXö═ê═H
  1157. int    v;    â|âWâVâçâôò╧ìXö═ê═V
  1158.  
  1159.   256/65536ÉFâéü[âhÄ₧é╔üAÄwÆΦé╠ö═ê═é¬ò\Īé┼é½éΘê╩Æué╔G-VRAMé╠HOMEê╩Æu(Gpos)
  1160.   é≡é╕éτé╡é▄é╖üBé┼é½éΘé╛é»ì┼żé╠ê┌ô«é┼ì╧é▐éµéñê┌ô«ì┼ôKë╗é≡ìséóé▄é╖üBéαé╡Gpos
  1161.   é¬ò╧ìXé│éΩé╜é╚éτ TRUE é≡üAê┌ô«é╠òKùvé¬é╚é⌐é┴é╜ÅΩìçé═ FALSE é≡ò╘é╡é▄é╖üB
  1162. ----------------------------------------------------------------------------
  1163.  
  1164.  
  1165. void    GposGraphicRedraw( wp )
  1166. ----------------------------------------------------------------------------
  1167. WindowID    wp;    Ä⌐ò¬é╠âEâBâôâhâEID
  1168.  
  1169.   âOâëâtâBâbâNÄgùpâAâgâèârâàü[âgé¬ùºé┴é─éóéΘâEâBâôâhâEé≡æSòö Redraw é╡é▄é╖üB
  1170.   éαé╡ wp é¬ù^éªéτéΩé─éóéΘÅΩìçé═üAwp é╞êΩÆvé╖éΘâEâBâôâhâEé╔é═ Redraw é≡æùéΦ
  1171.   é▄é╣é±üBwp é≡Å╚ù¬é╖éΘÅΩìçé═ NULL é≡ù^éªé─ë║é│éóüB
  1172. ----------------------------------------------------------------------------
  1173.  
  1174.  
  1175. int    GposInit( wp )
  1176. ----------------------------------------------------------------------------
  1177. WindowID    wp;    âEâBâôâhâEID
  1178.  
  1179.   ïNô«Æ╝îπé╠ Gpos ê╩Æué≡Æ▓É«é╡é▄é╖üBâOâëâtâBâbâNÄgùpâEâBâôâhâE鬠Open é╡é╜éá
  1180.   é╞üAì┼Åëé╠ WindowRedraw() é≡é╖éΘÆ╝æOé╔î─é╤Åoé╡é▄é╖üBû▀éΦÆlé═Åφé╔ TRUE é┼é╖üB
  1181. ----------------------------------------------------------------------------
  1182.  
  1183.  
  1184. int    GposSetClear( wp, dbuf, color1, color2 )
  1185. ----------------------------------------------------------------------------
  1186. WindowID    wp;    âEâBâôâhâEID
  1187. DrawBuf        *dbuf;    ò`ëµâoâbâtâ@
  1188. int        color1;    ù╠êµôαé╠òöò¬é╔ò`ëµé╖éΘÉF(Æ╩ÅφColorGraphic)
  1189. int        color2;    ù╠êµèOé╠òöò¬é╔ò`ëµé╖éΘÉF(Æ╩ÅφColorGray)
  1190.  
  1191.   ò`ëµö═ê═â`âFâbâNòté½ DrawSetClear() é┼é╖üBéαé╡é╗é╠âEâBâôâhâE鬠Gpos é╠ò`ëµ
  1192.   ö═ê═ôαé┼éáéΩé╬é╗é╠òöò¬é≡ color1 é┼üAö═ê═èOé╚éτ color2 é┼ò`ëµé╡é▄é╖üBò`ëµö═
  1193.   ê═é⌐éτé═é╕éΩé╜òöò¬é≡â}âXâNò\Īé╖éΘé╜é▀é╔Ägéóé▄é╖üBû▀éΦÆlé═É▌ÆΦé╡é╜ò`ëµâXâeâb
  1194.   âvÉöé┼é╖üB(ì┼æσ2)
  1195. ----------------------------------------------------------------------------
  1196.  
  1197.  
  1198. int    GposSetFill( wp, dbuf, color1, color2, x1, y1, x2, y2 )
  1199. ----------------------------------------------------------------------------
  1200. WindowID    wp;    âEâBâôâhâEID
  1201. DrawBuf        *dbuf;    ò`ëµâoâbâtâ@
  1202. int        color1;    ù╠êµôαé╠òöò¬é╔ò`ëµé╖éΘÉF(Æ╩ÅφColorGraphic)
  1203. int        color2;    ù╠êµèOé╠òöò¬é╔ò`ëµé╖éΘÉF(Æ╩ÅφColorGray)
  1204. int        x1, y1, x2, y2;    ò`ëµö═ê═
  1205.  
  1206.   ò`ëµö═ê═â`âFâbâNòté½ DrawSetLine( .., OptionFill ) é┼é╖üBéαé╡é╗é╠âEâBâôâhâE
  1207.   é¬ Gpos é╠ò`ëµö═ê═ôαé┼éáéΩé╬é╗é╠òöò¬é≡ color1 é┼üAö═ê═èOé╚éτ color2 é┼ò`ëµ
  1208.   é╡é▄é╖üBò`ëµö═ê═é⌐éτé═é╕éΩé╜òöò¬é≡â}âXâNò\Īé╖éΘé╜é▀é╔Ägéóé▄é╖üBû▀éΦÆlé═É▌
  1209.   ÆΦé╡é╜ò`ëµâXâeâbâvÉöé┼é╖üB(ì┼æσ2) ò`ëµö═ê═é╠ì└òWÄwÆΦé═üAòKé╕ x1 < x2 ,
  1210.   y1 < y2 é┼é╚é»éΩé╬é╚éΦé▄é╣é±üB
  1211. ----------------------------------------------------------------------------
  1212.  
  1213.  
  1214. 17. Dialog âëâCâuâëâè
  1215.  
  1216.  
  1217. int    DialogYesNo( msg, info )
  1218. ----------------------------------------------------------------------------
  1219. char        *msg;    ò\Īò╢ÄÜù±
  1220. EventInfo    *info;    âCâxâôâgÅεò±
  1221.  
  1222.   ëµû╩Æåë¢é╔â_âCâAâìâOâEâBâôâhâEé≡èJé½üAYES/NO æIæ≡é≡ìséóé▄é╖üBYES é╚éτ TRUE
  1223.   é≡üANO é╚éτ FALSE é≡ò╘é╡é▄é╖üBæIæ≡é═â}âEâXâNâèâbâNüAâLü[ôⁿù═([y]é╞[n])é¬ë┬
  1224.   ö\é┼é╖üBâ_âCâAâìâOÅêù¥Æåé═æ╝é╠âCâxâôâgé═Ä~é▄éΦé▄é╖üB
  1225. ----------------------------------------------------------------------------
  1226.  
  1227.  
  1228. WindowID    DialogMessageOpen( msg, attr )
  1229. ----------------------------------------------------------------------------
  1230. char    *msg;    ò\Īò╢ÄÜù±
  1231. int    attr;    ò\ĪâAâgâèârâàü[âg
  1232.  
  1233.   ëµû╩Æåë¢é╔â_âCâAâìâOâEâBâôâhâEé≡èJé½üAâüâbâZü[âWò╢ÄÜù±é≡ò\Īé╡é▄é╖üBèJéóé╜
  1234.   âEâBâôâhâEé╠ ID é≡ò╘é╡é▄é╖üBé▒é╠â_âCâAâìâOé≡ò┬é╢éΘÄ₧é═üAé╗é╠ ID é≡Ägé┴é─
  1235.   WindowClose() é≡Ä└ìsé╡é─ë║é│éóüB
  1236. ----------------------------------------------------------------------------
  1237.  
  1238.  
  1239. 18. é╗é╠æ╝é╠âEâBâôâhâEè╓ÿA
  1240.  
  1241.  
  1242. char    *KoWindowGetEnv( ptr )
  1243. ----------------------------------------------------------------------------
  1244. char    *ptr;    ò╧Éöû╝
  1245.  
  1246.   Ko-Window Åπé┼è┬ï½ò╧Éöé≡ÄQÅ╞é╡é▄é╖üBgetenv() é╠æπùpè╓Éöé┼é╖üBcorlib.ha é╠
  1247.   ôαòöé┼ KoWindoGetEnv é≡ getenv é╔ define é╡é─éóé▄é╖üBò╘éΦÆlé═è┬ï½ò╧Éöé╔ÆΦ
  1248.   ï`é│éΩé─éóéΘôαùeé╠âAâhâîâXé┼é╖üBNULL é¬ò╘é┴é╜ÅΩìçé═é╗é╠ò╧Éöé═ÆΦï`é│éΩé─éó
  1249.   é▄é╣é±üBstatic ù╠êµé╠âAâhâîâXé≡ò╘é╖é▒é╞é╔Æìê╙é╡é─ë║é│éóüB
  1250. ----------------------------------------------------------------------------
  1251.  
  1252. int    KoWindowVersionCnv( ver )
  1253. ----------------------------------------------------------------------------
  1254. char    *ver;    âoü[âWâçâôò╢ÄÜù±
  1255.  
  1256.   âTü[âoü[é╠âoü[âWâçâôò╢ÄÜù±é≡ÉöÆlò╧è╖é╡é▄é╖üB(8bitÆPê╩é┼4é┬é╠ÉöÆlé╞î⌐é╚é╖)
  1257.   ùß "2.24+12.8" -> 0x02180c08 ,  v2.24+13 -> 0x02180d00
  1258. ----------------------------------------------------------------------------
  1259.  
  1260. int    KoWindowVersionCheck( ver )
  1261. ----------------------------------------------------------------------------
  1262. char    *ver;    â`âFâbâNé╖éΘâoü[âWâçâôò╢ÄÜù±
  1263.  
  1264.   âTü[âoü[é╠âoü[âWâçâôé¬üAÄwÆΦé╡é╜âoü[âWâçâôéµéΦÉVé╡éóé⌐é╟éñé⌐â`âFâbâNé╡é▄é╖üB
  1265.   ÉVé╡é»éΩé╬É│é╠Éöé≡üAî├é»éΩé╬òëé╠Éöé≡ò╘é╡é▄é╖üB(ôÖé╡é»éΩé╬0)
  1266. ----------------------------------------------------------------------------
  1267.  
  1268. int    KoWindowHeapAlloc()
  1269. ----------------------------------------------------------------------------
  1270.   âEâBâôâhâEé┼Ägùpé╖éΘ HEAP ù╠êµé≡üAïNô«îπé╔èmò█é╡é▄é╖üBé▒é╠è╓Éöé≡Ägùpé╖éΘÄ₧
  1271.   é═üAWindowHeapSize é╠Åëè·Ælé═ 0 é╔é╡é╜Å≤æ╘é┼âRâôâpâCâïé╡é─ë║é│éóüBé╗é╠îπüA
  1272.   ïNô«îπé╔âvâìâOâëâÇÆåé┼ WindowHeapSize é╔ùeù╩é≡æπôⁿé╡é─é⌐éτî─é╤Åoé╡é▄é╖üBé╖
  1273.   é┼é╔ HEAP ù╠êµé¬æ╢ì▌é╡é─éóéΘé╞üAé╗éΩé¬ÄgéφéΩé─éóéΘé⌐éóé╚éóé⌐é╔è╓îWé╚é¡û│Å≡
  1274.   îÅé┼èJò·é╡é─é╡é▄éóé▄é╖üBé╗é╠é╜é▀î─é╤Åoé╡é═é┼é½éΘé╛é»êΩôxé╛é»é╔é╡é─ë║é│éóüB
  1275.   é▒é╠è╓Éöé═üAïNô«îπé╔âIâvâVâçâôâXâCâbâ`é┼ HEAP ùeù╩é≡ÄwÆΦé┼é½éΘéµéñé╔é╖éΘé╜
  1276.   é▀é╔æ╢ì▌é╡é─éóé▄é╖üBHEAP ù╠êµé≡èmò█é┼é½é╜ÅΩìçé═ TRUE é≡ò╘é╡üAèmò█é┼é½é╚é»
  1277.   éΩé╬ FALSE é≡ò╘é╡é▄é╖üB
  1278. ----------------------------------------------------------------------------
  1279.  
  1280. int    KoWindowXfStat()
  1281. ----------------------------------------------------------------------------
  1282.   [XF1]ü`[XF5]é╠âLü[Åεò±é≡ôⁿÄΦé╡é▄é╖üBinfo->ShiftStat é╠éµéñé╔üAÅCÅⁿâLü[é╞é╡
  1283.   é─ [XF?] é≡ÄgéñÅΩìçé╔Ägùpé╡é▄é╖üB
  1284.  
  1285.     û▀éΦÆl
  1286.     bit2        [ïLìå]
  1287.     bit3        [ôoÿ^]
  1288.     bit5        [XF1]
  1289.     bit6        [XF2]
  1290.     bit7        [XF3]
  1291.     bit8        [XF4]
  1292.     bit9        [XF5]
  1293. ----------------------------------------------------------------------------
  1294.  
  1295.  
  1296. --
  1297. ì┼ÅIìXÉV  1995 11/14  COR.
  1298.