# COM Interfaces

Describes the basic interfaces used for COM. More...

## Classes
struct | IComDll
struct | ISingleComponentChooser
struct | IMultipleComponentChooser
struct | IComponentChooserPreview
struct | ISingleCompChooserWithPreview
struct | IExPrefsComponent
struct | APICOMPData
struct | TComponentInfo
struct | APICPUIData
struct | APIGUIDData
struct | IExDataExchanger
struct | IShComponent
struct | IShMinimalParameterComponent
struct | IShParameterComponent
struct | IShPrefsComponent
struct | IShRemoteComponent
struct | IShNetworkComponent
struct | IMCUnknown
## Typedefs
typedef MCCOMErr(* | TUIHandlerFunctionPtr )(MessageID message, IMFResponder *source, void *data, const TMCPtrArray< IExDataExchanger > &inDataExchangers)

## Detailed Description

Describes the basic interfaces used for COM.

Represents the 'CPUI' resource (Contains component info used by the user interface)

## Typedef Documentation

typedef MCCOMErr(* TUIHandlerFunctionPtr)(MessageID message, IMFResponder *source, void *data, const TMCPtrArray< IExDataExchanger > &inDataExchangers)

Function to handle framework events in the complex contex of multiple selection. IExDataExchanger::HandleEvent is being deprecated. For simple handling, you can implement SimpleHandleEvent. For complex handling you'll have to implement GetUIHandler. With multiple selection, we don't give anymore the component to the external part (through setValue). So if needed, the handler also has to take care of setting the components on your external part(s).

Note:
  : use inDataExchangers.QueryArray with your class id to get an array of your components (you must implement queryinterface)

Parameters:

  | message,: | the ID of the message being sent (All MessageIDs are preceeded with "kMsg")
  | source,: | the part that sent the message
  | data,: | a pointer to private data corresponding to the message
  | inDataExchangers | the components attached to the ui