Hex Artifact Content

Not logged in

Artifact fb426ee0b574818ac06883de00013c449837ca2b:


0000: 2f 2f 2d 2d 2d 20 4b 2e 49 2e 4c 49 42 20 2d 2d  //--- K.I.LIB --
0010: 2d 0d 0a 2f 2f 20 6b 6c 5f 61 70 70 2e 68 20 3a  -..// kl_app.h :
0020: 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 63 6c 61   application cla
0030: 73 73 20 66 6f 72 20 4b 2e 49 2e 4c 49 42 0d 0a  ss for K.I.LIB..
0040: 0d 0a 23 69 6e 63 6c 75 64 65 20 22 73 74 64 61  ..#include "stda
0050: 66 78 2e 68 22 0d 0a 23 69 6e 63 6c 75 64 65 20  fx.h"..#include 
0060: 22 6b 69 6c 69 62 2e 68 22 0d 0a 0d 0a 2f 2f 2d  "kilib.h"....//-
0070: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 97 42 88 ea  ----------- .B..
0080: 82 cc 83 41 83 76 83 8a 83 50 81 5b 83 56 83 87  ...A.v...P.[.V..
0090: 83 93 83 49 83 75 83 57 83 46 83 4e 83 67 82 cc  ...I.u.W.F.N.g..
00a0: 8a c7 97 9d 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .... -----------
00b0: 2d 2f 2f 0d 0a 0d 0a 6b 69 41 70 70 2a 20 6b 69  -//....kiApp* ki
00c0: 41 70 70 3a 3a 73 74 5f 70 41 70 70 20 3d 20 4e  App::st_pApp = N
00d0: 55 4c 4c 3b 0d 0a 0d 0a 6b 69 41 70 70 2a 20 61  ULL;....kiApp* a
00e0: 70 70 28 29 0d 0a 7b 0d 0a 09 72 65 74 75 72 6e  pp()..{...return
00f0: 20 6b 69 41 70 70 3a 3a 73 74 5f 70 41 70 70 3b   kiApp::st_pApp;
0100: 0d 0a 7d 0d 0a 0d 0a 2f 2f 2d 2d 2d 2d 2d 2d 2d  ..}....//-------
0110: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 83 58  ------------- .X
0120: 83 5e 81 5b 83 67 83 41 83 62 83 76 83 52 81 5b  .^.[.g.A.b.v.R.[
0130: 83 68 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .h -------------
0140: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2f 2f 0d 0a 0d  -----------//...
0150: 0a 76 6f 69 64 20 6b 69 6c 69 62 5f 73 74 61 72  .void kilib_star
0160: 74 55 70 28 29 0d 0a 7b 0d 0a 09 2f 2f 2d 2d 20  tUp()..{...//-- 
0170: 4b 2e 49 2e 4c 49 42 20 8f 89 8a fa 89 bb 0d 0a  K.I.LIB ........
0180: 09 6b 69 53 74 72 3a 3a 69 6e 69 74 28 29 3b 0d  .kiStr::init();.
0190: 0a 09 6b 69 57 69 6e 64 6f 77 3a 3a 69 6e 69 74  ..kiWindow::init
01a0: 28 29 3b 0d 0a 0d 0a 09 2f 2f 2d 2d 20 83 4c 81  ();.....//-- .L.
01b0: 5b 83 7b 81 5b 83 68 8f f3 91 d4 83 4e 83 8a 83  [.{.[.h.....N...
01c0: 41 0d 0a 09 3a 3a 47 65 74 41 73 79 6e 63 4b 65  A...::GetAsyncKe
01d0: 79 53 74 61 74 65 28 20 56 4b 5f 53 48 49 46 54  yState( VK_SHIFT
01e0: 20 29 3b 0d 0a 0d 0a 09 2f 2f 2d 2d 20 83 41 83   );.....//-- .A.
01f0: 76 83 8a 83 50 81 5b 83 56 83 87 83 93 83 43 83  v...P.[.V.....C.
0200: 93 83 58 83 5e 83 93 83 58 82 f0 8d ec 90 ac 0d  ..X.^...X.......
0210: 0a 09 6b 69 6c 69 62 5f 63 72 65 61 74 65 5f 6e  ..kilib_create_n
0220: 65 77 5f 61 70 70 28 29 3b 0d 0a 09 69 66 28 20  ew_app();...if( 
0230: 61 70 70 28 29 20 29 0d 0a 09 7b 0d 0a 09 09 2f  app() )...{..../
0240: 2f 20 83 52 83 7d 83 93 83 68 83 89 83 43 83 93  / .R.}...h...C..
0250: 95 aa 8a 84 0d 0a 09 09 6b 69 43 6d 64 50 61 72  ........kiCmdPar
0260: 73 65 72 20 63 6d 64 28 20 3a 3a 47 65 74 43 6f  ser cmd( ::GetCo
0270: 6d 6d 61 6e 64 4c 69 6e 65 28 29 2c 20 74 72 75  mmandLine(), tru
0280: 65 20 29 3b 0d 0a 0d 0a 09 09 2f 2f 20 8e c0 8d  e );......// ...
0290: 73 0d 0a 09 09 61 70 70 28 29 2d 3e 72 75 6e 28  s....app()->run(
02a0: 20 63 6d 64 20 29 3b 0d 0a 09 7d 0d 0a 0d 0a 09   cmd );...}.....
02b0: 2f 2f 2d 2d 20 4b 2e 49 2e 4c 49 42 20 8f 49 97  //-- K.I.LIB .I.
02c0: b9 0d 0a 09 6b 69 57 69 6e 64 6f 77 3a 3a 66 69  ....kiWindow::fi
02d0: 6e 69 73 68 28 29 3b 0d 0a 0d 0a 09 64 65 6c 65  nish();.....dele
02e0: 74 65 20 61 70 70 28 29 3b 0d 0a 09 3a 3a 45 78  te app();...::Ex
02f0: 69 74 50 72 6f 63 65 73 73 28 20 30 20 29 3b 0d  itProcess( 0 );.
0300: 0a 7d 0d 0a 0d 0a 2f 2f 2d 2d 2d 2d 2d 2d 2d 2d  .}....//--------
0310: 2d 2d 2d 2d 2d 2d 2d 20 43 2d 52 75 6e 74 69 6d  ------- C-Runtim
0320: 65 8f 89 8a fa 89 bb 83 52 81 5b 83 68 8d ed 8f  e.......R.[.h...
0330: 9c 8e fc 82 e8 82 cc 8f 88 97 9d 20 2d 2d 2d 2d  ........... ----
0340: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2f 2f 0d 0a 0d  -----------//...
0350: 0a 23 69 66 20 31 0d 0a 0d 0a 69 6e 74 20 41 50  .#if 1....int AP
0360: 49 45 4e 54 52 59 20 57 69 6e 4d 61 69 6e 28 20  IENTRY WinMain( 
0370: 48 49 4e 53 54 41 4e 43 45 2c 20 48 49 4e 53 54  HINSTANCE, HINST
0380: 41 4e 43 45 2c 20 63 68 61 72 2a 2c 20 69 6e 74  ANCE, char*, int
0390: 20 29 0d 0a 7b 0d 0a 09 6b 69 6c 69 62 5f 73 74   )..{...kilib_st
03a0: 61 72 74 55 70 28 29 3b 0d 0a 09 72 65 74 75 72  artUp();...retur
03b0: 6e 20 30 3b 0d 0a 7d 0d 0a 0d 0a 23 65 6c 73 65  n 0;..}....#else
03c0: 0d 0a 0d 0a 76 6f 69 64 2a 20 6f 70 65 72 61 74  ....void* operat
03d0: 6f 72 20 6e 65 77 28 20 73 69 7a 65 5f 74 20 73  or new( size_t s
03e0: 69 7a 20 29 0d 0a 7b 0d 0a 09 72 65 74 75 72 6e  iz )..{...return
03f0: 20 28 76 6f 69 64 2a 29 3a 3a 47 6c 6f 62 61 6c   (void*)::Global
0400: 41 6c 6c 6f 63 28 20 47 4d 45 4d 5f 46 49 58 45  Alloc( GMEM_FIXE
0410: 44 2c 20 73 69 7a 20 29 3b 0d 0a 7d 0d 0a 0d 0a  D, siz );..}....
0420: 76 6f 69 64 20 6f 70 65 72 61 74 6f 72 20 64 65  void operator de
0430: 6c 65 74 65 28 20 76 6f 69 64 2a 20 70 74 72 20  lete( void* ptr 
0440: 29 0d 0a 7b 0d 0a 09 3a 3a 47 6c 6f 62 61 6c 46  )..{...::GlobalF
0450: 72 65 65 28 20 28 48 47 4c 4f 42 41 4c 29 70 74  ree( (HGLOBAL)pt
0460: 72 20 29 3b 0d 0a 7d 0d 0a 0d 0a 76 6f 69 64 20  r );..}....void 
0470: 6d 61 69 6e 28 29 0d 0a 7b 0d 0a 09 2f 2f 20 6d  main()..{...// m
0480: 61 69 6e 20 82 aa 82 c8 82 a2 82 c6 89 bd 8c cc  ain ............
0490: 82 a9 20 6c 69 62 63 2e 6c 69 62 20 82 aa 83 8a  .. libc.lib ....
04a0: 83 93 83 4e 83 47 83 89 81 5b 82 c9 82 c8 82 e9  ...N.G...[......
04b0: 82 cc 82 c5 83 5f 83 7e 81 5b 0d 0a 7d 0d 0a 0d  ....._.~.[..}...
04c0: 0a 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 2d 2d 2d  .#endif....//---
04d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
04e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
04f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0500: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2f 2f 0d 0a     -----------//..