From: BJ H. <par...@us...> - 2003-09-30 20:59:35
|
Log Message: ----------- took out the try..catches and just checked for VT_NULL. i need to test this when i get home to make sure it's not broken. Modified Files: -------------- /cvsroot/decaldev/source/DecalControls: CheckColumn.cpp Revision Data ------------- Index: CheckColumn.cpp =================================================================== RCS file: /cvsroot/decaldev/source/DecalControls/CheckColumn.cpp,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- CheckColumn.cpp 30 Sep 2003 19:54:18 -0000 1.9 +++ CheckColumn.cpp 30 Sep 2003 20:59:33 -0000 1.10 @@ -29,30 +29,14 @@ STDMETHODIMP cCheckColumn::Render(ICanvas *pCanvas, LPPOINT ptCell, long nColor) { - _variant_t vCheck,vDisplay; - bool bDisplay,bCheck; + _variant_t vCheck, vHidden; + bool bHidden, bCheck; m_pList->get_Data( ptCell->x, ptCell->y, 0, &vCheck ); - try - { - bCheck = static_cast<bool>(vCheck); - } - catch( ... ) - { - // Default to false if no value is set - bCheck = false; - } + bCheck = vCheck.vt == VT_NULL ? false : static_cast<bool>(vCheck); - m_pList->get_Data( ptCell->x, ptCell->y, 1, &vDisplay ); - try - { - bDisplay = !static_cast<bool>(vDisplay);// 1 makes it invisible - } - catch( ... ) - { - // Default to true if no value is set - bDisplay = true; - } + m_pList->get_Data( ptCell->x, ptCell->y, 1, &vHidden ); + bHidden = vHidden.vt == VT_NULL ? false : !static_cast<bool>(vHidden); // Converted nicely now ... // Find our checked and unchecked images @@ -62,7 +46,7 @@ m_pSite->GetIconCache( &sz, &pIcons ); POINT pt = { 3, 3 }; - if( bDisplay ) + if( !bHidden ) pIcons->DrawIcon( &pt, bCheck ? 0x0600128B : 0x0600128D, 0, pCanvas ); return S_OK; @@ -99,35 +83,17 @@ STDMETHODIMP cCheckColumn::Activate(LPPOINT ptCell) { - _variant_t vData; - - bool bDisplay,bCheck; - - m_pList->get_Data( ptCell->x, ptCell->y, 0, &vData ); - try - { - bCheck = static_cast<bool>(vData); - } - catch( ... ) - { - // Default to false is no value is set - bCheck = false; - } + _variant_t vCheck, vHidden; + bool bHidden, bCheck; - m_pList->get_Data( ptCell->x, ptCell->y, 1, &vData ); - try - { - bDisplay = !static_cast<bool>(vData);// 1 makes it invisible - } - catch( ... ) - { - // Default to false is no value is set - bDisplay = true; - } + m_pList->get_Data( ptCell->x, ptCell->y, 0, &vCheck ); + bCheck = vCheck.vt == VT_NULL ? false : static_cast<bool>(vCheck); + m_pList->get_Data( ptCell->x, ptCell->y, 1, &vHidden ); + bHidden = vHidden.vt == VT_NULL ? false : !static_cast<bool>(vHidden); - if( bDisplay ) + if( !bHidden ) m_pList->put_Data( ptCell->x, ptCell->y, 0, &_variant_t( !bCheck ) ); return S_OK; |