TInvokeableVariantType

[Properties (by Name)][Methods (by Name)][Events (by Name)]

TCustomVariantType descendent that implements DispInvoke

Declaration

Source position: variants.pp line 226

Type
  TInvokeableVariantType = class (TCustomVariantType, IVarInvokeable)
  protected
    procedure DispInvoke(Dest: pvardata; var Source: tvardata; 
                        CallDesc: pcalldesc; Params: Pointer);  Override;
  public
    function DoFunction(var Dest: tvardata; const V: tvardata; 
                       const Name: string; const Arguments: TVarDataArray)
                        : Boolean;  Virtual;
    function DoProcedure(const V: tvardata; const Name: string; 
                        const Arguments: TVarDataArray) : Boolean;  Virtual;
    function GetProperty(var Dest: tvardata; const V: tvardata; 
                        const Name: string) : Boolean;  Virtual;
    function SetProperty(var V: tvardata; const Name: string; 
                        const Value: tvardata) : Boolean;  Virtual;
  end
  ;

Description

TInvokeableVariantType is a TCustomVariantType descendent which implements the TCustomVariantType.DispInvoke]() method. It translates the DispInvoke" method to calls to one or more of the four methods of IVarInvokeable : DoFunction or DoProcedure for method calls (DISPATCH_METHOD) and GetProperty for property reading (DISPATCH_PROPERTYGET) or SetProperty for property writing (DISPATCH_PROPERTYSET). Other combinations are possible. It has empty stubs for these methods, which must be implemented in a descendent that is used to describe a custom variant.

Members

Member Type Visibility Description
DispInvoke Method protected
DoFunction Method public Empty stub for IVarInvokeable.DoFunction, to be implemented in descendents
DoProcedure Method public Empty stub for IVarInvokeable.DoProcedure, to be implemented in descendents
GetProperty Method public Empty stub for IVarInvokeable.GetProperty, to be implemented in descendents
SetProperty Method public Empty stub for IVarInvokeable.SetProperty, to be implemented in descendents

Inheritance

Class Description
TInvokeableVariantType(IVarInvokeable) TCustomVariantType descendent that implements DispInvoke

See also

Name Description
IVarInvokeable.DoFunction Called for methods that return a result (functions)
IVarInvokeable.DoProcedure Called for methods that do not return a result (procedures)
IVarInvokeable.GetProperty Called when a property must be read
IVarInvokeable.SetProperty Called when a property must be set