Added wxDllWidget from Vaclav Slavik which allows wx widgets derived

from wxWindow to be loaded from a C++ .dll (or .so) and be used in a
wxPython program, without the widget having to be SWIGged first.

Various updates for distribs


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2001-12-06 19:59:37 +00:00
parent d30f093006
commit 4a61305d36
14 changed files with 1218 additions and 5 deletions

View File

@@ -0,0 +1,54 @@
#include <wx/defs.h>
#include <wx/window.h>
#include <wx/msgdlg.h>
#include "../dllwidget.h"
class TestWindow : public wxWindow
{
public:
TestWindow(wxWindow *parent, long style)
: wxWindow(parent, -1)
{
SetBackgroundColour(wxColour("white"));
}
int HandleCommand(int cmd, const wxString& param)
{
if (cmd == 1)
{
SetBackgroundColour(wxColour("red"));
Refresh();
}
if (cmd == 2)
{
SetBackgroundColour(wxColour(param));
Refresh();
}
else if (cmd == 3)
{
wxMessageBox("Message from embedded widget:\n\n" + param);
}
return 0;
}
private:
DECLARE_ABSTRACT_CLASS(TestWindow)
};
IMPLEMENT_ABSTRACT_CLASS(TestWindow, wxWindow)
//DECLARE_DLL_WIDGET(TestWindow)
static int SendCommandToTestWindow(wxWindow *wnd, int cmd, const wxString& param)
{
return wxStaticCast(wnd, TestWindow)->HandleCommand(cmd, param);
}
BEGIN_WIDGET_LIBRARY()
REGISTER_WIDGET(TestWindow)
END_WIDGET_LIBRARY()