]> git.saurik.com Git - wxWidgets.git/commitdiff
Removing old iewin extension. Replaced by activex/wxie.
authorKevin Ollivier <kevino@theolliviers.com>
Tue, 20 Dec 2005 05:37:59 +0000 (05:37 +0000)
committerKevin Ollivier <kevino@theolliviers.com>
Tue, 20 Dec 2005 05:37:59 +0000 (05:37 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

12 files changed:
wxPython/contrib/iewin/.cvsignore [deleted file]
wxPython/contrib/iewin/IEHtmlWin.cpp [deleted file]
wxPython/contrib/iewin/IEHtmlWin.h [deleted file]
wxPython/contrib/iewin/_iewin_rename.i [deleted file]
wxPython/contrib/iewin/_iewin_reverse.txt [deleted file]
wxPython/contrib/iewin/_iewinextras.py [deleted file]
wxPython/contrib/iewin/iewin.i [deleted file]
wxPython/contrib/iewin/iewin.py [deleted file]
wxPython/contrib/iewin/iewin_wrap.cpp [deleted file]
wxPython/contrib/iewin/readme.txt [deleted file]
wxPython/contrib/iewin/wxactivex.cpp [deleted file]
wxPython/contrib/iewin/wxactivex.h [deleted file]

diff --git a/wxPython/contrib/iewin/.cvsignore b/wxPython/contrib/iewin/.cvsignore
deleted file mode 100644 (file)
index dcc2780..0000000
+++ /dev/null
@@ -1 +0,0 @@
-orig
diff --git a/wxPython/contrib/iewin/IEHtmlWin.cpp b/wxPython/contrib/iewin/IEHtmlWin.cpp
deleted file mode 100644 (file)
index b098197..0000000
+++ /dev/null
@@ -1,585 +0,0 @@
-#include "IEHtmlWin.h"
-#include <wx/strconv.h>
-#include <wx/string.h>
-#include <wx/event.h>
-#include <wx/listctrl.h>
-#include <wx/mstream.h>
-#include <oleidl.h>
-#include <winerror.h>
-#include <exdispid.h>
-#include <exdisp.h>
-#include <olectl.h>
-#include <Mshtml.h>
-#include <sstream>
-using namespace std;
-
-DEFINE_EVENT_TYPE(wxEVT_COMMAND_MSHTML_BEFORENAVIGATE2)
-DEFINE_EVENT_TYPE(wxEVT_COMMAND_MSHTML_NEWWINDOW2)
-DEFINE_EVENT_TYPE(wxEVT_COMMAND_MSHTML_DOCUMENTCOMPLETE)
-DEFINE_EVENT_TYPE(wxEVT_COMMAND_MSHTML_PROGRESSCHANGE)
-DEFINE_EVENT_TYPE(wxEVT_COMMAND_MSHTML_STATUSTEXTCHANGE)
-DEFINE_EVENT_TYPE(wxEVT_COMMAND_MSHTML_TITLECHANGE)
-
-IMPLEMENT_DYNAMIC_CLASS(wxMSHTMLEvent, wxNotifyEvent)
-
-
-//////////////////////////////////////////////////////////////////////
-BEGIN_EVENT_TABLE(wxIEHtmlWin, wxActiveX)
-END_EVENT_TABLE()
-
-class FS_DWebBrowserEvents2 : public IDispatch
-{
-private:
-    DECLARE_OLE_UNKNOWN(FS_DWebBrowserEvents2);
-
-
-    wxIEHtmlWin *m_iewin;
-
-public:
-    FS_DWebBrowserEvents2(wxIEHtmlWin *iewin) : m_iewin(iewin) {}
-       virtual ~FS_DWebBrowserEvents2()
-    {
-    }
-
-       //IDispatch
-       STDMETHODIMP GetIDsOfNames(REFIID r, OLECHAR** o, unsigned int i, LCID l, DISPID* d)
-       {
-        return E_NOTIMPL;
-    };
-
-       STDMETHODIMP GetTypeInfo(unsigned int i, LCID l, ITypeInfo** t)
-       {
-        return E_NOTIMPL;
-    };
-
-       STDMETHODIMP GetTypeInfoCount(unsigned int* i)
-       {
-        return E_NOTIMPL;
-    };
-
-       void Post(WXTYPE etype, wxString text, long l1 = 0, long l2 = 0)
-       {
-               if (! m_iewin || ! m_iewin->GetParent())
-                       return;
-
-               wxMSHTMLEvent event;
-               event.SetId(m_iewin->GetId());
-               event.SetEventType(etype);
-               event.m_text1 = text;
-               event.m_long1 = l1;
-               event.m_long2 = l2;
-
-               m_iewin->GetParent()->AddPendingEvent(event);
-       };
-
-       bool Process(WXTYPE etype, wxString text = wxEmptyString, long l1 = 0, long l2 = 0)
-       {
-               if (! m_iewin || ! m_iewin->GetParent())
-                       return true;
-
-               wxMSHTMLEvent event;
-               event.SetId(m_iewin->GetId());
-               event.SetEventType(etype);
-               event.m_text1 = text;
-               event.m_long1 = l1;
-               event.m_long2 = l2;
-
-               m_iewin->GetParent()->ProcessEvent(event);
-
-               return event.IsAllowed();
-       };
-
-       wxString GetStrArg(VARIANT& v)
-       {
-               VARTYPE vt = v.vt & ~VT_BYREF;
-
-               if (vt == VT_VARIANT)
-                       return GetStrArg(*v.pvarVal);
-               else if (vt == VT_BSTR)
-               {
-                       if (v.vt & VT_BYREF)
-                               return (v.pbstrVal ? *v.pbstrVal : L"");
-                       else
-                               return v.bstrVal;
-               }
-               else
-                       return wxEmptyString;
-       };
-
-#define STR_ARG(arg) GetStrArg(pDispParams->rgvarg[arg])
-
-#define LONG_ARG(arg)\
-                       (pDispParams->rgvarg[arg].lVal)
-
-
-       STDMETHODIMP Invoke(DISPID dispIdMember, REFIID riid, LCID lcid,
-                                                 WORD wFlags, DISPPARAMS * pDispParams,
-                                                 VARIANT * pVarResult, EXCEPINFO * pExcepInfo,
-                                                 unsigned int * puArgErr)
-       {
-           if (wFlags & DISPATCH_PROPERTYGET)
-            return E_NOTIMPL;
-
-           switch (dispIdMember)
-           {
-                   case DISPID_BEFORENAVIGATE2:
-                               if (Process(wxEVT_COMMAND_MSHTML_BEFORENAVIGATE2, STR_ARG(5)))
-                                       *pDispParams->rgvarg->pboolVal = VARIANT_FALSE;
-                               else
-                                       *pDispParams->rgvarg->pboolVal = VARIANT_TRUE;
-                               break;
-
-                   case DISPID_NEWWINDOW2:
-                               if (Process(wxEVT_COMMAND_MSHTML_NEWWINDOW2))
-                                       *pDispParams->rgvarg->pboolVal = VARIANT_FALSE;
-                               else
-                                       *pDispParams->rgvarg->pboolVal = VARIANT_TRUE;
-                               break;
-
-            case DISPID_PROGRESSCHANGE:
-                               Post(wxEVT_COMMAND_MSHTML_PROGRESSCHANGE, wxEmptyString, LONG_ARG(1), LONG_ARG(0));
-                               break;
-
-            case DISPID_DOCUMENTCOMPLETE:
-                               Post(wxEVT_COMMAND_MSHTML_DOCUMENTCOMPLETE, STR_ARG(0));
-                               break;
-
-            case DISPID_STATUSTEXTCHANGE:
-                               Post(wxEVT_COMMAND_MSHTML_STATUSTEXTCHANGE, STR_ARG(0));
-                               break;
-
-            case DISPID_TITLECHANGE:
-                               Post(wxEVT_COMMAND_MSHTML_TITLECHANGE, STR_ARG(0));
-                               break;
-           }
-
-       return S_OK;
-    }
-};
-
-#undef STR_ARG
-
-DEFINE_OLE_TABLE(FS_DWebBrowserEvents2)
-       OLE_IINTERFACE(IUnknown)
-       OLE_INTERFACE(DIID_DWebBrowserEvents2, DWebBrowserEvents2)
-END_OLE_TABLE;
-
-
-static const CLSID CLSID_MozillaBrowser =
-{ 0x1339B54C, 0x3453, 0x11D2,
-  { 0x93, 0xB9, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00 } };
-
-
-//#define PROGID "Shell.Explorer"
-#define PROGID CLSID_WebBrowser
-//#define PROGID CLSID_MozillaBrowser
-//#define PROGID CLSID_HTMLDocument
-//#define PROGID "MSCAL.Calendar"
-//#define PROGID "WordPad.Document.1"
-//#define PROGID "SoftwareFX.ChartFX.20"
-
-wxIEHtmlWin::wxIEHtmlWin(wxWindow * parent, wxWindowID id,
-        const wxPoint& pos,
-        const wxSize& size,
-        long style,
-        const wxString& name) :
-    wxActiveX(parent, PROGID, id, pos, size, style, name)
-{
-    SetupBrowser();
-}
-
-
-wxIEHtmlWin::~wxIEHtmlWin()
-{
-}
-
-void wxIEHtmlWin::SetupBrowser()
-{
-       HRESULT hret;
-
-       // Get IWebBrowser2 Interface
-       hret = m_webBrowser.QueryInterface(IID_IWebBrowser2, m_ActiveX);
-       assert(SUCCEEDED(hret));
-
-       // Web Browser Events
-       FS_DWebBrowserEvents2 *events = new FS_DWebBrowserEvents2(this);
-       hret = ConnectAdvise(DIID_DWebBrowserEvents2, events);
-       if (! SUCCEEDED(hret))
-               delete events;
-
-       // web browser setup
-       m_webBrowser->put_MenuBar(VARIANT_FALSE);
-       m_webBrowser->put_AddressBar(VARIANT_FALSE);
-       m_webBrowser->put_StatusBar(VARIANT_FALSE);
-       m_webBrowser->put_ToolBar(VARIANT_FALSE);
-
-       m_webBrowser->put_RegisterAsBrowser(VARIANT_TRUE);
-       m_webBrowser->put_RegisterAsDropTarget(VARIANT_TRUE);
-
-    m_webBrowser->Navigate( L"about:blank", NULL, NULL, NULL, NULL );
-}
-
-
-void wxIEHtmlWin::SetEditMode(bool seton)
-{
-    m_bAmbientUserMode = ! seton;
-    AmbientPropertyChanged(DISPID_AMBIENT_USERMODE);
-};
-
-bool wxIEHtmlWin::GetEditMode()
-{
-    return ! m_bAmbientUserMode;
-};
-
-
-void wxIEHtmlWin::SetCharset(wxString charset)
-{
-       // HTML Document ?
-       IDispatch *pDisp = NULL;
-       HRESULT hret = m_webBrowser->get_Document(&pDisp);
-       wxAutoOleInterface<IDispatch> disp(pDisp);
-
-       if (disp.Ok())
-       {
-               wxAutoOleInterface<IHTMLDocument2> doc(IID_IHTMLDocument2, disp);
-               if (doc.Ok())
-            doc->put_charset((BSTR) (const wchar_t *) charset.wc_str(wxConvUTF8));
-                       //doc->put_charset((BSTR) wxConvUTF8.cMB2WC(charset).data());
-       };
-};
-
-
-class IStreamAdaptorBase : public IStream
-{
-private:
-    DECLARE_OLE_UNKNOWN(IStreamAdaptorBase);
-
-public:
-    IStreamAdaptorBase() {}
-    virtual ~IStreamAdaptorBase() {}
-
-    // ISequentialStream
-    HRESULT STDMETHODCALLTYPE Read(void __RPC_FAR *pv, ULONG cb, ULONG __RPC_FAR *pcbRead) = 0;
-    HRESULT STDMETHODCALLTYPE Write(const void __RPC_FAR *pv, ULONG cb, ULONG __RPC_FAR *pcbWritten) {return E_NOTIMPL;}
-
-    // IStream
-    HRESULT STDMETHODCALLTYPE Seek(LARGE_INTEGER dlibMove, DWORD dwOrigin, ULARGE_INTEGER __RPC_FAR *plibNewPosition) {return E_NOTIMPL;}
-    HRESULT STDMETHODCALLTYPE SetSize(ULARGE_INTEGER libNewSize) {return E_NOTIMPL;}
-    HRESULT STDMETHODCALLTYPE CopyTo(IStream __RPC_FAR *pstm, ULARGE_INTEGER cb, ULARGE_INTEGER __RPC_FAR *pcbRead, ULARGE_INTEGER __RPC_FAR *pcbWritten) {return E_NOTIMPL;}
-    HRESULT STDMETHODCALLTYPE Commit(DWORD grfCommitFlags) {return E_NOTIMPL;}
-    HRESULT STDMETHODCALLTYPE Revert(void) {return E_NOTIMPL;}
-    HRESULT STDMETHODCALLTYPE LockRegion(ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) {return E_NOTIMPL;}
-    HRESULT STDMETHODCALLTYPE UnlockRegion(ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) {return E_NOTIMPL;}
-    HRESULT STDMETHODCALLTYPE Stat(STATSTG __RPC_FAR *pstatstg, DWORD grfStatFlag) {return E_NOTIMPL;}
-    HRESULT STDMETHODCALLTYPE Clone(IStream __RPC_FAR *__RPC_FAR *ppstm) {return E_NOTIMPL;}
-};
-
-DEFINE_OLE_TABLE(IStreamAdaptorBase)
-       OLE_IINTERFACE(IUnknown)
-       OLE_IINTERFACE(ISequentialStream)
-       OLE_IINTERFACE(IStream)
-END_OLE_TABLE;
-
-class IStreamAdaptor : public IStreamAdaptorBase
-{
-private:
-    istream *m_is;
-
-public:
-
-    IStreamAdaptor(istream *is)        : IStreamAdaptorBase(), m_is(is)
-    {
-        wxASSERT(m_is != NULL);
-    }
-    ~IStreamAdaptor()
-    {
-        delete m_is;
-    }
-
-    // ISequentialStream
-    HRESULT STDMETHODCALLTYPE Read(void __RPC_FAR *pv, ULONG cb, ULONG __RPC_FAR *pcbRead)
-       {
-               m_is->read((char *) pv, cb);
-               if (pcbRead)
-                       *pcbRead = m_is->gcount();
-
-               return S_OK;
-       };
-};
-
-class IwxStreamAdaptor : public IStreamAdaptorBase
-{
-private:
-    wxInputStream *m_is;
-
-public:
-
-    IwxStreamAdaptor(wxInputStream *is)        : IStreamAdaptorBase(), m_is(is)
-    {
-        wxASSERT(m_is != NULL);
-    }
-    ~IwxStreamAdaptor()
-    {
-        delete m_is;
-    }
-
-    // ISequentialStream
-    HRESULT STDMETHODCALLTYPE Read(void __RPC_FAR *pv, ULONG cb, ULONG __RPC_FAR *pcbRead)
-       {
-               m_is->Read((char *) pv, cb);
-               if (pcbRead)
-                       *pcbRead = m_is->LastRead();
-
-               return S_OK;
-       };
-};
-
-void wxIEHtmlWin::LoadUrl(const wxString& url)
-{
-       VARIANTARG navFlag, targetFrame, postData, headers;
-       navFlag.vt = VT_EMPTY;
-       navFlag.vt = VT_I2;
-       navFlag.iVal = navNoReadFromCache;
-       targetFrame.vt = VT_EMPTY;
-       postData.vt = VT_EMPTY;
-       headers.vt = VT_EMPTY;
-
-       HRESULT hret = 0;
-       hret = m_webBrowser->Navigate((BSTR) (const wchar_t *) url.wc_str(wxConvUTF8),
-               &navFlag, &targetFrame, &postData, &headers);
-};
-
-class wxOwnedMemInputStream : public wxMemoryInputStream
-{
-public:
-    char *m_data;
-
-    wxOwnedMemInputStream(char *data, size_t len) :
-        wxMemoryInputStream(data, len), m_data(data)
-    {}
-    ~wxOwnedMemInputStream()
-    {
-        free(m_data);
-    }
-};
-
-bool  wxIEHtmlWin::LoadString(wxString html)
-{
-    char *data = NULL;
-    size_t len = html.length();
-#ifdef UNICODE
-    len *= 2;
-#endif
-    data = (char *) malloc(len);
-    memcpy(data, html.c_str(), len);
-       return LoadStream(new wxOwnedMemInputStream(data, len));
-};
-
-bool wxIEHtmlWin::LoadStream(IStreamAdaptorBase *pstrm)
-{
-       wxAutoOleInterface<IStream>     strm(pstrm);
-
-    // Document Interface
-    IDispatch *pDisp = NULL;
-    HRESULT hret = m_webBrowser->get_Document(&pDisp);
-       if (! pDisp)
-               return false;
-       wxAutoOleInterface<IDispatch> disp(pDisp);
-
-
-       // get IPersistStreamInit
-    wxAutoOleInterface<IPersistStreamInit>
-               pPersistStreamInit(IID_IPersistStreamInit, disp);
-
-    if (pPersistStreamInit.Ok())
-    {
-        HRESULT hr = pPersistStreamInit->InitNew();
-        if (SUCCEEDED(hr))
-            hr = pPersistStreamInit->Load(strm);
-
-               return SUCCEEDED(hr);
-    }
-       else
-           return false;
-};
-
-bool  wxIEHtmlWin::LoadStream(istream *is)
-{
-       // wrap reference around stream
-    IStreamAdaptor *pstrm = new IStreamAdaptor(is);
-       pstrm->AddRef();
-
-    return LoadStream(pstrm);
-};
-
-bool wxIEHtmlWin::LoadStream(wxInputStream *is)
-{
-       // wrap reference around stream
-    IwxStreamAdaptor *pstrm = new IwxStreamAdaptor(is);
-       pstrm->AddRef();
-
-    return LoadStream(pstrm);
-};
-
-
-bool wxIEHtmlWin::GoBack()
-{
-    HRESULT hret = 0;
-    hret = m_webBrowser->GoBack();
-    return hret == S_OK;
-}
-
-bool wxIEHtmlWin::GoForward()
-{
-    HRESULT hret = 0;
-    hret = m_webBrowser->GoForward();
-    return hret == S_OK;
-}
-
-bool wxIEHtmlWin::GoHome()
-{
-    HRESULT hret = 0;
-    hret = m_webBrowser->GoHome();
-    return hret == S_OK;
-}
-
-bool wxIEHtmlWin::GoSearch()
-{
-    HRESULT hret = 0;
-    hret = m_webBrowser->GoSearch();
-    return hret == S_OK;
-}
-
-bool wxIEHtmlWin::Refresh(wxIEHtmlRefreshLevel level)
-{
-    VARIANTARG levelArg;
-    HRESULT hret = 0;
-
-    levelArg.vt = VT_I2;
-    levelArg.iVal = level;
-    hret = m_webBrowser->Refresh2(&levelArg);
-    return hret == S_OK;
-}
-
-bool wxIEHtmlWin::Stop()
-{
-    HRESULT hret = 0;
-    hret = m_webBrowser->Stop();
-    return hret == S_OK;
-}
-
-
-///////////////////////////////////////////////////////////////////////////////
-
-static wxAutoOleInterface<IHTMLSelectionObject> GetSelObject(IOleObject *oleObject)
-{
-       // Query for IWebBrowser interface
-    wxAutoOleInterface<IWebBrowser2> wb(IID_IWebBrowser2, oleObject);
-    if (! wb.Ok())
-       return wxAutoOleInterface<IHTMLSelectionObject>();
-
-       IDispatch *iDisp = NULL;
-    HRESULT hr = wb->get_Document(&iDisp);
-    if (hr != S_OK)
-       return wxAutoOleInterface<IHTMLSelectionObject>();
-
-       // Query for Document Interface
-    wxAutoOleInterface<IHTMLDocument2> hd(IID_IHTMLDocument2, iDisp);
-    iDisp->Release();
-
-    if (! hd.Ok())
-       return wxAutoOleInterface<IHTMLSelectionObject>();
-
-    IHTMLSelectionObject *_so = NULL;
-    hr = hd->get_selection(&_so);
-
-    // take ownership of selection object
-       wxAutoOleInterface<IHTMLSelectionObject> so(_so);
-
-    return so;
-};
-
-static wxAutoOleInterface<IHTMLTxtRange> GetSelRange(IOleObject *oleObject)
-{
-       wxAutoOleInterface<IHTMLTxtRange> tr;
-
-    wxAutoOleInterface<IHTMLSelectionObject> so(GetSelObject(oleObject));
-    if (! so)
-       return tr;
-
-       IDispatch *iDisp = NULL;
-    HRESULT hr = so->createRange(&iDisp);
-    if (hr != S_OK)
-       return tr;
-
-       // Query for IHTMLTxtRange interface
-       tr.QueryInterface(IID_IHTMLTxtRange, iDisp);
-    iDisp->Release();
-    return tr;
-};
-
-
-wxString wxIEHtmlWin::GetStringSelection(bool asHTML)
-{
-       wxAutoOleInterface<IHTMLTxtRange> tr(GetSelRange(m_oleObject));
-    if (! tr)
-       return wxEmptyString;
-
-    BSTR text = NULL;
-    HRESULT hr = E_FAIL;
-
-       if (asHTML)
-               hr = tr->get_htmlText(&text);
-       else
-               hr = tr->get_text(&text);
-    if (hr != S_OK)
-       return wxEmptyString;
-
-    wxString s = text;
-    SysFreeString(text);
-
-    return s;
-};
-
-wxString wxIEHtmlWin::GetText(bool asHTML)
-{
-       if (! m_webBrowser.Ok())
-               return wxEmptyString;
-
-       // get document dispatch interface
-       IDispatch *iDisp = NULL;
-    HRESULT hr = m_webBrowser->get_Document(&iDisp);
-    if (hr != S_OK)
-       return wxEmptyString;
-
-       // Query for Document Interface
-    wxAutoOleInterface<IHTMLDocument2> hd(IID_IHTMLDocument2, iDisp);
-    iDisp->Release();
-
-    if (! hd.Ok())
-               return wxEmptyString;
-
-       // get body element
-       IHTMLElement *_body = NULL;
-       hd->get_body(&_body);
-       if (! _body)
-               return wxEmptyString;
-       wxAutoOleInterface<IHTMLElement> body(_body);
-
-       // get inner text
-    BSTR text = NULL;
-    hr = E_FAIL;
-
-       if (asHTML)
-               hr = body->get_innerHTML(&text);
-       else
-               hr = body->get_innerText(&text);
-    if (hr != S_OK)
-       return wxEmptyString;
-
-    wxString s = text;
-    SysFreeString(text);
-
-    return s;
-};
diff --git a/wxPython/contrib/iewin/IEHtmlWin.h b/wxPython/contrib/iewin/IEHtmlWin.h
deleted file mode 100644 (file)
index 94b7fe1..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-#ifndef _IEHTMLWIN_H_
-#define _IEHTMLWIN_H_
-#pragma warning( disable : 4101 4786)
-#pragma warning( disable : 4786)
-
-
-#include <wx/setup.h>
-#include <wx/wx.h>
-#include <exdisp.h>
-#include <iostream>
-using namespace std;
-
-#include "wxactivex.h"
-
-class wxMSHTMLEvent : public wxNotifyEvent
-{
-public:
-       wxMSHTMLEvent(wxEventType commandType = wxEVT_NULL, int id = 0)
-               : wxNotifyEvent(commandType, id)
-       {}
-
-       wxString GetText1() { return m_text1; }
-       long GetLong1() { return m_long1; }
-       long GetLong2() { return m_long2; }
-
-
-       wxString        m_text1;
-       long            m_long1, m_long2;
-
-       virtual wxEvent *Clone() const { return new wxMSHTMLEvent(*this); }
-
-private:
-       DECLARE_DYNAMIC_CLASS(wxMSHTMLEvent)
-
-};
-
-BEGIN_DECLARE_EVENT_TYPES()
-       DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MSHTML_BEFORENAVIGATE2, 0)
-       DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MSHTML_NEWWINDOW2, 0)
-       DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MSHTML_DOCUMENTCOMPLETE, 0)
-       DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MSHTML_PROGRESSCHANGE, 0)
-       DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MSHTML_STATUSTEXTCHANGE, 0)
-       DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MSHTML_TITLECHANGE, 0)
-END_DECLARE_EVENT_TYPES()
-
-typedef void (wxEvtHandler::*wxMSHTMLEventFunction)(wxMSHTMLEvent&);
-
-#define EVT_MSHTML_BEFORENAVIGATE2(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_COMMAND_MSHTML_BEFORENAVIGATE2, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxMSHTMLEventFunction, & fn ), NULL ),
-#define EVT_MSHTML_NEWWINDOW2(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_COMMAND_MSHTML_NEWWINDOW2, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxMSHTMLEventFunction, & fn ), NULL ),
-#define EVT_MSHTML_DOCUMENTCOMPLETE(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_COMMAND_MSHTML_DOCUMENTCOMPLETE, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxMSHTMLEventFunction, & fn ), NULL ),
-#define EVT_MSHTML_PROGRESSCHANGE(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_COMMAND_MSHTML_PROGRESSCHANGE, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxMSHTMLEventFunction, & fn ), NULL ),
-#define EVT_MSHTML_STATUSTEXTCHANGE(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_COMMAND_MSHTML_STATUSTEXTCHANGE, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxMSHTMLEventFunction, & fn ), NULL ),
-#define EVT_MSHTML_TITLECHANGE(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_COMMAND_MSHTML_TITLECHANGE, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxMSHTMLEventFunction, & fn ), NULL ),
-
-
-enum wxIEHtmlRefreshLevel 
-{
-       wxIEHTML_REFRESH_NORMAL = 0,
-       wxIEHTML_REFRESH_IFEXPIRED = 1,
-       wxIEHTML_REFRESH_CONTINUE = 2,
-       wxIEHTML_REFRESH_COMPLETELY = 3
-};
-
-class IStreamAdaptorBase;
-
-class wxIEHtmlWin : public wxActiveX
-{
-
-public:
-    wxIEHtmlWin(wxWindow * parent, wxWindowID id = -1,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = 0,
-        const wxString& name = wxPanelNameStr);
-       virtual ~wxIEHtmlWin();
-
-       void LoadUrl(const wxString&);
-    bool LoadString(wxString html);
-    bool LoadStream(istream *strm);
-    bool LoadStream(wxInputStream *is);
-
-       void SetCharset(wxString charset);
-    void SetEditMode(bool seton);
-    bool GetEditMode();
-    wxString GetStringSelection(bool asHTML = false);
-       wxString GetText(bool asHTML = false);
-
-       bool GoBack();
-       bool GoForward();
-       bool GoHome();
-       bool GoSearch();
-       bool Refresh(wxIEHtmlRefreshLevel level);
-       bool Stop();
-
-       DECLARE_EVENT_TABLE();
-
-protected:
-    void SetupBrowser();
-    bool LoadStream(IStreamAdaptorBase *pstrm);
-
-       wxAutoOleInterface<IWebBrowser2>                m_webBrowser;
-};
-
-#endif /* _IEHTMLWIN_H_ */
diff --git a/wxPython/contrib/iewin/_iewin_rename.i b/wxPython/contrib/iewin/_iewin_rename.i
deleted file mode 100644 (file)
index c13fc46..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-// A bunch of %rename directives generated by BuildRenamers in config.py
-// in order to remove the wx prefix from all global scope names.
-
-#ifndef BUILDING_RENAMERS
-
-%rename(MSHTMLEvent)                        wxMSHTMLEvent;
-%rename(IEHTML_REFRESH_NORMAL)              wxIEHTML_REFRESH_NORMAL;
-%rename(IEHTML_REFRESH_IFEXPIRED)           wxIEHTML_REFRESH_IFEXPIRED;
-%rename(IEHTML_REFRESH_CONTINUE)            wxIEHTML_REFRESH_CONTINUE;
-%rename(IEHTML_REFRESH_COMPLETELY)          wxIEHTML_REFRESH_COMPLETELY;
-%rename(IEHtmlWin)                          wxIEHtmlWin;
-
-#endif
diff --git a/wxPython/contrib/iewin/_iewin_reverse.txt b/wxPython/contrib/iewin/_iewin_reverse.txt
deleted file mode 100644 (file)
index 03f4b7a..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-
-EVT*
diff --git a/wxPython/contrib/iewin/_iewinextras.py b/wxPython/contrib/iewin/_iewinextras.py
deleted file mode 100644 (file)
index d813dcf..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-# Stuff these names into the wx namespace so wxPyConstructObject can find them
-
-wx.wxMSHTMLEventPtr  = wxMSHTMLEventPtr
-wx.wxIEHtmlWinPtr    = wxIEHtmlWinPtr
diff --git a/wxPython/contrib/iewin/iewin.i b/wxPython/contrib/iewin/iewin.i
deleted file mode 100644 (file)
index f55d926..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////
-// Name:        iewin.i
-// Purpose:     Internet Explorer in a wxWindow
-//
-// Author:      Robin Dunn
-//
-// Created:     20-Apr-2001
-// RCS-ID:      $Id$
-// Copyright:   (c) 2001 by Total Control Software
-// Licence:     wxWindows license
-/////////////////////////////////////////////////////////////////////////////
-
-
-%module(package="wx") iewin
-
-%{
-#include "wx/wxPython/wxPython.h"
-#include "wx/wxPython/pyclasses.h"
-#include "wx/wxPython/pyistream.h"    
-
-#include "IEHtmlWin.h"
-%}
-
-//---------------------------------------------------------------------------
-
-%import core.i
-%pythoncode { wx = _core }
-%pythoncode { __docfilter__ = wx.__DocFilter(globals()) }
-%pythoncode {
-    import warnings
-    warnings.warn("This module is deprecated.  Please use the wx.lib.iewin module instead.",    
-                  DeprecationWarning, stacklevel=2)
-}
-
-MAKE_CONST_WXSTRING_NOSWIG(PanelNameStr);
-
-%include _iewin_rename.i
-
-
-//---------------------------------------------------------------------------
-
-class wxMSHTMLEvent : public wxNotifyEvent
-{
-public:
-    wxMSHTMLEvent(wxEventType commandType = wxEVT_NULL, int id = 0);
-    wxString GetText1();
-    long GetLong1();
-    long GetLong2();
-};
-
-
-enum {
-    wxEVT_COMMAND_MSHTML_BEFORENAVIGATE2,
-    wxEVT_COMMAND_MSHTML_NEWWINDOW2,
-    wxEVT_COMMAND_MSHTML_DOCUMENTCOMPLETE,
-    wxEVT_COMMAND_MSHTML_PROGRESSCHANGE,
-    wxEVT_COMMAND_MSHTML_STATUSTEXTCHANGE,
-    wxEVT_COMMAND_MSHTML_TITLECHANGE,
-};
-
-
-%pythoncode {    
-EVT_MSHTML_BEFORENAVIGATE2      = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_BEFORENAVIGATE2, 1)
-EVT_MSHTML_NEWWINDOW2           = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_NEWWINDOW2, 1)
-EVT_MSHTML_DOCUMENTCOMPLETE     = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_DOCUMENTCOMPLETE, 1)
-EVT_MSHTML_PROGRESSCHANGE       = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_PROGRESSCHANGE, 1)
-EVT_MSHTML_STATUSTEXTCHANGE     = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_STATUSTEXTCHANGE, 1)
-EVT_MSHTML_TITLECHANGE          = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_TITLECHANGE, 1)
-}
-
-//---------------------------------------------------------------------------
-
-enum wxIEHtmlRefreshLevel {
-    wxIEHTML_REFRESH_NORMAL = 0,
-    wxIEHTML_REFRESH_IFEXPIRED = 1,
-    wxIEHTML_REFRESH_CONTINUE = 2,
-    wxIEHTML_REFRESH_COMPLETELY = 3
-};
-
-
-MustHaveApp(wxIEHtmlWin);
-
-class wxIEHtmlWin : public wxWindow /* wxActiveX */ 
-{
-public:
-    %pythonAppend wxIEHtmlWin      "self._setOORInfo(self)"
-    
-    wxIEHtmlWin(wxWindow * parent, wxWindowID id = -1,
-                const wxPoint& pos = wxDefaultPosition,
-                const wxSize& size = wxDefaultSize,
-                long style = 0,
-                const wxString& name = wxPyPanelNameStr);
-
-    void LoadUrl(const wxString&);
-    bool LoadString(wxString html);
-    bool LoadStream(wxInputStream *is);
-
-    %pythoncode { Navigate = LoadUrl }
-
-    void SetCharset(wxString charset);
-    void SetEditMode(bool seton);
-    bool GetEditMode();
-    wxString GetStringSelection(bool asHTML = false);
-    wxString GetText(bool asHTML = false);
-
-    bool GoBack();
-    bool GoForward();
-    bool GoHome();
-    bool GoSearch();
-    %Rename(RefreshPage, bool,  Refresh(wxIEHtmlRefreshLevel level));
-    bool Stop();
-
-};
-
-
-//---------------------------------------------------------------------------
-
-
diff --git a/wxPython/contrib/iewin/iewin.py b/wxPython/contrib/iewin/iewin.py
deleted file mode 100644 (file)
index 1ed4991..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-# This file was created automatically by SWIG.
-# Don't modify this file, modify the SWIG interface instead.
-
-import _iewin
-
-def _swig_setattr_nondynamic(self,class_type,name,value,static=1):
-    if (name == "this"):
-        if isinstance(value, class_type):
-            self.__dict__[name] = value.this
-            if hasattr(value,"thisown"): self.__dict__["thisown"] = value.thisown
-            del value.thisown
-            return
-    method = class_type.__swig_setmethods__.get(name,None)
-    if method: return method(self,value)
-    if (not static) or hasattr(self,name) or (name == "thisown"):
-        self.__dict__[name] = value
-    else:
-        raise AttributeError("You cannot add attributes to %s" % self)
-
-def _swig_setattr(self,class_type,name,value):
-    return _swig_setattr_nondynamic(self,class_type,name,value,0)
-
-def _swig_getattr(self,class_type,name):
-    method = class_type.__swig_getmethods__.get(name,None)
-    if method: return method(self)
-    raise AttributeError,name
-
-import types
-try:
-    _object = types.ObjectType
-    _newclass = 1
-except AttributeError:
-    class _object : pass
-    _newclass = 0
-del types
-
-
-def _swig_setattr_nondynamic_method(set):
-    def set_attr(self,name,value):
-        if hasattr(self,name) or (name in ("this", "thisown")):
-            set(self,name,value)
-        else:
-            raise AttributeError("You cannot add attributes to %s" % self)
-    return set_attr
-
-
-import _core
-wx = _core 
-__docfilter__ = wx.__DocFilter(globals()) 
-import warnings
-warnings.warn("This module is deprecated.  Please use the wx.lib.iewin module instead.",    
-              DeprecationWarning, stacklevel=2)
-
-class MSHTMLEvent(_core.NotifyEvent):
-    """Proxy of C++ MSHTMLEvent class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxMSHTMLEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
-        """__init__(self, wxEventType commandType=wxEVT_NULL, int id=0) -> MSHTMLEvent"""
-        newobj = _iewin.new_MSHTMLEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def GetText1(*args, **kwargs):
-        """GetText1(self) -> String"""
-        return _iewin.MSHTMLEvent_GetText1(*args, **kwargs)
-
-    def GetLong1(*args, **kwargs):
-        """GetLong1(self) -> long"""
-        return _iewin.MSHTMLEvent_GetLong1(*args, **kwargs)
-
-    def GetLong2(*args, **kwargs):
-        """GetLong2(self) -> long"""
-        return _iewin.MSHTMLEvent_GetLong2(*args, **kwargs)
-
-
-class MSHTMLEventPtr(MSHTMLEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = MSHTMLEvent
-_iewin.MSHTMLEvent_swigregister(MSHTMLEventPtr)
-
-wxEVT_COMMAND_MSHTML_BEFORENAVIGATE2 = _iewin.wxEVT_COMMAND_MSHTML_BEFORENAVIGATE2
-wxEVT_COMMAND_MSHTML_NEWWINDOW2 = _iewin.wxEVT_COMMAND_MSHTML_NEWWINDOW2
-wxEVT_COMMAND_MSHTML_DOCUMENTCOMPLETE = _iewin.wxEVT_COMMAND_MSHTML_DOCUMENTCOMPLETE
-wxEVT_COMMAND_MSHTML_PROGRESSCHANGE = _iewin.wxEVT_COMMAND_MSHTML_PROGRESSCHANGE
-wxEVT_COMMAND_MSHTML_STATUSTEXTCHANGE = _iewin.wxEVT_COMMAND_MSHTML_STATUSTEXTCHANGE
-wxEVT_COMMAND_MSHTML_TITLECHANGE = _iewin.wxEVT_COMMAND_MSHTML_TITLECHANGE
-EVT_MSHTML_BEFORENAVIGATE2      = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_BEFORENAVIGATE2, 1)
-EVT_MSHTML_NEWWINDOW2           = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_NEWWINDOW2, 1)
-EVT_MSHTML_DOCUMENTCOMPLETE     = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_DOCUMENTCOMPLETE, 1)
-EVT_MSHTML_PROGRESSCHANGE       = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_PROGRESSCHANGE, 1)
-EVT_MSHTML_STATUSTEXTCHANGE     = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_STATUSTEXTCHANGE, 1)
-EVT_MSHTML_TITLECHANGE          = wx.PyEventBinder(wxEVT_COMMAND_MSHTML_TITLECHANGE, 1)
-
-IEHTML_REFRESH_NORMAL = _iewin.IEHTML_REFRESH_NORMAL
-IEHTML_REFRESH_IFEXPIRED = _iewin.IEHTML_REFRESH_IFEXPIRED
-IEHTML_REFRESH_CONTINUE = _iewin.IEHTML_REFRESH_CONTINUE
-IEHTML_REFRESH_COMPLETELY = _iewin.IEHTML_REFRESH_COMPLETELY
-class IEHtmlWin(_core.Window):
-    """Proxy of C++ IEHtmlWin class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxIEHtmlWin instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
-        """
-        __init__(self, Window parent, int id=-1, Point pos=DefaultPosition, 
-            Size size=DefaultSize, long style=0, String name=PanelNameStr) -> IEHtmlWin
-        """
-        newobj = _iewin.new_IEHtmlWin(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-        self._setOORInfo(self)
-
-    def LoadUrl(*args, **kwargs):
-        """LoadUrl(self, String ??)"""
-        return _iewin.IEHtmlWin_LoadUrl(*args, **kwargs)
-
-    def LoadString(*args, **kwargs):
-        """LoadString(self, String html) -> bool"""
-        return _iewin.IEHtmlWin_LoadString(*args, **kwargs)
-
-    def LoadStream(*args, **kwargs):
-        """LoadStream(self, InputStream is) -> bool"""
-        return _iewin.IEHtmlWin_LoadStream(*args, **kwargs)
-
-    Navigate = LoadUrl 
-    def SetCharset(*args, **kwargs):
-        """SetCharset(self, String charset)"""
-        return _iewin.IEHtmlWin_SetCharset(*args, **kwargs)
-
-    def SetEditMode(*args, **kwargs):
-        """SetEditMode(self, bool seton)"""
-        return _iewin.IEHtmlWin_SetEditMode(*args, **kwargs)
-
-    def GetEditMode(*args, **kwargs):
-        """GetEditMode(self) -> bool"""
-        return _iewin.IEHtmlWin_GetEditMode(*args, **kwargs)
-
-    def GetStringSelection(*args, **kwargs):
-        """GetStringSelection(self, bool asHTML=False) -> String"""
-        return _iewin.IEHtmlWin_GetStringSelection(*args, **kwargs)
-
-    def GetText(*args, **kwargs):
-        """GetText(self, bool asHTML=False) -> String"""
-        return _iewin.IEHtmlWin_GetText(*args, **kwargs)
-
-    def GoBack(*args, **kwargs):
-        """GoBack(self) -> bool"""
-        return _iewin.IEHtmlWin_GoBack(*args, **kwargs)
-
-    def GoForward(*args, **kwargs):
-        """GoForward(self) -> bool"""
-        return _iewin.IEHtmlWin_GoForward(*args, **kwargs)
-
-    def GoHome(*args, **kwargs):
-        """GoHome(self) -> bool"""
-        return _iewin.IEHtmlWin_GoHome(*args, **kwargs)
-
-    def GoSearch(*args, **kwargs):
-        """GoSearch(self) -> bool"""
-        return _iewin.IEHtmlWin_GoSearch(*args, **kwargs)
-
-    def RefreshPage(*args, **kwargs):
-        """RefreshPage(self, int level) -> bool"""
-        return _iewin.IEHtmlWin_RefreshPage(*args, **kwargs)
-
-    def Stop(*args, **kwargs):
-        """Stop(self) -> bool"""
-        return _iewin.IEHtmlWin_Stop(*args, **kwargs)
-
-
-class IEHtmlWinPtr(IEHtmlWin):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = IEHtmlWin
-_iewin.IEHtmlWin_swigregister(IEHtmlWinPtr)
-
-
diff --git a/wxPython/contrib/iewin/iewin_wrap.cpp b/wxPython/contrib/iewin/iewin_wrap.cpp
deleted file mode 100644 (file)
index 611da28..0000000
+++ /dev/null
@@ -1,3118 +0,0 @@
-/* ----------------------------------------------------------------------------
- * This file was automatically generated by SWIG (http://www.swig.org).
- * Version 1.3.24
- * 
- * This file is not intended to be easily readable and contains a number of 
- * coding conventions designed to improve portability and efficiency. Do not make
- * changes to this file unless you know what you are doing--modify the SWIG 
- * interface file instead. 
- * ----------------------------------------------------------------------------- */
-
-#define SWIGPYTHON
-
-#ifdef __cplusplus
-template<class T> class SwigValueWrapper {
-    T *tt;
-public:
-    SwigValueWrapper() : tt(0) { }
-    SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
-    SwigValueWrapper(const T& t) : tt(new T(t)) { }
-    ~SwigValueWrapper() { delete tt; } 
-    SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
-    operator T&() const { return *tt; }
-    T *operator&() { return tt; }
-private:
-    SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
-};
-#endif
-
-
-#ifndef SWIG_TEMPLATE_DISAMBIGUATOR
-#  if defined(__SUNPRO_CC) 
-#    define SWIG_TEMPLATE_DISAMBIGUATOR template
-#  else
-#    define SWIG_TEMPLATE_DISAMBIGUATOR 
-#  endif
-#endif
-
-
-#include <Python.h>
-
-/***********************************************************************
- * swigrun.swg
- *
- *     This file contains generic CAPI SWIG runtime support for pointer
- *     type checking.
- *
- ************************************************************************/
-
-/* This should only be incremented when either the layout of swig_type_info changes,
-   or for whatever reason, the runtime changes incompatibly */
-#define SWIG_RUNTIME_VERSION "1"
-
-/* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
-#ifdef SWIG_TYPE_TABLE
-#define SWIG_QUOTE_STRING(x) #x
-#define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
-#define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
-#else
-#define SWIG_TYPE_TABLE_NAME
-#endif
-
-#include <string.h>
-
-#ifndef SWIGINLINE
-#if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
-#  define SWIGINLINE inline
-#else
-#  define SWIGINLINE
-#endif
-#endif
-
-/*
-  You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
-  creating a static or dynamic library from the swig runtime code.
-  In 99.9% of the cases, swig just needs to declare them as 'static'.
-  
-  But only do this if is strictly necessary, ie, if you have problems
-  with your compiler or so.
-*/
-#ifndef SWIGRUNTIME
-#define SWIGRUNTIME static
-#endif
-#ifndef SWIGRUNTIMEINLINE
-#define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-typedef void *(*swig_converter_func)(void *);
-typedef struct swig_type_info *(*swig_dycast_func)(void **);
-
-typedef struct swig_type_info {
-  const char             *name;
-  swig_converter_func     converter;
-  const char             *str;
-  void                   *clientdata;
-  swig_dycast_func        dcast;
-  struct swig_type_info  *next;
-  struct swig_type_info  *prev;
-} swig_type_info;
-
-/* 
-  Compare two type names skipping the space characters, therefore
-  "char*" == "char *" and "Class<int>" == "Class<int >", etc.
-
-  Return 0 when the two name types are equivalent, as in
-  strncmp, but skipping ' '.
-*/
-SWIGRUNTIME int
-SWIG_TypeNameComp(const char *f1, const char *l1,
-                 const char *f2, const char *l2) {
-  for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
-    while ((*f1 == ' ') && (f1 != l1)) ++f1;
-    while ((*f2 == ' ') && (f2 != l2)) ++f2;
-    if (*f1 != *f2) return *f1 - *f2;
-  }
-  return (l1 - f1) - (l2 - f2);
-}
-
-/*
-  Check type equivalence in a name list like <name1>|<name2>|...
-*/
-SWIGRUNTIME int
-SWIG_TypeEquiv(const char *nb, const char *tb) {
-  int equiv = 0;
-  const char* te = tb + strlen(tb);
-  const char* ne = nb;
-  while (!equiv && *ne) {
-    for (nb = ne; *ne; ++ne) {
-      if (*ne == '|') break;
-    }
-    equiv = SWIG_TypeNameComp(nb, ne, tb, te) == 0;
-    if (*ne) ++ne;
-  }
-  return equiv;
-}
-
-/*
-  Register a type mapping with the type-checking
-*/
-SWIGRUNTIME swig_type_info *
-SWIG_TypeRegisterTL(swig_type_info **tl, swig_type_info *ti) {
-  swig_type_info *tc, *head, *ret, *next;
-  /* Check to see if this type has already been registered */
-  tc = *tl;
-  while (tc) {
-    /* check simple type equivalence */
-    int typeequiv = (strcmp(tc->name, ti->name) == 0);   
-    /* check full type equivalence, resolving typedefs */
-    if (!typeequiv) {
-      /* only if tc is not a typedef (no '|' on it) */
-      if (tc->str && ti->str && !strstr(tc->str,"|")) {
-       typeequiv = SWIG_TypeEquiv(ti->str,tc->str);
-      }
-    }
-    if (typeequiv) {
-      /* Already exists in the table.  Just add additional types to the list */
-      if (ti->clientdata) tc->clientdata = ti->clientdata;
-      head = tc;
-      next = tc->next;
-      goto l1;
-    }
-    tc = tc->prev;
-  }
-  head = ti;
-  next = 0;
-
-  /* Place in list */
-  ti->prev = *tl;
-  *tl = ti;
-
-  /* Build linked lists */
-  l1:
-  ret = head;
-  tc = ti + 1;
-  /* Patch up the rest of the links */
-  while (tc->name) {
-    head->next = tc;
-    tc->prev = head;
-    head = tc;
-    tc++;
-  }
-  if (next) next->prev = head;
-  head->next = next;
-
-  return ret;
-}
-
-/*
-  Check the typename
-*/
-SWIGRUNTIME swig_type_info *
-SWIG_TypeCheck(const char *c, swig_type_info *ty) {
-  swig_type_info *s;
-  if (!ty) return 0;        /* Void pointer */
-  s = ty->next;             /* First element always just a name */
-  do {
-    if (strcmp(s->name,c) == 0) {
-      if (s == ty->next) return s;
-      /* Move s to the top of the linked list */
-      s->prev->next = s->next;
-      if (s->next) {
-        s->next->prev = s->prev;
-      }
-      /* Insert s as second element in the list */
-      s->next = ty->next;
-      if (ty->next) ty->next->prev = s;
-      ty->next = s;
-      s->prev = ty;
-      return s;
-    }
-    s = s->next;
-  } while (s && (s != ty->next));
-  return 0;
-}
-
-/*
-  Cast a pointer up an inheritance hierarchy
-*/
-SWIGRUNTIMEINLINE void *
-SWIG_TypeCast(swig_type_info *ty, void *ptr) {
-  return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr);
-}
-
-/* 
-   Dynamic pointer casting. Down an inheritance hierarchy
-*/
-SWIGRUNTIME swig_type_info *
-SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
-  swig_type_info *lastty = ty;
-  if (!ty || !ty->dcast) return ty;
-  while (ty && (ty->dcast)) {
-    ty = (*ty->dcast)(ptr);
-    if (ty) lastty = ty;
-  }
-  return lastty;
-}
-
-/*
-  Return the name associated with this type
-*/
-SWIGRUNTIMEINLINE const char *
-SWIG_TypeName(const swig_type_info *ty) {
-  return ty->name;
-}
-
-/*
-  Return the pretty name associated with this type,
-  that is an unmangled type name in a form presentable to the user.
-*/
-SWIGRUNTIME const char *
-SWIG_TypePrettyName(const swig_type_info *type) {
-  /* The "str" field contains the equivalent pretty names of the
-     type, separated by vertical-bar characters.  We choose
-     to print the last name, as it is often (?) the most
-     specific. */
-  if (type->str != NULL) {
-    const char *last_name = type->str;
-    const char *s;
-    for (s = type->str; *s; s++)
-      if (*s == '|') last_name = s+1;
-    return last_name;
-  }
-  else
-    return type->name;
-}
-
-/*
-  Search for a swig_type_info structure
-*/
-SWIGRUNTIME swig_type_info *
-SWIG_TypeQueryTL(swig_type_info *tl, const char *name) {
-  swig_type_info *ty = tl;
-  while (ty) {
-    if (ty->str && (SWIG_TypeEquiv(ty->str,name))) return ty;
-    if (ty->name && (strcmp(name,ty->name) == 0)) return ty;
-    ty = ty->prev;
-  }
-  return 0;
-}
-
-/* 
-   Set the clientdata field for a type
-*/
-SWIGRUNTIME void
-SWIG_TypeClientDataTL(swig_type_info *tl, swig_type_info *ti, void *clientdata) {
-  swig_type_info *tc, *equiv;
-  if (ti->clientdata) return;
-  /* if (ti->clientdata == clientdata) return; */
-  ti->clientdata = clientdata;
-  equiv = ti->next;
-  while (equiv) {
-    if (!equiv->converter) {
-      tc = tl;
-      while (tc) {
-        if ((strcmp(tc->name, equiv->name) == 0))
-          SWIG_TypeClientDataTL(tl,tc,clientdata);
-        tc = tc->prev;
-      }
-    }
-    equiv = equiv->next;
-  }
-}
-
-/* 
-   Pack binary data into a string
-*/
-SWIGRUNTIME char *
-SWIG_PackData(char *c, void *ptr, size_t sz) {
-  static char hex[17] = "0123456789abcdef";
-  unsigned char *u = (unsigned char *) ptr;
-  const unsigned char *eu =  u + sz;
-  register unsigned char uu;
-  for (; u != eu; ++u) {
-    uu = *u;
-    *(c++) = hex[(uu & 0xf0) >> 4];
-    *(c++) = hex[uu & 0xf];
-  }
-  return c;
-}
-
-/* 
-   Unpack binary data from a string
-*/
-SWIGRUNTIME const char *
-SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
-  register unsigned char *u = (unsigned char *) ptr;
-  register const unsigned char *eu =  u + sz;
-  for (; u != eu; ++u) {
-    register int d = *(c++);
-    register unsigned char uu = 0;
-    if ((d >= '0') && (d <= '9'))
-      uu = ((d - '0') << 4);
-    else if ((d >= 'a') && (d <= 'f'))
-      uu = ((d - ('a'-10)) << 4);
-    else 
-      return (char *) 0;
-    d = *(c++);
-    if ((d >= '0') && (d <= '9'))
-      uu |= (d - '0');
-    else if ((d >= 'a') && (d <= 'f'))
-      uu |= (d - ('a'-10));
-    else 
-      return (char *) 0;
-    *u = uu;
-  }
-  return c;
-}
-
-/*
-  This function will propagate the clientdata field of type to any new
-  swig_type_info structures that have been added into the list of
-  equivalent types.  It is like calling SWIG_TypeClientData(type,
-  clientdata) a second time.
-*/
-SWIGRUNTIME void
-SWIG_PropagateClientDataTL(swig_type_info *tl, swig_type_info *type) {
-  swig_type_info *equiv = type->next;
-  swig_type_info *tc;
-  if (!type->clientdata) return;
-  while (equiv) {
-    if (!equiv->converter) {
-      tc = tl;
-      while (tc) {
-        if ((strcmp(tc->name, equiv->name) == 0) && !tc->clientdata)
-          SWIG_TypeClientDataTL(tl,tc, type->clientdata);
-        tc = tc->prev;
-      }
-    }
-    equiv = equiv->next;
-  }
-}
-
-/* 
-   Pack 'void *' into a string buffer.
-*/
-SWIGRUNTIME char *
-SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
-  char *r = buff;
-  if ((2*sizeof(void *) + 2) > bsz) return 0;
-  *(r++) = '_';
-  r = SWIG_PackData(r,&ptr,sizeof(void *));
-  if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
-  strcpy(r,name);
-  return buff;
-}
-
-SWIGRUNTIME const char *
-SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
-  if (*c != '_') {
-    if (strcmp(c,"NULL") == 0) {
-      *ptr = (void *) 0;
-      return name;
-    } else {
-      return 0;
-    }
-  }
-  return SWIG_UnpackData(++c,ptr,sizeof(void *));
-}
-
-SWIGRUNTIME char *
-SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
-  char *r = buff;
-  size_t lname = (name ? strlen(name) : 0);
-  if ((2*sz + 2 + lname) > bsz) return 0;
-  *(r++) = '_';
-  r = SWIG_PackData(r,ptr,sz);
-  if (lname) {
-    strncpy(r,name,lname+1);
-  } else {
-    *r = 0;
-  }
-  return buff;
-}
-
-SWIGRUNTIME const char *
-SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
-  if (*c != '_') {
-    if (strcmp(c,"NULL") == 0) {
-      memset(ptr,0,sz);
-      return name;
-    } else {
-      return 0;
-    }
-  }
-  return SWIG_UnpackData(++c,ptr,sz);
-}
-
-#ifdef __cplusplus
-}
-#endif
-
-/***********************************************************************
- * common.swg
- *
- *     This file contains generic SWIG runtime support for pointer
- *     type checking as well as a few commonly used macros to control
- *     external linkage.
- *
- * Author : David Beazley (beazley@cs.uchicago.edu)
- *
- * Copyright (c) 1999-2000, The University of Chicago
- * 
- * This file may be freely redistributed without license or fee provided
- * this copyright message remains intact.
- ************************************************************************/
-
-
-#if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
-#  if !defined(STATIC_LINKED)
-#    define SWIGEXPORT(a) __declspec(dllexport) a
-#  else
-#    define SWIGEXPORT(a) a
-#  endif
-#else
-#  define SWIGEXPORT(a) a
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-/*************************************************************************/
-
-
-/* The static type info list */
-
-static swig_type_info *swig_type_list = 0;
-static swig_type_info **swig_type_list_handle = &swig_type_list;
-  
-
-/* Register a type mapping with the type-checking */
-static swig_type_info *
-SWIG_TypeRegister(swig_type_info *ti) {
-  return SWIG_TypeRegisterTL(swig_type_list_handle, ti);
-}
-
-/* Search for a swig_type_info structure */
-static swig_type_info *
-SWIG_TypeQuery(const char *name) {
-  return SWIG_TypeQueryTL(*swig_type_list_handle, name);
-}
-
-/* Set the clientdata field for a type */
-static void
-SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
-  SWIG_TypeClientDataTL(*swig_type_list_handle, ti, clientdata);
-}
-
-/* This function will propagate the clientdata field of type to
-* any new swig_type_info structures that have been added into the list
-* of equivalent types.  It is like calling
-* SWIG_TypeClientData(type, clientdata) a second time.
-*/
-static void
-SWIG_PropagateClientData(swig_type_info *type) {
-  SWIG_PropagateClientDataTL(*swig_type_list_handle, type);
-}
-
-#ifdef __cplusplus
-}
-#endif
-
-/* -----------------------------------------------------------------------------
- * SWIG API. Portion that goes into the runtime
- * ----------------------------------------------------------------------------- */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* -----------------------------------------------------------------------------
- * for internal method declarations
- * ----------------------------------------------------------------------------- */
-
-#ifndef SWIGINTERN
-#define SWIGINTERN static 
-#endif
-
-#ifndef SWIGINTERNSHORT
-#ifdef __cplusplus
-#define SWIGINTERNSHORT static inline 
-#else /* C case */
-#define SWIGINTERNSHORT static 
-#endif /* __cplusplus */
-#endif
-
-
-/*
-  Exception handling in wrappers
-*/
-#define SWIG_fail                goto fail
-#define SWIG_arg_fail(arg)       SWIG_Python_ArgFail(arg)
-#define SWIG_append_errmsg(msg)   SWIG_Python_AddErrMesg(msg,0)
-#define SWIG_preppend_errmsg(msg) SWIG_Python_AddErrMesg(msg,1)
-#define SWIG_type_error(type,obj) SWIG_Python_TypeError(type,obj)
-#define SWIG_null_ref(type)       SWIG_Python_NullRef(type)
-
-/*
-  Contract support
-*/
-#define SWIG_contract_assert(expr, msg) \
- if (!(expr)) { PyErr_SetString(PyExc_RuntimeError, (char *) msg ); goto fail; } else
-
-/* -----------------------------------------------------------------------------
- * Constant declarations
- * ----------------------------------------------------------------------------- */
-
-/* Constant Types */
-#define SWIG_PY_INT     1
-#define SWIG_PY_FLOAT   2
-#define SWIG_PY_STRING  3
-#define SWIG_PY_POINTER 4
-#define SWIG_PY_BINARY  5
-
-/* Constant information structure */
-typedef struct swig_const_info {
-    int type;
-    char *name;
-    long lvalue;
-    double dvalue;
-    void   *pvalue;
-    swig_type_info **ptype;
-} swig_const_info;
-
-
-/* -----------------------------------------------------------------------------
- * Alloc. memory flags
- * ----------------------------------------------------------------------------- */
-#define SWIG_OLDOBJ  1
-#define SWIG_NEWOBJ  SWIG_OLDOBJ + 1
-#define SWIG_PYSTR   SWIG_NEWOBJ + 1
-
-#ifdef __cplusplus
-}
-#endif
-
-
-/***********************************************************************
- * pyrun.swg
- *
- *     This file contains the runtime support for Python modules
- *     and includes code for managing global variables and pointer
- *     type checking.
- *
- * Author : David Beazley (beazley@cs.uchicago.edu)
- ************************************************************************/
-
-/* Common SWIG API */
-#define SWIG_ConvertPtr(obj, pp, type, flags)    SWIG_Python_ConvertPtr(obj, pp, type, flags)
-#define SWIG_NewPointerObj(p, type, flags)       SWIG_Python_NewPointerObj(p, type, flags)
-#define SWIG_MustGetPtr(p, type, argnum, flags)  SWIG_Python_MustGetPtr(p, type, argnum, flags)
-
-/* Python-specific SWIG API */
-#define SWIG_ConvertPacked(obj, ptr, sz, ty, flags)   SWIG_Python_ConvertPacked(obj, ptr, sz, ty, flags)
-#define SWIG_NewPackedObj(ptr, sz, type)              SWIG_Python_NewPackedObj(ptr, sz, type)
-
-
-/* -----------------------------------------------------------------------------
- * Pointer declarations
- * ----------------------------------------------------------------------------- */
-/*
-  Use SWIG_NO_COBJECT_TYPES to force the use of strings to represent
-  C/C++ pointers in the python side. Very useful for debugging, but
-  not always safe.
-*/
-#if !defined(SWIG_NO_COBJECT_TYPES) && !defined(SWIG_COBJECT_TYPES)
-#  define SWIG_COBJECT_TYPES
-#endif
-
-/* Flags for pointer conversion */
-#define SWIG_POINTER_EXCEPTION     0x1
-#define SWIG_POINTER_DISOWN        0x2
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* -----------------------------------------------------------------------------
- * Create a new pointer string 
- * ----------------------------------------------------------------------------- */
-
-#ifndef SWIG_BUFFER_SIZE
-#define SWIG_BUFFER_SIZE 1024
-#endif
-
-#if defined(SWIG_COBJECT_TYPES)
-#if !defined(SWIG_COBJECT_PYTHON)
-/* -----------------------------------------------------------------------------
- * Implements a simple Swig Object type, and use it instead of PyCObject
- * ----------------------------------------------------------------------------- */
-
-typedef struct {
-  PyObject_HEAD
-  void *ptr;
-  const char *desc;
-} PySwigObject;
-
-/* Declarations for objects of type PySwigObject */
-
-SWIGRUNTIME int
-PySwigObject_print(PySwigObject *v, FILE *fp, int flags)
-{
-  char result[SWIG_BUFFER_SIZE];
-  if (SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result))) {
-    fputs("<Swig Object at ", fp); fputs(result, fp); fputs(">", fp);
-    return 0; 
-  } else {
-    return 1; 
-  }
-}
-  
-SWIGRUNTIME PyObject *
-PySwigObject_repr(PySwigObject *v)
-{
-  char result[SWIG_BUFFER_SIZE];
-  return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ?
-    PyString_FromFormat("<Swig Object at %s>", result) : 0;
-}
-
-SWIGRUNTIME PyObject *
-PySwigObject_str(PySwigObject *v)
-{
-  char result[SWIG_BUFFER_SIZE];
-  return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ?
-    PyString_FromString(result) : 0;
-}
-
-SWIGRUNTIME PyObject *
-PySwigObject_long(PySwigObject *v)
-{
-  return PyLong_FromUnsignedLong((unsigned long) v->ptr);
-}
-
-SWIGRUNTIME PyObject *
-PySwigObject_oct(PySwigObject *v)
-{
-  char buf[100];
-  unsigned long x = (unsigned long)v->ptr;
-  if (x == 0)
-    strcpy(buf, "0");
-  else
-    PyOS_snprintf(buf, sizeof(buf), "0%lo", x);
-  return PyString_FromString(buf);
-}
-
-SWIGRUNTIME PyObject *
-PySwigObject_hex(PySwigObject *v)
-{
-  char buf[100];
-  PyOS_snprintf(buf, sizeof(buf), "0x%lx", (unsigned long)v->ptr);
-  return PyString_FromString(buf);
-}
-
-SWIGRUNTIME int
-PySwigObject_compare(PySwigObject *v, PySwigObject *w)
-{
-  int c = strcmp(v->desc, w->desc);
-  if (c) {
-    return c;
-  } else {
-    void *i = v->ptr;
-    void *j = w->ptr;
-    return (i < j) ? -1 : (i > j) ? 1 : 0;
-  }
-}
-
-SWIGRUNTIME void
-PySwigObject_dealloc(PySwigObject *self)
-{
-  PyObject_DEL(self);
-}
-
-SWIGRUNTIME PyTypeObject*
-PySwigObject_GetType() {
-  static char PySwigObject_Type__doc__[] = 
-    "Swig object carries a C/C++ instance pointer";
-  
-  static PyNumberMethods PySwigObject_as_number = {
-    (binaryfunc)0, /*nb_add*/
-    (binaryfunc)0, /*nb_subtract*/
-    (binaryfunc)0, /*nb_multiply*/
-    (binaryfunc)0, /*nb_divide*/
-    (binaryfunc)0, /*nb_remainder*/
-    (binaryfunc)0, /*nb_divmod*/
-    (ternaryfunc)0,/*nb_power*/
-    (unaryfunc)0,  /*nb_negative*/
-    (unaryfunc)0,  /*nb_positive*/
-    (unaryfunc)0,  /*nb_absolute*/
-    (inquiry)0,    /*nb_nonzero*/
-    0,            /*nb_invert*/
-    0,            /*nb_lshift*/
-    0,            /*nb_rshift*/
-    0,            /*nb_and*/
-    0,            /*nb_xor*/
-    0,            /*nb_or*/
-    (coercion)0,   /*nb_coerce*/
-    (unaryfunc)PySwigObject_long, /*nb_int*/
-    (unaryfunc)PySwigObject_long, /*nb_long*/
-    (unaryfunc)0,                 /*nb_float*/
-    (unaryfunc)PySwigObject_oct,  /*nb_oct*/
-    (unaryfunc)PySwigObject_hex,  /*nb_hex*/
-#if PY_VERSION_HEX >= 0x02000000
-    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */ 
-#endif
-  };
-
-  static int type_init = 0;  
-  static PyTypeObject PySwigObject_Type;
-
-  if (!type_init) {
-    PyTypeObject tmp = {
-    PyObject_HEAD_INIT(&PyType_Type)
-    0,                                 /*ob_size*/
-    "PySwigObject",                    /*tp_name*/
-    sizeof(PySwigObject),              /*tp_basicsize*/
-    0,                                 /*tp_itemsize*/
-    /* methods */
-    (destructor)PySwigObject_dealloc,  /*tp_dealloc*/
-    (printfunc)PySwigObject_print,     /*tp_print*/
-    (getattrfunc)0,                    /*tp_getattr*/
-    (setattrfunc)0,                    /*tp_setattr*/
-    (cmpfunc)PySwigObject_compare,     /*tp_compare*/
-    (reprfunc)PySwigObject_repr,       /*tp_repr*/
-    &PySwigObject_as_number,           /*tp_as_number*/
-    0,                                 /*tp_as_sequence*/
-    0,                                 /*tp_as_mapping*/
-    (hashfunc)0,                       /*tp_hash*/
-    (ternaryfunc)0,                    /*tp_call*/
-    (reprfunc)PySwigObject_str,                /*tp_str*/
-    /* Space for future expansion */
-    0L,0L,0L,0L,
-    PySwigObject_Type__doc__,          /* Documentation string */
-#if PY_VERSION_HEX >= 0x02000000
-    0,                                  /* tp_traverse */
-    0,                                  /* tp_clear */
-#endif
-#if PY_VERSION_HEX >= 0x02010000
-    0,                                  /* tp_richcompare */
-    0,                                  /* tp_weaklistoffset */
-#endif
-#if PY_VERSION_HEX >= 0x02020000
-    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
-#endif
-#if PY_VERSION_HEX >= 0x02030000
-    0,                                  /* tp_del */
-#endif
-#ifdef COUNT_ALLOCS
-    0,0,0,0                             /* tp_alloc -> tp_next */
-#endif
-    };
-
-    PySwigObject_Type = tmp;
-    type_init = 1;
-  }
-
-  return &PySwigObject_Type;
-}
-
-SWIGRUNTIME PyObject *
-PySwigObject_FromVoidPtrAndDesc(void *ptr, const char *desc)
-{
-  PySwigObject *self = PyObject_NEW(PySwigObject, PySwigObject_GetType());
-  if (self == NULL) return NULL;
-  self->ptr = ptr;
-  self->desc = desc;
-  return (PyObject *)self;
-}
-
-SWIGRUNTIMEINLINE void *
-PySwigObject_AsVoidPtr(PyObject *self)
-{
-  return ((PySwigObject *)self)->ptr;
-}
-
-SWIGRUNTIMEINLINE const char *
-PySwigObject_GetDesc(PyObject *self)
-{
-  return ((PySwigObject *)self)->desc;
-}
-
-SWIGRUNTIMEINLINE int
-PySwigObject_Check(PyObject *op) {
-  return ((op)->ob_type == PySwigObject_GetType()) 
-    || (strcmp((op)->ob_type->tp_name,"PySwigObject") == 0);
-}
-
-/* -----------------------------------------------------------------------------
- * Implements a simple Swig Packed type, and use it instead of string
- * ----------------------------------------------------------------------------- */
-
-typedef struct {
-  PyObject_HEAD
-  void *pack;
-  const char *desc;
-  size_t size;
-} PySwigPacked;
-
-SWIGRUNTIME int
-PySwigPacked_print(PySwigPacked *v, FILE *fp, int flags)
-{
-  char result[SWIG_BUFFER_SIZE];
-  fputs("<Swig Packed ", fp); 
-  if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
-    fputs("at ", fp); 
-    fputs(result, fp); 
-  }
-  fputs(v->desc,fp); 
-  fputs(">", fp);
-  return 0; 
-}
-  
-SWIGRUNTIME PyObject *
-PySwigPacked_repr(PySwigPacked *v)
-{
-  char result[SWIG_BUFFER_SIZE];
-  if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
-    return PyString_FromFormat("<Swig Packed at %s%s>", result, v->desc);
-  } else {
-    return PyString_FromFormat("<Swig Packed %s>", v->desc);
-  }  
-}
-
-SWIGRUNTIME PyObject *
-PySwigPacked_str(PySwigPacked *v)
-{
-  char result[SWIG_BUFFER_SIZE];
-  if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))){
-    return PyString_FromFormat("%s%s", result, v->desc);
-  } else {
-    return PyString_FromFormat("%s", v->desc);
-  }  
-}
-
-SWIGRUNTIME int
-PySwigPacked_compare(PySwigPacked *v, PySwigPacked *w)
-{
-  int c = strcmp(v->desc, w->desc);
-  if (c) {
-    return c;
-  } else {
-    size_t i = v->size;
-    size_t j = w->size;
-    int s = (i < j) ? -1 : (i > j) ? 1 : 0;
-    return s ? s : strncmp((char *)v->pack, (char *)w->pack, 2*v->size);
-  }
-}
-
-SWIGRUNTIME void
-PySwigPacked_dealloc(PySwigPacked *self)
-{
-  free(self->pack);
-  PyObject_DEL(self);
-}
-
-SWIGRUNTIME PyTypeObject*
-PySwigPacked_GetType() {
-  static char PySwigPacked_Type__doc__[] = 
-    "Swig object carries a C/C++ instance pointer";
-  static int type_init = 0;
-  
-  static PyTypeObject PySwigPacked_Type;
-  if (!type_init) {
-    PyTypeObject tmp = {
-    PyObject_HEAD_INIT(&PyType_Type)
-    0,                                 /*ob_size*/
-    "PySwigPacked",                    /*tp_name*/
-    sizeof(PySwigPacked),              /*tp_basicsize*/
-    0,                                 /*tp_itemsize*/
-    /* methods */
-    (destructor)PySwigPacked_dealloc,  /*tp_dealloc*/
-    (printfunc)PySwigPacked_print,     /*tp_print*/
-    (getattrfunc)0,                    /*tp_getattr*/
-    (setattrfunc)0,                    /*tp_setattr*/
-    (cmpfunc)PySwigPacked_compare,     /*tp_compare*/
-    (reprfunc)PySwigPacked_repr,       /*tp_repr*/
-    0,                                 /*tp_as_number*/
-    0,                                 /*tp_as_sequence*/
-    0,                                 /*tp_as_mapping*/
-    (hashfunc)0,                       /*tp_hash*/
-    (ternaryfunc)0,                    /*tp_call*/
-    (reprfunc)PySwigPacked_str,                /*tp_str*/
-    /* Space for future expansion */
-    0L,0L,0L,0L,
-    PySwigPacked_Type__doc__,          /* Documentation string */
-#if PY_VERSION_HEX >= 0x02000000
-    0,                                  /* tp_traverse */
-    0,                                  /* tp_clear */
-#endif
-#if PY_VERSION_HEX >= 0x02010000
-    0,                                  /* tp_richcompare */
-    0,                                  /* tp_weaklistoffset */
-#endif
-#if PY_VERSION_HEX >= 0x02020000         
-    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
-#endif
-#if PY_VERSION_HEX >= 0x02030000
-    0,                                  /* tp_del */
-#endif
-#ifdef COUNT_ALLOCS
-    0,0,0,0                             /* tp_alloc -> tp_next */
-#endif
-    };
-
-    PySwigPacked_Type = tmp;
-    type_init = 1;
-  }
-  
-      
-
-  return &PySwigPacked_Type;
-}
-
-SWIGRUNTIME PyObject *
-PySwigPacked_FromDataAndDesc(void *ptr, size_t size, const char *desc)
-{
-  PySwigPacked *self = PyObject_NEW(PySwigPacked, PySwigPacked_GetType());
-  if (self == NULL) {
-    return NULL;
-  } else {
-    void *pack = malloc(size);
-    memcpy(pack, ptr, size);
-    self->pack = pack;
-    self->desc = desc;
-    self->size = size;
-    return (PyObject *) self;
-  }
-}
-
-SWIGRUNTIMEINLINE const char *
-PySwigPacked_UnpackData(PyObject *obj, void *ptr, size_t size)
-{
-  PySwigPacked *self = (PySwigPacked *)obj;
-  if (self->size != size) return 0;
-  memcpy(ptr, self->pack, size);
-  return self->desc;
-}
-
-SWIGRUNTIMEINLINE const char *
-PySwigPacked_GetDesc(PyObject *self)
-{
-  return ((PySwigPacked *)self)->desc;
-}
-
-SWIGRUNTIMEINLINE int
-PySwigPacked_Check(PyObject *op) {
-  return ((op)->ob_type == PySwigPacked_GetType()) 
-    || (strcmp((op)->ob_type->tp_name,"PySwigPacked") == 0);
-}
-
-#else
-/* -----------------------------------------------------------------------------
- * Use the old Python PyCObject instead of PySwigObject
- * ----------------------------------------------------------------------------- */
-
-#define PySwigObject_GetDesc(obj)                 PyCObject_GetDesc(obj)
-#define PySwigObject_Check(obj)                   PyCObject_Check(obj)
-#define PySwigObject_AsVoidPtr(obj)       PyCObject_AsVoidPtr(obj)
-#define PySwigObject_FromVoidPtrAndDesc(p, d)  PyCObject_FromVoidPtrAndDesc(p, d, NULL)
-
-#endif
-
-#endif
-
-/* -----------------------------------------------------------------------------
- * errors manipulation
- * ----------------------------------------------------------------------------- */
-
-SWIGRUNTIME void
-SWIG_Python_TypeError(const char *type, PyObject *obj)
-{
-  if (type) {
-#if defined(SWIG_COBJECT_TYPES)
-    if (PySwigObject_Check(obj)) {
-      const char *otype = (const char *) PySwigObject_GetDesc(obj);
-      if (otype) {
-       PyErr_Format(PyExc_TypeError, "a '%s' is expected, 'PySwigObject(%s)' is received",
-                    type, otype);
-       return;
-      }
-    } else 
-#endif      
-    {
-      const char *otype = (obj ? obj->ob_type->tp_name : 0); 
-      if (otype) {
-       PyObject *str = PyObject_Str(obj);
-       const char *cstr = str ? PyString_AsString(str) : 0;
-       if (cstr) {
-         PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s(%s)' is received",
-                      type, otype, cstr);
-       } else {
-         PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s' is received",
-                      type, otype);
-       }
-       Py_DECREF(str);
-       return;
-      }
-    }   
-    PyErr_Format(PyExc_TypeError, "a '%s' is expected", type);
-  } else {
-    PyErr_Format(PyExc_TypeError, "unexpected type is received");
-  }
-}
-
-SWIGRUNTIMEINLINE void
-SWIG_Python_NullRef(const char *type)
-{
-  if (type) {
-    PyErr_Format(PyExc_TypeError, "null reference of type '%s' was received",type);
-  } else {
-    PyErr_Format(PyExc_TypeError, "null reference was received");
-  }
-}
-
-SWIGRUNTIME int
-SWIG_Python_AddErrMesg(const char* mesg, int infront)
-{
-  if (PyErr_Occurred()) {
-    PyObject *type = 0;
-    PyObject *value = 0;
-    PyObject *traceback = 0;
-    PyErr_Fetch(&type, &value, &traceback);
-    if (value) {
-      PyObject *old_str = PyObject_Str(value);
-      Py_XINCREF(type);
-      PyErr_Clear();
-      if (infront) {
-       PyErr_Format(type, "%s %s", mesg, PyString_AsString(old_str));
-      } else {
-       PyErr_Format(type, "%s %s", PyString_AsString(old_str), mesg);
-      }
-      Py_DECREF(old_str);
-    }
-    return 1;
-  } else {
-    return 0;
-  }
-}
-
-SWIGRUNTIME int
-SWIG_Python_ArgFail(int argnum)
-{
-  if (PyErr_Occurred()) {
-    /* add information about failing argument */
-    char mesg[256];
-    sprintf(mesg, "argument number %d:", argnum);
-    return SWIG_Python_AddErrMesg(mesg, 1);
-  } else {
-    return 0;
-  }
-}
-
-
-/* -----------------------------------------------------------------------------
- * pointers/data manipulation
- * ----------------------------------------------------------------------------- */
-
-/* Convert a pointer value */
-SWIGRUNTIME int
-SWIG_Python_ConvertPtr(PyObject *obj, void **ptr, swig_type_info *ty, int flags) {
-  swig_type_info *tc;
-  const char *c = 0;
-  static PyObject *SWIG_this = 0;
-  int    newref = 0;
-  PyObject  *pyobj = 0;
-  void *vptr;
-  
-  if (!obj) return 0;
-  if (obj == Py_None) {
-    *ptr = 0;
-    return 0;
-  }
-
-#ifdef SWIG_COBJECT_TYPES
-  if (!(PySwigObject_Check(obj))) {
-    if (!SWIG_this)
-      SWIG_this = PyString_FromString("this");
-    pyobj = obj;
-    obj = PyObject_GetAttr(obj,SWIG_this);
-    newref = 1;
-    if (!obj) goto type_error;
-    if (!PySwigObject_Check(obj)) {
-      Py_DECREF(obj);
-      goto type_error;
-    }
-  }  
-  vptr = PySwigObject_AsVoidPtr(obj);
-  c = (const char *) PySwigObject_GetDesc(obj);
-  if (newref) { Py_DECREF(obj); }
-  goto type_check;
-#else
-  if (!(PyString_Check(obj))) {
-    if (!SWIG_this)
-      SWIG_this = PyString_FromString("this");
-    pyobj = obj;
-    obj = PyObject_GetAttr(obj,SWIG_this);
-    newref = 1;
-    if (!obj) goto type_error;
-    if (!PyString_Check(obj)) {
-      Py_DECREF(obj);
-      goto type_error;
-    }
-  } 
-  c = PyString_AS_STRING(obj);
-  /* Pointer values must start with leading underscore */
-  c = SWIG_UnpackVoidPtr(c, &vptr, ty->name);
-  if (newref) { Py_DECREF(obj); }
-  if (!c) goto type_error;
-#endif
-
-type_check:
-
-  if (ty) {
-    tc = SWIG_TypeCheck(c,ty);
-    if (!tc) goto type_error;
-    *ptr = SWIG_TypeCast(tc,vptr);
-  } else {
-    *ptr = vptr;
-  }
-
-  if ((pyobj) && (flags & SWIG_POINTER_DISOWN)) {
-    PyObject_SetAttrString(pyobj,(char*)"thisown",Py_False);
-  }
-  return 0;
-
-type_error:
-  PyErr_Clear();
-  if (pyobj && !obj) {    
-    obj = pyobj;
-    if (PyCFunction_Check(obj)) {
-      /* here we get the method pointer for callbacks */
-      char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
-      c = doc ? strstr(doc, "swig_ptr: ") : 0;
-      if (c) {
-       c = SWIG_UnpackVoidPtr(c + 10, &vptr, ty->name);
-       if (!c) goto type_error;
-       goto type_check;
-      }
-    }
-  }
-  if (flags & SWIG_POINTER_EXCEPTION) {
-    if (ty) {
-      SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
-    } else {
-      SWIG_Python_TypeError("C/C++ pointer", obj);
-    }
-  }
-  return -1;
-}
-
-/* Convert a pointer value, signal an exception on a type mismatch */
-SWIGRUNTIME void *
-SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags) {
-  void *result;
-  if (SWIG_Python_ConvertPtr(obj, &result, ty, flags) == -1) {
-    PyErr_Clear();
-    if (flags & SWIG_POINTER_EXCEPTION) {
-      SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
-      SWIG_Python_ArgFail(argnum);
-    }
-  }
-  return result;
-}
-
-/* Convert a packed value value */
-SWIGRUNTIME int
-SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty, int flags) {
-  swig_type_info *tc;
-  const char *c = 0;
-
-#if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
-  c = PySwigPacked_UnpackData(obj, ptr, sz);
-#else
-  if ((!obj) || (!PyString_Check(obj))) goto type_error;
-  c = PyString_AS_STRING(obj);
-  /* Pointer values must start with leading underscore */
-  c = SWIG_UnpackDataName(c, ptr, sz, ty->name);
-#endif
-  if (!c) goto type_error;
-  if (ty) {
-    tc = SWIG_TypeCheck(c,ty);
-    if (!tc) goto type_error;
-  }
-  return 0;
-
-type_error:
-  PyErr_Clear();
-  if (flags & SWIG_POINTER_EXCEPTION) {
-    if (ty) {
-      SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
-    } else {
-      SWIG_Python_TypeError("C/C++ packed data", obj);
-    }
-  }
-  return -1;
-}  
-
-/* Create a new array object */
-SWIGRUNTIME PyObject *
-SWIG_Python_NewPointerObj(void *ptr, swig_type_info *type, int own) {
-  PyObject *robj = 0;
-  if (!ptr) {
-    Py_INCREF(Py_None);
-    return Py_None;
-  }
-#ifdef SWIG_COBJECT_TYPES
-  robj = PySwigObject_FromVoidPtrAndDesc((void *) ptr, (char *)type->name);
-#else
-  {
-    char result[SWIG_BUFFER_SIZE];
-    robj = SWIG_PackVoidPtr(result, ptr, type->name, sizeof(result)) ?
-      PyString_FromString(result) : 0;
-  }
-#endif
-  if (!robj || (robj == Py_None)) return robj;
-  if (type->clientdata) {
-    PyObject *inst;
-    PyObject *args = Py_BuildValue((char*)"(O)", robj);
-    Py_DECREF(robj);
-    inst = PyObject_CallObject((PyObject *) type->clientdata, args);
-    Py_DECREF(args);
-    if (inst) {
-      if (own) {
-        PyObject_SetAttrString(inst,(char*)"thisown",Py_True);
-      }
-      robj = inst;
-    }
-  }
-  return robj;
-}
-
-SWIGRUNTIME PyObject *
-SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) {
-  PyObject *robj = 0;
-  if (!ptr) {
-    Py_INCREF(Py_None);
-    return Py_None;
-  }
-#if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
-  robj = PySwigPacked_FromDataAndDesc((void *) ptr, sz, (char *)type->name);
-#else
-  {
-    char result[SWIG_BUFFER_SIZE];
-    robj = SWIG_PackDataName(result, ptr, sz, type->name, sizeof(result)) ?
-      PyString_FromString(result) : 0;
-  }
-#endif
-  return robj;
-}
-
-/* -----------------------------------------------------------------------------*
- *  Get type list 
- * -----------------------------------------------------------------------------*/
-
-#ifdef SWIG_LINK_RUNTIME
-void *SWIG_ReturnGlobalTypeList(void *);
-#endif
-
-SWIGRUNTIME swig_type_info **
-SWIG_Python_GetTypeListHandle() {
-  static void *type_pointer = (void *)0;
-  /* first check if module already created */
-  if (!type_pointer) {
-#ifdef SWIG_LINK_RUNTIME
-    type_pointer = SWIG_ReturnGlobalTypeList((void *)0);
-#else
-    type_pointer = PyCObject_Import((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
-                                   (char*)"type_pointer" SWIG_TYPE_TABLE_NAME);
-    if (PyErr_Occurred()) {
-      PyErr_Clear();
-      type_pointer = (void *)0;
-    }
-  }
-#endif
-  return (swig_type_info **) type_pointer;
-}
-
-/*
-  Search for a swig_type_info structure
- */
-SWIGRUNTIMEINLINE swig_type_info *
-SWIG_Python_GetTypeList() {
-  swig_type_info **tlh = SWIG_Python_GetTypeListHandle();
-  return tlh ? *tlh : (swig_type_info*)0;
-}
-
-#define SWIG_Runtime_GetTypeList SWIG_Python_GetTypeList 
-
-#ifdef __cplusplus
-}
-#endif
-
-
-/* -------- TYPES TABLE (BEGIN) -------- */
-
-#define  SWIGTYPE_p_wxObject swig_types[0] 
-#define  SWIGTYPE_p_unsigned_char swig_types[1] 
-#define  SWIGTYPE_p_wxWindow swig_types[2] 
-#define  SWIGTYPE_p_wxMSHTMLEvent swig_types[3] 
-#define  SWIGTYPE_p_wxCommandEvent swig_types[4] 
-#define  SWIGTYPE_p_unsigned_long swig_types[5] 
-#define  SWIGTYPE_p_unsigned_int swig_types[6] 
-#define  SWIGTYPE_unsigned_int swig_types[7] 
-#define  SWIGTYPE_p_form_ops_t swig_types[8] 
-#define  SWIGTYPE_p_wxDuplexMode swig_types[9] 
-#define  SWIGTYPE_p_char swig_types[10] 
-#define  SWIGTYPE_p_wxIEHtmlWin swig_types[11] 
-#define  SWIGTYPE_p_wxInputStream swig_types[12] 
-#define  SWIGTYPE_p_wxEvtHandler swig_types[13] 
-#define  SWIGTYPE_p_wxString swig_types[14] 
-#define  SWIGTYPE_std__ptrdiff_t swig_types[15] 
-#define  SWIGTYPE_ptrdiff_t swig_types[16] 
-#define  SWIGTYPE_p_wxNotifyEvent swig_types[17] 
-#define  SWIGTYPE_p_wxEvent swig_types[18] 
-#define  SWIGTYPE_p_wxPaperSize swig_types[19] 
-#define  SWIGTYPE_p_int swig_types[20] 
-static swig_type_info *swig_types[22];
-
-/* -------- TYPES TABLE (END) -------- */
-
-
-/*-----------------------------------------------
-              @(target):= _iewin.so
-  ------------------------------------------------*/
-#define SWIG_init    init_iewin
-
-#define SWIG_name    "_iewin"
-
-#include "wx/wxPython/wxPython.h"
-#include "wx/wxPython/pyclasses.h"
-#include "wx/wxPython/pyistream.h"    
-
-#include "IEHtmlWin.h"
-
- static const wxString wxPyPanelNameStr(wxPanelNameStr); 
-
-#include <limits.h>
-
-
-SWIGINTERN int
-  SWIG_CheckLongInRange(long value, long min_value, long max_value,
-                       const char *errmsg)
-{
-  if (value < min_value) {
-    if (errmsg) {
-      PyErr_Format(PyExc_OverflowError, 
-                  "value %ld is less than '%s' minimum %ld", 
-                  value, errmsg, min_value);
-    }
-    return 0;    
-  } else if (value > max_value) {
-    if (errmsg) {
-      PyErr_Format(PyExc_OverflowError,
-                  "value %ld is greater than '%s' maximum %ld", 
-                  value, errmsg, max_value);
-    }
-    return 0;
-  }
-  return 1;
-}
-
-
-SWIGINTERN int
-SWIG_AsVal_long(PyObject* obj, long* val)
-{
-    if (PyNumber_Check(obj)) {
-        if (val) *val = PyInt_AsLong(obj);
-        return 1;
-    }
-    else {
-        SWIG_type_error("number", obj);
-    }
-    return 0;
-}
-
-
-#if INT_MAX != LONG_MAX
-SWIGINTERN int
-  SWIG_AsVal_int(PyObject *obj, int *val)
-{ 
-  const char* errmsg = val ? "int" : (char*)0;
-  long v;
-  if (SWIG_AsVal_long(obj, &v)) {
-    if (SWIG_CheckLongInRange(v, INT_MIN,INT_MAX, errmsg)) {
-      if (val) *val = (int)(v);
-      return 1;
-    } else {
-      return 0;
-    }
-  } else {
-    PyErr_Clear();
-  }
-  if (val) {
-    SWIG_type_error(errmsg, obj);
-  }
-  return 0;    
-}
-#else
-SWIGINTERNSHORT int
-  SWIG_AsVal_int(PyObject *obj, int *val)
-{
-  return SWIG_AsVal_long(obj,(long*)val);
-}
-#endif
-
-
-SWIGINTERNSHORT int
-SWIG_As_int(PyObject* obj)
-{
-  int v;
-  if (!SWIG_AsVal_int(obj, &v)) {
-    /*
-      this is needed to make valgrind/purify happier. 
-     */
-    memset((void*)&v, 0, sizeof(int));
-  }
-  return v;
-}
-
-  
-SWIGINTERNSHORT int
-SWIG_Check_int(PyObject* obj)
-{
-  return SWIG_AsVal_int(obj, (int*)0);
-}
-
-
-  /*@c:\\PROJECTS\\SWIG-cvs\\Lib\\python\\pymacros.swg,66,SWIG_define@*/
-#define SWIG_From_long PyInt_FromLong
-/*@@*/
-
-
-  /*@c:\\PROJECTS\\SWIG-cvs\\Lib\\python\\pymacros.swg,66,SWIG_define@*/
-#define SWIG_From_int PyInt_FromLong
-/*@@*/
-
-
-SWIGINTERNSHORT long
-SWIG_As_long(PyObject* obj)
-{
-  long v;
-  if (!SWIG_AsVal_long(obj, &v)) {
-    /*
-      this is needed to make valgrind/purify happier. 
-     */
-    memset((void*)&v, 0, sizeof(long));
-  }
-  return v;
-}
-
-  
-SWIGINTERNSHORT int
-SWIG_Check_long(PyObject* obj)
-{
-  return SWIG_AsVal_long(obj, (long*)0);
-}
-
-
-SWIGINTERN int
-  SWIG_AsVal_bool(PyObject *obj, bool *val)
-{
-  if (obj == Py_True) {
-    if (val) *val = true;
-    return 1;
-  }
-  if (obj == Py_False) {
-    if (val) *val = false;
-    return 1;
-  }
-  int res = 0;
-  if (SWIG_AsVal_int(obj, &res)) {    
-    if (val) *val = res ? true : false;
-    return 1;
-  } else {
-    PyErr_Clear();
-  }  
-  if (val) {
-    SWIG_type_error("bool", obj);
-  }
-  return 0;
-}
-
-
-SWIGINTERNSHORT bool
-SWIG_As_bool(PyObject* obj)
-{
-  bool v;
-  if (!SWIG_AsVal_bool(obj, &v)) {
-    /*
-      this is needed to make valgrind/purify happier. 
-     */
-    memset((void*)&v, 0, sizeof(bool));
-  }
-  return v;
-}
-
-  
-SWIGINTERNSHORT int
-SWIG_Check_bool(PyObject* obj)
-{
-  return SWIG_AsVal_bool(obj, (bool*)0);
-}
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-static PyObject *_wrap_new_MSHTMLEvent(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxEventType arg1 = (wxEventType) wxEVT_NULL ;
-    int arg2 = (int) 0 ;
-    wxMSHTMLEvent *result;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    char *kwnames[] = {
-        (char *) "commandType",(char *) "id", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|OO:new_MSHTMLEvent",kwnames,&obj0,&obj1)) goto fail;
-    if (obj0) {
-        {
-            arg1 = (wxEventType)(SWIG_As_int(obj0)); 
-            if (SWIG_arg_fail(1)) SWIG_fail;
-        }
-    }
-    if (obj1) {
-        {
-            arg2 = (int)(SWIG_As_int(obj1)); 
-            if (SWIG_arg_fail(2)) SWIG_fail;
-        }
-    }
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (wxMSHTMLEvent *)new wxMSHTMLEvent(arg1,arg2);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxMSHTMLEvent, 1);
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_MSHTMLEvent_GetText1(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxMSHTMLEvent *arg1 = (wxMSHTMLEvent *) 0 ;
-    wxString result;
-    PyObject * obj0 = 0 ;
-    char *kwnames[] = {
-        (char *) "self", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MSHTMLEvent_GetText1",kwnames,&obj0)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMSHTMLEvent, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (arg1)->GetText1();
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-#if wxUSE_UNICODE
-        resultobj = PyUnicode_FromWideChar((&result)->c_str(), (&result)->Len());
-#else
-        resultobj = PyString_FromStringAndSize((&result)->c_str(), (&result)->Len());
-#endif
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_MSHTMLEvent_GetLong1(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxMSHTMLEvent *arg1 = (wxMSHTMLEvent *) 0 ;
-    long result;
-    PyObject * obj0 = 0 ;
-    char *kwnames[] = {
-        (char *) "self", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MSHTMLEvent_GetLong1",kwnames,&obj0)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMSHTMLEvent, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (long)(arg1)->GetLong1();
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = SWIG_From_long((long)(result)); 
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_MSHTMLEvent_GetLong2(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxMSHTMLEvent *arg1 = (wxMSHTMLEvent *) 0 ;
-    long result;
-    PyObject * obj0 = 0 ;
-    char *kwnames[] = {
-        (char *) "self", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MSHTMLEvent_GetLong2",kwnames,&obj0)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMSHTMLEvent, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (long)(arg1)->GetLong2();
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = SWIG_From_long((long)(result)); 
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject * MSHTMLEvent_swigregister(PyObject *, PyObject *args) {
-    PyObject *obj;
-    if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
-    SWIG_TypeClientData(SWIGTYPE_p_wxMSHTMLEvent, obj);
-    Py_INCREF(obj);
-    return Py_BuildValue((char *)"");
-}
-static PyObject *_wrap_new_IEHtmlWin(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxWindow *arg1 = (wxWindow *) 0 ;
-    int arg2 = (int) -1 ;
-    wxPoint const &arg3_defvalue = wxDefaultPosition ;
-    wxPoint *arg3 = (wxPoint *) &arg3_defvalue ;
-    wxSize const &arg4_defvalue = wxDefaultSize ;
-    wxSize *arg4 = (wxSize *) &arg4_defvalue ;
-    long arg5 = (long) 0 ;
-    wxString const &arg6_defvalue = wxPyPanelNameStr ;
-    wxString *arg6 = (wxString *) &arg6_defvalue ;
-    wxIEHtmlWin *result;
-    wxPoint temp3 ;
-    wxSize temp4 ;
-    bool temp6 = false ;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    PyObject * obj2 = 0 ;
-    PyObject * obj3 = 0 ;
-    PyObject * obj4 = 0 ;
-    PyObject * obj5 = 0 ;
-    char *kwnames[] = {
-        (char *) "parent",(char *) "id",(char *) "pos",(char *) "size",(char *) "style",(char *) "name", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOO:new_IEHtmlWin",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    if (obj1) {
-        {
-            arg2 = (int)(SWIG_As_int(obj1)); 
-            if (SWIG_arg_fail(2)) SWIG_fail;
-        }
-    }
-    if (obj2) {
-        {
-            arg3 = &temp3;
-            if ( ! wxPoint_helper(obj2, &arg3)) SWIG_fail;
-        }
-    }
-    if (obj3) {
-        {
-            arg4 = &temp4;
-            if ( ! wxSize_helper(obj3, &arg4)) SWIG_fail;
-        }
-    }
-    if (obj4) {
-        {
-            arg5 = (long)(SWIG_As_long(obj4)); 
-            if (SWIG_arg_fail(5)) SWIG_fail;
-        }
-    }
-    if (obj5) {
-        {
-            arg6 = wxString_in_helper(obj5);
-            if (arg6 == NULL) SWIG_fail;
-            temp6 = true;
-        }
-    }
-    {
-        if (!wxPyCheckForApp()) SWIG_fail;
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (wxIEHtmlWin *)new wxIEHtmlWin(arg1,arg2,(wxPoint const &)*arg3,(wxSize const &)*arg4,arg5,(wxString const &)*arg6);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxIEHtmlWin, 1);
-    {
-        if (temp6)
-        delete arg6;
-    }
-    return resultobj;
-    fail:
-    {
-        if (temp6)
-        delete arg6;
-    }
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_LoadUrl(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    wxString *arg2 = 0 ;
-    bool temp2 = false ;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    char *kwnames[] = {
-        (char *) "self","arg2", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:IEHtmlWin_LoadUrl",kwnames,&obj0,&obj1)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        arg2 = wxString_in_helper(obj1);
-        if (arg2 == NULL) SWIG_fail;
-        temp2 = true;
-    }
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        (arg1)->LoadUrl((wxString const &)*arg2);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    Py_INCREF(Py_None); resultobj = Py_None;
-    {
-        if (temp2)
-        delete arg2;
-    }
-    return resultobj;
-    fail:
-    {
-        if (temp2)
-        delete arg2;
-    }
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_LoadString(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    wxString arg2 ;
-    bool result;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    char *kwnames[] = {
-        (char *) "self",(char *) "html", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:IEHtmlWin_LoadString",kwnames,&obj0,&obj1)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        wxString* sptr = wxString_in_helper(obj1);
-        if (sptr == NULL) SWIG_fail;
-        arg2 = *sptr;
-        delete sptr;
-    }
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->LoadString(arg2);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_LoadStream(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    wxInputStream *arg2 = (wxInputStream *) 0 ;
-    bool result;
-    wxPyInputStream *temp2 ;
-    bool created2 ;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    char *kwnames[] = {
-        (char *) "self",(char *) "is", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:IEHtmlWin_LoadStream",kwnames,&obj0,&obj1)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        if (wxPyConvertSwigPtr(obj1, (void **)&temp2, wxT("wxPyInputStream"))) {
-            arg2 = temp2->m_wxis;
-            created2 = false;
-        } else {
-            PyErr_Clear();  // clear the failure of the wxPyConvert above
-            arg2 = wxPyCBInputStream_create(obj1, false);
-            if (arg2 == NULL) {
-                PyErr_SetString(PyExc_TypeError, "Expected wxInputStream or Python file-like object.");
-                SWIG_fail;
-            }
-            created2 = true;
-        }
-    }
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->LoadStream(arg2);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-    }
-    {
-        if (created2)
-        delete arg2;
-    }
-    return resultobj;
-    fail:
-    {
-        if (created2)
-        delete arg2;
-    }
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_SetCharset(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    wxString arg2 ;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    char *kwnames[] = {
-        (char *) "self",(char *) "charset", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:IEHtmlWin_SetCharset",kwnames,&obj0,&obj1)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        wxString* sptr = wxString_in_helper(obj1);
-        if (sptr == NULL) SWIG_fail;
-        arg2 = *sptr;
-        delete sptr;
-    }
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        (arg1)->SetCharset(arg2);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    Py_INCREF(Py_None); resultobj = Py_None;
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_SetEditMode(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    bool arg2 ;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    char *kwnames[] = {
-        (char *) "self",(char *) "seton", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:IEHtmlWin_SetEditMode",kwnames,&obj0,&obj1)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        arg2 = (bool)(SWIG_As_bool(obj1)); 
-        if (SWIG_arg_fail(2)) SWIG_fail;
-    }
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        (arg1)->SetEditMode(arg2);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    Py_INCREF(Py_None); resultobj = Py_None;
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_GetEditMode(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    bool result;
-    PyObject * obj0 = 0 ;
-    char *kwnames[] = {
-        (char *) "self", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:IEHtmlWin_GetEditMode",kwnames,&obj0)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->GetEditMode();
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_GetStringSelection(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    bool arg2 = (bool) false ;
-    wxString result;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    char *kwnames[] = {
-        (char *) "self",(char *) "asHTML", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:IEHtmlWin_GetStringSelection",kwnames,&obj0,&obj1)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    if (obj1) {
-        {
-            arg2 = (bool)(SWIG_As_bool(obj1)); 
-            if (SWIG_arg_fail(2)) SWIG_fail;
-        }
-    }
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (arg1)->GetStringSelection(arg2);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-#if wxUSE_UNICODE
-        resultobj = PyUnicode_FromWideChar((&result)->c_str(), (&result)->Len());
-#else
-        resultobj = PyString_FromStringAndSize((&result)->c_str(), (&result)->Len());
-#endif
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_GetText(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    bool arg2 = (bool) false ;
-    wxString result;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    char *kwnames[] = {
-        (char *) "self",(char *) "asHTML", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:IEHtmlWin_GetText",kwnames,&obj0,&obj1)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    if (obj1) {
-        {
-            arg2 = (bool)(SWIG_As_bool(obj1)); 
-            if (SWIG_arg_fail(2)) SWIG_fail;
-        }
-    }
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (arg1)->GetText(arg2);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-#if wxUSE_UNICODE
-        resultobj = PyUnicode_FromWideChar((&result)->c_str(), (&result)->Len());
-#else
-        resultobj = PyString_FromStringAndSize((&result)->c_str(), (&result)->Len());
-#endif
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_GoBack(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    bool result;
-    PyObject * obj0 = 0 ;
-    char *kwnames[] = {
-        (char *) "self", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:IEHtmlWin_GoBack",kwnames,&obj0)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->GoBack();
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_GoForward(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    bool result;
-    PyObject * obj0 = 0 ;
-    char *kwnames[] = {
-        (char *) "self", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:IEHtmlWin_GoForward",kwnames,&obj0)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->GoForward();
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_GoHome(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    bool result;
-    PyObject * obj0 = 0 ;
-    char *kwnames[] = {
-        (char *) "self", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:IEHtmlWin_GoHome",kwnames,&obj0)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->GoHome();
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_GoSearch(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    bool result;
-    PyObject * obj0 = 0 ;
-    char *kwnames[] = {
-        (char *) "self", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:IEHtmlWin_GoSearch",kwnames,&obj0)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->GoSearch();
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_RefreshPage(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    wxIEHtmlRefreshLevel arg2 ;
-    bool result;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    char *kwnames[] = {
-        (char *) "self",(char *) "level", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:IEHtmlWin_RefreshPage",kwnames,&obj0,&obj1)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        arg2 = (wxIEHtmlRefreshLevel)(SWIG_As_int(obj1)); 
-        if (SWIG_arg_fail(2)) SWIG_fail;
-    }
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->Refresh((wxIEHtmlRefreshLevel )arg2);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_IEHtmlWin_Stop(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxIEHtmlWin *arg1 = (wxIEHtmlWin *) 0 ;
-    bool result;
-    PyObject * obj0 = 0 ;
-    char *kwnames[] = {
-        (char *) "self", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:IEHtmlWin_Stop",kwnames,&obj0)) goto fail;
-    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxIEHtmlWin, SWIG_POINTER_EXCEPTION | 0);
-    if (SWIG_arg_fail(1)) SWIG_fail;
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->Stop();
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-    }
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject * IEHtmlWin_swigregister(PyObject *, PyObject *args) {
-    PyObject *obj;
-    if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
-    SWIG_TypeClientData(SWIGTYPE_p_wxIEHtmlWin, obj);
-    Py_INCREF(obj);
-    return Py_BuildValue((char *)"");
-}
-static PyMethodDef SwigMethods[] = {
-        { (char *)"new_MSHTMLEvent", (PyCFunction) _wrap_new_MSHTMLEvent, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"MSHTMLEvent_GetText1", (PyCFunction) _wrap_MSHTMLEvent_GetText1, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"MSHTMLEvent_GetLong1", (PyCFunction) _wrap_MSHTMLEvent_GetLong1, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"MSHTMLEvent_GetLong2", (PyCFunction) _wrap_MSHTMLEvent_GetLong2, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"MSHTMLEvent_swigregister", MSHTMLEvent_swigregister, METH_VARARGS, NULL},
-        { (char *)"new_IEHtmlWin", (PyCFunction) _wrap_new_IEHtmlWin, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_LoadUrl", (PyCFunction) _wrap_IEHtmlWin_LoadUrl, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_LoadString", (PyCFunction) _wrap_IEHtmlWin_LoadString, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_LoadStream", (PyCFunction) _wrap_IEHtmlWin_LoadStream, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_SetCharset", (PyCFunction) _wrap_IEHtmlWin_SetCharset, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_SetEditMode", (PyCFunction) _wrap_IEHtmlWin_SetEditMode, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_GetEditMode", (PyCFunction) _wrap_IEHtmlWin_GetEditMode, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_GetStringSelection", (PyCFunction) _wrap_IEHtmlWin_GetStringSelection, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_GetText", (PyCFunction) _wrap_IEHtmlWin_GetText, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_GoBack", (PyCFunction) _wrap_IEHtmlWin_GoBack, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_GoForward", (PyCFunction) _wrap_IEHtmlWin_GoForward, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_GoHome", (PyCFunction) _wrap_IEHtmlWin_GoHome, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_GoSearch", (PyCFunction) _wrap_IEHtmlWin_GoSearch, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_RefreshPage", (PyCFunction) _wrap_IEHtmlWin_RefreshPage, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_Stop", (PyCFunction) _wrap_IEHtmlWin_Stop, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"IEHtmlWin_swigregister", IEHtmlWin_swigregister, METH_VARARGS, NULL},
-        { NULL, NULL, 0, NULL }
-};
-
-
-/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
-
-static void *_p_wxLayoutConstraintsTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxLayoutConstraints *) x));
-}
-static void *_p_wxGBSizerItemTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxSizerItem *) ((wxGBSizerItem *) x));
-}
-static void *_p_wxSizerItemTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxSizerItem *) x));
-}
-static void *_p_wxScrollEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxScrollEvent *) x));
-}
-static void *_p_wxIndividualLayoutConstraintTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxIndividualLayoutConstraint *) x));
-}
-static void *_p_wxMSHTMLEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *)(wxNotifyEvent *) ((wxMSHTMLEvent *) x));
-}
-static void *_p_wxStaticBoxSizerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStaticBoxSizer *) x));
-}
-static void *_p_wxBoxSizerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxSizer *) ((wxBoxSizer *) x));
-}
-static void *_p_wxSizerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxSizer *) x));
-}
-static void *_p_wxGridBagSizerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxSizer *)(wxGridSizer *)(wxFlexGridSizer *) ((wxGridBagSizer *) x));
-}
-static void *_p_wxUpdateUIEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxUpdateUIEvent *) x));
-}
-static void *_p_wxEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxEvent *) x));
-}
-static void *_p_wxFlexGridSizerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxSizer *)(wxGridSizer *) ((wxFlexGridSizer *) x));
-}
-static void *_p_wxGridSizerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxSizer *) ((wxGridSizer *) x));
-}
-static void *_p_wxInitDialogEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxInitDialogEvent *) x));
-}
-static void *_p_wxPaintEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxPaintEvent *) x));
-}
-static void *_p_wxNcPaintEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxNcPaintEvent *) x));
-}
-static void *_p_wxPaletteChangedEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxPaletteChangedEvent *) x));
-}
-static void *_p_wxDisplayChangedEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxDisplayChangedEvent *) x));
-}
-static void *_p_wxMouseCaptureChangedEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxMouseCaptureChangedEvent *) x));
-}
-static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxSysColourChangedEvent *) x));
-}
-static void *_p_wxControlTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxControl *) x));
-}
-static void *_p_wxSetCursorEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxSetCursorEvent *) x));
-}
-static void *_p_wxFSFileTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxFSFile *) x));
-}
-static void *_p_wxIEHtmlWinTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxIEHtmlWin *) x));
-}
-static void *_p_wxPySizerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxSizer *) ((wxPySizer *) x));
-}
-static void *_p_wxPyEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxPyEvent *) x));
-}
-static void *_p_wxNotifyEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxNotifyEvent *) x));
-}
-static void *_p_wxShowEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxShowEvent *) x));
-}
-static void *_p_wxMenuItemTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxMenuItem *) x));
-}
-static void *_p_wxDateEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxDateEvent *) x));
-}
-static void *_p_wxIdleEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxIdleEvent *) x));
-}
-static void *_p_wxWindowCreateEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowCreateEvent *) x));
-}
-static void *_p_wxQueryNewPaletteEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxQueryNewPaletteEvent *) x));
-}
-static void *_p_wxMaximizeEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxMaximizeEvent *) x));
-}
-static void *_p_wxIconizeEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxIconizeEvent *) x));
-}
-static void *_p_wxSizeEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxSizeEvent *) x));
-}
-static void *_p_wxMoveEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxMoveEvent *) x));
-}
-static void *_p_wxActivateEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxActivateEvent *) x));
-}
-static void *_p_wxXPMHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxImageHandler *) ((wxXPMHandler *) x));
-}
-static void *_p_wxPNMHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxImageHandler *) ((wxPNMHandler *) x));
-}
-static void *_p_wxJPEGHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxImageHandler *) ((wxJPEGHandler *) x));
-}
-static void *_p_wxPCXHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxImageHandler *) ((wxPCXHandler *) x));
-}
-static void *_p_wxGIFHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxImageHandler *) ((wxGIFHandler *) x));
-}
-static void *_p_wxPNGHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxImageHandler *) ((wxPNGHandler *) x));
-}
-static void *_p_wxANIHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *)(wxCURHandler *) ((wxANIHandler *) x));
-}
-static void *_p_wxCURHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *) ((wxCURHandler *) x));
-}
-static void *_p_wxICOHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *) ((wxICOHandler *) x));
-}
-static void *_p_wxBMPHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxImageHandler *) ((wxBMPHandler *) x));
-}
-static void *_p_wxImageHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxImageHandler *) x));
-}
-static void *_p_wxTIFFHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxImageHandler *) ((wxTIFFHandler *) x));
-}
-static void *_p_wxEvtHandlerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxEvtHandler *) x));
-}
-static void *_p_wxStdDialogButtonSizerTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStdDialogButtonSizer *) x));
-}
-static void *_p_wxAcceleratorTableTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxAcceleratorTable *) x));
-}
-static void *_p_wxImageTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxImage *) x));
-}
-static void *_p_wxScrollWinEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxScrollWinEvent *) x));
-}
-static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowDestroyEvent *) x));
-}
-static void *_p_wxNavigationKeyEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxNavigationKeyEvent *) x));
-}
-static void *_p_wxKeyEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxKeyEvent *) x));
-}
-static void *_p_wxWindowTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvtHandler *) ((wxWindow *) x));
-}
-static void *_p_wxMenuTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvtHandler *) ((wxMenu *) x));
-}
-static void *_p_wxMenuBarTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxMenuBar *) x));
-}
-static void *_p_wxFileSystemTo_p_wxObject(void *x) {
-    return (void *)((wxObject *)  ((wxFileSystem *) x));
-}
-static void *_p_wxContextMenuEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxContextMenuEvent *) x));
-}
-static void *_p_wxMenuEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxMenuEvent *) x));
-}
-static void *_p_wxPyAppTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvtHandler *) ((wxPyApp *) x));
-}
-static void *_p_wxCloseEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxCloseEvent *) x));
-}
-static void *_p_wxMouseEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxMouseEvent *) x));
-}
-static void *_p_wxEraseEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxEraseEvent *) x));
-}
-static void *_p_wxPyCommandEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxPyCommandEvent *) x));
-}
-static void *_p_wxCommandEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxCommandEvent *) x));
-}
-static void *_p_wxDropFilesEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxDropFilesEvent *) x));
-}
-static void *_p_wxFocusEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *) ((wxFocusEvent *) x));
-}
-static void *_p_wxChildFocusEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxChildFocusEvent *) x));
-}
-static void *_p_wxControlWithItemsTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *)(wxControl *) ((wxControlWithItems *) x));
-}
-static void *_p_wxPyValidatorTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvtHandler *)(wxValidator *) ((wxPyValidator *) x));
-}
-static void *_p_wxValidatorTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvtHandler *) ((wxValidator *) x));
-}
-static void *_p_wxControlTo_p_wxWindow(void *x) {
-    return (void *)((wxWindow *)  ((wxControl *) x));
-}
-static void *_p_wxIEHtmlWinTo_p_wxWindow(void *x) {
-    return (void *)((wxWindow *)  ((wxIEHtmlWin *) x));
-}
-static void *_p_wxControlWithItemsTo_p_wxWindow(void *x) {
-    return (void *)((wxWindow *) (wxControl *) ((wxControlWithItems *) x));
-}
-static void *_p_wxMenuBarTo_p_wxWindow(void *x) {
-    return (void *)((wxWindow *)  ((wxMenuBar *) x));
-}
-static void *_p_wxChildFocusEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxChildFocusEvent *) x));
-}
-static void *_p_wxScrollEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxScrollEvent *) x));
-}
-static void *_p_wxWindowCreateEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxWindowCreateEvent *) x));
-}
-static void *_p_wxDateEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxDateEvent *) x));
-}
-static void *_p_wxMSHTMLEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *) (wxNotifyEvent *) ((wxMSHTMLEvent *) x));
-}
-static void *_p_wxUpdateUIEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxUpdateUIEvent *) x));
-}
-static void *_p_wxWindowDestroyEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxWindowDestroyEvent *) x));
-}
-static void *_p_wxContextMenuEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxContextMenuEvent *) x));
-}
-static void *_p_wxNotifyEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxNotifyEvent *) x));
-}
-static void *_p_wxPyCommandEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxPyCommandEvent *) x));
-}
-static void *_p_wxControlTo_p_wxEvtHandler(void *x) {
-    return (void *)((wxEvtHandler *) (wxWindow *) ((wxControl *) x));
-}
-static void *_p_wxIEHtmlWinTo_p_wxEvtHandler(void *x) {
-    return (void *)((wxEvtHandler *) (wxWindow *) ((wxIEHtmlWin *) x));
-}
-static void *_p_wxWindowTo_p_wxEvtHandler(void *x) {
-    return (void *)((wxEvtHandler *)  ((wxWindow *) x));
-}
-static void *_p_wxControlWithItemsTo_p_wxEvtHandler(void *x) {
-    return (void *)((wxEvtHandler *) (wxWindow *)(wxControl *) ((wxControlWithItems *) x));
-}
-static void *_p_wxPyAppTo_p_wxEvtHandler(void *x) {
-    return (void *)((wxEvtHandler *)  ((wxPyApp *) x));
-}
-static void *_p_wxValidatorTo_p_wxEvtHandler(void *x) {
-    return (void *)((wxEvtHandler *)  ((wxValidator *) x));
-}
-static void *_p_wxPyValidatorTo_p_wxEvtHandler(void *x) {
-    return (void *)((wxEvtHandler *) (wxValidator *) ((wxPyValidator *) x));
-}
-static void *_p_wxMenuBarTo_p_wxEvtHandler(void *x) {
-    return (void *)((wxEvtHandler *) (wxWindow *) ((wxMenuBar *) x));
-}
-static void *_p_wxMenuTo_p_wxEvtHandler(void *x) {
-    return (void *)((wxEvtHandler *)  ((wxMenu *) x));
-}
-static void *_p_wxMSHTMLEventTo_p_wxNotifyEvent(void *x) {
-    return (void *)((wxNotifyEvent *)  ((wxMSHTMLEvent *) x));
-}
-static void *_p_wxContextMenuEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxContextMenuEvent *) x));
-}
-static void *_p_wxMenuEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxMenuEvent *) x));
-}
-static void *_p_wxCloseEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxCloseEvent *) x));
-}
-static void *_p_wxMouseEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxMouseEvent *) x));
-}
-static void *_p_wxEraseEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxEraseEvent *) x));
-}
-static void *_p_wxSetCursorEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxSetCursorEvent *) x));
-}
-static void *_p_wxInitDialogEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxInitDialogEvent *) x));
-}
-static void *_p_wxScrollEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxScrollEvent *) x));
-}
-static void *_p_wxMSHTMLEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *)(wxNotifyEvent *) ((wxMSHTMLEvent *) x));
-}
-static void *_p_wxPyEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxPyEvent *) x));
-}
-static void *_p_wxNotifyEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxNotifyEvent *) x));
-}
-static void *_p_wxIdleEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxIdleEvent *) x));
-}
-static void *_p_wxWindowCreateEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxWindowCreateEvent *) x));
-}
-static void *_p_wxQueryNewPaletteEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxQueryNewPaletteEvent *) x));
-}
-static void *_p_wxMaximizeEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxMaximizeEvent *) x));
-}
-static void *_p_wxIconizeEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxIconizeEvent *) x));
-}
-static void *_p_wxActivateEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxActivateEvent *) x));
-}
-static void *_p_wxSizeEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxSizeEvent *) x));
-}
-static void *_p_wxMoveEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxMoveEvent *) x));
-}
-static void *_p_wxDateEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxDateEvent *) x));
-}
-static void *_p_wxPaintEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxPaintEvent *) x));
-}
-static void *_p_wxNcPaintEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxNcPaintEvent *) x));
-}
-static void *_p_wxUpdateUIEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxUpdateUIEvent *) x));
-}
-static void *_p_wxPaletteChangedEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxPaletteChangedEvent *) x));
-}
-static void *_p_wxDisplayChangedEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxDisplayChangedEvent *) x));
-}
-static void *_p_wxMouseCaptureChangedEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxMouseCaptureChangedEvent *) x));
-}
-static void *_p_wxSysColourChangedEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxSysColourChangedEvent *) x));
-}
-static void *_p_wxDropFilesEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxDropFilesEvent *) x));
-}
-static void *_p_wxFocusEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxFocusEvent *) x));
-}
-static void *_p_wxChildFocusEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxChildFocusEvent *) x));
-}
-static void *_p_wxShowEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxShowEvent *) x));
-}
-static void *_p_wxCommandEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxCommandEvent *) x));
-}
-static void *_p_wxPyCommandEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxPyCommandEvent *) x));
-}
-static void *_p_wxWindowDestroyEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxWindowDestroyEvent *) x));
-}
-static void *_p_wxNavigationKeyEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxNavigationKeyEvent *) x));
-}
-static void *_p_wxKeyEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxKeyEvent *) x));
-}
-static void *_p_wxScrollWinEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxScrollWinEvent *) x));
-}
-static swig_type_info _swigt__p_wxObject[] = {{"_p_wxObject", 0, "wxObject *", 0, 0, 0, 0},{"_p_wxLayoutConstraints", _p_wxLayoutConstraintsTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGBSizerItem", _p_wxGBSizerItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizerItem", _p_wxSizerItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxScrollEvent", _p_wxScrollEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMSHTMLEvent", _p_wxMSHTMLEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIndividualLayoutConstraint", _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxStaticBoxSizer", _p_wxStaticBoxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxBoxSizer", _p_wxBoxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizer", _p_wxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGridBagSizer", _p_wxGridBagSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxUpdateUIEvent", _p_wxUpdateUIEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenu", _p_wxMenuTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEvent", _p_wxEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGridSizer", _p_wxGridSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFlexGridSizer", _p_wxFlexGridSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxInitDialogEvent", _p_wxInitDialogEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNcPaintEvent", _p_wxNcPaintEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPaintEvent", _p_wxPaintEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPaletteChangedEvent", _p_wxPaletteChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDisplayChangedEvent", _p_wxDisplayChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMouseCaptureChangedEvent", _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSysColourChangedEvent", _p_wxSysColourChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSetCursorEvent", _p_wxSetCursorEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFSFile", _p_wxFSFileTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIEHtmlWin", _p_wxIEHtmlWinTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPySizer", _p_wxPySizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyEvent", _p_wxPyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", _p_wxNotifyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxShowEvent", _p_wxShowEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuItem", _p_wxMenuItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDateEvent", _p_wxDateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMoveEvent", _p_wxMoveEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizeEvent", _p_wxSizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxActivateEvent", _p_wxActivateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIconizeEvent", _p_wxIconizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMaximizeEvent", _p_wxMaximizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxQueryNewPaletteEvent", _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIdleEvent", _p_wxIdleEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindowCreateEvent", _p_wxWindowCreateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxXPMHandler", _p_wxXPMHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPNMHandler", _p_wxPNMHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxJPEGHandler", _p_wxJPEGHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPCXHandler", _p_wxPCXHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGIFHandler", _p_wxGIFHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPNGHandler", _p_wxPNGHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxANIHandler", _p_wxANIHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCURHandler", _p_wxCURHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxICOHandler", _p_wxICOHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxBMPHandler", _p_wxBMPHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxImageHandler", _p_wxImageHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxTIFFHandler", _p_wxTIFFHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEvtHandler", _p_wxEvtHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxStdDialogButtonSizer", _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxAcceleratorTable", _p_wxAcceleratorTableTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxImage", _p_wxImageTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxScrollWinEvent", _p_wxScrollWinEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxObject", 0, 0, 0, 0, 0, 0},{"_p_wxKeyEvent", _p_wxKeyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNavigationKeyEvent", _p_wxNavigationKeyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindowDestroyEvent", _p_wxWindowDestroyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindow", _p_wxWindowTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFileSystem", _p_wxFileSystemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxContextMenuEvent", _p_wxContextMenuEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuEvent", _p_wxMenuEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyApp", _p_wxPyAppTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCloseEvent", _p_wxCloseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMouseEvent", _p_wxMouseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEraseEvent", _p_wxEraseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", _p_wxCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDropFilesEvent", _p_wxDropFilesEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFocusEvent", _p_wxFocusEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyValidator", _p_wxPyValidatorTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxValidator", _p_wxValidatorTo_p_wxObject, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_unsigned_char[] = {{"_p_unsigned_char", 0, "unsigned char *|byte *", 0, 0, 0, 0},{"_p_unsigned_char", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxWindow[] = {{"_p_wxWindow", 0, "wxWindow *", 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxIEHtmlWin", _p_wxIEHtmlWinTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxWindow", 0, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxWindow, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxMSHTMLEvent[] = {{"_p_wxMSHTMLEvent", 0, "wxMSHTMLEvent *", 0, 0, 0, 0},{"_p_wxMSHTMLEvent", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxCommandEvent[] = {{"_p_wxCommandEvent", 0, "wxCommandEvent *", 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxScrollEvent", _p_wxScrollEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxWindowCreateEvent", _p_wxWindowCreateEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxDateEvent", _p_wxDateEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxMSHTMLEvent", _p_wxMSHTMLEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxUpdateUIEvent", _p_wxUpdateUIEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxWindowDestroyEvent", _p_wxWindowDestroyEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxContextMenuEvent", _p_wxContextMenuEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", 0, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", _p_wxNotifyEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_unsigned_long[] = {{"_p_unsigned_long", 0, "unsigned long *|wxUIntPtr *", 0, 0, 0, 0},{"_p_unsigned_long", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_unsigned_int[] = {{"_p_unsigned_int", 0, "unsigned int *|time_t *", 0, 0, 0, 0},{"_p_unsigned_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__unsigned_int[] = {{"_unsigned_int", 0, "unsigned int|std::size_t", 0, 0, 0, 0},{"_unsigned_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_form_ops_t[] = {{"_p_form_ops_t", 0, "enum form_ops_t *|form_ops_t *", 0, 0, 0, 0},{"_p_form_ops_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxDuplexMode[] = {{"_p_wxDuplexMode", 0, "enum wxDuplexMode *|wxDuplexMode *", 0, 0, 0, 0},{"_p_wxDuplexMode", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_char[] = {{"_p_char", 0, "char *", 0, 0, 0, 0},{"_p_char", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxIEHtmlWin[] = {{"_p_wxIEHtmlWin", 0, "wxIEHtmlWin *", 0, 0, 0, 0},{"_p_wxIEHtmlWin", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxInputStream[] = {{"_p_wxInputStream", 0, "wxInputStream *", 0, 0, 0, 0},{"_p_wxInputStream", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxEvtHandler[] = {{"_p_wxEvtHandler", 0, "wxEvtHandler *", 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxIEHtmlWin", _p_wxIEHtmlWinTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxWindow", _p_wxWindowTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxEvtHandler", 0, 0, 0, 0, 0, 0},{"_p_wxPyApp", _p_wxPyAppTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxValidator", _p_wxValidatorTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxPyValidator", _p_wxPyValidatorTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxMenu", _p_wxMenuTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxString[] = {{"_p_wxString", 0, "wxString *", 0, 0, 0, 0},{"_p_wxString", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__std__ptrdiff_t[] = {{"_std__ptrdiff_t", 0, "std::ptrdiff_t", 0, 0, 0, 0},{"_std__ptrdiff_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__ptrdiff_t[] = {{"_ptrdiff_t", 0, "ptrdiff_t", 0, 0, 0, 0},{"_ptrdiff_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxNotifyEvent[] = {{"_p_wxNotifyEvent", 0, "wxNotifyEvent *", 0, 0, 0, 0},{"_p_wxMSHTMLEvent", _p_wxMSHTMLEventTo_p_wxNotifyEvent, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxEvent[] = {{"_p_wxEvent", 0, "wxEvent *", 0, 0, 0, 0},{"_p_wxContextMenuEvent", _p_wxContextMenuEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMenuEvent", _p_wxMenuEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxCloseEvent", _p_wxCloseEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMouseEvent", _p_wxMouseEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxEraseEvent", _p_wxEraseEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxSetCursorEvent", _p_wxSetCursorEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxInitDialogEvent", _p_wxInitDialogEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxScrollEvent", _p_wxScrollEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMSHTMLEvent", _p_wxMSHTMLEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPyEvent", _p_wxPyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", _p_wxNotifyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxEvent", 0, 0, 0, 0, 0, 0},{"_p_wxWindowCreateEvent", _p_wxWindowCreateEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxIdleEvent", _p_wxIdleEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxQueryNewPaletteEvent", _p_wxQueryNewPaletteEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMaximizeEvent", _p_wxMaximizeEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxIconizeEvent", _p_wxIconizeEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxActivateEvent", _p_wxActivateEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxSizeEvent", _p_wxSizeEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxDateEvent", _p_wxDateEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMoveEvent", _p_wxMoveEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPaintEvent", _p_wxPaintEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxNcPaintEvent", _p_wxNcPaintEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxUpdateUIEvent", _p_wxUpdateUIEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPaletteChangedEvent", _p_wxPaletteChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxDisplayChangedEvent", _p_wxDisplayChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMouseCaptureChangedEvent", _p_wxMouseCaptureChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxSysColourChangedEvent", _p_wxSysColourChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxDropFilesEvent", _p_wxDropFilesEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxFocusEvent", _p_wxFocusEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxShowEvent", _p_wxShowEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", _p_wxCommandEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxWindowDestroyEvent", _p_wxWindowDestroyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxNavigationKeyEvent", _p_wxNavigationKeyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxKeyEvent", _p_wxKeyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxScrollWinEvent", _p_wxScrollWinEventTo_p_wxEvent, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxPaperSize[] = {{"_p_wxPaperSize", 0, "enum wxPaperSize *|wxPaperSize *", 0, 0, 0, 0},{"_p_wxPaperSize", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_int[] = {{"_p_int", 0, "int *|wxEventType *", 0, 0, 0, 0},{"_p_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-
-static swig_type_info *swig_types_initial[] = {
-_swigt__p_wxObject, 
-_swigt__p_unsigned_char, 
-_swigt__p_wxWindow, 
-_swigt__p_wxMSHTMLEvent, 
-_swigt__p_wxCommandEvent, 
-_swigt__p_unsigned_long, 
-_swigt__p_unsigned_int, 
-_swigt__unsigned_int, 
-_swigt__p_form_ops_t, 
-_swigt__p_wxDuplexMode, 
-_swigt__p_char, 
-_swigt__p_wxIEHtmlWin, 
-_swigt__p_wxInputStream, 
-_swigt__p_wxEvtHandler, 
-_swigt__p_wxString, 
-_swigt__std__ptrdiff_t, 
-_swigt__ptrdiff_t, 
-_swigt__p_wxNotifyEvent, 
-_swigt__p_wxEvent, 
-_swigt__p_wxPaperSize, 
-_swigt__p_int, 
-0
-};
-
-
-/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
-
-static swig_const_info swig_const_table[] = {
-{0, 0, 0, 0.0, 0, 0}};
-
-#ifdef __cplusplus
-}
-#endif
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-    
-    /* Python-specific SWIG API */
-#define SWIG_newvarlink()                             SWIG_Python_newvarlink()
-#define SWIG_addvarlink(p, name, get_attr, set_attr)  SWIG_Python_addvarlink(p, name, get_attr, set_attr)
-#define SWIG_InstallConstants(d, constants)           SWIG_Python_InstallConstants(d, constants)
-    
-    /* -----------------------------------------------------------------------------
-     * global variable support code.
-     * ----------------------------------------------------------------------------- */
-    
-    typedef struct swig_globalvar {
-        char       *name;                  /* Name of global variable */
-        PyObject *(*get_attr)();           /* Return the current value */
-        int       (*set_attr)(PyObject *); /* Set the value */
-        struct swig_globalvar *next;
-    } swig_globalvar;
-    
-    typedef struct swig_varlinkobject {
-        PyObject_HEAD
-        swig_globalvar *vars;
-    } swig_varlinkobject;
-    
-    static PyObject *
-    swig_varlink_repr(swig_varlinkobject *v) {
-        v = v;
-        return PyString_FromString("<Swig global variables>");
-    }
-    
-    static int
-    swig_varlink_print(swig_varlinkobject *v, FILE *fp, int flags) {
-        swig_globalvar  *var;
-        flags = flags;
-        fprintf(fp,"Swig global variables { ");
-        for (var = v->vars; var; var=var->next) {
-            fprintf(fp,"%s", var->name);
-            if (var->next) fprintf(fp,", ");
-        }
-        fprintf(fp," }\n");
-        return 0;
-    }
-    
-    static PyObject *
-    swig_varlink_getattr(swig_varlinkobject *v, char *n) {
-        swig_globalvar *var = v->vars;
-        while (var) {
-            if (strcmp(var->name,n) == 0) {
-                return (*var->get_attr)();
-            }
-            var = var->next;
-        }
-        PyErr_SetString(PyExc_NameError,"Unknown C global variable");
-        return NULL;
-    }
-    
-    static int
-    swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) {
-        swig_globalvar *var = v->vars;
-        while (var) {
-            if (strcmp(var->name,n) == 0) {
-                return (*var->set_attr)(p);
-            }
-            var = var->next;
-        }
-        PyErr_SetString(PyExc_NameError,"Unknown C global variable");
-        return 1;
-    }
-    
-    static PyTypeObject varlinktype = {
-        PyObject_HEAD_INIT(0)              
-        0,                                  /* Number of items in variable part (ob_size) */
-        (char *)"swigvarlink",              /* Type name (tp_name) */
-        sizeof(swig_varlinkobject),         /* Basic size (tp_basicsize) */
-        0,                                  /* Itemsize (tp_itemsize) */
-        0,                                  /* Deallocator (tp_dealloc) */ 
-        (printfunc) swig_varlink_print,     /* Print (tp_print) */
-        (getattrfunc) swig_varlink_getattr, /* get attr (tp_getattr) */
-        (setattrfunc) swig_varlink_setattr, /* Set attr (tp_setattr) */
-        0,                                  /* tp_compare */
-        (reprfunc) swig_varlink_repr,       /* tp_repr */
-        0,                                  /* tp_as_number */
-        0,                                  /* tp_as_sequence */
-        0,                                  /* tp_as_mapping */
-        0,                                  /* tp_hash */
-        0,                                  /* tp_call */
-        0,                                  /* tp_str */
-        0,                                  /* tp_getattro */
-        0,                                  /* tp_setattro */
-        0,                                  /* tp_as_buffer */
-        0,                                  /* tp_flags */
-        0,                                  /* tp_doc */
-#if PY_VERSION_HEX >= 0x02000000
-        0,                                  /* tp_traverse */
-        0,                                  /* tp_clear */
-#endif
-#if PY_VERSION_HEX >= 0x02010000
-        0,                                  /* tp_richcompare */
-        0,                                  /* tp_weaklistoffset */
-#endif
-#if PY_VERSION_HEX >= 0x02020000
-        0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
-#endif
-#if PY_VERSION_HEX >= 0x02030000
-        0,                                  /* tp_del */
-#endif
-#ifdef COUNT_ALLOCS
-        0,0,0,0                             /* tp_alloc -> tp_next */
-#endif
-    };
-    
-    /* Create a variable linking object for use later */
-    static PyObject *
-    SWIG_Python_newvarlink(void) {
-        swig_varlinkobject *result = 0;
-        result = PyMem_NEW(swig_varlinkobject,1);
-        varlinktype.ob_type = &PyType_Type;    /* Patch varlinktype into a PyType */
-        result->ob_type = &varlinktype;
-        result->vars = 0;
-        result->ob_refcnt = 0;
-        Py_XINCREF((PyObject *) result);
-        return ((PyObject*) result);
-    }
-    
-    static void
-    SWIG_Python_addvarlink(PyObject *p, char *name, PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) {
-        swig_varlinkobject *v;
-        swig_globalvar *gv;
-        v= (swig_varlinkobject *) p;
-        gv = (swig_globalvar *) malloc(sizeof(swig_globalvar));
-        gv->name = (char *) malloc(strlen(name)+1);
-        strcpy(gv->name,name);
-        gv->get_attr = get_attr;
-        gv->set_attr = set_attr;
-        gv->next = v->vars;
-        v->vars = gv;
-    }
-    
-    /* -----------------------------------------------------------------------------
-     * constants/methods manipulation
-     * ----------------------------------------------------------------------------- */
-    
-    /* Install Constants */
-    static void
-    SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]) {
-        PyObject *obj = 0;
-        size_t i;
-        for (i = 0; constants[i].type; i++) {
-            switch(constants[i].type) {
-                case SWIG_PY_INT:
-                obj = PyInt_FromLong(constants[i].lvalue);
-                break;
-                case SWIG_PY_FLOAT:
-                obj = PyFloat_FromDouble(constants[i].dvalue);
-                break;
-                case SWIG_PY_STRING:
-                if (constants[i].pvalue) {
-                    obj = PyString_FromString((char *) constants[i].pvalue);
-                } else {
-                    Py_INCREF(Py_None);
-                    obj = Py_None;
-                }
-                break;
-                case SWIG_PY_POINTER:
-                obj = SWIG_NewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0);
-                break;
-                case SWIG_PY_BINARY:
-                obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
-                break;
-                default:
-                obj = 0;
-                break;
-            }
-            if (obj) {
-                PyDict_SetItemString(d,constants[i].name,obj);
-                Py_DECREF(obj);
-            }
-        }
-    }
-    
-    /* -----------------------------------------------------------------------------*/
-    /* Fix SwigMethods to carry the callback ptrs when needed */
-    /* -----------------------------------------------------------------------------*/
-    
-    static void
-    SWIG_Python_FixMethods(PyMethodDef *methods,
-    swig_const_info *const_table,
-    swig_type_info **types,
-    swig_type_info **types_initial) {
-        size_t i;
-        for (i = 0; methods[i].ml_name; ++i) {
-            char *c = methods[i].ml_doc;
-            if (c && (c = strstr(c, "swig_ptr: "))) {
-                int j;
-                swig_const_info *ci = 0;
-                char *name = c + 10;
-                for (j = 0; const_table[j].type; j++) {
-                    if (strncmp(const_table[j].name, name, 
-                    strlen(const_table[j].name)) == 0) {
-                        ci = &(const_table[j]);
-                        break;
-                    }
-                }
-                if (ci) {
-                    size_t shift = (ci->ptype) - types;
-                    swig_type_info *ty = types_initial[shift];
-                    size_t ldoc = (c - methods[i].ml_doc);
-                    size_t lptr = strlen(ty->name)+2*sizeof(void*)+2;
-                    char *ndoc = (char*)malloc(ldoc + lptr + 10);
-                    char *buff = ndoc;
-                    void *ptr = (ci->type == SWIG_PY_POINTER) ? ci->pvalue: (void *)(ci->lvalue);
-                    strncpy(buff, methods[i].ml_doc, ldoc);
-                    buff += ldoc;
-                    strncpy(buff, "swig_ptr: ", 10);
-                    buff += 10;
-                    SWIG_PackVoidPtr(buff, ptr, ty->name, lptr);
-                    methods[i].ml_doc = ndoc;
-                }
-            }
-        }
-    }
-    
-    /* -----------------------------------------------------------------------------*
-     *  Initialize type list
-     * -----------------------------------------------------------------------------*/
-    
-#if PY_MAJOR_VERSION < 2
-    /* PyModule_AddObject function was introduced in Python 2.0.  The following function
-    is copied out of Python/modsupport.c in python version 2.3.4 */
-    static int
-    PyModule_AddObject(PyObject *m, char *name, PyObject *o)
-    {
-        PyObject *dict;
-        if (!PyModule_Check(m)) {
-            PyErr_SetString(PyExc_TypeError,
-            "PyModule_AddObject() needs module as first arg");
-            return -1;
-        }
-        if (!o) {
-            PyErr_SetString(PyExc_TypeError,
-            "PyModule_AddObject() needs non-NULL value");
-            return -1;
-        }
-        
-        dict = PyModule_GetDict(m);
-        if (dict == NULL) {
-            /* Internal error -- modules must have a dict! */
-            PyErr_Format(PyExc_SystemError, "module '%s' has no __dict__",
-            PyModule_GetName(m));
-            return -1;
-        }
-        if (PyDict_SetItemString(dict, name, o))
-        return -1;
-        Py_DECREF(o);
-        return 0;
-    }
-#endif
-    
-    static swig_type_info **
-    SWIG_Python_SetTypeListHandle(swig_type_info **type_list_handle) {
-        static PyMethodDef swig_empty_runtime_method_table[] = {
-            {
-                NULL, NULL, 0, NULL
-            } 
-        };/* Sentinel */
-        
-        PyObject *module = Py_InitModule((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
-        swig_empty_runtime_method_table);
-        PyObject *pointer = PyCObject_FromVoidPtr((void *) type_list_handle, NULL);
-        if (pointer && module) {
-            PyModule_AddObject(module, (char*)"type_pointer" SWIG_TYPE_TABLE_NAME, pointer);
-        }
-        return type_list_handle;
-    } 
-    
-    static swig_type_info **
-    SWIG_Python_LookupTypePointer(swig_type_info **type_list_handle) {
-        swig_type_info **type_pointer;
-        
-        /* first check if module already created */
-        type_pointer = SWIG_Python_GetTypeListHandle();
-        if (type_pointer) {
-            return type_pointer;
-        } else {
-            /* create a new module and variable */
-            return SWIG_Python_SetTypeListHandle(type_list_handle);
-        }
-    }
-    
-#ifdef __cplusplus
-}
-#endif
-
-/* -----------------------------------------------------------------------------*
- *  Partial Init method
- * -----------------------------------------------------------------------------*/
-
-#ifdef SWIG_LINK_RUNTIME
-#ifdef __cplusplus
-extern "C"
-#endif
-SWIGEXPORT(void *) SWIG_ReturnGlobalTypeList(void *);
-#endif
-
-#ifdef __cplusplus
-extern "C"
-#endif
-SWIGEXPORT(void) SWIG_init(void) {
-    static PyObject *SWIG_globals = 0; 
-    static int       typeinit = 0;
-    PyObject *m, *d;
-    int       i;
-    if (!SWIG_globals) SWIG_globals = SWIG_newvarlink();
-    
-    /* Fix SwigMethods to carry the callback ptrs when needed */
-    SWIG_Python_FixMethods(SwigMethods, swig_const_table, swig_types, swig_types_initial);
-    
-    m = Py_InitModule((char *) SWIG_name, SwigMethods);
-    d = PyModule_GetDict(m);
-    
-    if (!typeinit) {
-#ifdef SWIG_LINK_RUNTIME
-        swig_type_list_handle = (swig_type_info **) SWIG_ReturnGlobalTypeList(swig_type_list_handle);
-#else
-#  ifndef SWIG_STATIC_RUNTIME
-        swig_type_list_handle = SWIG_Python_LookupTypePointer(swig_type_list_handle);
-#  endif
-#endif
-        for (i = 0; swig_types_initial[i]; i++) {
-            swig_types[i] = SWIG_TypeRegister(swig_types_initial[i]);
-        }
-        typeinit = 1;
-    }
-    SWIG_InstallConstants(d,swig_const_table);
-    
-    {
-        PyDict_SetItemString(d,"wxEVT_COMMAND_MSHTML_BEFORENAVIGATE2", SWIG_From_int((int)(wxEVT_COMMAND_MSHTML_BEFORENAVIGATE2))); 
-    }
-    {
-        PyDict_SetItemString(d,"wxEVT_COMMAND_MSHTML_NEWWINDOW2", SWIG_From_int((int)(wxEVT_COMMAND_MSHTML_NEWWINDOW2))); 
-    }
-    {
-        PyDict_SetItemString(d,"wxEVT_COMMAND_MSHTML_DOCUMENTCOMPLETE", SWIG_From_int((int)(wxEVT_COMMAND_MSHTML_DOCUMENTCOMPLETE))); 
-    }
-    {
-        PyDict_SetItemString(d,"wxEVT_COMMAND_MSHTML_PROGRESSCHANGE", SWIG_From_int((int)(wxEVT_COMMAND_MSHTML_PROGRESSCHANGE))); 
-    }
-    {
-        PyDict_SetItemString(d,"wxEVT_COMMAND_MSHTML_STATUSTEXTCHANGE", SWIG_From_int((int)(wxEVT_COMMAND_MSHTML_STATUSTEXTCHANGE))); 
-    }
-    {
-        PyDict_SetItemString(d,"wxEVT_COMMAND_MSHTML_TITLECHANGE", SWIG_From_int((int)(wxEVT_COMMAND_MSHTML_TITLECHANGE))); 
-    }
-    {
-        PyDict_SetItemString(d,"IEHTML_REFRESH_NORMAL", SWIG_From_int((int)(wxIEHTML_REFRESH_NORMAL))); 
-    }
-    {
-        PyDict_SetItemString(d,"IEHTML_REFRESH_IFEXPIRED", SWIG_From_int((int)(wxIEHTML_REFRESH_IFEXPIRED))); 
-    }
-    {
-        PyDict_SetItemString(d,"IEHTML_REFRESH_CONTINUE", SWIG_From_int((int)(wxIEHTML_REFRESH_CONTINUE))); 
-    }
-    {
-        PyDict_SetItemString(d,"IEHTML_REFRESH_COMPLETELY", SWIG_From_int((int)(wxIEHTML_REFRESH_COMPLETELY))); 
-    }
-}
-
diff --git a/wxPython/contrib/iewin/readme.txt b/wxPython/contrib/iewin/readme.txt
deleted file mode 100644 (file)
index cbc8e59..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
-Lindsay Mathieson
-Email : <lmathieson@optusnet.com.au>
-
-This is prelimanary stuff - the controls need extra methods and events etc,
-feel free to email with suggestions &/or patches.
-
-Tested with wxWindows 2.3.2.
-Built with MS Visual C++ 6.0 & DevStudio
-Minor use of templates and STL
-
------------------------------------------------------------
-This sample illustrates using wxActiveX and wxIEHtmlWin too:
-1. Host an arbitrary ActiveX control
-2. Specifically host the MSHTML Control
-
-
-wxActiveX:
-==========
-wxActiveX is used to host and siplay any activeX control, all the wxWindows developer
-needs to know is either the ProgID or CLSID of the control in question.
-
-Derived From:
-- wxWindow
-
-Include Files:
-- wxactivex.h
-
-Source Files:
-- wxactivex.cpp
-
-Event Handling:
----------------
-- EVT_ACTIVEX(id, eventName, handler) (handler = void OnActiveX(wxActiveXEvent& event))
-class wxActiveXEvent : public wxNotifyEvent
-    int ParamCount() const;
-    wxVariant  operator[] (int idx) const;     // parameter by index
-    wxVariant& operator[] (int idx);
-    wxVariant  operator[] (wxString name) const; // named parameters
-    wxVariant& operator[] (wxString name);
-
-
-Members:
---------
-wxActiveX::wxActiveX(wxWindow * parent, REFCLSID clsid, wxWindowID id = -1);
-- Creates a activeX control identified by clsid
-e.g
-  wxFrame *frame = new wxFrame(this, -1, "test");
-  wxActiveX *X = new wxActiveX(frame, CLSID_WebBrowser);
-
-wxActiveX::wxActiveX(wxWindow * parent, wxString progId, wxWindowID id = -1);
-- Creates a activeX control identified by progId
-e.g.
-  wxFrame *frame = new wxFrame(this, -1, "test");
-  wxActiveX *X = new wxActiveX(frame, "MSCAL.Calendar");
-
-
-wxActiveX::~wxActiveX();
-- Destroys the control
-- disconnects all connection points
-
-HRESULT wxActiveX::ConnectAdvise(REFIID riid, IUnknown *eventSink);
-- Connects a event sink. Connections are automaticlly diconnected in the destructor
-e.g.
-  FS_DWebBrowserEvents2 *events = new FS_DWebBrowserEvents2(iecontrol);
-  hret = iecontrol->ConnectAdvise(DIID_DWebBrowserEvents2, events);
-  if (! SUCCEEDED(hret))
-    delete events;
-
-
-Sample Events:
---------------
-EVT_ACTIVEX(ID_MSHTML, "BeforeNavigate2",   OnMSHTMLBeforeNavigate2X)
-
-void wxIEFrame::OnMSHTMLBeforeNavigate2X(wxActiveXEvent& event)
-{
-  wxString url = event["Url"];
-
-  int rc = wxMessageBox(url, "Allow open url ?", wxYES_NO);
-
-  if (rc != wxYES)
-    event["Cancel"] = true;
-};
-
-
-wxIEHtmlWin:
-============
-wxIEHtmlWin is a specialisation of the wxActiveX control for hosting the MSHTML control.
-
-Derived From:
-- wxActiveX
-- wxWindow
-
-Event Handling:
----------------
-- class wxMSHTMLEvent
-
-- EVT_MSHTML_BEFORENAVIGATE2
-* url = event.m_text1
-* event.Veto() to cancel
-Generated before an attempt to browse a new url
-
-- EVT_MSHTML_NEWWINDOW2
-* event.Veto() to cancel
-Generated when the control is asked create a new window (e.g a popup)
-
-- EVT_MSHTML_DOCUMENTCOMPLETE
-* url = event.m_text1
-Generated after the document has finished loading
-
-- EVT_MSHTML_PROGRESSCHANGE
-* event.m_long1 = progress so far
-* event.m_long2 = max range of progress
-
-- EVT_MSHTML_STATUSTEXTCHANGE
-* status = event.m_text1
-
-- EVT_MSHTML_TITLECHANGE
-* title = event.m_text1
-
-Members:
---------
-wxIEHtmlWin::wxIEHtmlWin(wxWindow * parent, wxWindowID id = -1);
-- Constructs and initialises the MSHTML control
-- LoadUrl("about:blank") is called
-
-wxIEHtmlWin::~wxIEHtmlWin();
-- destroys the control
-
-void wxIEHtmlWin::LoadUrl(const wxString&);
-- Attempts to browse to the url, the control uses its internal (MS)
-  network streams
-
-bool wxIEHtmlWin::LoadString(wxString html);
-- Load the passed HTML string
-
-bool wxIEHtmlWin::LoadStream(istream *strm);
-- load the passed HTML stream. The control takes ownership of
-  the pointer, deleting when finished.
-
-void wxIEHtmlWin::SetCharset(wxString charset);
-- Sets the charset of the loaded document
-
-void wxIEHtmlWin::SetEditMode(bool seton);
-- Sets edit mode. 
-  NOTE: This does work, but is bare bones - we need more events exposed before
-        this is usable as an HTML editor.
-
-bool wxIEHtmlWin::GetEditMode();
-- Returns the edit mode setting
-
-wxString wxIEHtmlWin::GetStringSelection(bool asHTML = false);
-- Returns the currently selected text (plain or HTML text)
-
-wxString GetText(bool asHTML = false);
-- Returns the body text (plain or HTML text)
-
-Lindsay Mathieson
-Email : <lmathieson@optusnet.com.au>
diff --git a/wxPython/contrib/iewin/wxactivex.cpp b/wxPython/contrib/iewin/wxactivex.cpp
deleted file mode 100644 (file)
index ca8f663..0000000
+++ /dev/null
@@ -1,1952 +0,0 @@
-#include "wxActiveX.h"
-#include <wx/strconv.h>
-#include <wx/event.h>
-#include <oleidl.h>
-#include <winerror.h>
-#include <idispids.h>
-#include <exdispid.h>
-#include <olectl.h>
-#include <Mshtml.h>
-#include <sstream>
-using namespace std;
-
-// Depending on compilation mode, the wx headers may have undef'd
-// this, but in this case we need it so the virtual method in
-// FrameSite will match what is in oleidl.h.
-#ifndef GetObject
-    #ifdef _UNICODE
-        #define GetObject GetObjectW
-    #else
-        #define GetObject GetObjectA
-    #endif
-#endif
-
-
-//////////////////////////////////////////////////////////////////////
-BEGIN_EVENT_TABLE(wxActiveX, wxWindow)
-    EVT_SIZE(wxActiveX::OnSize)
-    EVT_PAINT(wxActiveX::OnPaint)
-    EVT_MOUSE_EVENTS(wxActiveX::OnMouse)
-       EVT_SET_FOCUS(wxActiveX::OnSetFocus)
-       EVT_KILL_FOCUS(wxActiveX::OnKillFocus)
-END_EVENT_TABLE()
-
-class wxActiveX;
-
-class FrameSite :
-    public IOleClientSite,
-    public IOleInPlaceSiteEx,
-    public IOleInPlaceFrame,
-    public IOleItemContainer,
-    public IDispatch,
-    public IOleCommandTarget,
-    public IOleDocumentSite,
-    public IAdviseSink,
-    public IOleControlSite
-{
-private:
-    DECLARE_OLE_UNKNOWN(FrameSite);
-
-public:
-       FrameSite(wxActiveX * win);
-       virtual ~FrameSite();
-
-       //IOleWindow
-       STDMETHODIMP GetWindow(HWND*);
-       STDMETHODIMP ContextSensitiveHelp(BOOL);
-
-    //IOleInPlaceUIWindow
-       STDMETHODIMP GetBorder(LPRECT);
-       STDMETHODIMP RequestBorderSpace(LPCBORDERWIDTHS);
-       STDMETHODIMP SetBorderSpace(LPCBORDERWIDTHS);
-       STDMETHODIMP SetActiveObject(IOleInPlaceActiveObject*, LPCOLESTR);
-
-    //IOleInPlaceFrame
-       STDMETHODIMP InsertMenus(HMENU, LPOLEMENUGROUPWIDTHS);
-       STDMETHODIMP SetMenu(HMENU, HOLEMENU, HWND);
-       STDMETHODIMP RemoveMenus(HMENU);
-       STDMETHODIMP SetStatusText(LPCOLESTR);
-       STDMETHODIMP EnableModeless(BOOL);
-       STDMETHODIMP TranslateAccelerator(LPMSG, WORD);
-
-       //IOleInPlaceSite
-       STDMETHODIMP CanInPlaceActivate();
-       STDMETHODIMP OnInPlaceActivate();
-       STDMETHODIMP OnUIActivate();
-       STDMETHODIMP GetWindowContext(IOleInPlaceFrame**, IOleInPlaceUIWindow**,
-               LPRECT, LPRECT, LPOLEINPLACEFRAMEINFO);
-       STDMETHODIMP Scroll(SIZE);
-       STDMETHODIMP OnUIDeactivate(BOOL);
-       STDMETHODIMP OnInPlaceDeactivate();
-       STDMETHODIMP DiscardUndoState();
-       STDMETHODIMP DeactivateAndUndo();
-       STDMETHODIMP OnPosRectChange(LPCRECT);
-
-    //IOleInPlaceSiteEx
-       STDMETHODIMP OnInPlaceActivateEx(BOOL*, DWORD);
-       STDMETHODIMP OnInPlaceDeactivateEx(BOOL);
-       STDMETHODIMP RequestUIActivate();
-
-       //IOleClientSite
-       STDMETHODIMP SaveObject();
-       STDMETHODIMP GetMoniker(DWORD, DWORD, IMoniker**);
-       STDMETHODIMP GetContainer(LPOLECONTAINER FAR*);
-       STDMETHODIMP ShowObject();
-       STDMETHODIMP OnShowWindow(BOOL);
-       STDMETHODIMP RequestNewObjectLayout();
-
-       //IOleControlSite
-       STDMETHODIMP OnControlInfoChanged();
-       STDMETHODIMP LockInPlaceActive(BOOL);
-       STDMETHODIMP GetExtendedControl(IDispatch**);
-       STDMETHODIMP TransformCoords(POINTL*, POINTF*, DWORD);
-       STDMETHODIMP TranslateAccelerator(LPMSG, DWORD);
-       STDMETHODIMP OnFocus(BOOL);
-       STDMETHODIMP ShowPropertyFrame();
-
-       //IOleCommandTarget
-       STDMETHODIMP QueryStatus(const GUID*, ULONG, OLECMD[], OLECMDTEXT*);
-       STDMETHODIMP Exec(const GUID*, DWORD, DWORD, VARIANTARG*, VARIANTARG*);
-
-       //IParseDisplayName
-       STDMETHODIMP ParseDisplayName(IBindCtx*, LPOLESTR, ULONG*, IMoniker**);
-
-    //IOleContainer
-       STDMETHODIMP EnumObjects(DWORD, IEnumUnknown**);
-       STDMETHODIMP LockContainer(BOOL);
-
-       //IOleItemContainer
-       STDMETHODIMP GetObject(LPOLESTR, DWORD, IBindCtx*, REFIID, void**);
-       STDMETHODIMP GetObjectStorage(LPOLESTR, IBindCtx*, REFIID, void**);
-       STDMETHODIMP IsRunning(LPOLESTR);
-
-       //IDispatch
-       STDMETHODIMP GetIDsOfNames(REFIID, OLECHAR**, unsigned int, LCID, DISPID*);
-       STDMETHODIMP GetTypeInfo(unsigned int, LCID, ITypeInfo**);
-       STDMETHODIMP GetTypeInfoCount(unsigned int*);
-       STDMETHODIMP Invoke(DISPID, REFIID, LCID, WORD, DISPPARAMS*, VARIANT*, EXCEPINFO*, UINT*);
-
-       //IAdviseSink
-       void STDMETHODCALLTYPE OnDataChange(FORMATETC*, STGMEDIUM*);
-       void STDMETHODCALLTYPE OnViewChange(DWORD, LONG);
-       void STDMETHODCALLTYPE OnRename(IMoniker*);
-       void STDMETHODCALLTYPE OnSave();
-       void STDMETHODCALLTYPE OnClose();
-
-    // IOleDocumentSite
-       HRESULT STDMETHODCALLTYPE ActivateMe(IOleDocumentView __RPC_FAR *pViewToActivate);
-
-protected:
-
-       wxActiveX * m_window;
-
-       HDC m_hDCBuffer;
-       HWND m_hWndParent;
-
-       bool m_bSupportsWindowlessActivation;
-       bool m_bInPlaceLocked;
-       bool m_bInPlaceActive;
-       bool m_bUIActive;
-       bool m_bWindowless;
-
-
-
-       LCID m_nAmbientLocale;
-       COLORREF m_clrAmbientForeColor;
-       COLORREF m_clrAmbientBackColor;
-       bool m_bAmbientShowHatching;
-       bool m_bAmbientShowGrabHandles;
-       bool m_bAmbientAppearance;
-};
-
-DEFINE_OLE_TABLE(FrameSite)
-    OLE_INTERFACE(IID_IUnknown, IOleClientSite)
-
-    OLE_IINTERFACE(IOleClientSite)
-
-    OLE_INTERFACE(IID_IOleWindow, IOleInPlaceSite)
-    OLE_IINTERFACE(IOleInPlaceSite)
-    OLE_IINTERFACE(IOleInPlaceSiteEx)
-
-    //OLE_IINTERFACE(IOleWindow)
-    OLE_IINTERFACE(IOleInPlaceUIWindow)
-    OLE_IINTERFACE(IOleInPlaceFrame)
-
-    OLE_IINTERFACE(IParseDisplayName)
-    OLE_IINTERFACE(IOleContainer)
-    OLE_IINTERFACE(IOleItemContainer)
-
-    OLE_IINTERFACE(IDispatch)
-
-    OLE_IINTERFACE(IOleCommandTarget)
-
-    OLE_IINTERFACE(IOleDocumentSite)
-
-    OLE_IINTERFACE(IAdviseSink)
-
-    OLE_IINTERFACE(IOleControlSite)
-END_OLE_TABLE;
-
-
-wxActiveX::wxActiveX(wxWindow * parent, REFCLSID clsid, wxWindowID id,
-        const wxPoint& pos,
-        const wxSize& size,
-        long style,
-        const wxString& name) :
-wxWindow(parent, id, pos, size, style, name)
-{
-    m_bAmbientUserMode = true;
-    m_docAdviseCookie = 0;
-    CreateActiveX(clsid);
-}
-
-wxActiveX::wxActiveX(wxWindow * parent, wxString progId, wxWindowID id,
-        const wxPoint& pos,
-        const wxSize& size,
-        long style,
-        const wxString& name) :
-    wxWindow(parent, id, pos, size, style, name)
-{
-    m_bAmbientUserMode = true;
-    m_docAdviseCookie = 0;
-    CreateActiveX((LPOLESTR) (const wchar_t *) progId.wc_str(wxConvUTF8));
-}
-
-wxActiveX::~wxActiveX()
-{
-       // disconnect connection points
-       wxOleConnectionArray::iterator it = m_connections.begin();
-       while (it != m_connections.end())
-       {
-               wxOleConnectionPoint& cp = it->first;
-               cp->Unadvise(it->second);
-
-               it++;
-       };
-       m_connections.clear();
-
-    if (m_oleInPlaceObject.Ok())
-       {
-               m_oleInPlaceObject->InPlaceDeactivate();
-               m_oleInPlaceObject->UIDeactivate();
-       }
-
-
-       if (m_oleObject.Ok())
-       {
-           if (m_docAdviseCookie != 0)
-               m_oleObject->Unadvise(m_docAdviseCookie);
-
-           m_oleObject->DoVerb(OLEIVERB_HIDE, NULL, m_clientSite, 0, (HWND) GetHWND(), NULL);
-        m_oleObject->Close(OLECLOSE_NOSAVE);
-               m_oleObject->SetClientSite(NULL);
-       }
-}
-
-void wxActiveX::CreateActiveX(REFCLSID clsid)
-{
-       SetTransparent();
-
-       HRESULT hret;
-
-    ////////////////////////////////////////////////////////
-       // FrameSite
-    FrameSite *frame = new FrameSite(this);
-    // oleClientSite
-    hret = m_clientSite.QueryInterface(IID_IOleClientSite, (IDispatch *) frame);
-    wxASSERT(SUCCEEDED(hret));
-    // adviseSink
-    wxAutoOleInterface<IAdviseSink> adviseSink(IID_IAdviseSink, (IDispatch *) frame);
-    wxASSERT(adviseSink.Ok());
-
-
-       // // Create Object, get IUnknown interface
-    m_ActiveX.CreateInstance(clsid, IID_IUnknown);
-       wxASSERT(m_ActiveX.Ok());
-
-       // Type Info
-       GetTypeInfo();
-
-       // Get IOleObject interface
-       hret = m_oleObject.QueryInterface(IID_IOleObject, m_ActiveX);
-       wxASSERT(SUCCEEDED(hret));
-
-    // get IViewObject Interface
-    hret = m_viewObject.QueryInterface(IID_IViewObject, m_ActiveX);
-       wxASSERT(SUCCEEDED(hret));
-
-    // document advise
-    m_docAdviseCookie = 0;
-    hret = m_oleObject->Advise(adviseSink, &m_docAdviseCookie);
-    WXOLE_WARN(hret, "m_oleObject->Advise(adviseSink, &m_docAdviseCookie),\"Advise\")");
-    m_oleObject->SetHostNames(L"wxActiveXContainer", NULL);
-       OleSetContainedObject(m_oleObject, TRUE);
-    OleRun(m_oleObject);
-
-
-    // Get IOleInPlaceObject interface
-       hret = m_oleInPlaceObject.QueryInterface(IID_IOleInPlaceObject, m_ActiveX);
-       wxASSERT(SUCCEEDED(hret));
-
-    // status
-       DWORD dwMiscStatus;
-       m_oleObject->GetMiscStatus(DVASPECT_CONTENT, &dwMiscStatus);
-    wxASSERT(SUCCEEDED(hret));
-
-    // set client site first ?
-    if (dwMiscStatus & OLEMISC_SETCLIENTSITEFIRST)
-               m_oleObject->SetClientSite(m_clientSite);
-
-
-    // stream init
-    wxAutoOleInterface<IPersistStreamInit>
-               pPersistStreamInit(IID_IPersistStreamInit, m_oleObject);
-
-    if (pPersistStreamInit.Ok())
-    {
-        hret = pPersistStreamInit->InitNew();
-        WXOLE_WARN(hret, "CreateActiveX::pPersistStreamInit->InitNew()");
-    };
-
-    if (! (dwMiscStatus & OLEMISC_SETCLIENTSITEFIRST))
-               m_oleObject->SetClientSite(m_clientSite);
-
-
-       int w, h;
-       GetClientSize(&w, &h);
-       RECT posRect;
-       posRect.left = 0;
-       posRect.top = 0;
-       posRect.right = w;
-       posRect.bottom = h;
-
-    m_oleObjectHWND = 0;
-
-    if (m_oleInPlaceObject.Ok())
-    {
-       hret = m_oleInPlaceObject->GetWindow(&m_oleObjectHWND);
-           WXOLE_WARN(hret, "m_oleInPlaceObject->GetWindow(&m_oleObjectHWND)");
-        if (SUCCEEDED(hret))
-               ::SetActiveWindow(m_oleObjectHWND);
-    };
-
-
-    if (! (dwMiscStatus & OLEMISC_INVISIBLEATRUNTIME))
-    {
-               if (w > 0 && h > 0 && m_oleInPlaceObject.Ok())
-                       m_oleInPlaceObject->SetObjectRects(&posRect, &posRect);
-
-               hret = m_oleObject->DoVerb(OLEIVERB_INPLACEACTIVATE, NULL, m_clientSite, 0, (HWND)GetHWND(), &posRect);
-        hret = m_oleObject->DoVerb(OLEIVERB_SHOW, 0, m_clientSite, 0, (HWND)GetHWND(), &posRect);
-    };
-
-       if (! m_oleObjectHWND && m_oleInPlaceObject.Ok())
-       {
-               hret = m_oleInPlaceObject->GetWindow(&m_oleObjectHWND);
-               WXOLE_WARN(hret, "m_oleInPlaceObject->GetWindow(&m_oleObjectHWND)");
-       };
-
-       if (m_oleObjectHWND)
-       {
-               ::SetActiveWindow(m_oleObjectHWND);
-               ::ShowWindow(m_oleObjectHWND, SW_SHOW);
-       };
-}
-
-void wxActiveX::CreateActiveX(LPOLESTR progId)
-{
-    CLSID clsid;
-    if (CLSIDFromProgID(progId, &clsid) != S_OK)
-       return;
-
-    CreateActiveX(clsid);
-};
-
-////////////////////////////////////////////////////////////////////////////////////////////////////////////
-// Case Insensitive Map of Event names to eventTypes
-// created dynamically at run time in:
-//      EVT_ACTIVEX(eventName, id, fn)
-// we map the pointer to them so that:
-//      const wxEventType& RegisterActiveXEvent(wxString eventName);
-// can return a const reference, which is neccessary for event tables
-// probably should use a wxWindows hash table here, but I'm lazy ...
-struct less_wxStringI
-{
-    bool operator()(const wxString& x, const wxString& y) const
-    {
-        return x.CmpNoCase(y) < 0;
-    };
-};
-
-typedef map<wxString, wxEventType *, less_wxStringI> ActiveXNamedEventMap;
-static ActiveXNamedEventMap sg_NamedEventMap;
-
-const wxEventType& RegisterActiveXEvent(const wxChar *eventName)
-{
-    wxString ev = eventName;
-    ActiveXNamedEventMap::iterator it = sg_NamedEventMap.find(ev);
-    if (it == sg_NamedEventMap.end())
-    {
-        wxEventType  *et = new wxEventType(wxNewEventType());
-        sg_NamedEventMap[ev] = et;
-
-        return *et;
-    };
-
-    return *(it->second);
-};
-
-
-////////////////////////////////////////////////////////////////////////////////////////////////////////////
-// Map of Event DISPID's to eventTypes
-// created dynamically at run time in:
-//      EVT_ACTIVEX(eventName, id, fn)
-// we map the pointer to them so that:
-//      const wxEventType& RegisterActiveXEvent(wxString eventName);
-// can return a const reference, which is neccessary for event tables
-
-typedef map<DISPID, wxEventType *> ActiveXDISPIDEventMap;
-static ActiveXDISPIDEventMap sg_dispIdEventMap;
-
-const wxEventType& RegisterActiveXEvent(DISPID event)
-{
-    ActiveXDISPIDEventMap::iterator it = sg_dispIdEventMap.find(event);
-    if (it == sg_dispIdEventMap.end())
-    {
-        wxEventType  *et = new wxEventType(wxNewEventType());
-        sg_dispIdEventMap[event] = et;
-
-        return *et;
-    };
-
-    return *(it->second);
-};
-
-// one off class for automatic freeing of activeX eventtypes
-class ActiveXEventMapFlusher
-{
-public:
-    ~ActiveXEventMapFlusher()
-    {
-        // Named events
-        ActiveXNamedEventMap::iterator it = sg_NamedEventMap.end();
-        while (it != sg_NamedEventMap.end())
-        {
-            delete it->second;
-            it++;
-        };
-
-        // DISPID events
-        ActiveXDISPIDEventMap::iterator dit = sg_dispIdEventMap.end();
-        while (dit != sg_dispIdEventMap.end())
-        {
-            delete dit->second;
-            dit++;
-        };
-    };
-};
-
-static ActiveXEventMapFlusher s_dummyActiveXEventMapFlusher;
-
-
-//////////////////////////////////////////////////////
-bool MSWVariantToVariant(VARIANTARG& va, wxVariant& vx)
-{
-    switch(va.vt)
-    {
-       case VT_VARIANT | VT_BYREF:
-               return MSWVariantToVariant(*va.pvarVal, vx);
-
-    case VT_I2:
-    case VT_I4:
-        vx = (long) va.iVal;
-        return true;
-
-    case VT_I2 | VT_BYREF:
-    case VT_I4 | VT_BYREF:
-        vx = (long) *va.piVal;
-        return true;
-
-    case VT_BSTR:
-        vx = wxString(va.bstrVal);
-        return true;
-
-    case VT_BSTR | VT_BYREF:
-        vx = wxString(*va.pbstrVal);
-        return true;
-
-       case VT_BOOL:
-               vx = (va.boolVal != FALSE);
-               return true;
-
-       case VT_BOOL | VT_BYREF:
-               vx = (*va.pboolVal != FALSE);
-               return true;
-
-    default:
-        vx.MakeNull();
-        return false;
-    };
-};
-
-bool VariantToMSWVariant(wxVariant& vx, VARIANTARG& va)
-{
-    switch(va.vt)
-    {
-       case VT_VARIANT | VT_BYREF:
-               return VariantToMSWVariant(vx, va);
-
-    case VT_I2:
-    case VT_I4:
-        va.iVal = (long) vx;
-        return true;
-
-    case VT_I2 | VT_BYREF:
-    case VT_I4 | VT_BYREF:
-         *va.piVal = (long) vx;
-        return true;
-
-       case VT_BOOL:
-               va.boolVal = ((bool) vx) ? TRUE : FALSE;
-               return true;
-
-       case VT_BOOL | VT_BYREF:
-               *va.pboolVal = ((bool) vx) ? TRUE : FALSE;
-               return true;
-
-    default:
-        return false;
-    };
-};
-
-class wxActiveXEvents : public IDispatch
-{
-private:
-    DECLARE_OLE_UNKNOWN(wxActiveXEvents);
-
-
-    wxActiveX *m_activeX;
-
-public:
-    wxActiveXEvents(wxActiveX *ax) : m_activeX(ax) {}
-       virtual ~wxActiveXEvents()
-    {
-    }
-
-       //IDispatch
-       STDMETHODIMP GetIDsOfNames(REFIID r, OLECHAR** o, unsigned int i, LCID l, DISPID* d)
-       {
-        return E_NOTIMPL;
-    };
-
-       STDMETHODIMP GetTypeInfo(unsigned int i, LCID l, ITypeInfo** t)
-       {
-        return E_NOTIMPL;
-    };
-
-       STDMETHODIMP GetTypeInfoCount(unsigned int* i)
-       {
-        return E_NOTIMPL;
-    };
-
-
-    void DispatchEvent(int eventIdx, const wxEventType& eventType, DISPPARAMS * pDispParams)
-    {
-        wxASSERT(eventIdx >= 0 && eventIdx < int(m_activeX->m_events.size()));
-        wxActiveX::FuncX &func = m_activeX->m_events[eventIdx];
-
-               wxActiveXEvent  event;
-       event.SetId(m_activeX->GetId());
-           event.SetEventType(eventType);
-        event.m_params.NullList();
-        event.m_params.SetName(func.name);
-
-        // arguments
-        if (pDispParams)
-        {
-                       // cdecl call
-            // sometimes the pDispParams does not match the param info for a activex control
-            int nArg = wxMin(func.params.size(), pDispParams->cArgs);
-            for (int i = nArg - 1; i >= 0; i--)
-            {
-                VARIANTARG& va = pDispParams->rgvarg[i];
-                               wxActiveX::ParamX &px = func.params[nArg - i - 1];
-                wxVariant vx;
-
-                vx.SetName(px.name);
-                MSWVariantToVariant(va, vx);
-                event.m_params.Append(vx);
-            };
-        };
-
-               if (func.hasOut)
-               {
-            int nArg = wxMin(func.params.size(), pDispParams->cArgs);
-               m_activeX->GetParent()->ProcessEvent(event);
-            for (int i = 0; i < nArg; i++)
-            {
-                VARIANTARG& va = pDispParams->rgvarg[i];
-                               wxActiveX::ParamX &px = func.params[nArg - i - 1];
-
-                               if (px.IsOut())
-                               {
-                                       wxVariant& vx = event.m_params[nArg - i - 1];
-
-                                       VariantToMSWVariant(vx, va);
-                               };
-                       };
-               }
-               else
-               m_activeX->GetParent()->AddPendingEvent(event);
-
-    };
-
-       STDMETHODIMP Invoke(DISPID dispIdMember, REFIID riid, LCID lcid,
-                                                 WORD wFlags, DISPPARAMS * pDispParams,
-                                                 VARIANT * pVarResult, EXCEPINFO * pExcepInfo,
-                                                 unsigned int * puArgErr)
-       {
-           if (wFlags & (DISPATCH_PROPERTYGET | DISPATCH_PROPERTYPUT | DISPATCH_PROPERTYPUTREF))
-            return E_NOTIMPL;
-
-        wxASSERT(m_activeX);
-
-        // map dispid to m_eventsIdx
-        wxActiveX::MemberIdList::iterator mid = m_activeX->m_eventsIdx.find((MEMBERID) dispIdMember);
-        if (mid == m_activeX->m_eventsIdx.end())
-            return S_OK;
-
-        int funcIdx = mid->second;
-        wxActiveX::FuncX &func = m_activeX->m_events[funcIdx];
-
-
-        // try to find dispid event
-        ActiveXDISPIDEventMap::iterator dit = sg_dispIdEventMap.find(dispIdMember);
-        if (dit != sg_dispIdEventMap.end())
-        {
-            // Dispatch Event
-            DispatchEvent(funcIdx, *(dit->second), pDispParams);
-               return S_OK;
-        };
-
-        // try named event
-        ActiveXNamedEventMap::iterator nit = sg_NamedEventMap.find(func.name);
-        if (nit == sg_NamedEventMap.end())
-            return S_OK;
-
-        // Dispatch Event
-        DispatchEvent(funcIdx, *(nit->second), pDispParams);
-       return S_OK;
-    }
-};
-
-
-DEFINE_OLE_TABLE(wxActiveXEvents)
-       OLE_IINTERFACE(IUnknown)
-       OLE_INTERFACE(IID_IDispatch, IDispatch)
-END_OLE_TABLE;
-
-wxString wxActiveXEvent::EventName()
-{
-    return m_params.GetName();
-};
-
-int wxActiveXEvent::ParamCount() const
-{
-    return m_params.GetCount();
-};
-
-wxString wxActiveXEvent::ParamType(int idx)
-{
-    wxASSERT(idx >= 0 && idx < m_params.GetCount());
-
-    return m_params[idx].GetType();
-};
-
-wxString wxActiveXEvent::ParamName(int idx)
-{
-    wxASSERT(idx >= 0 && idx < m_params.GetCount());
-
-    return m_params[idx].GetName();
-};
-
-static wxVariant nullVar;
-
-wxVariant wxActiveXEvent::operator[] (int idx) const
-{
-    return (wxVariant&) operator[] (idx);
-};
-
-wxVariant& wxActiveXEvent::operator[] (int idx)
-{
-    wxASSERT(idx >= 0 && idx < ParamCount());
-
-    return m_params[idx];
-};
-
-wxVariant wxActiveXEvent::operator[] (wxString name) const
-{
-    return (wxVariant&) operator[] (name);
-};
-
-wxVariant& wxActiveXEvent::operator[] (wxString name)
-{
-    for (int i = 0; i < m_params.GetCount(); i++)
-    {
-        if (name.CmpNoCase(m_params[i].GetName()) == 0)
-            return m_params[i];
-    };
-
-    wxString err = wxT("wxActiveXEvent::operator[] invalid name <") + name + wxT(">");
-    err += wxT("\r\nValid Names = :\r\n");
-    for (i = 0; i < m_params.GetCount(); i++)
-    {
-        err += m_params[i].GetName();
-        err += wxT("\r\n");
-    };
-
-    wxASSERT_MSG(false, err);
-
-    return nullVar;
-};
-
-void wxActiveX::GetTypeInfo()
-{
-       /*
-       We are currently only interested in the IDispatch interface
-       to the control. For dual interfaces (TypeKind = TKIND_INTERFACE)
-       we should drill down through the inheritance
-       (using TYPEATTR->cImplTypes) and GetRefTypeOfImplType(n)
-       and retrieve all the func names etc that way, then generate a C++
-       header  file for it.
-
-       But we don't do this and probably never will, so if we have a DUAL
-       interface then we query for the IDispatch
-       via GetRefTypeOfImplType(-1).
-       */
-
-       HRESULT hret = 0;
-
-       // get type info via class info
-       wxAutoOleInterface<IProvideClassInfo> classInfo(IID_IProvideClassInfo, m_ActiveX);
-       if (! classInfo.Ok())
-               return;
-
-       // type info
-       wxAutoOleInterface<ITypeInfo> typeInfo;
-       hret = classInfo->GetClassInfo(typeInfo.GetRef());
-       if (! typeInfo.Ok())
-               return;
-
-       // TYPEATTR
-       TYPEATTR *ta = NULL;
-       hret = typeInfo->GetTypeAttr(&ta);
-       if (! ta)
-               return;
-
-    // this should be a TKIND_COCLASS
-    wxASSERT(ta->typekind == TKIND_COCLASS);
-
-    // iterate contained interfaces
-       for (int i = 0; i < ta->cImplTypes; i++)
-       {
-               HREFTYPE rt = 0;
-
-               // get dispatch type info handle
-               hret = typeInfo->GetRefTypeOfImplType(i, &rt);
-               if (! SUCCEEDED(hret))
-                       continue;
-
-               // get dispatch type info interface
-               wxAutoOleInterface<ITypeInfo>  ti;
-               hret = typeInfo->GetRefTypeInfo(rt, ti.GetRef());
-               if (! ti.Ok())
-                       continue;
-
-        // check if default event sink
-        bool defEventSink = false;
-        int impTypeFlags = 0;
-        typeInfo->GetImplTypeFlags(i, &impTypeFlags);
-
-        if (impTypeFlags & IMPLTYPEFLAG_FDEFAULT)
-        {
-            if (impTypeFlags & IMPLTYPEFLAG_FSOURCE)
-            {
-                WXOLE_TRACEOUT(wxT("Default Event Sink"));
-                defEventSink = true;
-            }
-            else
-            {
-                WXOLE_TRACEOUT(wxT("Default Interface"));
-            }
-        };
-
-
-               // process
-               GetTypeInfo(ti, defEventSink);
-       };
-
-
-    // free
-    typeInfo->ReleaseTypeAttr(ta);
-};
-
-void wxActiveX::GetTypeInfo(ITypeInfo *ti, bool defEventSink)
-{
-       ti->AddRef();
-       wxAutoOleInterface<ITypeInfo> typeInfo(ti);
-
-       // TYPEATTR
-       TYPEATTR *ta = NULL;
-       HRESULT hret = typeInfo->GetTypeAttr(&ta);
-       if (! ta)
-               return;
-
-       if (ta->typekind == TKIND_DISPATCH)
-       {
-        WXOLE_TRACEOUT(wxT("GUID = ") << GetIIDName(ta->guid).c_str());
-
-        if (defEventSink)
-        {
-            wxActiveXEvents *disp = new wxActiveXEvents(this);
-            ConnectAdvise(ta->guid, disp);
-        };
-
-
-               // Get Function Names
-               for (int i = 0; i < ta->cFuncs; i++)
-               {
-                       FUNCDESC FAR *fd = NULL;
-
-                       hret = typeInfo->GetFuncDesc(i, &fd);
-                       if (! fd)
-                               continue;
-
-                       BSTR anames[1] = {NULL};
-                       unsigned int n = 0;
-
-                       hret = typeInfo->GetNames(fd->memid, anames, 1, &n);
-
-                       if (anames[0])
-                       {
-                               wxString name = anames[0];
-
-                               WXOLE_TRACEOUT(wxT("Name ") << i << wxT(" = ") << name.c_str());
-                               SysFreeString(anames[0]);
-
-                if (defEventSink)
-                {
-                    FuncX func;
-                    func.name = name;
-                    func.memid = fd->memid;
-                                       func.hasOut = false;
-
-                    // get Param Names
-                    unsigned int maxPNames = fd->cParams + 1;
-                    unsigned int nPNames = 0;
-                    BSTR *pnames = new BSTR[maxPNames];
-
-                    hret = typeInfo->GetNames(fd->memid, pnames, maxPNames, &nPNames);
-                    wxASSERT(int(nPNames) >= fd->cParams + 1);
-
-                    SysFreeString(pnames[0]);
-                                       // params
-                                       for (int p = 0; p < fd->cParams; p++)
-                                       {
-                                               ParamX param;
-
-                                               param.flags = fd->lprgelemdescParam[p].idldesc.wIDLFlags;
-                                               param.vt = fd->lprgelemdescParam[p].tdesc.vt;
-                        param.isPtr = (param.vt == VT_PTR);
-                        param.isSafeArray = (param.vt == VT_SAFEARRAY);
-                        if (param.isPtr || param.isSafeArray)
-                            param.vt = fd->lprgelemdescParam[p].tdesc.lptdesc->vt;
-
-                        param.name = pnames[p + 1];
-                        SysFreeString(pnames[p + 1]);
-
-                                               func.hasOut |= (param.IsOut() || param.isPtr);
-                                               func.params.push_back(param);
-                                       };
-                    delete [] pnames;
-
-                    m_events.push_back(func);
-                    m_eventsIdx[fd->memid] = m_events.size() - 1;
-                };
-                       };
-
-                       typeInfo->ReleaseFuncDesc(fd);
-               };
-       }
-
-       typeInfo->ReleaseTypeAttr(ta);
-};
-
-///////////////////////////////////////////////
-// Type Info exposure
-const wxActiveX::FuncX& wxActiveX::GetEvent(int idx) const
-{
-    wxASSERT(idx >= 0 && idx < GetEventCount());
-
-    return m_events[idx];
-};
-
-///////////////////////////////////////////////
-
-HRESULT wxActiveX::ConnectAdvise(REFIID riid, IUnknown *events)
-{
-       wxOleConnectionPoint    cp;
-       DWORD                                   adviseCookie = 0;
-
-       wxAutoOleInterface<IConnectionPointContainer> cpContainer(IID_IConnectionPointContainer, m_ActiveX);
-       if (! cpContainer.Ok())
-               return E_FAIL;
-
-       HRESULT hret = cpContainer->FindConnectionPoint(riid, cp.GetRef());
-       if (! SUCCEEDED(hret))
-               return hret;
-
-       hret = cp->Advise(events, &adviseCookie);
-
-       if (SUCCEEDED(hret))
-               m_connections.push_back(wxOleConnection(cp, adviseCookie));
-
-       return hret;
-};
-
-HRESULT wxActiveX::AmbientPropertyChanged(DISPID dispid)
-{
-    wxAutoOleInterface<IOleControl> oleControl(IID_IOleControl, m_oleObject);
-
-    if (oleControl.Ok())
-        return oleControl->OnAmbientPropertyChange(dispid);
-    else
-        return S_FALSE;
-};
-
-#define HIMETRIC_PER_INCH   2540
-#define MAP_PIX_TO_LOGHIM(x,ppli)   MulDiv(HIMETRIC_PER_INCH, (x), (ppli))
-
-static void PixelsToHimetric(SIZEL &sz)
-{
-       static int logX = 0;
-       static int logY = 0;
-
-       if (logY == 0)
-       {
-               // initaliase
-               HDC dc = GetDC(NULL);
-               logX = GetDeviceCaps(dc, LOGPIXELSX);
-               logY = GetDeviceCaps(dc, LOGPIXELSY);
-               ReleaseDC(NULL, dc);
-       };
-
-#define HIMETRIC_INCH   2540
-#define CONVERT(x, logpixels)   MulDiv(HIMETRIC_INCH, (x), (logpixels))
-
-       sz.cx = CONVERT(sz.cx, logX);
-       sz.cy = CONVERT(sz.cy, logY);
-
-#undef CONVERT
-#undef HIMETRIC_INCH
-}
-
-
-void wxActiveX::OnSize(wxSizeEvent& event)
-{
-       int w, h;
-       GetClientSize(&w, &h);
-
-       RECT posRect;
-       posRect.left = 0;
-       posRect.top = 0;
-       posRect.right = w;
-       posRect.bottom = h;
-
-       if (w <= 0 && h <= 0)
-               return;
-
-       // extents are in HIMETRIC units
-    if (m_oleObject.Ok())
-    {
-        SIZEL sz = {w, h};
-           PixelsToHimetric(sz);
-
-        SIZEL sz2;
-
-        m_oleObject->GetExtent(DVASPECT_CONTENT, &sz2);
-        if (sz2.cx !=  sz.cx || sz.cy != sz2.cy)
-            m_oleObject->SetExtent(DVASPECT_CONTENT, &sz);
-    };
-
-    if (m_oleInPlaceObject.Ok())
-               m_oleInPlaceObject->SetObjectRects(&posRect, &posRect);
-}
-
-void wxActiveX::OnPaint(wxPaintEvent& event)
-{
-//     wxLogTrace(wxT("repainting activex win"));
-       wxPaintDC dc(this);
-       dc.BeginDrawing();
-       int w, h;
-       GetSize(&w, &h);
-       RECT posRect;
-       posRect.left = 0;
-       posRect.top = 0;
-       posRect.right = w;
-       posRect.bottom = h;
-
-       // Draw only when control is windowless or deactivated
-       if (m_viewObject)
-       {
-               ::RedrawWindow(m_oleObjectHWND, NULL, NULL, RDW_INTERNALPAINT);
-               {
-                       RECTL *prcBounds = (RECTL *) &posRect;
-                       m_viewObject->Draw(DVASPECT_CONTENT, -1, NULL, NULL, NULL,
-                               (HDC)dc.GetHDC(), prcBounds, NULL, NULL, 0);
-               }
-       }
-       else
-       {
-               dc.SetBrush(*wxRED_BRUSH);
-               dc.DrawRectangle(0, 0, w, h);
-               dc.SetBrush(wxNullBrush);
-       }
-       dc.EndDrawing();
-}
-
-
-void wxActiveX::OnMouse(wxMouseEvent& event)
-{
-       if (m_oleObjectHWND == NULL)
-    {
-//        wxLogTrace(wxT("no oleInPlaceObject"));
-        event.Skip();
-        return;
-    }
-
-//     wxLogTrace(wxT("mouse event"));
-       UINT msg = 0;
-       WPARAM wParam = 0;
-       LPARAM lParam = 0;
-       LRESULT lResult = 0;
-
-       if (event.m_metaDown)
-        wParam |= MK_CONTROL;
-       if (event.m_shiftDown)
-        wParam |= MK_SHIFT;
-       if (event.m_leftDown)
-        wParam |= MK_LBUTTON;
-       if (event.m_middleDown)
-        wParam |= MK_MBUTTON;
-       if (event.m_rightDown)
-        wParam |= MK_RBUTTON;
-       lParam = event.m_x << 16;
-       lParam |= event.m_y;
-
-       if (event.LeftDown())
-        msg = WM_LBUTTONDOWN;
-       else if (event.LeftDClick())
-        msg = WM_LBUTTONDBLCLK;
-       else if (event.LeftUp())
-        msg = WM_LBUTTONUP;
-       else if (event.MiddleDown())
-        msg = WM_MBUTTONDOWN;
-       else if (event.MiddleDClick())
-        msg = WM_MBUTTONDBLCLK;
-       else if (event.MiddleUp())
-        msg = WM_MBUTTONUP;
-       else if (event.RightDown())
-        msg = WM_RBUTTONDOWN;
-       else if (event.RightDClick())
-        msg = WM_RBUTTONDBLCLK;
-       else if (event.RightUp())
-        msg = WM_RBUTTONUP;
-       else if (event.Moving() || event.Dragging())
-        msg = WM_MOUSEMOVE;
-
-       wxString log;
-       if (msg == 0)
-    {
-//        wxLogTrace(wxT("no message"));
-        event.Skip(); return;
-    };
-
-       if (!::SendMessage(m_oleObjectHWND, msg, wParam, lParam))
-    {
-//        wxLogTrace(wxT("msg not delivered"));
-        event.Skip();
-        return;
-    };
-
-//     wxLogTrace(wxT("msg sent"));
-}
-
-WXLRESULT wxActiveX::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam)
-{
-       if (m_oleObjectHWND == NULL)
-        return wxWindow::MSWWindowProc(nMsg, wParam, lParam);
-
-    switch(nMsg)
-    {
-    case WM_CHAR:
-    case WM_DEADCHAR:
-    case WM_KEYDOWN:
-    case WM_KEYUP:
-    case WM_SYSCHAR:
-    case WM_SYSDEADCHAR:
-    case WM_SYSKEYDOWN:
-    case WM_SYSKEYUP:
-        PostMessage(m_oleObjectHWND, nMsg, wParam, lParam);
-
-    default:
-        return wxWindow::MSWWindowProc(nMsg, wParam, lParam);
-    };
-};
-
-void wxActiveX::OnSetFocus(wxFocusEvent& event)
-{
-       if (m_oleInPlaceActiveObject.Ok())
-        m_oleInPlaceActiveObject->OnFrameWindowActivate(TRUE);
-}
-
-void wxActiveX::OnKillFocus(wxFocusEvent& event)
-{
-       if (m_oleInPlaceActiveObject.Ok())
-        m_oleInPlaceActiveObject->OnFrameWindowActivate(FALSE);
-}
-
-
-FrameSite::FrameSite(wxActiveX * win)
-{
-       m_window = win;
-       m_bSupportsWindowlessActivation = true;
-       m_bInPlaceLocked = false;
-       m_bUIActive = false;
-       m_bInPlaceActive = false;
-       m_bWindowless = false;
-
-       m_nAmbientLocale = 0;
-       m_clrAmbientForeColor = ::GetSysColor(COLOR_WINDOWTEXT);
-       m_clrAmbientBackColor = ::GetSysColor(COLOR_WINDOW);
-       m_bAmbientShowHatching = true;
-       m_bAmbientShowGrabHandles = true;
-       m_bAmbientAppearance = true;
-
-       m_hDCBuffer = NULL;
-       m_hWndParent = (HWND)m_window->GetHWND();
-}
-
-FrameSite::~FrameSite()
-{
-}
-
-
-//IDispatch
-
-HRESULT FrameSite::GetIDsOfNames(REFIID riid, OLECHAR ** rgszNames, unsigned int cNames,
-                                                                LCID lcid, DISPID * rgDispId)
-{
-       WXOLE_TRACE("IDispatch::GetIDsOfNames");
-       return E_NOTIMPL;
-}
-
-HRESULT FrameSite::GetTypeInfo(unsigned int iTInfo, LCID lcid, ITypeInfo ** ppTInfo)
-{
-       WXOLE_TRACE("IDispatch::GetTypeInfo");
-       return E_NOTIMPL;
-}
-
-HRESULT FrameSite::GetTypeInfoCount(unsigned int * pcTInfo)
-{
-       WXOLE_TRACE("IDispatch::GetTypeInfoCount");
-       return E_NOTIMPL;
-}
-
-HRESULT FrameSite::Invoke(DISPID dispIdMember, REFIID riid, LCID lcid,
-                                                 WORD wFlags, DISPPARAMS * pDispParams,
-                                                 VARIANT * pVarResult, EXCEPINFO * pExcepInfo,
-                                                 unsigned int * puArgErr)
-{
-       WXOLE_TRACE("IDispatch::Invoke");
-
-       if (!(wFlags & DISPATCH_PROPERTYGET))
-        return S_OK;
-
-    HRESULT hr;
-
-       if (pVarResult == NULL)
-               return E_INVALIDARG;
-
-    //The most common case is boolean, use as an initial type
-    V_VT(pVarResult) = VT_BOOL;
-
-       switch (dispIdMember)
-       {
-        case DISPID_AMBIENT_MESSAGEREFLECT:
-            WXOLE_TRACE("Invoke::DISPID_AMBIENT_MESSAGEREFLECT");
-            V_BOOL(pVarResult)= FALSE;
-            return S_OK;
-
-        case DISPID_AMBIENT_DISPLAYASDEFAULT:
-            WXOLE_TRACE("Invoke::DISPID_AMBIENT_DISPLAYASDEFAULT");
-            V_BOOL(pVarResult)= TRUE;
-            return S_OK;
-
-        case DISPID_AMBIENT_OFFLINEIFNOTCONNECTED:
-            WXOLE_TRACE("Invoke::DISPID_AMBIENT_OFFLINEIFNOTCONNECTED");
-            V_BOOL(pVarResult) = TRUE;
-            return S_OK;
-
-
-        case DISPID_AMBIENT_SILENT:
-            WXOLE_TRACE("Invoke::DISPID_AMBIENT_SILENT");
-            V_BOOL(pVarResult)= TRUE;
-            return S_OK;
-
-               case DISPID_AMBIENT_APPEARANCE:
-                       pVarResult->vt = VT_BOOL;
-                       pVarResult->boolVal = m_bAmbientAppearance;
-                       break;
-
-               case DISPID_AMBIENT_FORECOLOR:
-                       pVarResult->vt = VT_I4;
-                       pVarResult->lVal = (long) m_clrAmbientForeColor;
-                       break;
-
-               case DISPID_AMBIENT_BACKCOLOR:
-                       pVarResult->vt = VT_I4;
-                       pVarResult->lVal = (long) m_clrAmbientBackColor;
-                       break;
-
-               case DISPID_AMBIENT_LOCALEID:
-                       pVarResult->vt = VT_I4;
-                       pVarResult->lVal = (long) m_nAmbientLocale;
-                       break;
-
-               case DISPID_AMBIENT_USERMODE:
-                       pVarResult->vt = VT_BOOL;
-                       pVarResult->boolVal = m_window->m_bAmbientUserMode;
-                       break;
-
-               case DISPID_AMBIENT_SHOWGRABHANDLES:
-                       pVarResult->vt = VT_BOOL;
-                       pVarResult->boolVal = m_bAmbientShowGrabHandles;
-                       break;
-
-               case DISPID_AMBIENT_SHOWHATCHING:
-                       pVarResult->vt = VT_BOOL;
-                       pVarResult->boolVal = m_bAmbientShowHatching;
-                       break;
-
-               default:
-                       return DISP_E_MEMBERNOTFOUND;
-       }
-
-    return S_OK;
-}
-
-//IOleWindow
-
-HRESULT FrameSite::GetWindow(HWND * phwnd)
-{
-       WXOLE_TRACE("IOleWindow::GetWindow");
-       if (phwnd == NULL)
-        return E_INVALIDARG;
-       (*phwnd) = m_hWndParent;
-       return S_OK;
-}
-
-HRESULT FrameSite::ContextSensitiveHelp(BOOL fEnterMode)
-{
-       WXOLE_TRACE("IOleWindow::ContextSensitiveHelp");
-       return S_OK;
-}
-
-//IOleInPlaceUIWindow
-
-HRESULT FrameSite::GetBorder(LPRECT lprectBorder)
-{
-       WXOLE_TRACE("IOleInPlaceUIWindow::GetBorder");
-       if (lprectBorder == NULL)
-        return E_INVALIDARG;
-       return INPLACE_E_NOTOOLSPACE;
-}
-
-HRESULT FrameSite::RequestBorderSpace(LPCBORDERWIDTHS pborderwidths)
-{
-       WXOLE_TRACE("IOleInPlaceUIWindow::RequestBorderSpace");
-       if (pborderwidths == NULL)
-        return E_INVALIDARG;
-       return INPLACE_E_NOTOOLSPACE;
-}
-
-HRESULT FrameSite::SetBorderSpace(LPCBORDERWIDTHS pborderwidths)
-{
-       WXOLE_TRACE("IOleInPlaceUIWindow::SetBorderSpace");
-       return S_OK;
-}
-
-HRESULT FrameSite::SetActiveObject(IOleInPlaceActiveObject *pActiveObject, LPCOLESTR pszObjName)
-{
-       WXOLE_TRACE("IOleInPlaceUIWindow::SetActiveObject");
-
-    if (pActiveObject)
-        pActiveObject->AddRef();
-
-    m_window->m_oleInPlaceActiveObject = pActiveObject;
-       return S_OK;
-}
-
-//IOleInPlaceFrame
-
-HRESULT FrameSite::InsertMenus(HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths)
-{
-       WXOLE_TRACE("IOleInPlaceFrame::InsertMenus");
-       return S_OK;
-}
-
-HRESULT FrameSite::SetMenu(HMENU hmenuShared, HOLEMENU holemenu, HWND hwndActiveObject)
-{
-       WXOLE_TRACE("IOleInPlaceFrame::SetMenu");
-       return S_OK;
-}
-
-HRESULT FrameSite::RemoveMenus(HMENU hmenuShared)
-{
-       WXOLE_TRACE("IOleInPlaceFrame::RemoveMenus");
-       return S_OK;
-}
-
-HRESULT FrameSite::SetStatusText(LPCOLESTR pszStatusText)
-{
-       WXOLE_TRACE("IOleInPlaceFrame::SetStatusText");
-       //((wxFrame*)wxGetApp().GetTopWindow())->GetStatusBar()->SetStatusText(pszStatusText);
-       return S_OK;
-}
-
-HRESULT FrameSite::EnableModeless(BOOL fEnable)
-{
-       WXOLE_TRACE("IOleInPlaceFrame::EnableModeless");
-       return S_OK;
-}
-
-HRESULT FrameSite::TranslateAccelerator(LPMSG lpmsg, WORD wID)
-{
-       WXOLE_TRACE("IOleInPlaceFrame::TranslateAccelerator");
-       // TODO: send an event with this id
-    if (m_window->m_oleInPlaceActiveObject.Ok())
-       m_window->m_oleInPlaceActiveObject->TranslateAccelerator(lpmsg);
-
-       return S_FALSE;
-}
-
-//IOleInPlaceSite
-
-HRESULT FrameSite::CanInPlaceActivate()
-{
-       WXOLE_TRACE("IOleInPlaceSite::CanInPlaceActivate");
-       return S_OK;
-}
-
-HRESULT FrameSite::OnInPlaceActivate()
-{
-       WXOLE_TRACE("IOleInPlaceSite::OnInPlaceActivate");
-       m_bInPlaceActive = true;
-       return S_OK;
-}
-
-HRESULT FrameSite::OnUIActivate()
-{
-       WXOLE_TRACE("IOleInPlaceSite::OnUIActivate");
-       m_bUIActive = true;
-       return S_OK;
-}
-
-HRESULT FrameSite::GetWindowContext(IOleInPlaceFrame **ppFrame,
-                                                                       IOleInPlaceUIWindow **ppDoc,
-                                                                       LPRECT lprcPosRect,
-                                                                       LPRECT lprcClipRect,
-                                                                       LPOLEINPLACEFRAMEINFO lpFrameInfo)
-{
-       WXOLE_TRACE("IOleInPlaceSite::GetWindowContext");
-       if (ppFrame == NULL || ppDoc == NULL || lprcPosRect == NULL ||
-               lprcClipRect == NULL || lpFrameInfo == NULL)
-       {
-               if (ppFrame != NULL)
-            (*ppFrame) = NULL;
-               if (ppDoc != NULL)
-            (*ppDoc) = NULL;
-               return E_INVALIDARG;
-       }
-
-    HRESULT hr = QueryInterface(IID_IOleInPlaceFrame, (void **) ppFrame);
-    if (! SUCCEEDED(hr))
-    {
-        WXOLE_TRACE("IOleInPlaceSite::IOleInPlaceFrame Error !");
-        return E_UNEXPECTED;
-    };
-
-    hr = QueryInterface(IID_IOleInPlaceUIWindow, (void **) ppDoc);
-    if (! SUCCEEDED(hr))
-    {
-        WXOLE_TRACE("IOleInPlaceSite::IOleInPlaceUIWindow Error !");
-        (*ppFrame)->Release();
-        *ppFrame = NULL;
-        return E_UNEXPECTED;
-    };
-
-       int w, h;
-       m_window->GetClientSize(&w, &h);
-    if (lprcPosRect)
-    {
-           lprcPosRect->left = lprcPosRect->top = 0;
-           lprcPosRect->right = w;
-           lprcPosRect->bottom = h;
-    };
-    if (lprcClipRect)
-    {
-           lprcClipRect->left = lprcClipRect->top = 0;
-           lprcClipRect->right = w;
-           lprcClipRect->bottom = h;
-    };
-
-    memset(lpFrameInfo, 0, sizeof(OLEINPLACEFRAMEINFO));
-    lpFrameInfo->cb = sizeof(OLEINPLACEFRAMEINFO);
-       lpFrameInfo->hwndFrame = m_hWndParent;
-
-       return S_OK;
-}
-
-HRESULT FrameSite::Scroll(SIZE scrollExtent)
-{
-       WXOLE_TRACE("IOleInPlaceSite::Scroll");
-       return S_OK;
-}
-
-HRESULT FrameSite::OnUIDeactivate(BOOL fUndoable)
-{
-       WXOLE_TRACE("IOleInPlaceSite::OnUIDeactivate");
-       m_bUIActive = false;
-       return S_OK;
-}
-
-HRESULT FrameSite::OnInPlaceDeactivate()
-{
-       WXOLE_TRACE("IOleInPlaceSite::OnInPlaceDeactivate");
-       m_bInPlaceActive = false;
-       return S_OK;
-}
-
-HRESULT FrameSite::DiscardUndoState()
-{
-       WXOLE_TRACE("IOleInPlaceSite::DiscardUndoState");
-       return S_OK;
-}
-
-HRESULT FrameSite::DeactivateAndUndo()
-{
-       WXOLE_TRACE("IOleInPlaceSite::DeactivateAndUndo");
-       return S_OK;
-}
-
-HRESULT FrameSite::OnPosRectChange(LPCRECT lprcPosRect)
-{
-       WXOLE_TRACE("IOleInPlaceSite::OnPosRectChange");
-    if (m_window->m_oleInPlaceObject.Ok() && lprcPosRect)
-        m_window->m_oleInPlaceObject->SetObjectRects(lprcPosRect, lprcPosRect);
-
-       return S_OK;
-}
-
-//IOleInPlaceSiteEx
-
-HRESULT FrameSite::OnInPlaceActivateEx(BOOL * pfNoRedraw, DWORD dwFlags)
-{
-       WXOLE_TRACE("IOleInPlaceSiteEx::OnInPlaceActivateEx");
-       OleLockRunning(m_window->m_ActiveX, TRUE, FALSE);
-    if (pfNoRedraw)
-        (*pfNoRedraw) = FALSE;
-       return S_OK;
-}
-
-HRESULT FrameSite::OnInPlaceDeactivateEx(BOOL fNoRedraw)
-{
-       WXOLE_TRACE("IOleInPlaceSiteEx::OnInPlaceDeactivateEx");
-    OleLockRunning(m_window->m_ActiveX, FALSE, FALSE);
-       return S_OK;
-}
-
-HRESULT FrameSite::RequestUIActivate()
-{
-       WXOLE_TRACE("IOleInPlaceSiteEx::RequestUIActivate");
-       return S_OK;
-}
-
-
-//IOleClientSite
-
-HRESULT FrameSite::SaveObject()
-{
-       WXOLE_TRACE("IOleClientSite::SaveObject");
-       return S_OK;
-}
-
-HRESULT FrameSite::GetMoniker(DWORD dwAssign, DWORD dwWhichMoniker,
-                                                         IMoniker ** ppmk)
-{
-       WXOLE_TRACE("IOleClientSite::GetMoniker");
-       return E_NOTIMPL;
-}
-
-HRESULT FrameSite::GetContainer(LPOLECONTAINER * ppContainer)
-{
-       WXOLE_TRACE("IOleClientSite::GetContainer");
-       if (ppContainer == NULL)
-        return E_INVALIDARG;
-
-    HRESULT hr = QueryInterface(IID_IOleContainer, (void**)(ppContainer));
-    wxASSERT(SUCCEEDED(hr));
-
-       return hr;
-}
-
-HRESULT FrameSite::ShowObject()
-{
-       WXOLE_TRACE("IOleClientSite::ShowObject");
-       if (m_window->m_oleObjectHWND)
-               ::ShowWindow(m_window->m_oleObjectHWND, SW_SHOW);
-       return S_OK;
-}
-
-HRESULT FrameSite::OnShowWindow(BOOL fShow)
-{
-       WXOLE_TRACE("IOleClientSite::OnShowWindow");
-       return S_OK;
-}
-
-HRESULT FrameSite::RequestNewObjectLayout()
-{
-       WXOLE_TRACE("IOleClientSite::RequestNewObjectLayout");
-       return E_NOTIMPL;
-}
-
-// IParseDisplayName
-
-HRESULT FrameSite::ParseDisplayName(IBindCtx *pbc, LPOLESTR pszDisplayName,
-                                                                       ULONG *pchEaten, IMoniker **ppmkOut)
-{
-       WXOLE_TRACE("IParseDisplayName::ParseDisplayName");
-       return E_NOTIMPL;
-}
-
-//IOleContainer
-
-HRESULT FrameSite::EnumObjects(DWORD grfFlags, IEnumUnknown **ppenum)
-{
-       WXOLE_TRACE("IOleContainer::EnumObjects");
-       return E_NOTIMPL;
-}
-
-HRESULT FrameSite::LockContainer(BOOL fLock)
-{
-       WXOLE_TRACE("IOleContainer::LockContainer");
-       // TODO
-       return S_OK;
-}
-
-//IOleItemContainer
-
-HRESULT FrameSite::GetObject(LPOLESTR pszItem, DWORD dwSpeedNeeded,
-                                                        IBindCtx * pbc, REFIID riid, void ** ppvObject)
-{
-       WXOLE_TRACE("IOleItemContainer::GetObject");
-       if (pszItem == NULL)
-        return E_INVALIDARG;
-       if (ppvObject == NULL)
-        return E_INVALIDARG;
-
-       *ppvObject = NULL;
-       return MK_E_NOOBJECT;
-}
-
-HRESULT FrameSite::GetObjectStorage(LPOLESTR pszItem, IBindCtx * pbc,
-                                                                       REFIID riid, void ** ppvStorage)
-{
-       WXOLE_TRACE("IOleItemContainer::GetObjectStorage");
-       if (pszItem == NULL)
-        return E_INVALIDARG;
-       if (ppvStorage == NULL)
-        return E_INVALIDARG;
-
-       *ppvStorage = NULL;
-       return MK_E_NOOBJECT;
-}
-
-HRESULT FrameSite::IsRunning(LPOLESTR pszItem)
-{
-       WXOLE_TRACE("IOleItemContainer::IsRunning");
-       if (pszItem == NULL)
-        return E_INVALIDARG;
-
-       return MK_E_NOOBJECT;
-}
-
-
-
-//IOleControlSite
-
-HRESULT FrameSite::OnControlInfoChanged()
-{
-       WXOLE_TRACE("IOleControlSite::OnControlInfoChanged");
-       return S_OK;
-}
-
-HRESULT FrameSite::LockInPlaceActive(BOOL fLock)
-{
-       WXOLE_TRACE("IOleControlSite::LockInPlaceActive");
-       m_bInPlaceLocked = (fLock) ? true : false;
-       return S_OK;
-}
-
-HRESULT FrameSite::GetExtendedControl(IDispatch ** ppDisp)
-{
-       WXOLE_TRACE("IOleControlSite::GetExtendedControl");
-       return E_NOTIMPL;
-}
-
-HRESULT FrameSite::TransformCoords(POINTL * pPtlHimetric, POINTF * pPtfContainer, DWORD dwFlags)
-{
-       WXOLE_TRACE("IOleControlSite::TransformCoords");
-       HRESULT hr = S_OK;
-
-       if (pPtlHimetric == NULL)
-               return E_INVALIDARG;
-
-       if (pPtfContainer == NULL)
-               return E_INVALIDARG;
-
-       return E_NOTIMPL;
-
-}
-
-HRESULT FrameSite::TranslateAccelerator(LPMSG pMsg, DWORD grfModifiers)
-{
-       WXOLE_TRACE("IOleControlSite::TranslateAccelerator");
-       // TODO: send an event with this id
-       return E_NOTIMPL;
-}
-
-HRESULT FrameSite::OnFocus(BOOL fGotFocus)
-{
-       WXOLE_TRACE("IOleControlSite::OnFocus");
-       return S_OK;
-}
-
-HRESULT FrameSite::ShowPropertyFrame()
-{
-       WXOLE_TRACE("IOleControlSite::ShowPropertyFrame");
-       return E_NOTIMPL;
-}
-
-//IOleCommandTarget
-
-HRESULT FrameSite::QueryStatus(const GUID * pguidCmdGroup, ULONG cCmds,
-                                                          OLECMD * prgCmds, OLECMDTEXT * pCmdTet)
-{
-       WXOLE_TRACE("IOleCommandTarget::QueryStatus");
-       if (prgCmds == NULL) return E_INVALIDARG;
-       bool bCmdGroupFound = false;
-
-       for (ULONG nCmd = 0; nCmd < cCmds; nCmd++)
-       {
-               // unsupported by default
-               prgCmds[nCmd].cmdf = 0;
-
-               // TODO
-       }
-
-       if (!bCmdGroupFound) { OLECMDERR_E_UNKNOWNGROUP; }
-       return S_OK;
-}
-
-HRESULT FrameSite::Exec(const GUID * pguidCmdGroup, DWORD nCmdID,
-                                               DWORD nCmdExecOpt, VARIANTARG * pVaIn,
-                                               VARIANTARG * pVaOut)
-{
-       WXOLE_TRACE("IOleCommandTarget::Exec");
-       bool bCmdGroupFound = false;
-
-       if (!bCmdGroupFound) { OLECMDERR_E_UNKNOWNGROUP; }
-       return OLECMDERR_E_NOTSUPPORTED;
-}
-
-//IAdviseSink
-
-void STDMETHODCALLTYPE FrameSite::OnDataChange(FORMATETC * pFormatEtc, STGMEDIUM * pgStgMed)
-{
-       WXOLE_TRACE("IAdviseSink::OnDataChange");
-}
-
-void STDMETHODCALLTYPE FrameSite::OnViewChange(DWORD dwAspect, LONG lIndex)
-{
-       WXOLE_TRACE("IAdviseSink::OnViewChange");
-       // redraw the control
-}
-
-void STDMETHODCALLTYPE FrameSite::OnRename(IMoniker * pmk)
-{
-       WXOLE_TRACE("IAdviseSink::OnRename");
-}
-
-void STDMETHODCALLTYPE FrameSite::OnSave()
-{
-       WXOLE_TRACE("IAdviseSink::OnSave");
-}
-
-void STDMETHODCALLTYPE FrameSite::OnClose()
-{
-       WXOLE_TRACE("IAdviseSink::OnClose");
-}
-
-/////////////////////////////////////////////
-// IOleDocumentSite
-HRESULT STDMETHODCALLTYPE FrameSite::ActivateMe(
-        /* [in] */ IOleDocumentView __RPC_FAR *pViewToActivate)
-{
-    wxAutoOleInterface<IOleInPlaceSite> inPlaceSite(IID_IOleInPlaceSite, (IDispatch *) this);
-    if (!inPlaceSite.Ok())
-       return E_FAIL;
-
-    if (pViewToActivate)
-    {
-       m_window->m_docView = pViewToActivate;
-        m_window->m_docView->SetInPlaceSite(inPlaceSite);
-    }
-    else
-    {
-       wxAutoOleInterface<IOleDocument> oleDoc(IID_IOleDocument, m_window->m_oleObject);
-        if (! oleDoc.Ok())
-               return E_FAIL;
-
-        HRESULT hr = oleDoc->CreateView(inPlaceSite, NULL, 0, m_window->m_docView.GetRef());
-        if (hr != S_OK)
-               return E_FAIL;
-
-               m_window->m_docView->SetInPlaceSite(inPlaceSite);
-    };
-
-    m_window->m_docView->UIActivate(TRUE);
-
-    return S_OK;
-};
-
-
-
-static IMalloc *iMalloc = NULL;
-
-IMalloc *wxOleInit::GetIMalloc()
-{
-       assert(iMalloc);
-       return iMalloc;
-};
-
-wxOleInit::wxOleInit()
-{
-    if (OleInitialize(NULL) == S_OK && iMalloc == NULL)
-           CoGetMalloc(1, &iMalloc);
-    else if (iMalloc)
-       iMalloc->AddRef();
-};
-
-wxOleInit::~wxOleInit()
-{
-       if (iMalloc)
-    {
-       if (iMalloc->Release() == 0)
-               iMalloc = NULL;
-    };
-
-    OleUninitialize();
-}
-
-wxString OLEHResultToString(HRESULT hr)
-{
-    switch (hr)
-    {
-    case S_OK:
-       return wxEmptyString;
-
-    case OLECMDERR_E_UNKNOWNGROUP:
-               return wxT("The pguidCmdGroup parameter is not NULL but does not specify a recognized command group.");
-
-    case OLECMDERR_E_NOTSUPPORTED:
-               return wxT("The nCmdID parameter is not a valid command in the group identified by pguidCmdGroup.");
-
-    case OLECMDERR_E_DISABLED:
-               return wxT("The command identified by nCmdID is currently disabled and cannot be executed.");
-
-    case OLECMDERR_E_NOHELP:
-               return wxT("The caller has asked for help on the command identified by nCmdID, but no help is available.");
-
-    case OLECMDERR_E_CANCELED:
-               return wxT("The user canceled the execution of the command.");
-
-    case E_INVALIDARG:
-        return wxT("E_INVALIDARG");
-
-    case E_OUTOFMEMORY:
-        return wxT("E_OUTOFMEMORY");
-
-    case E_NOINTERFACE:
-        return wxT("E_NOINTERFACE");
-
-    case E_UNEXPECTED:
-        return wxT("E_UNEXPECTED");
-
-    case STG_E_INVALIDFLAG:
-        return wxT("STG_E_INVALIDFLAG");
-
-    case E_FAIL:
-        return wxT("E_FAIL");
-
-    case E_NOTIMPL:
-        return wxT("E_NOTIMPL");
-
-    default:
-        {
-            wxString buf;
-            buf.Printf(wxT("Unknown - 0x%X"), hr);
-            return buf;
-        }
-    };
-};
-
-// borrowed from src/msw/ole/oleutils.cpp
-wxString GetIIDName(REFIID riid)
-{
-  // an association between symbolic name and numeric value of an IID
-  struct KNOWN_IID
-  {
-    const IID  *pIid;
-    const wxChar *szName;
-  };
-
-  // construct the table containing all known interfaces
-  #define ADD_KNOWN_IID(name) { &IID_I##name, _T(#name) }
-  #define ADD_KNOWN_GUID(name) { &name, _T(#name) }
-
-  static const KNOWN_IID aKnownIids[] =
-  {
-    ADD_KNOWN_IID(AdviseSink),
-    ADD_KNOWN_IID(AdviseSink2),
-    ADD_KNOWN_IID(BindCtx),
-    ADD_KNOWN_IID(ClassFactory),
-#if ( !defined( __VISUALC__) || (__VISUALC__!=1010) ) && !defined(__MWERKS__)
-    ADD_KNOWN_IID(ContinueCallback),
-    ADD_KNOWN_IID(EnumOleDocumentViews),
-    ADD_KNOWN_IID(OleCommandTarget),
-    ADD_KNOWN_IID(OleDocument),
-    ADD_KNOWN_IID(OleDocumentSite),
-    ADD_KNOWN_IID(OleDocumentView),
-    ADD_KNOWN_IID(Print),
-#endif
-    ADD_KNOWN_IID(DataAdviseHolder),
-    ADD_KNOWN_IID(DataObject),
-    ADD_KNOWN_IID(Debug),
-    ADD_KNOWN_IID(DebugStream),
-    ADD_KNOWN_IID(DfReserved1),
-    ADD_KNOWN_IID(DfReserved2),
-    ADD_KNOWN_IID(DfReserved3),
-    ADD_KNOWN_IID(Dispatch),
-    ADD_KNOWN_IID(DropSource),
-    ADD_KNOWN_IID(DropTarget),
-    ADD_KNOWN_IID(EnumCallback),
-    ADD_KNOWN_IID(EnumFORMATETC),
-    ADD_KNOWN_IID(EnumGeneric),
-    ADD_KNOWN_IID(EnumHolder),
-    ADD_KNOWN_IID(EnumMoniker),
-    ADD_KNOWN_IID(EnumOLEVERB),
-    ADD_KNOWN_IID(EnumSTATDATA),
-    ADD_KNOWN_IID(EnumSTATSTG),
-    ADD_KNOWN_IID(EnumString),
-    ADD_KNOWN_IID(EnumUnknown),
-    ADD_KNOWN_IID(EnumVARIANT),
-    ADD_KNOWN_IID(ExternalConnection),
-    ADD_KNOWN_IID(InternalMoniker),
-    ADD_KNOWN_IID(LockBytes),
-    ADD_KNOWN_IID(Malloc),
-    ADD_KNOWN_IID(Marshal),
-    ADD_KNOWN_IID(MessageFilter),
-    ADD_KNOWN_IID(Moniker),
-    ADD_KNOWN_IID(OleAdviseHolder),
-    ADD_KNOWN_IID(OleCache),
-    ADD_KNOWN_IID(OleCache2),
-    ADD_KNOWN_IID(OleCacheControl),
-    ADD_KNOWN_IID(OleClientSite),
-    ADD_KNOWN_IID(OleContainer),
-    ADD_KNOWN_IID(OleInPlaceActiveObject),
-    ADD_KNOWN_IID(OleInPlaceFrame),
-    ADD_KNOWN_IID(OleInPlaceObject),
-    ADD_KNOWN_IID(OleInPlaceSite),
-    ADD_KNOWN_IID(OleInPlaceUIWindow),
-    ADD_KNOWN_IID(OleItemContainer),
-    ADD_KNOWN_IID(OleLink),
-    ADD_KNOWN_IID(OleManager),
-    ADD_KNOWN_IID(OleObject),
-    ADD_KNOWN_IID(OlePresObj),
-    ADD_KNOWN_IID(OleWindow),
-    ADD_KNOWN_IID(PSFactory),
-    ADD_KNOWN_IID(ParseDisplayName),
-    ADD_KNOWN_IID(Persist),
-    ADD_KNOWN_IID(PersistFile),
-    ADD_KNOWN_IID(PersistStorage),
-    ADD_KNOWN_IID(PersistStream),
-    ADD_KNOWN_IID(ProxyManager),
-    ADD_KNOWN_IID(RootStorage),
-    ADD_KNOWN_IID(RpcChannel),
-    ADD_KNOWN_IID(RpcProxy),
-    ADD_KNOWN_IID(RpcStub),
-    ADD_KNOWN_IID(RunnableObject),
-    ADD_KNOWN_IID(RunningObjectTable),
-    ADD_KNOWN_IID(StdMarshalInfo),
-    ADD_KNOWN_IID(Storage),
-    ADD_KNOWN_IID(Stream),
-    ADD_KNOWN_IID(StubManager),
-    ADD_KNOWN_IID(Unknown),
-    ADD_KNOWN_IID(ViewObject),
-    ADD_KNOWN_IID(ViewObject2),
-    ADD_KNOWN_GUID(IID_IDispatch),
-    ADD_KNOWN_GUID(IID_IWebBrowser),
-    ADD_KNOWN_GUID(IID_IWebBrowserApp),
-    ADD_KNOWN_GUID(IID_IWebBrowser2),
-    ADD_KNOWN_GUID(IID_IWebBrowser),
-    ADD_KNOWN_GUID(DIID_DWebBrowserEvents2),
-    ADD_KNOWN_GUID(DIID_DWebBrowserEvents),
-  };
-
-  // don't clobber preprocessor name space
-  #undef ADD_KNOWN_IID
-  #undef ADD_KNOWN_GUID
-
-  // try to find the interface in the table
-  for ( size_t ui = 0; ui < WXSIZEOF(aKnownIids); ui++ )
-  {
-    if ( riid == *aKnownIids[ui].pIid )
-    {
-      return aKnownIids[ui].szName;
-    }
-  }
-
-  // unknown IID, just transform to string
-  LPOLESTR str = NULL;
-  StringFromIID(riid, &str);
-  if (str)
-  {
-      wxString s = str;
-      CoTaskMemFree(str);
-      return s;
-  }
-  else
-      return wxT("StringFromIID() error");
-}
diff --git a/wxPython/contrib/iewin/wxactivex.h b/wxPython/contrib/iewin/wxactivex.h
deleted file mode 100644 (file)
index 4c88a1d..0000000
+++ /dev/null
@@ -1,392 +0,0 @@
-#ifndef WX_ACTIVE_X
-#define WX_ACTIVE_X
-#pragma warning( disable : 4101 4786)
-#pragma warning( disable : 4786)
-
-
-#include <wx/setup.h>
-#include <wx/wx.h>
-#include <wx/variant.h>
-#include <oleidl.h>
-#include <exdisp.h>
-#include <docobj.h>
-#include <iostream>
-#include <vector>
-#include <map>
-using namespace std;
-
-//////////////////////////////////////////
-// wxAutoOleInterface<Interface>
-// Template class for smart interface handling
-// - Automatically dereferences ole interfaces
-// - Smart Copy Semantics
-// - Can Create Interfaces
-// - Can query for other interfaces
-template <class I> class wxAutoOleInterface
-{
-       protected:
-    I *m_interface;
-
-       public:
-       // takes ownership of an existing interface
-       // Assumed to already have a AddRef() applied
-    explicit wxAutoOleInterface(I *pInterface = NULL) : m_interface(pInterface) {}
-
-       // queries for an interface 
-    wxAutoOleInterface(REFIID riid, IUnknown *pUnk) : m_interface(NULL)
-       {
-               QueryInterface(riid, pUnk);
-       };
-       // queries for an interface 
-    wxAutoOleInterface(REFIID riid, IDispatch *pDispatch) : m_interface(NULL)
-       {
-               QueryInterface(riid, pDispatch);
-       };
-
-       // Creates an Interface
-       wxAutoOleInterface(REFCLSID clsid, REFIID riid) : m_interface(NULL)
-       {
-               CreateInstance(clsid, riid);
-       };
-
-       // copy constructor
-    wxAutoOleInterface(const wxAutoOleInterface<I>& ti) : m_interface(NULL)
-    {
-               operator = (ti);
-    }
-
-       // assignment operator
-    wxAutoOleInterface<I>& operator = (const wxAutoOleInterface<I>& ti)
-    {
-               if (ti.m_interface)
-                       ti.m_interface->AddRef();
-       Free();
-        m_interface = ti.m_interface;
-        return *this;
-    }
-
-       // takes ownership of an existing interface
-       // Assumed to already have a AddRef() applied
-    wxAutoOleInterface<I>& operator = (I *&ti)
-    {
-       Free();
-        m_interface = ti;
-        return *this;
-    }
-
-    ~wxAutoOleInterface()
-    {
-       Free();
-    };
-
-
-    inline void Free()
-    {
-       if (m_interface)
-               m_interface->Release();
-        m_interface = NULL;
-    };
-
-       // queries for an interface 
-    HRESULT QueryInterface(REFIID riid, IUnknown *pUnk)
-       {
-               Free();
-               wxASSERT(pUnk != NULL);
-           return pUnk->QueryInterface(riid, (void **) &m_interface);
-       };
-
-       // Create a Interface instance
-    HRESULT CreateInstance(REFCLSID clsid, REFIID riid)
-    {
-               Free();
-           return CoCreateInstance(clsid, NULL, CLSCTX_ALL, riid, (void **) &m_interface);
-    };
-
-
-
-    inline operator I *() const {return m_interface;}
-    inline I* operator ->() {return m_interface;}
-       inline I** GetRef()     {return &m_interface;}
-
-       inline bool Ok() const  {return m_interface != NULL;}
-};
-
-
-wxString OLEHResultToString(HRESULT hr);
-wxString GetIIDName(REFIID riid);
-
-//#define __WXOLEDEBUG
-
-
-#ifdef __WXOLEDEBUG
-    #define WXOLE_TRACE(str) {OutputDebugString(str);OutputDebugString("\r\n");}
-    #define WXOLE_TRACEOUT(stuff)\
-    {\
-        ostringstream os;\
-        os << stuff << ends;\
-        WXOLE_TRACE(os.str().c_str());\
-    }
-
-    #define WXOLE_WARN(__hr,msg)\
-    {\
-        if (__hr != S_OK)\
-        {\
-            wxString s = "*** ";\
-            s += msg;\
-            s += " : "+ OLEHResultToString(__hr);\
-            WXOLE_TRACE(s.c_str());\
-        }\
-    }
-#else
-    #define WXOLE_TRACE(str)
-    #define WXOLE_TRACEOUT(stuff)
-    #define WXOLE_WARN(_proc,msg) {_proc;}
-#endif
-
-// Auto Initialisation
-class wxOleInit
-{
-       public:
-    static IMalloc *GetIMalloc();
-
-    wxOleInit();
-    ~wxOleInit();
-};
-
-#define DECLARE_OLE_UNKNOWN(cls)\
-       private:\
-    class TAutoInitInt\
-    {\
-       public:\
-        LONG l;\
-        TAutoInitInt() : l(0) {}\
-    };\
-    TAutoInitInt refCount, lockCount;\
-    wxOleInit oleInit;\
-       static void _GetInterface(cls *self, REFIID iid, void **_interface, const char *&desc);\
-    public:\
-    LONG GetRefCount();\
-       HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, void ** ppvObject);\
-       ULONG STDMETHODCALLTYPE AddRef();\
-       ULONG STDMETHODCALLTYPE Release();\
-    ULONG STDMETHODCALLTYPE AddLock();\
-       ULONG STDMETHODCALLTYPE ReleaseLock()
-
-#define DEFINE_OLE_TABLE(cls)\
-       LONG cls::GetRefCount() {return refCount.l;}\
-    HRESULT STDMETHODCALLTYPE cls::QueryInterface(REFIID iid, void ** ppvObject)\
-    {\
-        if (! ppvObject)\
-        {\
-            WXOLE_TRACE("*** NULL POINTER ***");\
-            return E_FAIL;\
-        };\
-        const char *desc = NULL;\
-        cls::_GetInterface(this, iid, ppvObject, desc);\
-        if (! *ppvObject)\
-        {\
-            WXOLE_TRACEOUT("<" << GetIIDName(iid).c_str() << "> Not Found");\
-            return E_NOINTERFACE;\
-        };\
-        WXOLE_TRACEOUT("QI : <" << desc <<">");\
-        ((IUnknown * )(*ppvObject))->AddRef();\
-        return S_OK;\
-    };\
-    ULONG STDMETHODCALLTYPE cls::AddRef()\
-    {\
-       WXOLE_TRACEOUT(# cls << "::Add ref(" << refCount.l << ")");\
-        InterlockedIncrement(&refCount.l);\
-        return refCount.l;\
-    };\
-    ULONG STDMETHODCALLTYPE cls::Release()\
-    {\
-       if (refCount.l > 0)\
-        {\
-               InterlockedDecrement(&refCount.l);\
-               WXOLE_TRACEOUT(# cls << "::Del ref(" << refCount.l << ")");\
-           if (refCount.l == 0)\
-               {\
-               delete this;\
-                   return 0;\
-               };\
-               return refCount.l;\
-        }\
-        else\
-               return 0;\
-    }\
-    ULONG STDMETHODCALLTYPE cls::AddLock()\
-    {\
-       WXOLE_TRACEOUT(# cls << "::Add Lock(" << lockCount.l << ")");\
-        InterlockedIncrement(&lockCount.l);\
-        return lockCount.l;\
-    };\
-    ULONG STDMETHODCALLTYPE cls::ReleaseLock()\
-    {\
-       if (lockCount.l > 0)\
-        {\
-               InterlockedDecrement(&lockCount.l);\
-               WXOLE_TRACEOUT(# cls << "::Del Lock(" << lockCount.l << ")");\
-           return lockCount.l;\
-        }\
-        else\
-               return 0;\
-    }\
-    DEFINE_OLE_BASE(cls)
-
-#define DEFINE_OLE_BASE(cls)\
-       void cls::_GetInterface(cls *self, REFIID iid, void **_interface, const char *&desc)\
-       {\
-               *_interface = NULL;\
-           desc = NULL;
-
-#define OLE_INTERFACE(_iid, _type)\
-    if (IsEqualIID(iid, _iid))\
-    {\
-        WXOLE_TRACE("Found Interface <" # _type ">");\
-       *_interface = (IUnknown *) (_type *) self;\
-       desc = # _iid;\
-        return;\
-    }
-
-#define OLE_IINTERFACE(_face) OLE_INTERFACE(IID_##_face, _face)
-
-#define OLE_INTERFACE_CUSTOM(func)\
-    if (func(self, iid, _interface, desc))\
-        return
-
-#define END_OLE_TABLE\
-       }
-
-
-
-class wxActiveX : public wxWindow {
-public:
-    ////////////////////////////////////////
-    // type stuff
-       class ParamX // refer to ELEMDESC, IDLDESC in MSDN
-       {
-       public:
-               USHORT      flags;
-        bool isPtr, isSafeArray;
-               VARTYPE     vt;
-        wxString    name;
-
-               inline bool IsIn() const                {return (flags & IDLFLAG_FIN) != 0;}
-               inline bool IsOut() const               {return (flags & IDLFLAG_FOUT) != 0;}
-               inline bool IsRetVal() const    {return (flags & IDLFLAG_FRETVAL) != 0;}
-       };
-
-       typedef vector<ParamX>  ParamXArray;
-
-    class FuncX // refer to FUNCDESC in MSDN
-    {
-    public:
-        wxString    name;
-        MEMBERID    memid;
-               bool            hasOut;
-
-               ParamXArray     params;
-    };
-
-    typedef vector<FuncX> FuncXArray;
-    typedef map<MEMBERID, int>  MemberIdList;
-
-    wxActiveX(wxWindow * parent, REFCLSID clsid, wxWindowID id = -1,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = 0,
-        const wxString& name = wxPanelNameStr);
-    wxActiveX(wxWindow * parent, wxString progId, wxWindowID id = -1,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = 0,
-        const wxString& name = wxPanelNameStr);
-       virtual ~wxActiveX();
-
-       void CreateActiveX(REFCLSID clsid);
-    void CreateActiveX(LPOLESTR progId);
-
-    // expose type info
-    inline int GetEventCount() const {return m_events.size();}
-    const FuncX& GetEvent(int idx) const;
-
-       HRESULT ConnectAdvise(REFIID riid, IUnknown *eventSink);
-
-       void OnSize(wxSizeEvent&);
-    void OnPaint(wxPaintEvent& event);
-    void OnMouse(wxMouseEvent& event);
-       void OnSetFocus(wxFocusEvent&);
-    void OnKillFocus(wxFocusEvent&);
-
-       DECLARE_EVENT_TABLE();
-
-protected:
-    friend class FrameSite;
-    friend class wxActiveXEvents;
-
-       typedef wxAutoOleInterface<IConnectionPoint>    wxOleConnectionPoint;
-       typedef pair<wxOleConnectionPoint, DWORD>               wxOleConnection;
-       typedef vector<wxOleConnection>                                 wxOleConnectionArray;
-
-    wxAutoOleInterface<IOleClientSite>      m_clientSite;
-    wxAutoOleInterface<IUnknown>            m_ActiveX;
-       wxAutoOleInterface<IOleObject>                  m_oleObject;
-       wxAutoOleInterface<IOleInPlaceObject>   m_oleInPlaceObject;
-    wxAutoOleInterface<IOleInPlaceActiveObject>
-
-                                            m_oleInPlaceActiveObject;
-    wxAutoOleInterface<IOleDocumentView>       m_docView;
-    wxAutoOleInterface<IViewObject>            m_viewObject;
-       HWND m_oleObjectHWND;
-    bool m_bAmbientUserMode;
-    DWORD m_docAdviseCookie;
-       wxOleConnectionArray                                    m_connections;
-
-    HRESULT AmbientPropertyChanged(DISPID dispid);
-
-       void GetTypeInfo();
-       void GetTypeInfo(ITypeInfo *ti, bool defEventSink);
-
-
-    // events
-    FuncXArray      m_events;
-    MemberIdList    m_eventsIdx;
-
-    WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
-};
-
-// events
-class wxActiveXEvent : public wxCommandEvent
-{
-private:
-    friend class wxActiveXEvents;
-
-    wxVariant m_params;
-
-public:
-
-    virtual wxEvent *Clone() const { return new wxActiveXEvent(*this); }
-
-    wxString EventName();
-    int ParamCount() const;
-    wxString ParamType(int idx);
-    wxString ParamName(int idx);
-    wxVariant  operator[] (int idx) const;
-    wxVariant& operator[] (int idx);
-    wxVariant  operator[] (wxString name) const;
-    wxVariant& operator[] (wxString name);
-};
-
-const wxEventType& RegisterActiveXEvent(const wxChar *eventName);
-const wxEventType& RegisterActiveXEvent(DISPID event);
-
-typedef void (wxEvtHandler::*wxActiveXEventFunction)(wxActiveXEvent&);
-
-#define EVT_ACTIVEX(id, eventName, fn) DECLARE_EVENT_TABLE_ENTRY(RegisterActiveXEvent(wxT(eventName)), id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxActiveXEventFunction, & fn ), (wxObject *) NULL ),
-#define EVT_ACTIVEX_DISPID(id, eventDispId, fn) DECLARE_EVENT_TABLE_ENTRY(RegisterActiveXEvent(eventDispId), id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxActiveXEventFunction, & fn ), (wxObject *) NULL ),
-
-//util
-bool MSWVariantToVariant(VARIANTARG& va, wxVariant& vx);
-bool VariantToMSWVariant(wxVariant& vx, VARIANTARG& va);
-
-#endif /* _IEHTMLWIN_H_ */