#ifndef _WX_GENERIC_DBGRID_H_
#define _WX_GENERIC_DBGRID_H_
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma interface "dbgrid.h"
#endif
#if wxUSE_ODBC
-#if wxUSE_NEW_GRID
+#if wxUSE_GRID
#include "wx/log.h"
#include "wx/dbtable.h"
#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 WXDLLIMPEXP_DBGRID wxDbGridColInfoBase
{
public:
//Default ctor
};
-class wxDbGridColInfo
+class WXDLLIMPEXP_DBGRID 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 WXDLLIMPEXP_DBGRID wxDbGridCellAttrProvider : public wxGridCellAttrProvider
{
public:
wxDbGridCellAttrProvider();
};
-class wxDbGridTableBase : public wxGridTableBase
+class WXDLLIMPEXP_DBGRID wxDbGridTableBase : public wxGridTableBase
{
public:
wxDbGridTableBase(wxDbTable *tab, wxDbGridColInfo *ColInfo,
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 void ValidateRow(int row);
bool m_rowmodified;
};
-#endif // #if wxUSE_NEW_GRID
+#endif // #if wxUSE_GRID
#endif // #if wxUSE_ODBC
#endif // _WX_GENERIC_DBGRID_H_