Since I have made several changes to SWIG over the years to accomodate
special cases and other things in wxPython, and since I plan on making several more, I've decided to put the SWIG sources in wxPython's CVS instead of relying on maintaining patches. This effectivly becomes a fork of an obsolete version of SWIG, :-( but since SWIG 1.3 still doesn't have some things I rely on in 1.1, not to mention that my custom patches would all have to be redone, I felt that this is the easier road to take. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15307 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
56
wxPython/wxSWIG/swig_lib/objc.i
Normal file
56
wxPython/wxSWIG/swig_lib/objc.i
Normal file
@@ -0,0 +1,56 @@
|
||||
// SWIG Objective-C configuration file
|
||||
// Dave Beazley
|
||||
// Copyright (C) 1997
|
||||
|
||||
// This file provides support to Objective-C parsing and
|
||||
// should be included with just about any Objective-C module
|
||||
|
||||
// Base Object class
|
||||
|
||||
@interface Object { }
|
||||
|
||||
-(char *) name; // Get object name
|
||||
|
||||
@end
|
||||
|
||||
typedef Object *id; // Make 'id' behave like any other "Object"
|
||||
|
||||
// Typemaps to make *id work like kind of like a void pointer
|
||||
|
||||
%typemap(python,in) id {
|
||||
char *temp;
|
||||
if (!PyString_Check($source)) {
|
||||
PyErr_SetString(PyExc_TypeError,"Expecting an 'id' in argument $argnum of $name");
|
||||
return NULL;
|
||||
}
|
||||
temp = PyString_AsString($source);
|
||||
if (SWIG_GetPtr(temp, (void **) &$target, 0)) {
|
||||
PyErr_SetString(PyExc_TypeError,"Expecting an 'id' in argument $argnum of $name");
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
%typemap(tcl,in) id {
|
||||
if (SWIG_GetPtr($source,(void **) &$target, 0)) {
|
||||
Tcl_SetResult(interp,"Expecting an 'id' in argument $argnum of $name",TCL_STATIC);
|
||||
return TCL_ERROR;
|
||||
}
|
||||
}
|
||||
|
||||
%typemap(tcl8,in) id {
|
||||
if (SWIG_GetPointerObj(interp, $source, (void **) &$target, 0)) {
|
||||
Tcl_SetStringObj(result_obj, "Expecting an 'id' in argument $argnum of $name");
|
||||
}
|
||||
}
|
||||
|
||||
%typemap(perl5,in) id {
|
||||
if (SWIG_GetPtr($source, (void **) &$target, 0)) {
|
||||
croak("Expecting an 'id' in argument $argnum of $name");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user