#ifndef _WX_GENERIC_DBGRID_H_
#define _WX_GENERIC_DBGRID_H_
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "dbgrid.h"
#endif
#define wxGRID_VALUE_DBAUTO _T("dbauto")
-WX_DECLARE_OBJARRAY(GenericKey,keyarray);
+WX_DECLARE_EXPORTED_OBJARRAY(GenericKey,keyarray);
static const int wxUSE_QUERY = -1;
-class wxDbGridColInfoBase
+class WXDLLEXPORT wxDbGridColInfoBase
{
public:
//Default ctor
};
-class wxDbGridColInfo
+class WXDLLEXPORT wxDbGridColInfo
{
public:
wxDbGridColInfo(int colNo,
//Recurse to find length.
int Length() { return (m_next ? m_next->Length() +1 : 1); }
+ // Adds a new column info (2 step creation)
+ void AddColInfo (int colNo,
+ wxString type,
+ wxString title)
+ {
+ GetLast()->m_next = new wxDbGridColInfo (colNo, type, title, NULL);
+ }
+
+ // Searches last
+ wxDbGridColInfo *GetLast() { return (m_next ? m_next->GetLast() : this); }
+
+
protected:
wxDbGridColInfoBase m_data;
wxDbGridColInfo *m_next;
};
-class wxDbGridCellAttrProvider : public wxGridCellAttrProvider
+class WXDLLEXPORT wxDbGridCellAttrProvider : public wxGridCellAttrProvider
{
public:
wxDbGridCellAttrProvider();
};
-class wxDbGridTableBase : public wxGridTableBase
+class WXDLLEXPORT wxDbGridTableBase : public wxGridTableBase
{
public:
wxDbGridTableBase(wxDbTable *tab, wxDbGridColInfo *ColInfo,
- int count = wxUSE_QUERY, bool takeOwnership = true);
+ int count = wxUSE_QUERY, bool takeOwnership = TRUE);
~wxDbGridTableBase();
virtual int GetNumberRows()
virtual void SetValueAsCustom(int row, int col, const wxString& typeName, void* value);
- virtual wxString wxDbGridTableBase::GetColLabelValue(int col);
+ virtual wxString GetColLabelValue(int col);
- virtual bool AssignDbTable(wxDbTable *tab, int count = wxUSE_QUERY, bool takeOwnership=true);
+ virtual bool AssignDbTable(wxDbTable *tab, int count = wxUSE_QUERY, bool takeOwnership=TRUE);
virtual void ValidateRow(int row);
virtual bool UpdateRow(int row) const
{
if (m_row != row)
- return true;
+ return TRUE;
else
return Writeback();
}