void SetImage( int image ) { SetImage(0, image); }
int GetImage() const { return GetImage(0); }
+ void SetImage( int index, int image );
+ int GetImage( int index ) const;
+
bool HasImage() const { return GetImage() != -1; }
bool HasText() const { return !GetText(0).empty(); }
// draw the text on the DC with the correct justification; also add an
// ellipsis if the text is too large to fit in the current width
void DrawTextFormatted(wxDC *dc, const wxString &text, int col, int x, int y, int width);
-
- // these are only used by GetImage/SetImage above, we don't support images
- // with subitems at the public API level yet
- void SetImage( int index, int image );
- int GetImage( int index ) const;
};
WX_DECLARE_EXPORTED_OBJARRAY(wxListLineData, wxListLineDataArray);
for ( size_t col = 0; col < countCol; col++ )
{
ld->SetText(col, listctrl->OnGetItemText(line, col));
+ ld->SetImage(col, listctrl->OnGetItemColumnImage(line, col));
}
- ld->SetImage(listctrl->OnGetItemImage(line));
ld->SetAttr(listctrl->OnGetItemAttr(line));
}
{
wxCHECK_MSG(!GetImageList(wxIMAGE_LIST_SMALL),
-1,
- wxT("List control has an image list: OnGetItemImage should be overridden."));
-
+ wxT("List control has an image list, OnGetItemImage or OnGetItemColumnImage should be overridden."));
return -1;
}
+int wxGenericListCtrl::OnGetItemColumnImage(long item, long column) const
+{
+ if (!column)
+ return OnGetItemImage(item);
+
+ return -1;
+}
+
wxListItemAttr *
wxGenericListCtrl::OnGetItemAttr(long WXUNUSED_UNLESS_DEBUG(item)) const
{
rectHeader.Offset(-x, -y);
m_headerWin->Refresh(eraseBackground, &rectHeader);
}
-
}
// Refresh the main window