wxPy_END_ALLOW_THREADS;
}{
- _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
+ _resultobj = PyString_FromStringAndSize(_result->c_str(), _result->Len());
}
{
if (_obj1)
wxPy_END_ALLOW_THREADS;
}{
- _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
+ _resultobj = PyString_FromStringAndSize(_result->c_str(), _result->Len());
}
return _resultobj;
}
wxListItem* info = new wxListItem;
info->m_itemId = itemId;
info->m_col = col;
+ info->m_mask = 0xFFFF;
self->GetItem(*info);
return info;
}
wxPy_END_ALLOW_THREADS;
}{
- _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+ _resultobj = PyString_FromStringAndSize(_result->c_str(), _result->Len());
}
{
delete _result;
wxPy_END_ALLOW_THREADS;
}{
- _resultobj = PyString_FromString(WXSTRINGCAST (*_result));
+ _resultobj = PyString_FromStringAndSize(_result->c_str(), _result->Len());
}
return _resultobj;
}
wxPy_END_ALLOW_THREADS;
}{
- _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+ _resultobj = PyString_FromStringAndSize(_result->c_str(), _result->Len());
}
{
delete _result;
return _resultobj;
}
-#define wxTreeCtrl_GetItemImage(_swigobj,_swigarg0) (_swigobj->GetItemImage(_swigarg0))
+#define wxTreeCtrl_GetItemImage(_swigobj,_swigarg0,_swigarg1) (_swigobj->GetItemImage(_swigarg0,_swigarg1))
static PyObject *_wrap_wxTreeCtrl_GetItemImage(PyObject *self, PyObject *args, PyObject *kwargs) {
PyObject * _resultobj;
int _result;
wxTreeCtrl * _arg0;
wxTreeItemId * _arg1;
+ wxTreeItemIcon _arg2 = (wxTreeItemIcon ) (wxTreeItemIcon_Normal);
PyObject * _argo0 = 0;
PyObject * _argo1 = 0;
- char *_kwnames[] = { "self","item", NULL };
+ char *_kwnames[] = { "self","item","which", NULL };
self = self;
- if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxTreeCtrl_GetItemImage",_kwnames,&_argo0,&_argo1))
+ if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO|i:wxTreeCtrl_GetItemImage",_kwnames,&_argo0,&_argo1,&_arg2))
return NULL;
if (_argo0) {
if (_argo0 == Py_None) { _arg0 = NULL; }
}
{
wxPy_BEGIN_ALLOW_THREADS;
- _result = (int )wxTreeCtrl_GetItemImage(_arg0,*_arg1);
+ _result = (int )wxTreeCtrl_GetItemImage(_arg0,*_arg1,_arg2);
wxPy_END_ALLOW_THREADS;
} _resultobj = Py_BuildValue("i",_result);
return _resultobj;
}
-#define wxTreeCtrl_SetItemImage(_swigobj,_swigarg0,_swigarg1) (_swigobj->SetItemImage(_swigarg0,_swigarg1))
+#define wxTreeCtrl_SetItemImage(_swigobj,_swigarg0,_swigarg1,_swigarg2) (_swigobj->SetItemImage(_swigarg0,_swigarg1,_swigarg2))
static PyObject *_wrap_wxTreeCtrl_SetItemImage(PyObject *self, PyObject *args, PyObject *kwargs) {
PyObject * _resultobj;
wxTreeCtrl * _arg0;
wxTreeItemId * _arg1;
int _arg2;
+ wxTreeItemIcon _arg3 = (wxTreeItemIcon ) (wxTreeItemIcon_Normal);
PyObject * _argo0 = 0;
PyObject * _argo1 = 0;
- char *_kwnames[] = { "self","item","image", NULL };
+ char *_kwnames[] = { "self","item","image","which", NULL };
self = self;
- if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOi:wxTreeCtrl_SetItemImage",_kwnames,&_argo0,&_argo1,&_arg2))
+ if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOi|i:wxTreeCtrl_SetItemImage",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3))
return NULL;
if (_argo0) {
if (_argo0 == Py_None) { _arg0 = NULL; }
}
{
wxPy_BEGIN_ALLOW_THREADS;
- wxTreeCtrl_SetItemImage(_arg0,*_arg1,_arg2);
+ wxTreeCtrl_SetItemImage(_arg0,*_arg1,_arg2,_arg3);
wxPy_END_ALLOW_THREADS;
} Py_INCREF(Py_None);
return _resultobj;
}
-#define wxTreeCtrl_GetParent(_swigobj,_swigarg0) (_swigobj->GetParent(_swigarg0))
-static PyObject *_wrap_wxTreeCtrl_GetParent(PyObject *self, PyObject *args, PyObject *kwargs) {
+#define wxTreeCtrl_GetItemParent(_swigobj,_swigarg0) (_swigobj->GetParent(_swigarg0))
+static PyObject *_wrap_wxTreeCtrl_GetItemParent(PyObject *self, PyObject *args, PyObject *kwargs) {
PyObject * _resultobj;
wxTreeItemId * _result;
wxTreeCtrl * _arg0;
char _ptemp[128];
self = self;
- if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxTreeCtrl_GetParent",_kwnames,&_argo0,&_argo1))
+ if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxTreeCtrl_GetItemParent",_kwnames,&_argo0,&_argo1))
return NULL;
if (_argo0) {
if (_argo0 == Py_None) { _arg0 = NULL; }
else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxTreeCtrl_p")) {
- PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_GetParent. Expected _wxTreeCtrl_p.");
+ PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_GetItemParent. Expected _wxTreeCtrl_p.");
return NULL;
}
}
if (_argo1) {
if (_argo1 == Py_None) { _arg1 = NULL; }
else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxTreeItemId_p")) {
- PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_GetParent. Expected _wxTreeItemId_p.");
+ PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_GetItemParent. Expected _wxTreeItemId_p.");
return NULL;
}
}
{
wxPy_BEGIN_ALLOW_THREADS;
- _result = new wxTreeItemId (wxTreeCtrl_GetParent(_arg0,*_arg1));
+ _result = new wxTreeItemId (wxTreeCtrl_GetItemParent(_arg0,*_arg1));
wxPy_END_ALLOW_THREADS;
} SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
}
static PyObject * wxTreeCtrl_GetSelections(wxTreeCtrl *self) {
+ bool doSave = wxPyRestoreThread();
PyObject* rval = PyList_New(0);
wxArrayTreeItemIds array;
size_t num, x;
"wxTreeItemId");
PyList_Append(rval, item);
}
+ wxPySaveThread(doSave);
return rval;
}
static PyObject *_wrap_wxTreeCtrl_GetSelections(PyObject *self, PyObject *args, PyObject *kwargs) {
return _resultobj;
}
-#define wxTreeCtrl_HitTest(_swigobj,_swigarg0) (_swigobj->HitTest(_swigarg0))
+#define wxTreeCtrl_HitTest(_swigobj,_swigarg0,_swigarg1) (_swigobj->HitTest(_swigarg0,_swigarg1))
static PyObject *_wrap_wxTreeCtrl_HitTest(PyObject *self, PyObject *args, PyObject *kwargs) {
PyObject * _resultobj;
wxTreeItemId * _result;
wxTreeCtrl * _arg0;
wxPoint * _arg1;
+ int * _arg2;
+ int temp;
PyObject * _argo0 = 0;
- wxPoint temp;
+ wxPoint temp0;
PyObject * _obj1 = 0;
char *_kwnames[] = { "self","point", NULL };
char _ptemp[128];
self = self;
+{
+ _arg2 = &temp;
+}
if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxTreeCtrl_HitTest",_kwnames,&_argo0,&_obj1))
return NULL;
if (_argo0) {
}
}
{
- _arg1 = &temp;
+ _arg1 = &temp0;
if (! wxPoint_helper(_obj1, &_arg1))
return NULL;
}
{
wxPy_BEGIN_ALLOW_THREADS;
- _result = new wxTreeItemId (wxTreeCtrl_HitTest(_arg0,*_arg1));
+ _result = new wxTreeItemId (wxTreeCtrl_HitTest(_arg0,*_arg1,*_arg2));
wxPy_END_ALLOW_THREADS;
} SWIG_MakePtr(_ptemp, (void *) _result,"_wxTreeItemId_p");
_resultobj = Py_BuildValue("s",_ptemp);
+{
+ PyObject *o;
+ o = PyInt_FromLong((long) (*_arg2));
+ _resultobj = t_output_helper(_resultobj, o);
+}
+ return _resultobj;
+}
+
+#define wxTreeCtrl_SetItemTextColour(_swigobj,_swigarg0,_swigarg1) (_swigobj->SetItemTextColour(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxTreeCtrl_SetItemTextColour(PyObject *self, PyObject *args, PyObject *kwargs) {
+ PyObject * _resultobj;
+ wxTreeCtrl * _arg0;
+ wxTreeItemId * _arg1;
+ wxColour * _arg2;
+ PyObject * _argo0 = 0;
+ PyObject * _argo1 = 0;
+ PyObject * _argo2 = 0;
+ char *_kwnames[] = { "self","item","col", NULL };
+
+ self = self;
+ if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxTreeCtrl_SetItemTextColour",_kwnames,&_argo0,&_argo1,&_argo2))
+ return NULL;
+ if (_argo0) {
+ if (_argo0 == Py_None) { _arg0 = NULL; }
+ else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxTreeCtrl_p")) {
+ PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_SetItemTextColour. Expected _wxTreeCtrl_p.");
+ return NULL;
+ }
+ }
+ if (_argo1) {
+ if (_argo1 == Py_None) { _arg1 = NULL; }
+ else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxTreeItemId_p")) {
+ PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_SetItemTextColour. Expected _wxTreeItemId_p.");
+ return NULL;
+ }
+ }
+ if (_argo2) {
+ if (_argo2 == Py_None) { _arg2 = NULL; }
+ else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxColour_p")) {
+ PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxTreeCtrl_SetItemTextColour. Expected _wxColour_p.");
+ return NULL;
+ }
+ }
+{
+ wxPy_BEGIN_ALLOW_THREADS;
+ wxTreeCtrl_SetItemTextColour(_arg0,*_arg1,*_arg2);
+
+ wxPy_END_ALLOW_THREADS;
+} Py_INCREF(Py_None);
+ _resultobj = Py_None;
+ return _resultobj;
+}
+
+#define wxTreeCtrl_SetItemBackgroundColour(_swigobj,_swigarg0,_swigarg1) (_swigobj->SetItemBackgroundColour(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxTreeCtrl_SetItemBackgroundColour(PyObject *self, PyObject *args, PyObject *kwargs) {
+ PyObject * _resultobj;
+ wxTreeCtrl * _arg0;
+ wxTreeItemId * _arg1;
+ wxColour * _arg2;
+ PyObject * _argo0 = 0;
+ PyObject * _argo1 = 0;
+ PyObject * _argo2 = 0;
+ char *_kwnames[] = { "self","item","col", NULL };
+
+ self = self;
+ if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxTreeCtrl_SetItemBackgroundColour",_kwnames,&_argo0,&_argo1,&_argo2))
+ return NULL;
+ if (_argo0) {
+ if (_argo0 == Py_None) { _arg0 = NULL; }
+ else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxTreeCtrl_p")) {
+ PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_SetItemBackgroundColour. Expected _wxTreeCtrl_p.");
+ return NULL;
+ }
+ }
+ if (_argo1) {
+ if (_argo1 == Py_None) { _arg1 = NULL; }
+ else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxTreeItemId_p")) {
+ PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_SetItemBackgroundColour. Expected _wxTreeItemId_p.");
+ return NULL;
+ }
+ }
+ if (_argo2) {
+ if (_argo2 == Py_None) { _arg2 = NULL; }
+ else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxColour_p")) {
+ PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxTreeCtrl_SetItemBackgroundColour. Expected _wxColour_p.");
+ return NULL;
+ }
+ }
+{
+ wxPy_BEGIN_ALLOW_THREADS;
+ wxTreeCtrl_SetItemBackgroundColour(_arg0,*_arg1,*_arg2);
+
+ wxPy_END_ALLOW_THREADS;
+} Py_INCREF(Py_None);
+ _resultobj = Py_None;
+ return _resultobj;
+}
+
+#define wxTreeCtrl_SetItemFont(_swigobj,_swigarg0,_swigarg1) (_swigobj->SetItemFont(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxTreeCtrl_SetItemFont(PyObject *self, PyObject *args, PyObject *kwargs) {
+ PyObject * _resultobj;
+ wxTreeCtrl * _arg0;
+ wxTreeItemId * _arg1;
+ wxFont * _arg2;
+ PyObject * _argo0 = 0;
+ PyObject * _argo1 = 0;
+ PyObject * _argo2 = 0;
+ char *_kwnames[] = { "self","item","font", NULL };
+
+ self = self;
+ if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxTreeCtrl_SetItemFont",_kwnames,&_argo0,&_argo1,&_argo2))
+ return NULL;
+ if (_argo0) {
+ if (_argo0 == Py_None) { _arg0 = NULL; }
+ else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxTreeCtrl_p")) {
+ PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTreeCtrl_SetItemFont. Expected _wxTreeCtrl_p.");
+ return NULL;
+ }
+ }
+ if (_argo1) {
+ if (_argo1 == Py_None) { _arg1 = NULL; }
+ else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxTreeItemId_p")) {
+ PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxTreeCtrl_SetItemFont. Expected _wxTreeItemId_p.");
+ return NULL;
+ }
+ }
+ if (_argo2) {
+ if (_argo2 == Py_None) { _arg2 = NULL; }
+ else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxFont_p")) {
+ PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxTreeCtrl_SetItemFont. Expected _wxFont_p.");
+ return NULL;
+ }
+ }
+{
+ wxPy_BEGIN_ALLOW_THREADS;
+ wxTreeCtrl_SetItemFont(_arg0,*_arg1,*_arg2);
+
+ wxPy_END_ALLOW_THREADS;
+} Py_INCREF(Py_None);
+ _resultobj = Py_None;
return _resultobj;
}
static PyMethodDef controls2cMethods[] = {
+ { "wxTreeCtrl_SetItemFont", (PyCFunction) _wrap_wxTreeCtrl_SetItemFont, METH_VARARGS | METH_KEYWORDS },
+ { "wxTreeCtrl_SetItemBackgroundColour", (PyCFunction) _wrap_wxTreeCtrl_SetItemBackgroundColour, METH_VARARGS | METH_KEYWORDS },
+ { "wxTreeCtrl_SetItemTextColour", (PyCFunction) _wrap_wxTreeCtrl_SetItemTextColour, METH_VARARGS | METH_KEYWORDS },
{ "wxTreeCtrl_HitTest", (PyCFunction) _wrap_wxTreeCtrl_HitTest, METH_VARARGS | METH_KEYWORDS },
{ "wxTreeCtrl_IsBold", (PyCFunction) _wrap_wxTreeCtrl_IsBold, METH_VARARGS | METH_KEYWORDS },
{ "wxTreeCtrl_SetItemBold", (PyCFunction) _wrap_wxTreeCtrl_SetItemBold, METH_VARARGS | METH_KEYWORDS },
{ "wxTreeCtrl_GetFirstChild", (PyCFunction) _wrap_wxTreeCtrl_GetFirstChild, METH_VARARGS | METH_KEYWORDS },
{ "wxTreeCtrl_GetChildrenCount", (PyCFunction) _wrap_wxTreeCtrl_GetChildrenCount, METH_VARARGS | METH_KEYWORDS },
{ "wxTreeCtrl_GetSelections", (PyCFunction) _wrap_wxTreeCtrl_GetSelections, METH_VARARGS | METH_KEYWORDS },
- { "wxTreeCtrl_GetParent", (PyCFunction) _wrap_wxTreeCtrl_GetParent, METH_VARARGS | METH_KEYWORDS },
+ { "wxTreeCtrl_GetItemParent", (PyCFunction) _wrap_wxTreeCtrl_GetItemParent, METH_VARARGS | METH_KEYWORDS },
{ "wxTreeCtrl_GetSelection", (PyCFunction) _wrap_wxTreeCtrl_GetSelection, METH_VARARGS | METH_KEYWORDS },
{ "wxTreeCtrl_GetRootItem", (PyCFunction) _wrap_wxTreeCtrl_GetRootItem, METH_VARARGS | METH_KEYWORDS },
{ "wxTreeCtrl_IsSelected", (PyCFunction) _wrap_wxTreeCtrl_IsSelected, METH_VARARGS | METH_KEYWORDS },
{ "_wxPyDropSource","_class_wxPyDropSource",0},
{ "_wxChoice","_class_wxChoice",0},
{ "_wxSlider","_class_wxSlider",0},
- { "_long","_wxDash",0},
{ "_long","_unsigned_long",0},
{ "_long","_signed_long",0},
{ "_wxImageList","_class_wxImageList",0},
{ "_class_wxButton","_wxButton",0},
{ "_wxRadioBox","_class_wxRadioBox",0},
{ "_wxBitmap","_class_wxBitmap",0},
+ { "_char","_wxDash",0},
{ "_wxPyTimer","_class_wxPyTimer",0},
{ "_wxWindowDC","_class_wxWindowDC",0},
{ "_wxScrollBar","_class_wxScrollBar",0},
{ "_wxFont","_class_wxFont",0},
{ "_class_wxPyDropTarget","_wxPyDropTarget",0},
{ "_wxCloseEvent","_class_wxCloseEvent",0},
- { "_unsigned_long","_wxDash",0},
{ "_unsigned_long","_long",0},
{ "_class_wxRect","_wxRect",0},
{ "_class_wxDC","_wxDC",0},
{ "_wxEvtHandler","_class_wxEvtHandler",0},
{ "_wxMenuItem","_class_wxMenuItem",0},
{ "_class_wxScrollBar","_wxScrollBar",0},
- { "_wxDash","_unsigned_long",0},
- { "_wxDash","_long",0},
+ { "_wxDash","_char",0},
{ "_class_wxScrolledWindow","_wxScrolledWindow",0},
{ "_wxKeyEvent","_class_wxKeyEvent",0},
{ "_wxMoveEvent","_class_wxMoveEvent",0},
PyDict_SetItemString(d,"wxLIST_FIND_DOWN", PyInt_FromLong((long) wxLIST_FIND_DOWN));
PyDict_SetItemString(d,"wxLIST_FIND_LEFT", PyInt_FromLong((long) wxLIST_FIND_LEFT));
PyDict_SetItemString(d,"wxLIST_FIND_RIGHT", PyInt_FromLong((long) wxLIST_FIND_RIGHT));
+ PyDict_SetItemString(d,"wxTreeItemIcon_Normal", PyInt_FromLong((long) wxTreeItemIcon_Normal));
+ PyDict_SetItemString(d,"wxTreeItemIcon_Selected", PyInt_FromLong((long) wxTreeItemIcon_Selected));
+ PyDict_SetItemString(d,"wxTreeItemIcon_Expanded", PyInt_FromLong((long) wxTreeItemIcon_Expanded));
+ PyDict_SetItemString(d,"wxTreeItemIcon_SelectedExpanded", PyInt_FromLong((long) wxTreeItemIcon_SelectedExpanded));
+ PyDict_SetItemString(d,"wxTreeItemIcon_Max", PyInt_FromLong((long) wxTreeItemIcon_Max));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_ABOVE", PyInt_FromLong((long) wxTREE_HITTEST_ABOVE));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_BELOW", PyInt_FromLong((long) wxTREE_HITTEST_BELOW));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_NOWHERE", PyInt_FromLong((long) wxTREE_HITTEST_NOWHERE));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_ONITEMBUTTON", PyInt_FromLong((long) wxTREE_HITTEST_ONITEMBUTTON));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_ONITEMICON", PyInt_FromLong((long) wxTREE_HITTEST_ONITEMICON));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_ONITEMINDENT", PyInt_FromLong((long) wxTREE_HITTEST_ONITEMINDENT));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_ONITEMLABEL", PyInt_FromLong((long) wxTREE_HITTEST_ONITEMLABEL));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_ONITEMRIGHT", PyInt_FromLong((long) wxTREE_HITTEST_ONITEMRIGHT));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_ONITEMSTATEICON", PyInt_FromLong((long) wxTREE_HITTEST_ONITEMSTATEICON));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_TOLEFT", PyInt_FromLong((long) wxTREE_HITTEST_TOLEFT));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_TORIGHT", PyInt_FromLong((long) wxTREE_HITTEST_TORIGHT));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_ONITEMUPPERPART", PyInt_FromLong((long) wxTREE_HITTEST_ONITEMUPPERPART));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_ONITEMLOWERPART", PyInt_FromLong((long) wxTREE_HITTEST_ONITEMLOWERPART));
+ PyDict_SetItemString(d,"wxTREE_HITTEST_ONITEM", PyInt_FromLong((long) wxTREE_HITTEST_ONITEM));
{
int i;
for (i = 0; _swig_mapping[i].n1; i++)