Пример #1
0
void SSkinImgList::_Draw(IRenderTarget *pRT, LPCRECT rcDraw, DWORD dwState,BYTE byAlpha)
{
    if(!m_pImg) return;
    SIZE sz=GetSkinSize();
    RECT rcSrc={0,0,sz.cx,sz.cy};
    if(m_bVertical) 
        OffsetRect(&rcSrc,0, dwState * sz.cy);
    else
        OffsetRect(&rcSrc, dwState * sz.cx, 0);
    pRT->DrawBitmapEx(rcDraw,m_pImg,&rcSrc,GetExpandMode(),byAlpha);
}
Пример #2
0
void SSkinImgFrame::_Draw(IRenderTarget *pRT, LPCRECT rcDraw, DWORD dwState,BYTE byAlpha)
{
    if(!m_pImg) return;
    SIZE sz=GetSkinSize();
    CPoint pt;
    if(IsVertical())
        pt.y=sz.cy*dwState;
    else
        pt.x=sz.cx*dwState;
    CRect rcSour(pt,sz);
    pRT->DrawBitmap9Patch(rcDraw,m_pImg,&rcSour,&m_rcMargin,GetExpandMode(),byAlpha);
}
Пример #3
0
    void SSkinImgFrame2::_Draw(IRenderTarget *pRT, LPCRECT rcDraw, DWORD dwState,BYTE byAlpha)
    {
        if(!GetImage()) return;
        
        CRect rcSrc = CRect(m_rcImg.TopLeft(),GetSkinSize());
		if(m_bVertical) 
			OffsetRect(&rcSrc,0, dwState * rcSrc.Height());
		else
			OffsetRect(&rcSrc, dwState * rcSrc.Width(), 0);
        rcSrc.DeflateRect(m_offset);
        pRT->DrawBitmap9Patch(rcDraw,GetImage(),&rcSrc,&m_rcMargin,IsTile()?EM_TILE:EM_STRETCH,byAlpha);
    }
Пример #4
0
void cUITab::SetRealSize() {
    if ( mFlags & UI_AUTO_SIZE ) {
        Uint32 w = mTextBox->GetTextWidth() + GetSkinSize().Width();

        cUITabWidget * tTabW = GetTabWidget();

        if ( NULL != tTabW ) {
            w = eemax( w, tTabW->mMinTabWidth );
            w = eemin( w, tTabW->mMaxTabWidth );
        }

        Size( w, mSize.Height() );
    }
}
Пример #5
0
	void SDemoSkin::_Draw(IRenderTarget * pRT, LPCRECT rcDraw, DWORD dwState, BYTE byAlpha)
	{
		if (m_bIsColor)
		{			
			COLORREF bkColor = m_bkColor | (byAlpha << 24);
			pRT->FillSolidRect(rcDraw, bkColor);
			return;
		}
		if (m_pImg)
		{
			SIZE sz = GetSkinSize();
			CPoint pt(0, 0);
			CRect rcSour(pt, sz);
			pRT->DrawBitmap9Patch(rcDraw, m_pImg, &rcSour, &m_rcMargin, GetExpandMode(), byAlpha);
		}		
	}	
Пример #6
0
void cUITab::OnStateChange() {
    cUISelectButton::OnStateChange();

    cUITabWidget * tTabW = GetTabWidget();

    if ( NULL != tTabW ) {
        Size( mSize.Width(), GetSkinSize( GetSkin(), mSkinState->GetState() ).Height() );

        if ( mSkinState->GetState() == cUISkinState::StateSelected ) {
            mTextBox->Color( tTabW->mFontSelectedColor );
        } else if ( mSkinState->GetState() == cUISkinState::StateMouseEnter ) {
            mTextBox->Color( tTabW->mFontOverColor );
        } else {
            mTextBox->Color( tTabW->mFontColor );
        }
    }
}
Пример #7
0
CRect SSkinScrollbar::GetPartRect(int nSbCode, int nState,BOOL bVertical)
{
    CSize sz=GetSkinSize();
    CSize szFrame(sz.cx/9,sz.cx/9);
    if(nSbCode==SB_CORNOR)
    {
        return CRect(CPoint(szFrame.cx*8,0),szFrame);
    }else if(nSbCode==SB_THUMBGRIPPER)
    {
        return CRect(CPoint(szFrame.cx*8,(1+(bVertical?0:1))*szFrame.cy),szFrame);
    }else
    {
        if(nState==SBST_INACTIVE && !m_bHasInactive)
        {
            nState=SBST_NORMAL;
        }
        CRect rcRet;
        int iPart=-1;
        switch(nSbCode)
        {
        case SB_LINEUP:
            iPart=0;
            break;
        case SB_LINEDOWN:
            iPart=1;
            break;
        case SB_THUMBTRACK:
            iPart=2;
            break;
        case SB_PAGEUP:
        case SB_PAGEDOWN:
            iPart=3;
            break;
        }
        if(!bVertical) iPart+=4;
        
        return CRect(CPoint(szFrame.cx*iPart,szFrame.cy*nState),szFrame);
    }
}