Bugfix for wxListCtrl::GetColumn. It wasn't checking the returned format correctly.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2002-08-14 23:25:06 +00:00
parent 110d05999f
commit 0b190ffcee
2 changed files with 19 additions and 7 deletions

View File

@@ -39,6 +39,10 @@
#define HDM_FIRST 0x1200 #define HDM_FIRST 0x1200
#endif #endif
#ifndef LVCFMT_JUSTIFYMASK
#define LVCFMT_JUSTIFYMASK 0x0003
#endif
// mingw32/cygwin don't have declarations for comctl32.dll 4.70+ stuff // mingw32/cygwin don't have declarations for comctl32.dll 4.70+ stuff
#ifndef NM_CACHEHINT #ifndef NM_CACHEHINT
typedef struct tagNMLVCACHEHINT typedef struct tagNMLVCACHEHINT

View File

@@ -598,7 +598,7 @@ bool wxListCtrl::GetColumn(int col, wxListItem& item) const
lvCol.mask |= LVCF_IMAGE; lvCol.mask |= LVCF_IMAGE;
} }
bool success = ListView_GetColumn(GetHwnd(), col, & lvCol) != 0; bool success = ListView_GetColumn(GetHwnd(), col, &lvCol) != 0;
// item.m_subItem = lvCol.iSubItem; // item.m_subItem = lvCol.iSubItem;
item.m_width = lvCol.cx; item.m_width = lvCol.cx;
@@ -611,12 +611,20 @@ bool wxListCtrl::GetColumn(int col, wxListItem& item) const
if ( item.m_mask & wxLIST_MASK_FORMAT ) if ( item.m_mask & wxLIST_MASK_FORMAT )
{ {
if (lvCol.fmt == LVCFMT_LEFT) switch (lvCol.fmt & LVCFMT_JUSTIFYMASK) {
case LVCFMT_LEFT:
item.m_format = wxLIST_FORMAT_LEFT; item.m_format = wxLIST_FORMAT_LEFT;
else if (lvCol.fmt == LVCFMT_RIGHT) break;
case LVCFMT_RIGHT:
item.m_format = wxLIST_FORMAT_RIGHT; item.m_format = wxLIST_FORMAT_RIGHT;
else if (lvCol.fmt == LVCFMT_CENTER) break;
case LVCFMT_CENTER:
item.m_format = wxLIST_FORMAT_CENTRE; item.m_format = wxLIST_FORMAT_CENTRE;
break;
default:
item.m_format = -1; // Unknown?
break;
}
} }
#if _WIN32_IE >= 0x0300 #if _WIN32_IE >= 0x0300