| 759 | } |
| 760 | |
| 761 | void CContainerUI::ProcessScrollBar(RECT rc, int cxRequired, int cyRequired) |
| 762 | { |
| 763 | if( m_pHorizontalScrollBar != NULL && m_pHorizontalScrollBar->IsVisible() ) { |
| 764 | RECT rcScrollBarPos = { rc.left, rc.bottom, rc.right, rc.bottom + m_pHorizontalScrollBar->GetFixedHeight()}; |
| 765 | m_pHorizontalScrollBar->SetPos(rcScrollBarPos); |
| 766 | } |
| 767 | |
| 768 | if( m_pVerticalScrollBar == NULL ) return; |
| 769 | |
| 770 | if( cyRequired > rc.bottom - rc.top && !m_pVerticalScrollBar->IsVisible() ) { |
| 771 | m_pVerticalScrollBar->SetVisible(true); |
| 772 | m_pVerticalScrollBar->SetScrollRange(cyRequired - (rc.bottom - rc.top)); |
| 773 | m_pVerticalScrollBar->SetScrollPos(0); |
| 774 | m_bScrollProcess = true; |
| 775 | SetPos(m_rcItem); |
| 776 | m_bScrollProcess = false; |
| 777 | return; |
| 778 | } |
| 779 | // No scrollbar required |
| 780 | if( !m_pVerticalScrollBar->IsVisible() ) return; |
| 781 | |
| 782 | // Scroll not needed anymore? |
| 783 | int cyScroll = cyRequired - (rc.bottom - rc.top); |
| 784 | if( cyScroll <= 0 && !m_bScrollProcess) { |
| 785 | m_pVerticalScrollBar->SetVisible(false); |
| 786 | m_pVerticalScrollBar->SetScrollPos(0); |
| 787 | m_pVerticalScrollBar->SetScrollRange(0); |
| 788 | SetPos(m_rcItem); |
| 789 | } |
| 790 | else |
| 791 | { |
| 792 | RECT rcScrollBarPos = { rc.right, rc.top, rc.right + m_pVerticalScrollBar->GetFixedWidth(), rc.bottom }; |
| 793 | m_pVerticalScrollBar->SetPos(rcScrollBarPos); |
| 794 | |
| 795 | if( m_pVerticalScrollBar->GetScrollRange() != cyScroll ) { |
| 796 | int iScrollPos = m_pVerticalScrollBar->GetScrollPos(); |
| 797 | m_pVerticalScrollBar->SetScrollRange(::abs(cyScroll)); |
| 798 | if( m_pVerticalScrollBar->GetScrollRange() == 0 ) { |
| 799 | m_pVerticalScrollBar->SetVisible(false); |
| 800 | m_pVerticalScrollBar->SetScrollPos(0); |
| 801 | } |
| 802 | if( iScrollPos > m_pVerticalScrollBar->GetScrollPos() ) { |
| 803 | SetPos(m_rcItem); |
| 804 | } |
| 805 | } |
| 806 | } |
| 807 | } |
| 808 | |
| 809 | bool CContainerUI::SetSubControlText( LPCTSTR pstrSubControlName,LPCTSTR pstrText ) |
| 810 | { |
nothing calls this directly
no test coverage detected