BOOL CEasySkinSliderCtrl::SetThumImage( LPCTSTR lpszFileName ) { UIRenderEngine->RemoveImage(m_pThumImg); m_pThumImg = UIRenderEngine->GetImage(lpszFileName); if (NULL == m_pThumImg) return FALSE; else { m_szThum.SetSize(m_pThumImg->GetWidth(),m_pThumImg->GetHeight()); m_rcThumRect.SetRect(0,0,m_szThum.cx,m_szThum.cy); SetThumbRect(); SetChannelRect(); return TRUE; } }
BOOL CDoubleThumbOpt::InitThumb(BOOL bHorizontal, int nThumbWidth, CRect& rcChannel) { SetHorizontal(bHorizontal); SetChannelRect(rcChannel); SetThumbWidth(nThumbWidth); CPoint ptCenter; ptCenter = rcChannel.CenterPoint(); if (bHorizontal) { ptCenter.x =rcChannel.left; } else { ptCenter.y = rcChannel.top; } m_ltThumb.InitThumb(ptCenter, 0, THUNMB_RECT_HEIGHT, nThumbWidth, m_bHorizontal); m_rbThumb.InitThumb(ptCenter, 10, THUNMB_RECT_HEIGHT, nThumbWidth, m_bHorizontal); return TRUE; }
BOOL CMultiThumbOpt::InitThumb(BOOL bHorizontal, int nThumbWidth, CRect& rcChannel) { SetHorizontal(bHorizontal); SetChannelRect(rcChannel); SetThumbWidth(nThumbWidth); CPoint ptCenter; ptCenter = rcChannel.CenterPoint(); if (bHorizontal) { ptCenter.x =rcChannel.left; } else { ptCenter.y = rcChannel.top; } ASSERT(m_szThumb.size() <= m_szTicMarks->size()); int nPos = 0; for (UINT i = 0; i < m_szThumb.size(); i++) { nPos = i ; if (m_bHorizontal) { ptCenter.x = m_szTicMarks->at(nPos)+m_rcChannel.left; } else { ptCenter.y = m_szTicMarks->at(nPos)+m_rcChannel.top; } m_szThumb[i]->InitThumb(ptCenter, nPos, THUNMB_RECT_HEIGHT, nThumbWidth, m_bHorizontal); // m_szThumb[i]->SetMixValue(m_nM) } m_nFocusThumb = 0; ReCalcChannelRect(); return TRUE; }
void CSkinSliderCtrl::OnSize(UINT nType, int cx, int cy) { __super::OnSize(nType, cx, cy); SetChannelRect(); SetPos(GetPos()); }