wxWidgets/wxPython/contrib/ogl/_ogldefs.i
Robin Dunn 6d450e1a20 Since the wxPyMake_wxObject typemap is also used for constructors we
need to allow it to use the $owner value to specify if the thisown
attribute shoudl be set to true.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28110 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-06-30 20:12:14 +00:00

97 lines
3.2 KiB
OpenEdge ABL

/////////////////////////////////////////////////////////////////////////////
// Name: _ogldefs.i
// Purpose: SWIG definitions for the wxWindows Object Graphics Library
//
// Author: Robin Dunn
//
// Created: 27-Aug-1999
// RCS-ID: $Id$
// Copyright: (c) 1998 by Total Control Software
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
//---------------------------------------------------------------------------
// Typemaps just for OGL
// OOR Support
%typemap(out) wxPyShape* { $result = wxPyMake_wxShapeEvtHandler($1, $owner); }
%typemap(out) wxPyShapeEvtHandler* { $result = wxPyMake_wxShapeEvtHandler($1, $owner); }
%typemap(out) wxPyDivisionShape* { $result = wxPyMake_wxShapeEvtHandler($1, $owner); }
%typemap(out) wxPyShapeCanvas* { $result = wxPyMake_wxObject($1, $owner); }
%typemap(out) wxDiagram* { $result = wxPyMake_wxObject($1, $owner); }
%typemap(out) wxOGLConstraint* { $result = wxPyMake_wxObject($1, $owner); }
%typemap(out) wxPseudoMetaFile* { $result = wxPyMake_wxObject($1, $owner); }
%typemap(out) wxArrowHead* { $result = wxPyMake_wxObject($1, $owner); }
// wxOGL doesn't use a ref-counted copy of pens and brushes, so we'll
// use the pen and brush lists to simulate that...
%typemap(in) wxPen* {
wxPen* temp;
if ($input) {
if ($input == Py_None) { temp = NULL; }
else if (! wxPyConvertSwigPtr($input, (void **) &temp, wxT("wxPen"))) {
PyErr_SetString(PyExc_TypeError, "Type error, expected wxPen.");
return NULL;
}
}
if (temp)
$1 = wxThePenList->FindOrCreatePen(temp->GetColour(),
temp->GetWidth(),
temp->GetStyle());
else
$1 = NULL;
}
%typemap(in) wxBrush* {
wxBrush* temp;
if ($input) {
if ($input == Py_None) { temp = NULL; }
else if (! wxPyConvertSwigPtr($input, (void **) &temp, wxT("wxBrush"))) {
PyErr_SetString(PyExc_TypeError, "Type error, expected wxBrush.");
return NULL;
}
}
if (temp)
$1 = wxTheBrushList->FindOrCreateBrush(temp->GetColour(), temp->GetStyle());
else
$1 = NULL;
}
%typemap(in) wxFont* {
wxFont* temp;
if ($input) {
if ($input == Py_None) { temp = NULL; }
else if (! wxPyConvertSwigPtr($input, (void **) &temp, wxT("wxFont"))) {
PyErr_SetString(PyExc_TypeError, "Type error, expected wxFont.");
return NULL;
}
}
if (temp)
$1 = wxTheFontList->FindOrCreateFont(temp->GetPointSize(),
temp->GetFamily(),
temp->GetStyle(),
temp->GetWeight(),
temp->GetUnderlined(),
temp->GetFaceName(),
temp->GetEncoding());
else
$1 = NULL;
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------