wxEuphoria Developers

wxEuphoria Developers
Information about extending or debugging the library

Contributing to the library

I welcome and encourage others to extend the library, improving the wrappers that I've already written and wrapping new classes. If you take a look at the wxWidgets documentation, you'll see that there are a LOT of classes, and pretty much all of them are available to wxEuphoria, once the proper wrapper is generated.

If you do want to contribute something, please send the source to me. Also, please document your wrappers using the same format as the rest of the library, so that it can be easily included in the wxEuphoria documentation, which is automatically generated from the source files.

Wrapping HOWTO

Wrapping additional functions is usually pretty easy. Take a look at both wxeud.e and the *.cpp source files for some examples. Most of the wxEuphoria C++ source code is made up of one-liners that call the appropriate wxWidgets routine. Here are a few tips:

Extending wxWidgets with other C++ libararies

The library can be extended by building additional shared libraries to wrap other features or other contributions by the wxWidgets community (such as the wxSTC text editor widget). You'll probably want to take a look at how the library is put together, using be.c, wxeu.h and wxeu.cpp. These files provide some useful routines for dealing with euphoria and wxWidgets C++ data, such as converting sequences to wxStrings.

You'll need to call add_create_func() to integrate your wrapper with the wxEuphoria library.

Functions/Procedures

wxEuphoria Developers

[func]
add_create_func
( object rid )

Category: wxEuphoria Developers

This function can be used to extend the library by adding a constructor that can be used in euphoria code. The only parameter em rid, is the result of a call to define_c_func or routine_id. (If passing a routine_id, it must be enclosed as a sequence.) The function should take a sequence as a parameter, and should return an atom containing a pointer to the created object.

The return value from add_create_func should be used in calls to create to create instances of your object.