result JMChattControl::OnDraw(void) { result r = E_SUCCESS; if( __pCanvasMain == null ) __pCanvasMain = GetCanvasN(); __stScreenInfo.rtScreenNow = this->GetBounds(); if( __stScreenInfo.nSlideDistance != 0 ) { __stScreenInfo.nViewAreaBottom += __stScreenInfo.nSlideDistance; FilteringViewAreaValue(); } __stScreenInfo.nViewAreaTop = __stScreenInfo.nViewAreaBottom - __stScreenInfo.rtScreenNow.height; if( __stScreenInfo.nViewAreaTop < 0 ) __stScreenInfo.nViewAreaTop = 0; if( __pCanvasBack ) { __pCanvasMain->Copy(Point(__stScreenInfo.rtScreen.x,__stScreenInfo.rtScreen.y), *__pCanvasBack, __stScreenInfo.rtScreen); } DrawChattData(__pCanvasMain); if( __stScreenInfo.nSlideDistance != 0 ) { __stScreenInfo.nSlideDistance = 0; } return r; }
result BaseWordForm::OnDraw(void) { result r = Form::OnDraw(); Rectangle bound = GetBounds(); Canvas * canvas = GetCanvasN(bound); if (!__pBGLogo) __pBGLogo = Utils::GetBitmapN("bg_logo.png"); int x = bound.width / 2 - (__pBGLogo->GetWidth() / 2); int y = bound.height - __pBGLogo->GetHeight() - 15; Footer * footer = GetFooter(); if (footer) { y -= footer->GetHeight(); } canvas->DrawBitmap(Point(x, y), *__pBGLogo); delete canvas; return r; }