bool
ESSimpleRenderView::Create(int nId, _Rect rRect, MercuryBaseView* pOwner, ESChildControl* pParent){
	m_szPage.SetSize(rRect.Width(), rRect.Height());
	m_szView.SetSize(rRect.Width(), m_nContentHeight);
	bool bRet = ESChildScrollView::Create(nId, rRect, pOwner, pParent);
	if( bRet ){
		}
	return bRet;
	}
void
RenderItemText::Draw(_DC* pDC, _Rect rcItem, _Rect rcDraw, ESChildControl* pControl){
	if( !m_pStyle ) return;
	Font*	pFontOld	= pDC->SelectObject(&m_pStyle->m_font);
	int		nBkModeOld	= pDC->SetBkMode(TRANSPARENT);
	pDC->SetTextColor(m_crText);

	_Rect rcText;
	if( m_nHAlign == Alignment::HAlign_Center ){
		rcText.left		= rcItem.left + (rcItem.Width() - m_szText.cx)/2;
		rcText.right	= rcText.left + m_szText.cx;
		}
	else{
		if( m_nHAlign == Alignment::HAlign_Right ){
			rcText.left		= rcItem.right - m_szText.cx;
			rcText.right	= rcItem.right;
			}
		else{
			rcText.left		= rcItem.left;
			rcText.right	= rcItem.left + m_szText.cx;
			}
		}

	if( m_nVAlign == Alignment::VAlign_Middle ){
		rcText.top		= rcItem.top + (rcItem.Height() - m_szText.cy)/2;
		rcText.bottom	= rcText.top + m_szItem.cy;
		}
	else{
		if( m_nVAlign == Alignment::VAlign_Bottom ){
			rcText.top		= rcItem.bottom - m_szText.cy;
			rcText.bottom	= rcItem.bottom;
			}
		else{
			rcText.top		= rcItem.top;
			rcText.bottom	= rcItem.top + m_szText.cy;
			}
		}
		
	_string sText = m_sText;
	if( sText.length() )
		ESLocalizationMan::ParseText(sText);
	pDC->ExtTextOut     (rcText.left, rcText.top, ETO_CLIPPED, rcDraw, sText.c_str());
	pDC->SetBkMode		(nBkModeOld);
	pDC->SelectObject	(pFontOld);
	}
bool
ESChildSlider::CalcCursorRect(_Rect rcBar, _Rect& rcCursor){
	_Size szCursorImg(0, 0);
	float fZoomCX = 1.0f, fZoomCY = 1.0f;
	if( m_pOwner )
		m_pOwner->GetZoom(fZoomCX, fZoomCY);
	if( !m_imageCursor.IsNull() )
		szCursorImg.SetSize(m_imageCursor.GetWidth()*fZoomCX, m_imageCursor.GetHeight()*fZoomCY);

	if( m_nPos < m_nMin ){
		m_nPos				= m_nMin;
		if( m_bVerticalMode ){
			rcCursor.top		= rcBar.bottom - szCursorImg.cy;
			rcCursor.left		= rcBar.left + (rcBar.Width() - szCursorImg.cx)/2;
			rcCursor.right		= rcCursor.left + szCursorImg.cx;
			rcCursor.bottom		= rcCursor.top + szCursorImg.cy;
			}
		else{
			rcCursor.left		= rcBar.left;
			rcCursor.top		= rcBar.top + (rcBar.Height() - szCursorImg.cy)/2;
			rcCursor.right		= rcCursor.left + szCursorImg.cx;
			rcCursor.bottom		= rcCursor.top + szCursorImg.cy;
			}
		return true;
		}

	if( m_nPos > m_nMax ){
		m_nPos				= m_nMax;
		if( m_bVerticalMode ){
			rcCursor.top		= rcBar.top;
			rcCursor.left		= rcBar.left + (rcBar.Width() - szCursorImg.cx)/2;
			rcCursor.right		= rcCursor.left + szCursorImg.cx;
			rcCursor.bottom		= rcCursor.top + szCursorImg.cy;
			}
		else{
			rcCursor.left		= rcBar.right - szCursorImg.cx;
			rcCursor.top		= rcBar.top + (rcBar.Height() - szCursorImg.cy)/2;
			rcCursor.right		= rcCursor.left + szCursorImg.cx;
			rcCursor.bottom		= rcCursor.top + szCursorImg.cy;
			}
		return true;
		}

	if( m_bVerticalMode ){
		float fDelta		= (float)((rcBar.Height() - szCursorImg.cy) / ((m_nMax - m_nMin)*1.0f));
		m_ptCursorPos.y		= (rcBar.bottom - szCursorImg.cy) - (int)(fDelta*(m_nPos - m_nMin));
		m_ptCursorPos.x		= rcBar.left;

		rcCursor.top		= m_ptCursorPos.y;
		rcCursor.left		= rcBar.left + (rcBar.Width() - szCursorImg.cx)/2;
		rcCursor.right		= rcCursor.left + szCursorImg.cx;
		rcCursor.bottom		= rcCursor.top + szCursorImg.cy;
		}
	else{
		float fDelta		= (float)((rcBar.Width() - szCursorImg.cx) / ((m_nMax - m_nMin)*1.0f));
		m_ptCursorPos.x		= rcBar.left + (int)(fDelta*(m_nPos - m_nMin));
		m_ptCursorPos.y		= rcBar.top;

		rcCursor.left		= m_ptCursorPos.x;
		rcCursor.top		= rcBar.top + (rcBar.Height() - szCursorImg.cy)/2;
		rcCursor.right		= rcCursor.left + szCursorImg.cx;
		rcCursor.bottom		= rcCursor.top + szCursorImg.cy;
		}
	return true;
	}