DOKK / manpages / debian 10 / libwx-perl / Wx::Api.3pm.en
Wx::Api(3pm) User Contributed Perl Documentation Wx::Api(3pm)

API - wxPerl extension API documentation

WXPL_API_VERSION

An integer value used to differentiate wxPerl versions, it is guaranteed to be non-decreasing. wxPerl 0.15 value is 0150; wxPerl 1.00 value will be 1000, wxPerl 2.12 value will be 2120.

Introduced in wxPerl 0.15

  SV* wxPli_create_evthandler( pTHX_ wxEvtHandler* object,
                               const char* classname );

Creates a new hash reference, blessed into "classname", and binds"object" to it.

Introduced in wxPerl 0.16

  SV* wxPli_evthandler_2_sv( pTHX_ SV* var, wxEvtHandler* evth );

Same as wxPli_object_2_sv, but works with "wxEvtHandler"-derived classes, which includes all "wxWindow"-derived classes.

Introduced in wxPerl 0.16

  const char* wxPli_get_class( pTHX_ SV* ref );

The C++ equivalent of "$class = ref( $obj ) || $obj"; the pointer returned by the function is potentially temporary.

  SV* wxPli_non_object_2_sv( pTHX_ SV* var, void* data, const char* package );

Binds a generic pointer to an "SV*", and returns it; the new binding is blessed into the given "package".

Introduced before wxPerl 0.14

  SV* wxPli_object_2_sv( pTHX_ SV* var, wxObject* object );

Binds a "wxObject*" pointer to an "SV*", and returns it. If the object is already bound to an "SV*", returns a reference to the existing "SV*", otherwise, it creates a new binding; in the latter case, the new "SV*" is blessed into a package obtained through the wxWidgets RTTI system.

Introduced before wxPerl 0.14

  void wxPli_push_arguments( pTHX_ SV*** stack, const char* argtypes, ... );
  // example
  wxPli_push_arguments( aTHX_ SP, "iP", 12, "foo" );

Pushes a variable number of arguments on the perl stack, it is useful for passing parameters to a Perl function. The "argtypes" string describes the types of subsequent arguments, each character of the string specifying the type of a single argument. Possible values are:

a "bool" value
an "int" value
a "long" value
an "unsigned long" value
a "double" value
a "char*" value
a "wxChar*" value
a "wxString*" value
a "SV*", a copy of the SV is pushed on the stack
a "SV*", the pointer itself is pushed on the stack
a "wxObject*", the function will internally call "wxPli_object_2_sv" and push the result on the stack.
this is the only type that uses 2 parameters: the first is a "void*", the second a "char*"; the function will internally call "wxPli_non_object_2_sv" and push the result on the stack.

Introduced before wxPerl 0.14

  void* wxPli_sv_2_object( pTHX_ SV* scalar, const char* classname );

Extracts a bound pointer from a perl reference, checking that the reference belongs to the correct class (die()s on failure), and returns it. If "classname" is "NULL", the check is not done.

Introduced before wxPerl 0.14

  SV* wxPli_wxChar_2_sv( pTHX_ const wxChar* str, SV* out );

Stores a string into a "SV*", and returns the "SV*".

Introduced before wxPerl 0.14

  SV* wxPli_wxString_2_sv( pTHX_ const wxString& str, SV* out );

Stores a string into a "SV*", and returns the "SV*".

Introduced before wxPerl 0.14

Mattia Barbon <mbarbon at cpan dot org>

2018-11-02 perl v5.28.0