Added a typemap that converts the references returned for some GDI
objects (Brush, Pen, Font, etc.) into copies, (taking advantage of the copy-on-write capabilities of the C++ class.) This is to work around an issue where getting a GDI object changing it and setting it back to the DC would trigger an incorrect optimization. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26044 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
36c8c4718a
commit
d19a83a5ac
@ -271,6 +271,22 @@
|
||||
%typemap(out) bool "$result = $1 ? Py_True : Py_False; Py_INCREF($result);"
|
||||
|
||||
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Typemap for when GDI objects are returned by reference. This will cause a
|
||||
// copy to be made instead of returning a reference to the same instance. The
|
||||
// GDI object's internal refcounting scheme will do a copy-on-write of the
|
||||
// internal data as needed.
|
||||
|
||||
// These too?
|
||||
//, wxRegion&, wxPalette&
|
||||
|
||||
%typemap(out) wxBrush&, wxPen&, wxFont&, wxBitmap&, wxIcon&, wxCursor& {
|
||||
$*1_ltype* resultptr = new $*1_ltype(*$1);
|
||||
$result = SWIG_NewPointerObj((void*)(resultptr), $1_descriptor, 1);
|
||||
}
|
||||
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Typemaps to convert return values that are base class pointers
|
||||
// to the real derived type, if possible. See wxPyMake_wxObject in
|
||||
|
Loading…
Reference in New Issue
Block a user