#include "wx/dynarray.h"
#include "wx/icon.h"
#include "wx/imaglist.h"
+#include "wx/weakref.h"
class WXDLLIMPEXP_FWD_CORE wxDataFormat;
virtual void Resort() = 0;
void SetOwner( wxDataViewModel *owner ) { m_owner = owner; }
- wxDataViewModel *GetOwner() { return m_owner; }
+ wxDataViewModel *GetOwner() const { return m_owner; }
private:
wxDataViewModel *m_owner;
wxDataViewItemArray m_hash;
unsigned int m_lastIndex;
bool m_ordered;
- bool m_useHash;
};
// ---------------------------------------------------------
wxDataViewRendererBase( const wxString &varianttype,
wxDataViewCellMode mode = wxDATAVIEW_CELL_INERT,
int alignment = wxDVR_DEFAULT_ALIGNMENT );
+ ~wxDataViewRendererBase();
virtual bool Validate( wxVariant& WXUNUSED(value) )
{ return true; }
void SetOwner( wxDataViewColumn *owner ) { m_owner = owner; }
- wxDataViewColumn* GetOwner() { return m_owner; }
+ wxDataViewColumn* GetOwner() const { return m_owner; }
// renderer properties:
protected:
wxString m_variantType;
wxDataViewColumn *m_owner;
- wxControl *m_editorCtrl;
+ wxWeakRef<wxControl> m_editorCtrl;
wxDataViewItem m_item; // for m_editorCtrl
// internal utility:
#define wxDV_VERT_RULES 0x0008 // light vertical rules between columns
#define wxDV_ROW_LINES 0x0010 // alternating colour in rows
+#define wxDV_VARIABLE_LINE_HEIGHT 0x0020 // variable line height
class WXDLLIMPEXP_ADV wxDataViewCtrlBase: public wxControl
{
{ return m_expander_column; }
virtual wxDataViewColumn *GetSortingColumn() const = 0;
-
+
void SetIndent( int indent )
{ m_indent = indent ; DoSetIndent(); }
int GetIndent() const