#define wxPyMake_TEMPLATE(TYPE) \
-PyObject* wxPyMake_##TYPE(TYPE* source) { \
+PyObject* wxPyMake_##TYPE(TYPE* source, bool setThisOwn) { \
PyObject* target = NULL; \
if (source) { \
/* Check if there is already a pointer to a Python object in the \
wxPyOORClientData* data = (wxPyOORClientData*)source->GetClientObject(); \
if (data) { \
target = data->m_obj; \
- Py_INCREF(target); \
+ if (target) \
+ Py_INCREF(target); \
} \
/* Otherwise make a new wrapper for it the old fashioned way and \
give it the OOR treatment */ \
if (! target) { \
- target = wxPyConstructObject(source, wxT(#TYPE), False); \
+ target = wxPyConstructObject(source, wxT(#TYPE), setThisOwn); \
if (target) \
source->SetClientObject(new wxPyOORClientData(target)); \
} \
bool blocked = wxPyBeginBlockThreads(); \
bool found; \
if ((found = wxPyCBH_findCallback(m_myInst, #CBNAME))) { \
- PyObject* obj = wxPyMake_wxGridCellAttr(attr); \
+ PyObject* obj = wxPyMake_wxGridCellAttr(attr,false); \
wxPyCBH_callCallback(m_myInst, Py_BuildValue("(Oii)", obj, a, b)); \
Py_DECREF(obj); \
} \
bool blocked = wxPyBeginBlockThreads(); \
bool found; \
if ((found = wxPyCBH_findCallback(m_myInst, #CBNAME))) { \
- PyObject* obj = wxPyMake_wxGridCellAttr(attr); \
+ PyObject* obj = wxPyMake_wxGridCellAttr(attr,false); \
wxPyCBH_callCallback(m_myInst, Py_BuildValue("(Oi)", obj, val)); \
Py_DECREF(obj); \
} \
}
}
+
+#define wxGRID_DEFAULT_NUMBER_ROWS WXGRID_DEFAULT_NUMBER_ROWS
+#define wxGRID_DEFAULT_NUMBER_COLS WXGRID_DEFAULT_NUMBER_COLS
+#define wxGRID_DEFAULT_ROW_HEIGHT WXGRID_DEFAULT_ROW_HEIGHT
+#define wxGRID_DEFAULT_COL_WIDTH WXGRID_DEFAULT_COL_WIDTH
+#define wxGRID_DEFAULT_COL_LABEL_HEIGHT WXGRID_DEFAULT_COL_LABEL_HEIGHT
+#define wxGRID_DEFAULT_ROW_LABEL_WIDTH WXGRID_DEFAULT_ROW_LABEL_WIDTH
+#define wxGRID_LABEL_EDGE_ZONE WXGRID_LABEL_EDGE_ZONE
+#define wxGRID_MIN_ROW_HEIGHT WXGRID_MIN_ROW_HEIGHT
+#define wxGRID_MIN_COL_WIDTH WXGRID_MIN_COL_WIDTH
+#define wxGRID_DEFAULT_SCROLLBAR_WIDTH WXGRID_DEFAULT_SCROLLBAR_WIDTH
+
void wxGridCellRenderer__setOORInfo(wxGridCellRenderer *self,PyObject *_self){
- self->SetClientObject(new wxPyOORClientData(_self));
+ if (!self->GetClientObject())
+ self->SetClientObject(new wxPyOORClientData(_self));
}
#include <limits.h>
int row, int col, bool isSelected) {
bool blocked = wxPyBeginBlockThreads();
if (wxPyCBH_findCallback(m_myInst, "Draw")) {
- PyObject* go = wxPyMake_wxObject(&grid);
- PyObject* dco = wxPyMake_wxObject(&dc);
- PyObject* ao = wxPyMake_wxGridCellAttr(&attr);
+ PyObject* go = wxPyMake_wxObject(&grid,false);
+ PyObject* dco = wxPyMake_wxObject(&dc,false);
+ PyObject* ao = wxPyMake_wxGridCellAttr(&attr,false);
PyObject* ro = wxPyConstructObject((void*)&rect, wxT("wxRect"), 0);
wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OOOOiii)", go, ao, dco, ro,
if (wxPyCBH_findCallback(m_myInst, "GetBestSize")) {
PyObject* ro;
wxSize* ptr;
- PyObject* go = wxPyMake_wxObject(&grid);
- PyObject* dco = wxPyMake_wxObject(&dc);
- PyObject* ao = wxPyMake_wxGridCellAttr(&attr);
+ PyObject* go = wxPyMake_wxObject(&grid,false);
+ PyObject* dco = wxPyMake_wxObject(&dc,false);
+ PyObject* ao = wxPyMake_wxGridCellAttr(&attr,false);
ro = wxPyCBH_callCallbackObj(m_myInst, Py_BuildValue("(OOOii)",
go, ao, dco,
void wxGridCellEditor__setOORInfo(wxGridCellEditor *self,PyObject *_self){
- self->SetClientObject(new wxPyOORClientData(_self));
+ if (!self->GetClientObject())
+ self->SetClientObject(new wxPyOORClientData(_self));
}
class wxPyGridCellEditor : public wxGridCellEditor
void Create(wxWindow* parent, wxWindowID id, wxEvtHandler* evtHandler) {
bool blocked = wxPyBeginBlockThreads();
if (wxPyCBH_findCallback(m_myInst, "Create")) {
- PyObject* po = wxPyMake_wxObject(parent);
- PyObject* eo = wxPyMake_wxObject(evtHandler);
+ PyObject* po = wxPyMake_wxObject(parent,false);
+ PyObject* eo = wxPyMake_wxObject(evtHandler,false);
wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OiO)", po, id, eo));
Py_DECREF(po);
void BeginEdit(int row, int col, wxGrid* grid) {
bool blocked = wxPyBeginBlockThreads();
if (wxPyCBH_findCallback(m_myInst, "BeginEdit")) {
- PyObject* go = wxPyMake_wxObject(grid);
+ PyObject* go = wxPyMake_wxObject(grid,false);
wxPyCBH_callCallback(m_myInst, Py_BuildValue("(iiO)", row, col, go));
Py_DECREF(go);
}
bool rv = False;
bool blocked = wxPyBeginBlockThreads();
if (wxPyCBH_findCallback(m_myInst, "EndEdit")) {
- PyObject* go = wxPyMake_wxObject(grid);
+ PyObject* go = wxPyMake_wxObject(grid,false);
rv = wxPyCBH_callCallback(m_myInst, Py_BuildValue("(iiO)", row, col, go));
Py_DECREF(go);
}
bool found;
bool blocked = wxPyBeginBlockThreads();
if ((found = wxPyCBH_findCallback(m_myInst, "Show"))) {
- PyObject* ao = wxPyMake_wxGridCellAttr(attr);
+ PyObject* ao = wxPyMake_wxGridCellAttr(attr,false);
wxPyCBH_callCallback(m_myInst, Py_BuildValue("(iO)", show, ao));
Py_DECREF(ao);
}
bool found;
bool blocked = wxPyBeginBlockThreads();
if ((found = wxPyCBH_findCallback(m_myInst, "PaintBackground)"))) {
- PyObject* ao = wxPyMake_wxGridCellAttr(attr);
+ PyObject* ao = wxPyMake_wxGridCellAttr(attr,false);
PyObject* ro = wxPyConstructObject((void*)&rectCell, wxT("wxRect"), 0);
wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OO)", ro, ao));
void wxGridCellAttr__setOORInfo(wxGridCellAttr *self,PyObject *_self){
- self->SetClientObject(new wxPyOORClientData(_self));
+ if (!self->GetClientObject())
+ self->SetClientObject(new wxPyOORClientData(_self));
}
static PyObject* t_output_helper(PyObject* target, PyObject* o) {
}
void wxGridCellAttrProvider__setOORInfo(wxGridCellAttrProvider *self,PyObject *_self){
- self->SetClientObject(new wxPyOORClientData(_self));
+ if (!self->GetClientObject())
+ self->SetClientObject(new wxPyOORClientData(_self));
}
SWIGSTATICINLINE(unsigned long)
};
void wxGridTableBase__setOORInfo(wxGridTableBase *self,PyObject *_self){
- self->SetClientObject(new wxPyOORClientData(_self));
+ if (!self->GetClientObject())
+ self->SetClientObject(new wxPyOORClientData(_self));
}
SWIGSTATICINLINE(int)
PyObject* ro;
ro = wxPyCBH_callCallbackObj(m_myInst, Py_BuildValue("(ii)",row,col));
if (ro) {
+ if (!PyString_Check(ro) && !PyUnicode_Check(ro)) {
+ PyObject* old = ro;
+ ro = PyObject_Str(ro);
+ Py_DECREF(old);
+ }
rval = Py2wxString(ro);
Py_DECREF(ro);
}
bool wxGridCellCoords_typecheck(PyObject* source) {
void* ptr;
-
+
if (wxPySwigInstance_Check(source) &&
wxPyConvertSwigPtr(source, (void **)&ptr, wxT("wxGridCellCoords")))
return True;
PyErr_Clear();
if (PySequence_Check(source) && PySequence_Length(source) == 2)
return True;
-
+
return False;
}
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellRenderer(result);
+ resultobj = wxPyMake_wxGridCellRenderer(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxObject(result);
+ resultobj = wxPyMake_wxObject(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellAttr(result);
+ resultobj = wxPyMake_wxGridCellAttr(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellEditor(result);
+ resultobj = wxPyMake_wxGridCellEditor(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellAttr(result);
+ resultobj = wxPyMake_wxGridCellAttr(result, 1);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellAttr(result);
+ resultobj = wxPyMake_wxGridCellAttr(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellRenderer(result);
+ resultobj = wxPyMake_wxGridCellRenderer(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellEditor(result);
+ resultobj = wxPyMake_wxGridCellEditor(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellAttrProvider(result);
+ resultobj = wxPyMake_wxGridCellAttrProvider(result, 1);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellAttr(result);
+ resultobj = wxPyMake_wxGridCellAttr(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellAttr(result);
+ resultobj = wxPyMake_wxGridCellAttr(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellAttrProvider(result);
+ resultobj = wxPyMake_wxGridCellAttrProvider(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxObject(result);
+ resultobj = wxPyMake_wxObject(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellAttr(result);
+ resultobj = wxPyMake_wxGridCellAttr(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellAttr(result);
+ resultobj = wxPyMake_wxGridCellAttr(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridTableBase(result);
+ resultobj = wxPyMake_wxGridTableBase(result, 0);
}
return resultobj;
fail:
result = (wxGrid *)new wxGrid(arg1,arg2,(wxPoint const &)*arg3,(wxSize const &)*arg4,arg5,(wxString const &)*arg6);
wxPyEndAllowThreads(__tstate);
- if (PyErr_Occurred()) SWIG_fail;
- }
- {
- resultobj = wxPyMake_wxObject(result);
+ if (PyErr_Occurred()) SWIG_fail;
}
+ resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGrid, 1);
{
if (temp6)
delete arg6;
result = (wxGrid *)new wxGrid();
wxPyEndAllowThreads(__tstate);
- if (PyErr_Occurred()) SWIG_fail;
- }
- {
- resultobj = wxPyMake_wxObject(result);
+ if (PyErr_Occurred()) SWIG_fail;
}
+ resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGrid, 1);
return resultobj;
fail:
return NULL;
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridTableBase(result);
+ resultobj = wxPyMake_wxGridTableBase(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellRenderer(result);
+ resultobj = wxPyMake_wxGridCellRenderer(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellRenderer(result);
+ resultobj = wxPyMake_wxGridCellRenderer(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellEditor(result);
+ resultobj = wxPyMake_wxGridCellEditor(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellEditor(result);
+ resultobj = wxPyMake_wxGridCellEditor(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellEditor(result);
+ resultobj = wxPyMake_wxGridCellEditor(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellRenderer(result);
+ resultobj = wxPyMake_wxGridCellRenderer(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellEditor(result);
+ resultobj = wxPyMake_wxGridCellEditor(result, 0);
}
{
if (temp2)
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxGridCellRenderer(result);
+ resultobj = wxPyMake_wxGridCellRenderer(result, 0);
}
{
if (temp2)
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxObject(result);
+ resultobj = wxPyMake_wxObject(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxObject(result);
+ resultobj = wxPyMake_wxObject(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxObject(result);
+ resultobj = wxPyMake_wxObject(result, 0);
}
return resultobj;
fail:
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxObject(result);
+ resultobj = wxPyMake_wxObject(result, 0);
}
return resultobj;
fail:
result = wxGrid::GetClassDefaultAttributes((wxWindowVariant )arg1);
wxPyEndAllowThreads(__tstate);
- if (PyErr_Occurred()) SWIG_fail;
+ if (PyErr_Occurred()) SWIG_fail;
}
{
wxVisualAttributes * resultptr;
if (PyErr_Occurred()) SWIG_fail;
}
{
- resultobj = wxPyMake_wxObject(result);
+ resultobj = wxPyMake_wxObject(result, 0);
}
return resultobj;
fail:
PyDict_SetItemString(d,"GRID_VALUE_DATETIME", SWIG_FromCharPtr("datetime"));
SWIG_addvarlink(SWIG_globals,(char*)"GridNoCellCoords",_wrap_GridNoCellCoords_get, _wrap_GridNoCellCoords_set);
SWIG_addvarlink(SWIG_globals,(char*)"GridNoCellRect",_wrap_GridNoCellRect_get, _wrap_GridNoCellRect_set);
+ PyDict_SetItemString(d,"GRID_DEFAULT_NUMBER_ROWS", SWIG_FromInt((int)wxGRID_DEFAULT_NUMBER_ROWS));
+ PyDict_SetItemString(d,"GRID_DEFAULT_NUMBER_COLS", SWIG_FromInt((int)wxGRID_DEFAULT_NUMBER_COLS));
+ PyDict_SetItemString(d,"GRID_DEFAULT_ROW_HEIGHT", SWIG_FromInt((int)wxGRID_DEFAULT_ROW_HEIGHT));
+ PyDict_SetItemString(d,"GRID_DEFAULT_COL_WIDTH", SWIG_FromInt((int)wxGRID_DEFAULT_COL_WIDTH));
+ PyDict_SetItemString(d,"GRID_DEFAULT_COL_LABEL_HEIGHT", SWIG_FromInt((int)wxGRID_DEFAULT_COL_LABEL_HEIGHT));
+ PyDict_SetItemString(d,"GRID_DEFAULT_ROW_LABEL_WIDTH", SWIG_FromInt((int)wxGRID_DEFAULT_ROW_LABEL_WIDTH));
+ PyDict_SetItemString(d,"GRID_LABEL_EDGE_ZONE", SWIG_FromInt((int)wxGRID_LABEL_EDGE_ZONE));
+ PyDict_SetItemString(d,"GRID_MIN_ROW_HEIGHT", SWIG_FromInt((int)wxGRID_MIN_ROW_HEIGHT));
+ PyDict_SetItemString(d,"GRID_MIN_COL_WIDTH", SWIG_FromInt((int)wxGRID_MIN_COL_WIDTH));
+ PyDict_SetItemString(d,"GRID_DEFAULT_SCROLLBAR_WIDTH", SWIG_FromInt((int)wxGRID_DEFAULT_SCROLLBAR_WIDTH));
PyDict_SetItemString(d,"GridCellAttr_Any", SWIG_FromInt((int)wxGridCellAttr::Any));
PyDict_SetItemString(d,"GridCellAttr_Default", SWIG_FromInt((int)wxGridCellAttr::Default));
PyDict_SetItemString(d,"GridCellAttr_Cell", SWIG_FromInt((int)wxGridCellAttr::Cell));