// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#ifndef __MACCARBONDATAVIEWCTRL_H__
-#define __MACCARBONDATAVIEWCTRL_H__
+#ifndef _WX_MACCARBONDATAVIEWCTRL_H_
+#define _WX_MACCARBONDATAVIEWCTRL_H_
-#include <Carbon/carbon.h>
+// --------------------------------------------------------
+// Type definitions to mask native types
+// --------------------------------------------------------
-#include "wx/defs.h"
-#include "wx/object.h"
-#include "wx/list.h"
-#include "wx/control.h"
-#include "wx/scrolwin.h"
-#include "wx/icon.h"
-
-// ---------------------------------------------------------
-// classes
-// ---------------------------------------------------------
-
-class WXDLLIMPEXP_FWD_ADV wxDataViewCtrl;
+typedef void* WXDataBrowserItemDataRef;
+typedef unsigned long WXDataBrowserPropertyType;
+typedef wxUint32 WXDataBrowserPropertyID;
// ---------------------------------------------------------
// wxDataViewRenderer
// ---------------------------------------------------------
-class WXDLLIMPEXP_ADV wxDataViewRenderer: public wxDataViewRendererBase
+class WXDLLIMPEXP_ADV wxDataViewRenderer : public wxDataViewRendererBase
{
public:
//
//
// implementation
//
- DataBrowserItemDataRef GetDataReference(void) const
+ WXDataBrowserItemDataRef GetDataReference(void) const
{
return this->m_dataReference;
}
return this->m_value;
}
- virtual DataBrowserPropertyType GetPropertyType(void) const = 0;
+ virtual WXDataBrowserPropertyType GetPropertyType(void) const = 0;
virtual bool Render(void) = 0; // a call to the appropriate data browser function filling the data reference with the stored datum;
// returns 'true' if the data value could be rendered, 'false' otherwise
- void SetDataReference(DataBrowserItemDataRef const& newDataReference)
+ void SetDataReference(WXDataBrowserItemDataRef const& newDataReference)
{
this->m_dataReference = newDataReference;
}
//
// variables
//
- DataBrowserItemDataRef m_dataReference; // data reference of the data browser; the data will be assigned to this reference during rendering
+ WXDataBrowserItemDataRef m_dataReference; // data reference of the data browser; the data will be assigned to this reference during rendering
int m_alignment; // contains the alignment flags
virtual ~wxDataViewCustomRenderer(void);
+ void RenderText( const wxString &text, int xoffset, wxRect cell, wxDC *dc, int state );
+
//
// methods handling render space
//
return false;
}
- virtual bool StartEditing(const wxDataViewItem &WXUNUSED(item), wxRect WXUNUSED(labelRect))
+ virtual bool StartEditing(wxDataViewItem const& WXUNUSED(item), wxRect WXUNUSED(labelRect))
{
return false;
}
virtual bool Render(void); // declared in wxDataViewRenderer but will not be used here, therefore calling this function will
// return 'true' without having done anything
- virtual DataBrowserPropertyType GetPropertyType(void) const
- {
- return kDataBrowserCustomType;
- }
+ virtual WXDataBrowserPropertyType GetPropertyType(void) const;
void SetDC(wxDC* newDCPtr); // this method takes ownership of the pointer
//
// implementation
//
- virtual DataBrowserPropertyType GetPropertyType(void) const
- {
- return kDataBrowserTextType;
- }
+ virtual WXDataBrowserPropertyType GetPropertyType(void) const;
protected:
private:
DECLARE_DYNAMIC_CLASS_NO_COPY(wxDataViewTextRenderer)
};
+// ---------------------------------------------------------
+// wxDataViewTextRendererAttr
+// ---------------------------------------------------------
+
+class WXDLLIMPEXP_ADV wxDataViewTextRendererAttr: public wxDataViewTextRenderer
+{
+public:
+//
+// constructors / destructor
+//
+ wxDataViewTextRendererAttr(wxString const& varianttype=wxT("string"), wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int align=wxDVR_DEFAULT_ALIGNMENT);
+
+private:
+ DECLARE_DYNAMIC_CLASS_NO_COPY(wxDataViewTextRendererAttr)
+};
+
// ---------------------------------------------------------
// wxDataViewBitmapRenderer
// ---------------------------------------------------------
//
// implementation
//
- virtual DataBrowserPropertyType GetPropertyType(void) const
- {
- return kDataBrowserIconType;
- }
+ virtual WXDataBrowserPropertyType GetPropertyType(void) const;
protected:
private:
//
// implementation
//
- virtual DataBrowserPropertyType GetPropertyType(void) const
- {
- return kDataBrowserIconAndTextType;
- }
+ virtual WXDataBrowserPropertyType GetPropertyType(void) const;
protected:
private:
//
// implementation
//
- virtual DataBrowserPropertyType GetPropertyType(void) const
- {
- return kDataBrowserCheckboxType;
- }
+ virtual WXDataBrowserPropertyType GetPropertyType(void) const;
protected:
private:
//
// implementation
//
- virtual DataBrowserPropertyType GetPropertyType(void) const
- {
- return kDataBrowserProgressBarType;
- }
+ virtual WXDataBrowserPropertyType GetPropertyType(void) const;
protected:
private:
//
// implementation
//
- virtual DataBrowserPropertyType GetPropertyType(void) const
- {
- return kDataBrowserDateTimeType;
- }
+ virtual WXDataBrowserPropertyType GetPropertyType(void) const;
protected:
private:
//
// implementation
//
- DataBrowserPropertyID GetPropertyID(void) const
+ WXDataBrowserPropertyID GetPropertyID() const
{
return this->m_propertyID;
}
- void SetPropertyID(DataBrowserPropertyID newID)
+ void SetPropertyID(WXDataBrowserPropertyID newID)
{
this->m_propertyID = newID;
}
+ void SetWidthVariable(int NewWidth)
+ {
+ this->m_width = NewWidth;
+ }
protected:
private:
//
bool m_ascending; // sorting order
- DataBrowserPropertyID m_propertyID; // each column is identified by its unique property ID (NOT by the column index)
+ WXDataBrowserPropertyID m_propertyID; // each column is identified by its unique property ID (NOT by the column index)
int m_flags; // flags for the column
int m_maxWidth; // maximum width for the column
virtual bool DeleteColumn(wxDataViewColumn* columnPtr);
virtual wxDataViewColumn* GetColumn(unsigned int pos) const;
virtual unsigned int GetColumnCount(void) const;
+ virtual int GetColumnPosition(wxDataViewColumn const* columnPtr) const;
+ virtual bool PrependColumn(wxDataViewColumn* columnPtr);
virtual void Collapse(wxDataViewItem const& item);
virtual void EnsureVisible(wxDataViewItem const& item, wxDataViewColumn const* columnPtr=NULL);
virtual void Expand(wxDataViewItem const& item);
+ virtual wxDataViewColumn* GetSortingColumn(void) const;
+
virtual unsigned int GetCount(void) const;
virtual wxRect GetItemRect(wxDataViewItem const& item, wxDataViewColumn const* columnPtr) const;
virtual wxDataViewItem GetSelection(void) const;
// returns a pointer to a column;
// in case the pointer cannot be found NULL is returned:
- wxDataViewColumn* GetColumnPtr(DataBrowserPropertyID propertyID) const;
+ wxDataViewColumn* GetColumnPtr(WXDataBrowserPropertyID propertyID) const;
// checks if currently a delete process is running:
bool IsDeleting(void) const
private:
// type definitions:
- WX_DECLARE_HASH_MAP(DataBrowserPropertyID,wxDataViewColumn*,wxIntegerHash,wxIntegerEqual,ColumnPointerHashMapType);
+ WX_DECLARE_HASH_MAP(WXDataBrowserPropertyID,wxDataViewColumn*,wxIntegerHash,wxIntegerEqual,ColumnPointerHashMapType);
// initializing of local variables:
void Init(void);
};
-#endif // __MACDATAVIEWCTRL_H__
+#endif // _WX_MACCARBONDATAVIEWCTRL_H_