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 -----------//..