File Annotation

Not logged in
13b7203622 2011-02-23        kinaba: //--- K.I.LIB ---
13b7203622 2011-02-23        kinaba: // kl_app.h : application class for K.I.LIB
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: #include "stdafx.h"
13b7203622 2011-02-23        kinaba: #include "kilib.h"
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: //------------ 唯一のアプリケーションオブジェクトの管理 ------------//
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: kiApp* kiApp::st_pApp = NULL;
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: kiApp* app()
13b7203622 2011-02-23        kinaba: {
13b7203622 2011-02-23        kinaba: 	return kiApp::st_pApp;
13b7203622 2011-02-23        kinaba: }
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: //-------------------- スタートアップコード ------------------------//
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: void kilib_startUp()
13b7203622 2011-02-23        kinaba: {
13b7203622 2011-02-23        kinaba: 	// 英語ロケールテスト用
13b7203622 2011-02-23        kinaba: 	//::SetThreadUILanguage(0x0409);
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	//-- K.I.LIB 初期化
13b7203622 2011-02-23        kinaba: 	kiStr::init();
13b7203622 2011-02-23        kinaba: 	kiWindow::init();
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	//-- キーボード状態クリア
13b7203622 2011-02-23        kinaba: 	::GetAsyncKeyState( VK_SHIFT );
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	//-- アプリケーションインスタンスを作成
13b7203622 2011-02-23        kinaba: 	kilib_create_new_app();
13b7203622 2011-02-23        kinaba: 	if( app() )
13b7203622 2011-02-23        kinaba: 	{
13b7203622 2011-02-23        kinaba: 		// コマンドライン分割
13b7203622 2011-02-23        kinaba: 		kiCmdParser cmd( ::GetCommandLine(), true );
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 		// 実行
13b7203622 2011-02-23        kinaba: 		app()->run( cmd );
13b7203622 2011-02-23        kinaba: 	}
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	//-- K.I.LIB 終了
13b7203622 2011-02-23        kinaba: 	kiWindow::finish();
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: 	delete app();
13b7203622 2011-02-23        kinaba: 	::ExitProcess( 0 );
13b7203622 2011-02-23        kinaba: }
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: //--------------- C-Runtime初期化コード削除周りの処理 ---------------//
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: #if 0
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: int APIENTRY WinMain( HINSTANCE, HINSTANCE, char*, int )
13b7203622 2011-02-23        kinaba: {
13b7203622 2011-02-23        kinaba: 	kilib_startUp();
13b7203622 2011-02-23        kinaba: 	return 0;
13b7203622 2011-02-23        kinaba: }
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: #else
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: void* operator new( size_t siz )
13b7203622 2011-02-23        kinaba: {
13b7203622 2011-02-23        kinaba: 	return (void*)::GlobalAlloc( GMEM_FIXED, siz );
13b7203622 2011-02-23        kinaba: }
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: void operator delete( void* ptr )
13b7203622 2011-02-23        kinaba: {
13b7203622 2011-02-23        kinaba: 	::GlobalFree( (HGLOBAL)ptr );
13b7203622 2011-02-23        kinaba: }
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: void main()
13b7203622 2011-02-23        kinaba: {
13b7203622 2011-02-23        kinaba: 	// main がないと何故か libc.lib がリンクエラーになるのでダミー
13b7203622 2011-02-23        kinaba: }
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: #endif
13b7203622 2011-02-23        kinaba: 
13b7203622 2011-02-23        kinaba: //--------------------------------------------------------------//