void CNormalListBoxItem::Draw(CGraphic& aGraphic,TPoint& aPoint) const { UtilityTools::WriteLogsL(_L("CNormalListBoxItem::Draw")); ASSERT(iSlideText); TRect rect(iItemSize); rect.Move(aPoint); if(iActive) { aGraphic.SetPenColor(KTextColor); aGraphic.SetPenStyle(CGraphicsContext::ESolidPen); aGraphic.SetBrushColor(KListSelectedColor); aGraphic.SetBrushStyle(CGraphicsContext::ESolidBrush); aGraphic.DrawRect(rect); aGraphic.SetBrushStyle(CGraphicsContext::ENullBrush); } if(iIcon) { rect.iTl.iX += iIcon->SizeInPixels().iWidth; } if(iIcon) { ASSERT(iIconMask); aGraphic.BitBltMasked(aPoint,iIcon,iIconMask); } iSlideText->SetClientRect(rect); iSlideText->Draw(aGraphic); aPoint.iY += iItemSize.iHeight; UtilityTools::WriteLogsL(_L("CNormalListBoxItem::Draw End")); }
////////////////////////////////////////////////////////////////////////// //From CControl ////////////////////////////////////////////////////////////////////////// void CGradeDialog::Draw(CGraphic& gc)const { gc.SetPenColor(TRgb(0,0,0)); gc.SetPenStyle(CBitmapContext::ESolidPen); gc.SetBrushStyle(CBitmapContext::ENullBrush); gc.BitBlt(iStartPoint,iDialogBmp); gc.DrawText(iStartPoint+TPoint(iIconPoint.iX,iScreenLayout.FontHeight()/3),iTitle); for(TInt i=0;i<5;i++) { if(i<iGradeNum/2) { iBitmapFactory.DrawGradeBmpByID(gc,iStartPoint+iIconPoint+TPoint((iIconSize.iWidth+iIconPoint.iX)*i,0),0); } else { if((iGradeNum-i*2)==1) { iBitmapFactory.DrawGradeBmpByID(gc,iStartPoint+iIconPoint+TPoint((iIconSize.iWidth+iIconPoint.iX)*i,0),1); } else { iBitmapFactory.DrawGradeBmpByID(gc,iStartPoint+iIconPoint+TPoint((iIconSize.iWidth+iIconPoint.iX)*i,0),2); } } } }
////////////////////////////////////////////////////////////////////////// //From CControl ////////////////////////////////////////////////////////////////////////// void CSelectGroup::Draw(CGraphic& gc)const { TInt index=0; for(TInt i=0; i<iMaxLinePerPage; i++) { index=i+iFirstIndex; if(index>=iSelectArray.Count()) break; if(index==iSelectedIndex) { TRect rect(iStartPoint+TPoint(0,i*iLineHeight),iItemSize); gc.SetPenColor(KPopMenuRectColor); gc.SetPenStyle(CGraphicsContext::ESolidPen); gc.SetBrushColor(KNaviPaneSelectedItemColor); gc.SetBrushStyle(CGraphicsContext::ESolidBrush); gc.DrawRect(rect); gc.SetBrushStyle(CGraphicsContext::ENullBrush); gc.SetPenColor(KRgbWhite); } iSelectArray[index]->DrawItem(gc,TRect(iStartPoint+TPoint(0,i*iLineHeight),iItemSize)); } if(iScrollbar) iScrollbar->Draw(gc); }
void CCurThreeListBoxItem::Draw(CGraphic& aGraphic,TPoint& aPoint) const { TPoint point = aPoint; ASSERT(iSlideText); TRect rect; if(iActive) { TSize size = iItemSize; size.iHeight *= 3; rect = size; rect.Move(point); aGraphic.SetPenColor(KTextColor); aGraphic.SetPenStyle(CGraphicsContext::ESolidPen); aGraphic.SetBrushColor(KListSelectedColor); aGraphic.SetBrushStyle(CGraphicsContext::ESolidBrush); aGraphic.DrawRect(rect); aGraphic.SetBrushStyle(CGraphicsContext::ENullBrush); } if(iIcon) { ASSERT(iIconMask); aGraphic.BitBltMasked(point,iIcon,iIconMask); } rect = iItemSize; if(iIcon) { rect.iTl.iX += iIcon->SizeInPixels().iWidth; } rect.Move(point); iSlideText->SetClientRect(rect); iSlideText->Draw(aGraphic); if(iActive) { aGraphic.SetPenColor(iTextColor); rect.Move(0,iItemSize.iHeight); if(iSecondText) { aGraphic.DrawText(*iSecondText,rect); } rect.Move(0,iItemSize.iHeight); if(iThirdText) { aGraphic.DrawText(*iThirdText,rect); } aPoint.iY += iItemSize.iHeight*3; } else { aPoint.iY += iItemSize.iHeight; } }
////////////////////////////////////////////////////////////////////////// //From CControl ////////////////////////////////////////////////////////////////////////// void CContentInfoDialog::Draw(CGraphic& gc)const { gc.SetPenColor(TRgb(255,255,255)); gc.SetBrushColor(TRgb(64,61,90)); gc.SetPenStyle(CBitmapContext::ESolidPen); gc.SetBrushStyle(CBitmapContext::ESolidBrush); gc.DrawRoundRect(iBackRect); TPoint point=iStartPoint; if(iBool&&iShowBmp==NULL) { gc.DrawRoundRect(TRect(iStartPoint-TPoint(2,2),TSize(iIconSize.iWidth+4,iIconSize.iHeight+4))); gc.DrawText(iMainEngine.GetDesById(ECoCoTextRes_GetImage),TRect(point,iIconSize),CGraphicsContext::ELeft); point.iY=point.iY+iIconSize.iHeight; } if(iShowBmp) { /*TPoint iconPoint(0,0); TSize iconSize=iIconSize; if(iSelectIndex<iAllLine) { iconPoint.iY=iconPoint.iY+iTextSize.iHeight*iSelectIndex; iconSize.iHeight=iIconSize.iHeight-iTextSize.iHeight*iSelectIndex; if(iconPoint.iY>=0&&iconSize.iHeight>0) gc.BitBlt(point,iShowBmp,TRect(iconPoint,iconSize)); }*/ gc.BitBlt(point,iShowBmp); point.iY=point.iY+iIconSize.iHeight; } TInt index=0; for(TInt i=0;i<iMaxLine;i++) { index=i+iFirstIndex; if(index>=iDesArray->Count()) break; gc.DrawText((*iDesArray)[index],TRect(point+TPoint(0,i*iTextSize.iHeight),iTextSize),CGraphicsContext::ELeft); } gc.SetBrushStyle(CGraphicsContext::ENullBrush); if(iScrollbar) iScrollbar->Draw(gc); }
////////////////////////////////////////////////////////////////////////// //From CControl ////////////////////////////////////////////////////////////////////////// void CInputDialog::Draw(CGraphic& gc)const { gc.SetPenColor(TRgb(0,0,0)); gc.SetPenStyle(CBitmapContext::ESolidPen); gc.SetBrushStyle(CBitmapContext::ENullBrush); gc.BitBlt(iStartPoint,iDialogBmp); //画标题 gc.DrawText(iStartPoint+TPoint(iMargin,iScreenLayout.FontHeight()/3),*iTitle); iBitmapFactory.DrawInputIconBmpByID(gc,iStartPoint+iIconPoint,iMainEngine.GetInputType()-1); //gc.BitBltMasked(iStartPoint+iIconPoint,iInputTypeIcon,iInputTypeIconMask); //画提示信息 gc.DrawTextWithBlueUnderline(iStartPoint+TPoint(iMargin,(iScreenLayout.FontHeight()+iScreenLayout.FontHeight()/2)*2+iScreenLayout.FontHeight()/3),*iInfo); }
void CBrowserMusicWindow::InitMusicInterface(CGraphic& aGraphic) const { //播放界面 //播放界面主框 TPoint nX; nX.iX=(iMainEngine.ScreenSize().iWidth-iMusicMainImage->SizeInPixels().iWidth)/2; nX.iY=iMainEngine.ScreenLayout().GetControlPaneRect().iTl.iY-iMusicMainImage->SizeInPixels().iHeight-2; aGraphic.BitBlt(nX,iMusicMainImage); //播放进度条 nX.iY=nX.iY+iMainEngine.ScreenLayout().FontHeight()+iMainEngine.ScreenLayout().FontHeight()/3; nX.iX=(iMusicMainImage->SizeInPixels().iWidth-iMainEngine.GetBitmapFactory().GetMusicTimeIconBmpSize().iWidth)/2; iMainEngine.GetBitmapFactory().DrawMusicTimeIconBmpByID(aGraphic,nX,1); TRect nPlayPercent; const CFbsBitmap* nMusicPlayPercent = NULL; const CFbsBitmap* nMusicPlayPercentMask = NULL; nMusicPlayPercent=iMainEngine.GetBitmapFactory().GetMusicTimeIcon(0); nMusicPlayPercentMask=iMainEngine.GetBitmapFactory().GetMusicTimeIconMask(0); nPlayPercent.iTl=TPoint(0,0); nPlayPercent.iBr.iY=nMusicPlayPercent->SizeInPixels().iHeight; nPlayPercent.iBr.iX=nMusicPlayPercent->SizeInPixels().iWidth*iPercent/100; aGraphic.BitBltMasked(nX,nMusicPlayPercent,nMusicPlayPercentMask,nPlayPercent); /*aGraphic.BitBlt(nX,nMusicPlayPercent,nPlayPercent);*/ //显示播放时间 TPoint nTime; nTime=nX; nTime.iX=nTime.iX+iMainEngine.ScreenLayout().FontHeight()/2; nTime.iY=nTime.iY-iMainEngine.ScreenLayout().FontHeight()*5/4; aGraphic.SetPenColor(TRgb(255,255,255)); aGraphic.SetPenStyle(CFbsBitGc::ESolidPen); aGraphic.DrawText(nTime,iCurrentTime); nTime.iX=nX.iX+iMainEngine.GetBitmapFactory().GetMusicTimeIconBmpSize(0).iWidth-iMainEngine.ScreenLayout().Font()->TextWidthInPixels(iTotalTime)-iMainEngine.ScreenLayout().FontHeight()/2; aGraphic.DrawText(nTime,iTotalTime); //播放、上一首、下一首按钮 TPoint nNum; nX.iY=nX.iY+iMainEngine.ScreenLayout().FontHeight(); iMainEngine.GetBitmapFactory().DrawMusicSelectIconBmpByID(aGraphic,nX,0); nNum=nX; nNum.iX=nNum.iX+iMainEngine.GetBitmapFactory().GetMusicSelectIconBmpSize(0).iWidth; nNum.iY=nNum.iY+iMainEngine.GetBitmapFactory().GetMusicSelectIconBmpSize(0).iHeight/2-2; aGraphic.DrawText(nNum,_L("4")); nX.iY=nX.iY-iMainEngine.ScreenLayout().FontHeight()/4; nX.iX=nX.iX+iMainEngine.GetBitmapFactory().GetMusicSelectIconBmpSize(0).iWidth+iMainEngine.ScreenLayout().FontHeight(); if (iMainEngine.MusicPlayManageEngine().GetIsPlay()==1) { iMainEngine.GetBitmapFactory().DrawMusicPlayIconBmpByID(aGraphic,nX,2); } else { iMainEngine.GetBitmapFactory().DrawMusicPlayIconBmpByID(aGraphic,nX,0); } nNum.iX=nX.iX+iMainEngine.GetBitmapFactory().GetMusicPlayIconBmpSize(0).iWidth; aGraphic.DrawText(nNum,_L("0")); nX.iY=nX.iY+iMainEngine.ScreenLayout().FontHeight()/4; nX.iX=nX.iX+iMainEngine.GetBitmapFactory().GetMusicPlayIconBmpSize(0).iWidth+iMainEngine.ScreenLayout().FontHeight(); iMainEngine.GetBitmapFactory().DrawMusicSelectIconBmpByID(aGraphic,nX,2); nNum.iX=nX.iX+iMainEngine.GetBitmapFactory().GetMusicSelectIconBmpSize(2).iWidth; aGraphic.DrawText(nNum,_L("6")); //静音提示 nX.iX=nX.iX+iMainEngine.GetBitmapFactory().GetMusicSelectIconBmpSize(2).iWidth+iMainEngine.ScreenLayout().FontHeight()*2; nX.iY=nX.iY+iMainEngine.ScreenLayout().FontHeight()/4; if(iMainEngine.MusicPlayManageEngine().GetIsSlice()) { iMainEngine.GetBitmapFactory().DrawMusicBugleIconBmpByID(aGraphic,nX,1); } else { iMainEngine.GetBitmapFactory().DrawMusicBugleIconBmpByID(aGraphic,nX,0); } //音量大小 nX.iX=nX.iX+iMainEngine.GetBitmapFactory().GetMusicBugleIconBmpSize(0).iWidth+iMainEngine.ScreenLayout().FontHeight()/2; nX.iY=nX.iY-iMainEngine.ScreenLayout().FontHeight()/4; TRect nVoiceRect; nVoiceRect.iTl=TPoint(0,0); nVoiceRect.iBr.iY=iMusicVoiceImage->SizeInPixels().iHeight; if (iMainEngine.MusicPlayManageEngine().GetMaxVoice()==0) { nVoiceRect.iBr.iX=iMusicVoiceImage->SizeInPixels().iWidth/2; } else { nVoiceRect.iBr.iX=iMusicVoiceImage->SizeInPixels().iWidth*iMainEngine.MusicPlayManageEngine().GetCurVoice()/iMainEngine.MusicPlayManageEngine().GetMaxVoice(); } aGraphic.BitBlt(nX,iMusicVoiceImage,nVoiceRect); }