Main Page Namespace List Class Hierarchy Alphabetical List Data Structures File List Data Fields Globals

# wxActiveX Class Reference

`#include <wxactivex.h>`

## Detailed Description

Main class for embedding a ActiveX control.

Use by itself or derive from it

Note:
  The utility program (wxie) can generate a list of events, methods & properties for a control. First display the control (File|Display), then get the type info (ActiveX|Get Type Info) - these are copied to the clipboard. Eventually this will be expanded to autogenerate wxWindows source files for a control with all methods etc encapsulated.

Usage:
  construct using a ProgId or class id

       new wxActiveX(parent, CLSID_WebBrowser, id, pos, size, style, name)

       new wxActiveX(parent, "ShockwaveFlash.ShockwaveFlash", id, pos, size, style, name)

Properties
  Properties can be set using `SetProp()` and set/retrieved using `Prop()`

       SetProp(name, wxVariant(x))

  or

       wxString Prop("<name>") = x

       wxString result = Prop("<name>")

       flash_ctl.Prop("movie") = "file:///movies/test.swf";

       flash_ctl.Prop("Playing") = false;

       wxString current_movie = flash_ctl.Prop("movie");

Methods
  Methods are invoked with `CallMethod()`

       wxVariant result = CallMethod("<name>", args, nargs = -1)

       wxVariant args[] = {0L, "file:///e:/dev/wxie/bug-zap.swf"};
          wxVariant result = X->CallMethod("LoadMovie", args);

events
  respond to events with the `EVT_ACTIVEX(controlId, eventName, handler)` & `EVT_ACTIVEX_DISPID(controlId, eventDispId, handler)` macros

          BEGIN_EVENT_TABLE(wxIEFrame, wxFrame)
              EVT_ACTIVEX_DISPID(ID_MSHTML, DISPID_STATUSTEXTCHANGE,  OnMSHTMLStatusTextChangeX)
              EVT_ACTIVEX(ID_MSHTML, "BeforeNavigate2",   OnMSHTMLBeforeNavigate2X)
              EVT_ACTIVEX(ID_MSHTML, "TitleChange",       OnMSHTMLTitleChangeX)
              EVT_ACTIVEX(ID_MSHTML, "NewWindow2",        OnMSHTMLNewWindow2X)
              EVT_ACTIVEX(ID_MSHTML, "ProgressChange",    OnMSHTMLProgressChangeX)
          END_EVENT_TABLE()

Definition at line 329 of file wxactivex.h.

## Public Member Functions
| wxActiveX (wxWindow *parent, REFCLSID clsid, wxWindowID id=-1, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxString &name=wxPanelNameStr)
| Create using clsid.
| wxActiveX (wxWindow *parent, wxString progId, wxWindowID id=-1, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxString &name=wxPanelNameStr)
| create using progid.
int | GetEventCount () const
| Number of events defined for this control.
const FuncX & | GetEventDesc (int idx) const
| returns event description by index.
int | GetPropCount () const
| Number of properties defined for this control.
const PropX & | GetPropDesc (int idx) const
| returns property description by index.
const PropX & | GetPropDesc (wxString name) const
| returns property description by name.
int | GetMethodCount () const
| Number of methods defined for this control.
const FuncX & | GetMethodDesc (int idx) const
| returns method description by name.
const FuncX & | GetMethodDesc (wxString name) const
| returns method description by name.
void | SetProp (MEMBERID name, VARIANTARG &value)
| Set property VARIANTARG value by MEMBERID.
void | SetProp (const wxString &name, const wxVariant &value)
| Set property using wxVariant by name.
wxPropertySetter | Prop (wxString name)
| Generic Get/Set Property by name. Automatically handles most types.
wxVariant | CallMethod (wxString name, wxVariant args[], int nargs=-1)
| Call a method of the ActiveX control. Automatically handles most types.
## Related Functions
(Note that these are not member functions.)
bool | MSWVariantToVariant (VARIANTARG &va, wxVariant &vx)
| Convert MSW VARIANTARG to wxVariant. Handles basic types, need to add: VT_ARRAY | VT_* better support for VT_UNKNOWN (currently treated as void *) better support for VT_DISPATCH (currently treated as void *).
bool | VariantToMSWVariant (const wxVariant &vx, VARIANTARG &va)
| Convert wxVariant to MSW VARIANTARG. Handles basic types, need to add: VT_ARRAY | VT_* better support for VT_UNKNOWN (currently treated as void *) better support for VT_DISPATCH (currently treated as void *).

## Member Function Documentation

const FuncX& wxActiveX::GetEventDesc | ( | int | idx | ) | const

| returns event description by index. throws exception for invalid index

const PropX& wxActiveX::GetPropDesc | ( | int | idx | ) | const

| returns property description by index. throws exception for invalid index

const PropX& wxActiveX::GetPropDesc | ( | wxString | name | ) | const

| returns property description by name. throws exception for invalid name

const FuncX& wxActiveX::GetMethodDesc | ( | int | idx | ) | const

| returns method description by name. throws exception for invalid index

const FuncX& wxActiveX::GetMethodDesc | ( | wxString | name | ) | const

| returns method description by name. throws exception for invalid name

wxPropertySetter wxActiveX::Prop | ( | wxString | name | ) | `[inline]`

  | Generic Get/Set Property by name. Automatically handles most types. Parameters:
  name | Property name to read/set
  - - Returns: wxPropertySetter, which has overloads for setting/getting the property Usage: Prop("<name>") = <value> var = Prop("<name>") e.g:
           flash_ctl.Prop("movie") = "file:///movies/test.swf";
    -      flash_ctl.Prop("Playing") = false;
    -      wxString current_movie = flash_ctl.Prop("movie");
  Exceptions:
  raises | exception if <name> is invalid
Note: Have to add a few more type conversions yet ... Definition at line 458 of file wxactivex.h.

wxVariant wxActiveX::CallMethod | ( | wxString | name,
|  | wxVariant | args[],
|  | int | nargs = -1
| ) |

  | Call a method of the ActiveX control. Automatically handles most types. Parameters:
  name | name of method to call
  args | array of wxVariant's, defaults to NULL (no args)
  nargs | number of arguments passed via args. Defaults to actual number of args for the method
  - Returns: wxVariant Usage: result = CallMethod("<name>", args, nargs) e.g.
                    wxVariant args[] = {0L, "file:///e:/dev/wxie/bug-zap.swf"};
                    wxVariant result = X->CallMethod("LoadMovie", args);
  Exceptions:
  raises | exception if <name> is invalid
Note: Since wxVariant has built in type conversion, most the std types can be passed easily

## Friends And Related Function Documentation

bool MSWVariantToVariant | ( | VARIANTARG & | va,
|  | wxVariant & | vx
| ) | `[related]`

  | Convert MSW VARIANTARG to wxVariant. Handles basic types, need to add: VT_ARRAY | VT_* better support for VT_UNKNOWN (currently treated as void *) better support for VT_DISPATCH (currently treated as void *). Parameters:
  va | VARAIANTARG to convert from
  vx | Destination wxVariant
Returns: success/failure (true/false)

bool VariantToMSWVariant | ( | const wxVariant & | vx,
|  | VARIANTARG & | va
| ) | `[related]`

  | Convert wxVariant to MSW VARIANTARG. Handles basic types, need to add: VT_ARRAY | VT_* better support for VT_UNKNOWN (currently treated as void *) better support for VT_DISPATCH (currently treated as void *). Parameters:
  vx | wxVariant to convert from
  va | Destination VARIANTARG
Returns: success/failure (true/false)

The documentation for this class was generated from the following file:

- wxactivex.h