Files
wxWidgets/utils/wxPython/src/wx.i
Robin Dunn 62abd41ede Minor wxPython changes for wxWin 2.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-03-05 07:23:42 +00:00

258 lines
6.7 KiB
OpenEdge ABL

/////////////////////////////////////////////////////////////////////////////
// Name: wxp.i
// Purpose: SWIG interface file for a python wxWindows module
//
// Author: Robin Dunn
//
// Created: 5/22/98
// RCS-ID: $Id$
// Copyright: (c) 1998 by Total Control Software
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
%module wx
%{
#include "helpers.h"
%}
//----------------------------------------------------------------------
// This is where we include the other wrapper definition files for SWIG
//----------------------------------------------------------------------
%include typemaps.i
%include my_typemaps.i
%include _defs.i
%import misc.i
%import windows.i
%import events.i
%import gdi.i
%import mdi.i
%import controls.i
%import controls2.i
%import windows2.i
%import cmndlgs.i
%import stattool.i
%import frames.i
%import windows3.i
#ifndef SEPARATE
%import utils.i
#endif
%native(_wxStart) __wxStart;
%native(_wxSetDictionary) __wxSetDictionary;
//---------------------------------------------------------------------------
#define __version__ "2.0b6"
wxPoint wxPyDefaultPosition;
wxSize wxPyDefaultSize;
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
class wxPyApp : public wxEvtHandler {
public:
%addmethods {
wxPyApp() {
wxPythonApp = new wxPyApp();
return wxPythonApp;
}
}
wxString GetAppName();
#ifdef __WXMSW__
bool GetAuto3D();
#endif
wxString GetClassName();
bool GetExitOnFrameDelete();
int GetPrintMode();
wxWindow * GetTopWindow();
wxString GetVendorName();
void Dispatch();
void ExitMainLoop();
bool Initialized();
int MainLoop();
bool Pending();
void SetAppName(const wxString& name);
#ifdef __WXMSW__
void SetAuto3D(bool auto3D);
#endif
void SetClassName(const wxString& name);
void SetExitOnFrameDelete(bool flag);
void SetPrintMode(int mode);
void SetTopWindow(wxWindow* window);
void SetVendorName(const wxString& name);
// This one is wxPython specific. If you override MainLoop,
// call this when done.
void AfterMainLoop();
};
//----------------------------------------------------------------------
// This code gets added to the module initialization function
//----------------------------------------------------------------------
%{
extern "C" SWIGEXPORT(void,initwindowsc)();
extern "C" SWIGEXPORT(void,initwindows2c)();
extern "C" SWIGEXPORT(void,initeventsc)();
extern "C" SWIGEXPORT(void,initmiscc)();
extern "C" SWIGEXPORT(void,initgdic)();
extern "C" SWIGEXPORT(void,initmdic)();
extern "C" SWIGEXPORT(void,initcontrolsc)();
extern "C" SWIGEXPORT(void,initcontrols2c)();
extern "C" SWIGEXPORT(void,initcmndlgsc)();
extern "C" SWIGEXPORT(void,initstattoolc)();
extern "C" SWIGEXPORT(void,initframesc)();
extern "C" SWIGEXPORT(void,initwindows3c)();
#ifndef SEPARATE
extern "C" SWIGEXPORT(void,initutilsc)();
#endif
%}
%init %{
__wxPreStart(); // initialize the GUI toolkit, if needed.
// wxPyWindows = new wxHashTable(wxKEY_INTEGER, 100);
// Since these modules are all linked together, initialize them now
// because python won't be able to find their shared library files,
// (since there isn't any.)
initwindowsc();
initwindows2c();
initeventsc();
initmiscc();
initgdic();
initmdic();
initcontrolsc();
initcontrols2c();
initcmndlgsc();
initstattoolc();
initframesc();
initwindows3c();
#ifndef SEPARATE
initutilsc();
#endif
%}
//----------------------------------------------------------------------
// And this gets appended to the shadow class file.
//----------------------------------------------------------------------
%pragma(python) include="_extras.py";
/////////////////////////////////////////////////////////////////////////////
//
// $Log$
// Revision 1.8 1999/03/05 07:22:32 RD
// Minor wxPython changes for wxWin 2.0
//
// Revision 1.7 1999/02/25 07:08:37 RD
//
// wxPython version 2.0b5
//
// Revision 1.6 1999/02/20 09:03:04 RD
// Added wxWindow_FromHWND(hWnd) for wxMSW to construct a wxWindow from a
// window handle. If you can get the window handle into the python code,
// it should just work... More news on this later.
//
// Added wxImageList, wxToolTip.
//
// Re-enabled wxConfig.DeleteAll() since it is reportedly fixed for the
// wxRegConfig class.
//
// As usual, some bug fixes, tweaks, etc.
//
// Revision 1.5 1999/02/01 00:10:41 RD
//
// Added the missing EVT_LIST_ITEM_SELECTED and friends.
//
// Revision 1.4 1999/01/30 07:30:16 RD
//
// Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
//
// Various cleanup, tweaks, minor additions, etc. to maintain
// compatibility with the current wxWindows.
//
// Revision 1.3 1998/12/17 17:52:21 RD
//
// wxPython 0.5.2
// Minor fixes and SWIG code generation for RR's changes. MSW and GTK
// versions are much closer now!
//
// Revision 1.2 1998/12/16 22:10:57 RD
//
// Tweaks needed to be able to build wxPython with wxGTK.
//
// Revision 1.1 1998/12/15 20:41:27 RD
// Changed the import semantics from "from wxPython import *" to "from
// wxPython.wx import *" This is for people who are worried about
// namespace pollution, they can use "from wxPython import wx" and then
// prefix all the wxPython identifiers with "wx."
//
// Added wxTaskbarIcon for wxMSW.
//
// Made the events work for wxGrid.
//
// Added wxConfig.
//
// Added wxMiniFrame for wxGTK, (untested.)
//
// Changed many of the args and return values that were pointers to gdi
// objects to references to reflect changes in the wxWindows API.
//
// Other assorted fixes and additions.
//
// Revision 1.9 1998/10/20 07:38:04 RD
// bug fix
//
// Revision 1.8 1998/10/07 07:34:35 RD
// Version 0.4.1 for wxGTK
//
// Revision 1.7 1998/10/02 06:40:44 RD
//
// Version 0.4 of wxPython for MSW.
//
// Revision 1.6 1998/08/27 21:59:10 RD
// Some chicken-and-egg problems solved for wxPython on wxGTK
//
// Revision 1.5 1998/08/27 00:00:28 RD
// - more tweaks
// - have discovered some problems but not yet discovered solutions...
//
// Revision 1.4 1998/08/18 19:48:20 RD
// more wxGTK compatibility things.
//
// It builds now but there are serious runtime problems...
//
// Revision 1.3 1998/08/15 07:36:53 RD
// - Moved the header in the .i files out of the code that gets put into
// the .cpp files. It caused CVS conflicts because of the RCS ID being
// different each time.
//
// - A few minor fixes.
//
// Revision 1.2 1998/08/14 23:36:49 RD
// Beginings of wxGTK compatibility
//
// Revision 1.1 1998/08/09 08:25:53 RD
// Initial version
//
//