#include "wx/font.h"
#include "wx/gdicmn.h"
#include "wx/event.h"
+#include "wx/control.h"
class WXDLLIMPEXP_FWD_CORE wxImageList;
// All these methods can only be used in report view mode.
+ // Appends a new column.
+ //
+ // Returns the index of the newly inserted column or -1 on error.
+ long AppendColumn(const wxString& heading,
+ int format = wxLIST_FORMAT_LEFT,
+ int width = -1);
+
// Add a new column to the control at the position "col".
//
// Returns the index of the newly inserted column or -1 on error.
long InsertColumn(long col,
const wxString& heading,
int format = wxLIST_FORMAT_LEFT,
- int width = -1);
+ int width = wxLIST_AUTOSIZE);
// Delete the given or all columns.
virtual bool DeleteColumn(int col) = 0;
virtual int GetColumnWidth(int col) const = 0;
virtual bool SetColumnWidth(int col, int width) = 0;
+ // return the attribute for the item (may return NULL if none)
+ virtual wxListItemAttr *OnGetItemAttr(long item) const;
// Other miscellaneous accessors.
// ------------------------------
bool InReportView() const { return HasFlag(wxLC_REPORT); }
bool IsVirtual() const { return HasFlag(wxLC_VIRTUAL); }
+ // Enable or disable beep when incremental match doesn't find any item.
+ // Only implemented in the generic version currently.
+ virtual void EnableBellOnNoMatch(bool WXUNUSED(on) = true) { }
+
+ void EnableAlternateRowColours(bool enable = true);
+ void SetAlternateRowColour(const wxColour& colour);
+
protected:
// Real implementations methods to which our public forwards.
virtual long DoInsertColumn(long col, const wxListItem& info) = 0;
// Overridden methods of the base class.
virtual wxSize DoGetBestClientSize() const;
+
+private:
+ // user defined color to draw row lines, may be invalid
+ wxListItemAttr m_alternateRowColour;
};
// ----------------------------------------------------------------------------