File Annotation

Not logged in
dcdd144598 2011-02-23        kinaba: #include "stdafx.h"
dcdd144598 2011-02-23        kinaba: #include "app.h"
dcdd144598 2011-02-23        kinaba: #include "ctrl.h"
dcdd144598 2011-02-23        kinaba: using namespace ki;
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: //=========================================================================
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: StatusBar::StatusBar()
dcdd144598 2011-02-23        kinaba: {
dcdd144598 2011-02-23        kinaba: 	app().InitModule( App::CTL );
dcdd144598 2011-02-23        kinaba: }
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: bool StatusBar::Create( HWND parent )
dcdd144598 2011-02-23        kinaba: {
dcdd144598 2011-02-23        kinaba: 	HWND h = ::CreateStatusWindow(
dcdd144598 2011-02-23        kinaba: 		WS_CHILD|WS_VISIBLE|SBARS_SIZEGRIP,
dcdd144598 2011-02-23        kinaba: 		TEXT(""), parent, 1787 );
dcdd144598 2011-02-23        kinaba: 	if( h == NULL )
dcdd144598 2011-02-23        kinaba: 		return false;
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 	SetStatusBarVisible();
dcdd144598 2011-02-23        kinaba: 	SetHwnd( h );
dcdd144598 2011-02-23        kinaba: 	AutoResize( false );
dcdd144598 2011-02-23        kinaba: 	return true;
dcdd144598 2011-02-23        kinaba: }
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: int StatusBar::AutoResize( bool maximized )
dcdd144598 2011-02-23        kinaba: {
dcdd144598 2011-02-23        kinaba: 	// サイズ自動変更
dcdd144598 2011-02-23        kinaba: 	SendMsg( WM_SIZE );
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 	// 変更後のサイズを取得
dcdd144598 2011-02-23        kinaba: 	RECT rc;
dcdd144598 2011-02-23        kinaba: 	getPos( &rc );
dcdd144598 2011-02-23        kinaba: 	width_ = rc.right - rc.left;
dcdd144598 2011-02-23        kinaba: 	if( !maximized )
dcdd144598 2011-02-23        kinaba: 		width_ -= 15;
dcdd144598 2011-02-23        kinaba: 	return (isStatusBarVisible() ? rc.bottom - rc.top : 0);
dcdd144598 2011-02-23        kinaba: }
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: bool StatusBar::PreTranslateMessage( MSG* )
dcdd144598 2011-02-23        kinaba: {
dcdd144598 2011-02-23        kinaba: 	// 何もしない
dcdd144598 2011-02-23        kinaba: 	return false;
dcdd144598 2011-02-23        kinaba: }
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: //=========================================================================
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: void ComboBox::Select( const TCHAR* str )
dcdd144598 2011-02-23        kinaba: {
dcdd144598 2011-02-23        kinaba: 	// SELECTSTRING は先頭が合ってる物に全てにマッチするので使えない。
dcdd144598 2011-02-23        kinaba: 	// おそらくインクリメンタルサーチとかに使うべきものなのだろう。
dcdd144598 2011-02-23        kinaba: 	size_t i =
dcdd144598 2011-02-23        kinaba: 		SendMsg( CB_FINDSTRINGEXACT, ~0, reinterpret_cast<LPARAM>(str) );
dcdd144598 2011-02-23        kinaba: 	if( i != CB_ERR )
dcdd144598 2011-02-23        kinaba: 		SendMsg( CB_SETCURSEL, i );
dcdd144598 2011-02-23        kinaba: }
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: bool ComboBox::PreTranslateMessage( MSG* )
dcdd144598 2011-02-23        kinaba: {
dcdd144598 2011-02-23        kinaba: 	return false;
dcdd144598 2011-02-23        kinaba: }