Hex Artifact Content

Not logged in

Artifact c970fd44dc7139a9669f9ab8022d3c6e9991efd4:


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 20 89 70  tUp()..{...// .p
0170: 8c ea 83 8d 83 50 81 5b 83 8b 83 65 83 58 83 67  .....P.[...e.X.g
0180: 97 70 0d 0a 09 2f 2f 3a 3a 53 65 74 54 68 72 65  .p...//::SetThre
0190: 61 64 55 49 4c 61 6e 67 75 61 67 65 28 30 78 30  adUILanguage(0x0
01a0: 34 30 39 29 3b 0d 0a 0d 0a 09 2f 2f 2d 2d 20 4b  409);.....//-- K
01b0: 2e 49 2e 4c 49 42 20 8f 89 8a fa 89 bb 0d 0a 09  .I.LIB .........
01c0: 6b 69 53 74 72 3a 3a 69 6e 69 74 28 29 3b 0d 0a  kiStr::init();..
01d0: 09 6b 69 57 69 6e 64 6f 77 3a 3a 69 6e 69 74 28  .kiWindow::init(
01e0: 29 3b 0d 0a 0d 0a 09 2f 2f 2d 2d 20 83 4c 81 5b  );.....//-- .L.[
01f0: 83 7b 81 5b 83 68 8f f3 91 d4 83 4e 83 8a 83 41  .{.[.h.....N...A
0200: 0d 0a 09 3a 3a 47 65 74 41 73 79 6e 63 4b 65 79  ...::GetAsyncKey
0210: 53 74 61 74 65 28 20 56 4b 5f 53 48 49 46 54 20  State( VK_SHIFT 
0220: 29 3b 0d 0a 0d 0a 09 2f 2f 2d 2d 20 83 41 83 76  );.....//-- .A.v
0230: 83 8a 83 50 81 5b 83 56 83 87 83 93 83 43 83 93  ...P.[.V.....C..
0240: 83 58 83 5e 83 93 83 58 82 f0 8d ec 90 ac 0d 0a  .X.^...X........
0250: 09 6b 69 6c 69 62 5f 63 72 65 61 74 65 5f 6e 65  .kilib_create_ne
0260: 77 5f 61 70 70 28 29 3b 0d 0a 09 69 66 28 20 61  w_app();...if( a
0270: 70 70 28 29 20 29 0d 0a 09 7b 0d 0a 09 09 2f 2f  pp() )...{....//
0280: 20 83 52 83 7d 83 93 83 68 83 89 83 43 83 93 95   .R.}...h...C...
0290: aa 8a 84 0d 0a 09 09 6b 69 43 6d 64 50 61 72 73  .......kiCmdPars
02a0: 65 72 20 63 6d 64 28 20 3a 3a 47 65 74 43 6f 6d  er cmd( ::GetCom
02b0: 6d 61 6e 64 4c 69 6e 65 28 29 2c 20 74 72 75 65  mandLine(), true
02c0: 20 29 3b 0d 0a 0d 0a 09 09 2f 2f 20 8e c0 8d 73   );......// ...s
02d0: 0d 0a 09 09 61 70 70 28 29 2d 3e 72 75 6e 28 20  ....app()->run( 
02e0: 63 6d 64 20 29 3b 0d 0a 09 7d 0d 0a 0d 0a 09 2f  cmd );...}...../
02f0: 2f 2d 2d 20 4b 2e 49 2e 4c 49 42 20 8f 49 97 b9  /-- K.I.LIB .I..
0300: 0d 0a 09 6b 69 57 69 6e 64 6f 77 3a 3a 66 69 6e  ...kiWindow::fin
0310: 69 73 68 28 29 3b 0d 0a 0d 0a 09 64 65 6c 65 74  ish();.....delet
0320: 65 20 61 70 70 28 29 3b 0d 0a 09 3a 3a 45 78 69  e app();...::Exi
0330: 74 50 72 6f 63 65 73 73 28 20 30 20 29 3b 0d 0a  tProcess( 0 );..
0340: 7d 0d 0a 0d 0a 2f 2f 2d 2d 2d 2d 2d 2d 2d 2d 2d  }....//---------
0350: 2d 2d 2d 2d 2d 2d 20 43 2d 52 75 6e 74 69 6d 65  ------ C-Runtime
0360: 8f 89 8a fa 89 bb 83 52 81 5b 83 68 8d ed 8f 9c  .......R.[.h....
0370: 8e fc 82 e8 82 cc 8f 88 97 9d 20 2d 2d 2d 2d 2d  .......... -----
0380: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2f 2f 0d 0a 0d 0a  ----------//....
0390: 23 69 66 20 30 0d 0a 0d 0a 69 6e 74 20 41 50 49  #if 0....int API
03a0: 45 4e 54 52 59 20 57 69 6e 4d 61 69 6e 28 20 48  ENTRY WinMain( H
03b0: 49 4e 53 54 41 4e 43 45 2c 20 48 49 4e 53 54 41  INSTANCE, HINSTA
03c0: 4e 43 45 2c 20 63 68 61 72 2a 2c 20 69 6e 74 20  NCE, char*, int 
03d0: 29 0d 0a 7b 0d 0a 09 6b 69 6c 69 62 5f 73 74 61  )..{...kilib_sta
03e0: 72 74 55 70 28 29 3b 0d 0a 09 72 65 74 75 72 6e  rtUp();...return
03f0: 20 30 3b 0d 0a 7d 0d 0a 0d 0a 23 65 6c 73 65 0d   0;..}....#else.
0400: 0a 0d 0a 76 6f 69 64 2a 20 6f 70 65 72 61 74 6f  ...void* operato
0410: 72 20 6e 65 77 28 20 73 69 7a 65 5f 74 20 73 69  r new( size_t si
0420: 7a 20 29 0d 0a 7b 0d 0a 09 72 65 74 75 72 6e 20  z )..{...return 
0430: 28 76 6f 69 64 2a 29 3a 3a 47 6c 6f 62 61 6c 41  (void*)::GlobalA
0440: 6c 6c 6f 63 28 20 47 4d 45 4d 5f 46 49 58 45 44  lloc( GMEM_FIXED
0450: 2c 20 73 69 7a 20 29 3b 0d 0a 7d 0d 0a 0d 0a 76  , siz );..}....v
0460: 6f 69 64 20 6f 70 65 72 61 74 6f 72 20 64 65 6c  oid operator del
0470: 65 74 65 28 20 76 6f 69 64 2a 20 70 74 72 20 29  ete( void* ptr )
0480: 0d 0a 7b 0d 0a 09 3a 3a 47 6c 6f 62 61 6c 46 72  ..{...::GlobalFr
0490: 65 65 28 20 28 48 47 4c 4f 42 41 4c 29 70 74 72  ee( (HGLOBAL)ptr
04a0: 20 29 3b 0d 0a 7d 0d 0a 0d 0a 76 6f 69 64 20 6d   );..}....void m
04b0: 61 69 6e 28 29 0d 0a 7b 0d 0a 09 2f 2f 20 6d 61  ain()..{...// ma
04c0: 69 6e 20 82 aa 82 c8 82 a2 82 c6 89 bd 8c cc 82  in .............
04d0: a9 20 6c 69 62 63 2e 6c 69 62 20 82 aa 83 8a 83  . libc.lib .....
04e0: 93 83 4e 83 47 83 89 81 5b 82 c9 82 c8 82 e9 82  ..N.G...[.......
04f0: cc 82 c5 83 5f 83 7e 81 5b 0d 0a 7d 0d 0a 0d 0a  ...._.~.[..}....
0500: 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 2d 2d 2d 2d  #endif....//----
0510: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0520: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0530: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0540: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2f 2f 0d 0a        ----------//..