VistA-cprs/CPRS-Chart/VERGENCECONTEXTORLib_TLB.pas

1750 lines
62 KiB
Plaintext
Raw Normal View History

2010-07-07 17:16:19 -04:00
unit VERGENCECONTEXTORLib_TLB;
// ************************************************************************ //
// WARNING
// -------
// The types declared in this file were generated from data read from a
// Type Library. If this type library is explicitly or indirectly (via
// another type library referring to this type library) re-imported, or the
// 'Refresh' command of the Type Library Editor activated while editing the
// Type Library, the contents of this file will be regenerated and all
// manual modifications will be lost.
// ************************************************************************ //
// PASTLWTR : $Revision: 1.88.1.0.1.0 $
// File generated on 2/9/2004 9:12:53 AM from Type Library described below.
// *************************************************************************//
// NOTE:
// Items guarded by $IFDEF_LIVE_SERVER_AT_DESIGN_TIME are used by properties
// which return objects that may need to be explicitly created via a function
// call prior to any access via the property. These items have been disabled
// in order to prevent accidental use from within the object inspector. You
// may enable them by defining LIVE_SERVER_AT_DESIGN_TIME or by selectively
// removing them from the $IFDEF blocks. However, such items must still be
// programmatically created via a method of the appropriate CoClass before
// they can be used.
// ************************************************************************ //
// Type Lib: D:\Development\BDK32_p40\Source\VergenceContextor.dll (1)
// IID\LCID: {30AFBABD-5FD3-11D3-8727-0060B0B5E137}\0
// Helpfile:
// DepndLst:
// (1) v2.0 stdole, (C:\WINNT\System32\stdole2.tlb)
// (2) v4.0 StdVCL, (C:\WINNT\System32\STDVCL40.DLL)
// Errors:
// Hint: Member 'Set' of 'IResponseDialogAccessor' changed to 'Set_'
// Error creating palette bitmap of (TContextor) : Invalid GUID format
// Error creating palette bitmap of (TContextItemCollection) : Invalid GUID format
// Error creating palette bitmap of (TContextItem) : Invalid GUID format
// Error creating palette bitmap of (TResponseDialog) : Invalid GUID format
// Error creating palette bitmap of (TContextorParticipant) : Invalid GUID format
// ************************************************************************ //
{$TYPEDADDRESS OFF} // Unit must be compiled without type-checked pointers.
interface
uses Windows, ActiveX, Classes, Graphics, OleServer, OleCtrls, StdVCL;
// *********************************************************************//
// GUIDS declared in the TypeLibrary. Following prefixes are used:
// Type Libraries : LIBID_xxxx
// CoClasses : CLASS_xxxx
// DISPInterfaces : DIID_xxxx
// Non-DISP interfaces: IID_xxxx
// *********************************************************************//
const
// TypeLibrary Major and minor versions
VERGENCECONTEXTORLibMajorVersion = 1;
VERGENCECONTEXTORLibMinorVersion = 0;
LIBID_VERGENCECONTEXTORLib: TGUID = '{30AFBABD-5FD3-11D3-8727-0060B0B5E137}';
DIID__IContextChangesSink: TGUID = '{6BED8971-B3DD-11D3-8736-0060B0B5E137}';
IID_IContextor: TGUID = '{8D879F5D-5FE6-11D3-8727-0060B0B5E137}';
IID_IContextParticipant: TGUID = '{3E3DD272-998E-11D0-808D-00A0240943E4}';
IID_IContextItemCollection: TGUID = '{AC4C0271-615A-11D3-84B5-0000861FDD4F}';
IID_IContextItem: TGUID = '{AC4C0273-615A-11D3-84B5-0000861FDD4F}';
IID_IResponseContextChange: TGUID = '{CBC6D968-9F6D-416A-8AA7-99172E588DF0}';
IID_IResponseDialogAccessor: TGUID = '{86592071-F3BA-11D3-8181-005004A0F801}';
IID_IContextChangesSink: TGUID = '{0B437E31-620E-11D3-84B6-0000861FDD4F}';
IID_IResponseDialog: TGUID = '{9D33ECF1-8277-11D3-8525-0000861FDD4F}';
CLASS_Contextor: TGUID = '{D5C9CC98-5FDB-11D3-8727-0060B0B5E137}';
CLASS_ContextorControl: TGUID = '{8778ACF7-5CA9-11D3-8727-0060B0B5E137}';
CLASS_ContextItemCollection: TGUID = '{AC4C0272-615A-11D3-84B5-0000861FDD4F}';
CLASS_ContextItem: TGUID = '{AC4C0274-615A-11D3-84B5-0000861FDD4F}';
CLASS_ResponseDialog: TGUID = '{9D33ECF2-8277-11D3-8525-0000861FDD4F}';
IID_ISetHook: TGUID = '{8D879FDD-5FE6-11D3-8727-0060B0B5E137}';
CLASS_ContextorParticipant: TGUID = '{4BA034A2-D0FA-11D3-818B-0050049598B2}';
// *********************************************************************//
// Declaration of Enumerations defined in Type Library
// *********************************************************************//
// Constants for enum __MIDL___MIDL_itf_VergenceContextor_0000_0002
type
__MIDL___MIDL_itf_VergenceContextor_0000_0002 = TOleEnum;
const
CsNotRunning = $00000001;
CsParticipating = $00000002;
CsSuspended = $00000003;
// Constants for enum __MIDL___MIDL_itf_VergenceContextor_0000_0001
type
__MIDL___MIDL_itf_VergenceContextor_0000_0001 = TOleEnum;
const
ApNone = $00000001;
ApGet = $00000002;
ApSet = $00000003;
// Constants for enum __MIDL___MIDL_itf_VergenceContextor_0000_0003
type
__MIDL___MIDL_itf_VergenceContextor_0000_0003 = TOleEnum;
const
UrCommit = $00000001;
UrCancel = $00000002;
UrBreak = $00000003;
type
// *********************************************************************//
// Forward declaration of types defined in TypeLibrary
// *********************************************************************//
_IContextChangesSink = dispinterface;
IContextor = interface;
IContextorDisp = dispinterface;
IContextParticipant = interface;
IContextParticipantDisp = dispinterface;
IContextItemCollection = interface;
IContextItemCollectionDisp = dispinterface;
IContextItem = interface;
IContextItemDisp = dispinterface;
IResponseContextChange = interface;
IResponseContextChangeDisp = dispinterface;
IResponseDialogAccessor = interface;
IResponseDialogAccessorDisp = dispinterface;
IContextChangesSink = interface;
IContextChangesSinkDisp = dispinterface;
IResponseDialog = interface;
IResponseDialogDisp = dispinterface;
ISetHook = interface;
ISetHookDisp = dispinterface;
// *********************************************************************//
// Declaration of CoClasses defined in Type Library
// (NOTE: Here we map each CoClass to its Default Interface)
// *********************************************************************//
Contextor = IContextor;
ContextorControl = IContextor;
ContextItemCollection = IContextItemCollection;
ContextItem = IContextItem;
ResponseDialog = IResponseDialog;
ContextorParticipant = IContextParticipant;
// *********************************************************************//
// Declaration of structures, unions and aliases.
// *********************************************************************//
ContextorState = __MIDL___MIDL_itf_VergenceContextor_0000_0002;
AccessPrivilege = __MIDL___MIDL_itf_VergenceContextor_0000_0001;
UserResponse = __MIDL___MIDL_itf_VergenceContextor_0000_0003;
// *********************************************************************//
// DispIntf: _IContextChangesSink
// Flags: (4096) Dispatchable
// GUID: {6BED8971-B3DD-11D3-8736-0060B0B5E137}
// *********************************************************************//
_IContextChangesSink = dispinterface
['{6BED8971-B3DD-11D3-8736-0060B0B5E137}']
procedure Pending(const aContextItemCollection: IDispatch); dispid 1;
procedure Committed; dispid 2;
procedure Canceled; dispid 3;
end;
// *********************************************************************//
// Interface: IContextor
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {8D879F5D-5FE6-11D3-8727-0060B0B5E137}
// *********************************************************************//
IContextor = interface(IDispatch)
['{8D879F5D-5FE6-11D3-8727-0060B0B5E137}']
procedure Run(const applicationLabel: WideString; const passcode: WideString; survey: WordBool;
const initialNotificationFilter: WideString); safecall;
procedure Suspend; safecall;
procedure Resume; safecall;
function Get_State: ContextorState; safecall;
function GetPrivilege(const subj: WideString): AccessPrivilege; safecall;
function Get_CurrentContext: IContextItemCollection; safecall;
procedure StartContextChange; safecall;
function EndContextChange(commit: WordBool;
const aContextItemCollection: IContextItemCollection): UserResponse; safecall;
procedure SetSurveyResponse(const reason: WideString); safecall;
function Get_NotificationFilter: WideString; safecall;
procedure Set_NotificationFilter(const filter: WideString); safecall;
function Get_Name: WideString; safecall;
property State: ContextorState read Get_State;
property CurrentContext: IContextItemCollection read Get_CurrentContext;
property NotificationFilter: WideString read Get_NotificationFilter write Set_NotificationFilter;
property Name: WideString read Get_Name;
end;
// *********************************************************************//
// DispIntf: IContextorDisp
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {8D879F5D-5FE6-11D3-8727-0060B0B5E137}
// *********************************************************************//
IContextorDisp = dispinterface
['{8D879F5D-5FE6-11D3-8727-0060B0B5E137}']
procedure Run(const applicationLabel: WideString; const passcode: WideString; survey: WordBool;
const initialNotificationFilter: WideString); dispid 1;
procedure Suspend; dispid 2;
procedure Resume; dispid 3;
property State: ContextorState readonly dispid 4;
function GetPrivilege(const subj: WideString): AccessPrivilege; dispid 5;
property CurrentContext: IContextItemCollection readonly dispid 6;
procedure StartContextChange; dispid 7;
function EndContextChange(commit: WordBool;
const aContextItemCollection: IContextItemCollection): UserResponse; dispid 8;
procedure SetSurveyResponse(const reason: WideString); dispid 9;
property NotificationFilter: WideString dispid 10;
property Name: WideString readonly dispid 11;
end;
// *********************************************************************//
// Interface: IContextParticipant
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {3E3DD272-998E-11D0-808D-00A0240943E4}
// *********************************************************************//
IContextParticipant = interface(IDispatch)
['{3E3DD272-998E-11D0-808D-00A0240943E4}']
function ContextChangesPending(contextCoupon: Integer; var reason: WideString): WideString; safecall;
procedure ContextChangesAccepted(contextCoupon: Integer); safecall;
procedure ContextChangesCanceled(contextCoupon: Integer); safecall;
procedure CommonContextTerminated; safecall;
procedure Ping; safecall;
end;
// *********************************************************************//
// DispIntf: IContextParticipantDisp
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {3E3DD272-998E-11D0-808D-00A0240943E4}
// *********************************************************************//
IContextParticipantDisp = dispinterface
['{3E3DD272-998E-11D0-808D-00A0240943E4}']
function ContextChangesPending(contextCoupon: Integer; var reason: WideString): WideString; dispid 1610743808;
procedure ContextChangesAccepted(contextCoupon: Integer); dispid 1610743809;
procedure ContextChangesCanceled(contextCoupon: Integer); dispid 1610743810;
procedure CommonContextTerminated; dispid 1610743811;
procedure Ping; dispid 1610743812;
end;
// *********************************************************************//
// Interface: IContextItemCollection
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {AC4C0271-615A-11D3-84B5-0000861FDD4F}
// *********************************************************************//
IContextItemCollection = interface(IDispatch)
['{AC4C0271-615A-11D3-84B5-0000861FDD4F}']
function Count: Integer; safecall;
procedure Add(const aContextItem: IContextItem); safecall;
procedure Remove(const contextItemName: WideString); safecall;
procedure RemoveAll; safecall;
function Present(key: OleVariant): IContextItem; safecall;
function Get__NewEnum: IUnknown; safecall;
function Item(key: OleVariant): IContextItem; safecall;
property _NewEnum: IUnknown read Get__NewEnum;
end;
// *********************************************************************//
// DispIntf: IContextItemCollectionDisp
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {AC4C0271-615A-11D3-84B5-0000861FDD4F}
// *********************************************************************//
IContextItemCollectionDisp = dispinterface
['{AC4C0271-615A-11D3-84B5-0000861FDD4F}']
function Count: Integer; dispid 1;
procedure Add(const aContextItem: IContextItem); dispid 2;
procedure Remove(const contextItemName: WideString); dispid 3;
procedure RemoveAll; dispid 4;
function Present(key: OleVariant): IContextItem; dispid 5;
property _NewEnum: IUnknown readonly dispid -4;
function Item(key: OleVariant): IContextItem; dispid 0;
end;
// *********************************************************************//
// Interface: IContextItem
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {AC4C0273-615A-11D3-84B5-0000861FDD4F}
// *********************************************************************//
IContextItem = interface(IDispatch)
['{AC4C0273-615A-11D3-84B5-0000861FDD4F}']
function Get_Subject: WideString; safecall;
procedure Set_Subject(const pVal: WideString); safecall;
function Get_Role: WideString; safecall;
procedure Set_Role(const pVal: WideString); safecall;
function Get_Prefix: WideString; safecall;
procedure Set_Prefix(const pVal: WideString); safecall;
function Get_Suffix: WideString; safecall;
procedure Set_Suffix(const pVal: WideString); safecall;
function Get_Name: WideString; safecall;
procedure Set_Name(const pVal: WideString); safecall;
function Get_Value: WideString; safecall;
procedure Set_Value(const pVal: WideString); safecall;
function Clone: IContextItem; safecall;
property Subject: WideString read Get_Subject write Set_Subject;
property Role: WideString read Get_Role write Set_Role;
property Prefix: WideString read Get_Prefix write Set_Prefix;
property Suffix: WideString read Get_Suffix write Set_Suffix;
property Name: WideString read Get_Name write Set_Name;
property Value: WideString read Get_Value write Set_Value;
end;
// *********************************************************************//
// DispIntf: IContextItemDisp
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {AC4C0273-615A-11D3-84B5-0000861FDD4F}
// *********************************************************************//
IContextItemDisp = dispinterface
['{AC4C0273-615A-11D3-84B5-0000861FDD4F}']
property Subject: WideString dispid 1;
property Role: WideString dispid 2;
property Prefix: WideString dispid 3;
property Suffix: WideString dispid 4;
property Name: WideString dispid 5;
property Value: WideString dispid 6;
function Clone: IContextItem; dispid 7;
end;
// *********************************************************************//
// Interface: IResponseContextChange
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {CBC6D968-9F6D-416A-8AA7-99172E588DF0}
// *********************************************************************//
IResponseContextChange = interface(IDispatch)
['{CBC6D968-9F6D-416A-8AA7-99172E588DF0}']
procedure StartResponseContextChange; safecall;
function EndResponseContextChange(commit: WordBool;
const aContextItemCollection: IContextItemCollection;
var noContinue: WordBool): OleVariant; safecall;
procedure CommitContextChange; safecall;
procedure CancelContextChange; safecall;
end;
// *********************************************************************//
// DispIntf: IResponseContextChangeDisp
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {CBC6D968-9F6D-416A-8AA7-99172E588DF0}
// *********************************************************************//
IResponseContextChangeDisp = dispinterface
['{CBC6D968-9F6D-416A-8AA7-99172E588DF0}']
procedure StartResponseContextChange; dispid 1;
function EndResponseContextChange(commit: WordBool;
const aContextItemCollection: IContextItemCollection;
var noContinue: WordBool): OleVariant; dispid 2;
procedure CommitContextChange; dispid 3;
procedure CancelContextChange; dispid 4;
end;
// *********************************************************************//
// Interface: IResponseDialogAccessor
// Flags: (4432) Hidden Dual OleAutomation Dispatchable
// GUID: {86592071-F3BA-11D3-8181-005004A0F801}
// *********************************************************************//
IResponseDialogAccessor = interface(IDispatch)
['{86592071-F3BA-11D3-8181-005004A0F801}']
procedure Reset; safecall;
procedure Set_(const aResponseDialog: IResponseDialog); safecall;
end;
// *********************************************************************//
// DispIntf: IResponseDialogAccessorDisp
// Flags: (4432) Hidden Dual OleAutomation Dispatchable
// GUID: {86592071-F3BA-11D3-8181-005004A0F801}
// *********************************************************************//
IResponseDialogAccessorDisp = dispinterface
['{86592071-F3BA-11D3-8181-005004A0F801}']
procedure Reset; dispid 1;
procedure Set_(const aResponseDialog: IResponseDialog); dispid 2;
end;
// *********************************************************************//
// Interface: IContextChangesSink
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {0B437E31-620E-11D3-84B6-0000861FDD4F}
// *********************************************************************//
IContextChangesSink = interface(IDispatch)
['{0B437E31-620E-11D3-84B6-0000861FDD4F}']
procedure Pending(const aContextItemCollection: IDispatch); safecall;
procedure Committed; safecall;
procedure Canceled; safecall;
end;
// *********************************************************************//
// DispIntf: IContextChangesSinkDisp
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {0B437E31-620E-11D3-84B6-0000861FDD4F}
// *********************************************************************//
IContextChangesSinkDisp = dispinterface
['{0B437E31-620E-11D3-84B6-0000861FDD4F}']
procedure Pending(const aContextItemCollection: IDispatch); dispid 1;
procedure Committed; dispid 2;
procedure Canceled; dispid 3;
end;
// *********************************************************************//
// Interface: IResponseDialog
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {9D33ECF1-8277-11D3-8525-0000861FDD4F}
// *********************************************************************//
IResponseDialog = interface(IDispatch)
['{9D33ECF1-8277-11D3-8525-0000861FDD4F}']
function ProcessSurveyResults(responses: OleVariant; noContinue: WordBool): UserResponse; safecall;
end;
// *********************************************************************//
// DispIntf: IResponseDialogDisp
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {9D33ECF1-8277-11D3-8525-0000861FDD4F}
// *********************************************************************//
IResponseDialogDisp = dispinterface
['{9D33ECF1-8277-11D3-8525-0000861FDD4F}']
function ProcessSurveyResults(responses: OleVariant; noContinue: WordBool): UserResponse; dispid 1;
end;
// *********************************************************************//
// Interface: ISetHook
// Flags: (4432) Hidden Dual OleAutomation Dispatchable
// GUID: {8D879FDD-5FE6-11D3-8727-0060B0B5E137}
// *********************************************************************//
ISetHook = interface(IDispatch)
['{8D879FDD-5FE6-11D3-8727-0060B0B5E137}']
procedure SetParticipant(const aContextParticipant: IContextParticipant); safecall;
end;
// *********************************************************************//
// DispIntf: ISetHookDisp
// Flags: (4432) Hidden Dual OleAutomation Dispatchable
// GUID: {8D879FDD-5FE6-11D3-8727-0060B0B5E137}
// *********************************************************************//
ISetHookDisp = dispinterface
['{8D879FDD-5FE6-11D3-8727-0060B0B5E137}']
procedure SetParticipant(const aContextParticipant: IContextParticipant); dispid 1;
end;
// *********************************************************************//
// The Class CoContextor provides a Create and CreateRemote method to
// create instances of the default interface IContextor exposed by
// the CoClass Contextor. The functions are intended to be used by
// clients wishing to automate the CoClass objects exposed by the
// server of this typelibrary.
// *********************************************************************//
CoContextor = class
class function Create: IContextor;
class function CreateRemote(const MachineName: string): IContextor;
end;
TContextorPending = procedure(Sender: TObject; var aContextItemCollection: OleVariant) of object;
// *********************************************************************//
// OLE Server Proxy class declaration
// Server Object : TContextor
// Help String : Vergence Contextor
// Default Interface: IContextor
// Def. Intf. DISP? : No
// Event Interface: _IContextChangesSink
// TypeFlags : (2) CanCreate
// *********************************************************************//
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
TContextorProperties= class;
{$ENDIF}
TContextor = class(TOleServer)
private
FOnPending: TContextorPending;
FOnCommitted: TNotifyEvent;
FOnCanceled: TNotifyEvent;
FIntf: IContextor;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps: TContextorProperties;
function GetServerProperties: TContextorProperties;
{$ENDIF}
function GetDefaultInterface: IContextor;
protected
procedure InitServerData; override;
procedure InvokeEvent(DispID: TDispID; var Params: TVariantArray); override;
function Get_State: ContextorState;
function Get_CurrentContext: IContextItemCollection;
function Get_NotificationFilter: WideString;
procedure Set_NotificationFilter(const filter: WideString);
function Get_Name: WideString;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Connect; override;
procedure ConnectTo(svrIntf: IContextor);
procedure Disconnect; override;
procedure Run(const applicationLabel: WideString; const passcode: WideString; survey: WordBool;
const initialNotificationFilter: WideString);
procedure Suspend;
procedure Resume;
function GetPrivilege(const subj: WideString): AccessPrivilege;
procedure StartContextChange;
function EndContextChange(commit: WordBool;
const aContextItemCollection: IContextItemCollection): UserResponse;
procedure SetSurveyResponse(const reason: WideString);
property DefaultInterface: IContextor read GetDefaultInterface;
property State: ContextorState read Get_State;
property CurrentContext: IContextItemCollection read Get_CurrentContext;
property Name: WideString read Get_Name;
property NotificationFilter: WideString read Get_NotificationFilter write Set_NotificationFilter;
published
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
property Server: TContextorProperties read GetServerProperties;
{$ENDIF}
property OnPending: TContextorPending read FOnPending write FOnPending;
property OnCommitted: TNotifyEvent read FOnCommitted write FOnCommitted;
property OnCanceled: TNotifyEvent read FOnCanceled write FOnCanceled;
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
// *********************************************************************//
// OLE Server Properties Proxy Class
// Server Object : TContextor
// (This object is used by the IDE's Property Inspector to allow editing
// of the properties of this server)
// *********************************************************************//
TContextorProperties = class(TPersistent)
private
FServer: TContextor;
function GetDefaultInterface: IContextor;
constructor Create(AServer: TContextor);
protected
function Get_State: ContextorState;
function Get_CurrentContext: IContextItemCollection;
function Get_NotificationFilter: WideString;
procedure Set_NotificationFilter(const filter: WideString);
function Get_Name: WideString;
public
property DefaultInterface: IContextor read GetDefaultInterface;
published
property NotificationFilter: WideString read Get_NotificationFilter write Set_NotificationFilter;
end;
{$ENDIF}
// *********************************************************************//
// OLE Control Proxy class declaration
// Control Name : TContextorControl
// Help String : Vergence ContextorControl
// Default Interface: IContextor
// Def. Intf. DISP? : No
// Event Interface: _IContextChangesSink
// TypeFlags : (2) CanCreate
// *********************************************************************//
TContextorControlPending = procedure(Sender: TObject; const aContextItemCollection: IDispatch) of object;
TContextorControl = class(TOleControl)
private
FOnPending: TContextorControlPending;
FOnCommitted: TNotifyEvent;
FOnCanceled: TNotifyEvent;
FIntf: IContextor;
function GetControlInterface: IContextor;
protected
procedure CreateControl;
procedure InitControlData; override;
function Get_CurrentContext: IContextItemCollection;
public
procedure Run(const applicationLabel: WideString; const passcode: WideString; survey: WordBool;
const initialNotificationFilter: WideString);
procedure Suspend;
procedure Resume;
function GetPrivilege(const subj: WideString): AccessPrivilege;
procedure StartContextChange;
function EndContextChange(commit: WordBool;
const aContextItemCollection: IContextItemCollection): UserResponse;
procedure SetSurveyResponse(const reason: WideString);
property ControlInterface: IContextor read GetControlInterface;
property DefaultInterface: IContextor read GetControlInterface;
property State: TOleEnum index 4 read GetTOleEnumProp;
property CurrentContext: IContextItemCollection read Get_CurrentContext;
property Name: WideString index 11 read GetWideStringProp;
published
property NotificationFilter: WideString index 10 read GetWideStringProp write SetWideStringProp stored False;
property OnPending: TContextorControlPending read FOnPending write FOnPending;
property OnCommitted: TNotifyEvent read FOnCommitted write FOnCommitted;
property OnCanceled: TNotifyEvent read FOnCanceled write FOnCanceled;
end;
// *********************************************************************//
// The Class CoContextItemCollection provides a Create and CreateRemote method to
// create instances of the default interface IContextItemCollection exposed by
// the CoClass ContextItemCollection. The functions are intended to be used by
// clients wishing to automate the CoClass objects exposed by the
// server of this typelibrary.
// *********************************************************************//
CoContextItemCollection = class
class function Create: IContextItemCollection;
class function CreateRemote(const MachineName: string): IContextItemCollection;
end;
// *********************************************************************//
// OLE Server Proxy class declaration
// Server Object : TContextItemCollection
// Help String : Vergence ContextItemCollection
// Default Interface: IContextItemCollection
// Def. Intf. DISP? : No
// Event Interface:
// TypeFlags : (2) CanCreate
// *********************************************************************//
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
TContextItemCollectionProperties= class;
{$ENDIF}
TContextItemCollection = class(TOleServer)
private
FIntf: IContextItemCollection;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps: TContextItemCollectionProperties;
function GetServerProperties: TContextItemCollectionProperties;
{$ENDIF}
function GetDefaultInterface: IContextItemCollection;
protected
procedure InitServerData; override;
function Get__NewEnum: IUnknown;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Connect; override;
procedure ConnectTo(svrIntf: IContextItemCollection);
procedure Disconnect; override;
function Count: Integer;
procedure Add(const aContextItem: IContextItem);
procedure Remove(const contextItemName: WideString);
procedure RemoveAll;
function Present(key: OleVariant): IContextItem;
function Item(key: OleVariant): IContextItem;
property DefaultInterface: IContextItemCollection read GetDefaultInterface;
property _NewEnum: IUnknown read Get__NewEnum;
published
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
property Server: TContextItemCollectionProperties read GetServerProperties;
{$ENDIF}
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
// *********************************************************************//
// OLE Server Properties Proxy Class
// Server Object : TContextItemCollection
// (This object is used by the IDE's Property Inspector to allow editing
// of the properties of this server)
// *********************************************************************//
TContextItemCollectionProperties = class(TPersistent)
private
FServer: TContextItemCollection;
function GetDefaultInterface: IContextItemCollection;
constructor Create(AServer: TContextItemCollection);
protected
function Get__NewEnum: IUnknown;
public
property DefaultInterface: IContextItemCollection read GetDefaultInterface;
published
end;
{$ENDIF}
// *********************************************************************//
// The Class CoContextItem provides a Create and CreateRemote method to
// create instances of the default interface IContextItem exposed by
// the CoClass ContextItem. The functions are intended to be used by
// clients wishing to automate the CoClass objects exposed by the
// server of this typelibrary.
// *********************************************************************//
CoContextItem = class
class function Create: IContextItem;
class function CreateRemote(const MachineName: string): IContextItem;
end;
// *********************************************************************//
// OLE Server Proxy class declaration
// Server Object : TContextItem
// Help String : Vergence ContextItem
// Default Interface: IContextItem
// Def. Intf. DISP? : No
// Event Interface:
// TypeFlags : (2) CanCreate
// *********************************************************************//
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
TContextItemProperties= class;
{$ENDIF}
TContextItem = class(TOleServer)
private
FIntf: IContextItem;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps: TContextItemProperties;
function GetServerProperties: TContextItemProperties;
{$ENDIF}
function GetDefaultInterface: IContextItem;
protected
procedure InitServerData; override;
function Get_Subject: WideString;
procedure Set_Subject(const pVal: WideString);
function Get_Role: WideString;
procedure Set_Role(const pVal: WideString);
function Get_Prefix: WideString;
procedure Set_Prefix(const pVal: WideString);
function Get_Suffix: WideString;
procedure Set_Suffix(const pVal: WideString);
function Get_Name: WideString;
procedure Set_Name(const pVal: WideString);
function Get_Value: WideString;
procedure Set_Value(const pVal: WideString);
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Connect; override;
procedure ConnectTo(svrIntf: IContextItem);
procedure Disconnect; override;
function Clone: IContextItem;
property DefaultInterface: IContextItem read GetDefaultInterface;
property Subject: WideString read Get_Subject write Set_Subject;
property Role: WideString read Get_Role write Set_Role;
property Prefix: WideString read Get_Prefix write Set_Prefix;
property Suffix: WideString read Get_Suffix write Set_Suffix;
property Name: WideString read Get_Name write Set_Name;
property Value: WideString read Get_Value write Set_Value;
published
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
property Server: TContextItemProperties read GetServerProperties;
{$ENDIF}
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
// *********************************************************************//
// OLE Server Properties Proxy Class
// Server Object : TContextItem
// (This object is used by the IDE's Property Inspector to allow editing
// of the properties of this server)
// *********************************************************************//
TContextItemProperties = class(TPersistent)
private
FServer: TContextItem;
function GetDefaultInterface: IContextItem;
constructor Create(AServer: TContextItem);
protected
function Get_Subject: WideString;
procedure Set_Subject(const pVal: WideString);
function Get_Role: WideString;
procedure Set_Role(const pVal: WideString);
function Get_Prefix: WideString;
procedure Set_Prefix(const pVal: WideString);
function Get_Suffix: WideString;
procedure Set_Suffix(const pVal: WideString);
function Get_Name: WideString;
procedure Set_Name(const pVal: WideString);
function Get_Value: WideString;
procedure Set_Value(const pVal: WideString);
public
property DefaultInterface: IContextItem read GetDefaultInterface;
published
property Subject: WideString read Get_Subject write Set_Subject;
property Role: WideString read Get_Role write Set_Role;
property Prefix: WideString read Get_Prefix write Set_Prefix;
property Suffix: WideString read Get_Suffix write Set_Suffix;
property Name: WideString read Get_Name write Set_Name;
property Value: WideString read Get_Value write Set_Value;
end;
{$ENDIF}
// *********************************************************************//
// The Class CoResponseDialog provides a Create and CreateRemote method to
// create instances of the default interface IResponseDialog exposed by
// the CoClass ResponseDialog. The functions are intended to be used by
// clients wishing to automate the CoClass objects exposed by the
// server of this typelibrary.
// *********************************************************************//
CoResponseDialog = class
class function Create: IResponseDialog;
class function CreateRemote(const MachineName: string): IResponseDialog;
end;
// *********************************************************************//
// OLE Server Proxy class declaration
// Server Object : TResponseDialog
// Help String : Vergence ResponseDialog
// Default Interface: IResponseDialog
// Def. Intf. DISP? : No
// Event Interface:
// TypeFlags : (2) CanCreate
// *********************************************************************//
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
TResponseDialogProperties= class;
{$ENDIF}
TResponseDialog = class(TOleServer)
private
FIntf: IResponseDialog;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps: TResponseDialogProperties;
function GetServerProperties: TResponseDialogProperties;
{$ENDIF}
function GetDefaultInterface: IResponseDialog;
protected
procedure InitServerData; override;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Connect; override;
procedure ConnectTo(svrIntf: IResponseDialog);
procedure Disconnect; override;
function ProcessSurveyResults(responses: OleVariant; noContinue: WordBool): UserResponse;
property DefaultInterface: IResponseDialog read GetDefaultInterface;
published
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
property Server: TResponseDialogProperties read GetServerProperties;
{$ENDIF}
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
// *********************************************************************//
// OLE Server Properties Proxy Class
// Server Object : TResponseDialog
// (This object is used by the IDE's Property Inspector to allow editing
// of the properties of this server)
// *********************************************************************//
TResponseDialogProperties = class(TPersistent)
private
FServer: TResponseDialog;
function GetDefaultInterface: IResponseDialog;
constructor Create(AServer: TResponseDialog);
protected
public
property DefaultInterface: IResponseDialog read GetDefaultInterface;
published
end;
{$ENDIF}
// *********************************************************************//
// The Class CoContextorParticipant provides a Create and CreateRemote method to
// create instances of the default interface IContextParticipant exposed by
// the CoClass ContextorParticipant. The functions are intended to be used by
// clients wishing to automate the CoClass objects exposed by the
// server of this typelibrary.
// *********************************************************************//
CoContextorParticipant = class
class function Create: IContextParticipant;
class function CreateRemote(const MachineName: string): IContextParticipant;
end;
// *********************************************************************//
// OLE Server Proxy class declaration
// Server Object : TContextorParticipant
// Help String : ContextorParticipant Class
// Default Interface: IContextParticipant
// Def. Intf. DISP? : No
// Event Interface:
// TypeFlags : (2) CanCreate
// *********************************************************************//
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
TContextorParticipantProperties= class;
{$ENDIF}
TContextorParticipant = class(TOleServer)
private
FIntf: IContextParticipant;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps: TContextorParticipantProperties;
function GetServerProperties: TContextorParticipantProperties;
{$ENDIF}
function GetDefaultInterface: IContextParticipant;
protected
procedure InitServerData; override;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Connect; override;
procedure ConnectTo(svrIntf: IContextParticipant);
procedure Disconnect; override;
function ContextChangesPending(contextCoupon: Integer; var reason: WideString): WideString;
procedure ContextChangesAccepted(contextCoupon: Integer);
procedure ContextChangesCanceled(contextCoupon: Integer);
procedure CommonContextTerminated;
procedure Ping;
property DefaultInterface: IContextParticipant read GetDefaultInterface;
published
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
property Server: TContextorParticipantProperties read GetServerProperties;
{$ENDIF}
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
// *********************************************************************//
// OLE Server Properties Proxy Class
// Server Object : TContextorParticipant
// (This object is used by the IDE's Property Inspector to allow editing
// of the properties of this server)
// *********************************************************************//
TContextorParticipantProperties = class(TPersistent)
private
FServer: TContextorParticipant;
function GetDefaultInterface: IContextParticipant;
constructor Create(AServer: TContextorParticipant);
protected
public
property DefaultInterface: IContextParticipant read GetDefaultInterface;
published
end;
{$ENDIF}
{
procedure Register;
}
implementation
uses ComObj;
class function CoContextor.Create: IContextor;
begin
Result := CreateComObject(CLASS_Contextor) as IContextor;
end;
class function CoContextor.CreateRemote(const MachineName: string): IContextor;
begin
Result := CreateRemoteComObject(MachineName, CLASS_Contextor) as IContextor;
end;
procedure TContextor.InitServerData;
const
CServerData: TServerData = (
ClassID: '{D5C9CC98-5FDB-11D3-8727-0060B0B5E137}';
IntfIID: '{8D879F5D-5FE6-11D3-8727-0060B0B5E137}';
EventIID: '{6BED8971-B3DD-11D3-8736-0060B0B5E137}';
LicenseKey: nil;
Version: 500);
begin
ServerData := @CServerData;
end;
procedure TContextor.Connect;
var
punk: IUnknown;
begin
if FIntf = nil then
begin
punk := GetServer;
ConnectEvents(punk);
Fintf:= punk as IContextor;
end;
end;
procedure TContextor.ConnectTo(svrIntf: IContextor);
begin
Disconnect;
FIntf := svrIntf;
ConnectEvents(FIntf);
end;
procedure TContextor.DisConnect;
begin
if Fintf <> nil then
begin
DisconnectEvents(FIntf);
FIntf := nil;
end;
end;
function TContextor.GetDefaultInterface: IContextor;
begin
if FIntf = nil then
Connect;
Assert(FIntf <> nil, 'DefaultInterface is NULL. Component is not connected to Server. You must call ''Connect'' or ''ConnectTo'' before this operation');
Result := FIntf;
end;
constructor TContextor.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps := TContextorProperties.Create(Self);
{$ENDIF}
end;
destructor TContextor.Destroy;
begin
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps.Free;
{$ENDIF}
inherited Destroy;
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
function TContextor.GetServerProperties: TContextorProperties;
begin
Result := FProps;
end;
{$ENDIF}
procedure TContextor.InvokeEvent(DispID: TDispID; var Params: TVariantArray);
begin
case DispID of
-1: Exit; // DISPID_UNKNOWN
1: if Assigned(FOnPending) then
FOnPending(Self, Params[0] {const IDispatch});
2: if Assigned(FOnCommitted) then
FOnCommitted(Self);
3: if Assigned(FOnCanceled) then
FOnCanceled(Self);
end; {case DispID}
end;
function TContextor.Get_State: ContextorState;
begin
Result := DefaultInterface.Get_State;
end;
function TContextor.Get_CurrentContext: IContextItemCollection;
begin
Result := DefaultInterface.Get_CurrentContext;
end;
function TContextor.Get_NotificationFilter: WideString;
begin
Result := DefaultInterface.Get_NotificationFilter;
end;
procedure TContextor.Set_NotificationFilter(const filter: WideString);
begin
DefaultInterface.Set_NotificationFilter(filter);
end;
function TContextor.Get_Name: WideString;
begin
Result := DefaultInterface.Get_Name;
end;
procedure TContextor.Run(const applicationLabel: WideString; const passcode: WideString;
survey: WordBool; const initialNotificationFilter: WideString);
begin
DefaultInterface.Run(applicationLabel, passcode, survey, initialNotificationFilter);
end;
procedure TContextor.Suspend;
begin
DefaultInterface.Suspend;
end;
procedure TContextor.Resume;
begin
DefaultInterface.Resume;
end;
function TContextor.GetPrivilege(const subj: WideString): AccessPrivilege;
begin
Result := DefaultInterface.GetPrivilege(subj);
end;
procedure TContextor.StartContextChange;
begin
DefaultInterface.StartContextChange;
end;
function TContextor.EndContextChange(commit: WordBool;
const aContextItemCollection: IContextItemCollection): UserResponse;
begin
Result := DefaultInterface.EndContextChange(commit, aContextItemCollection);
end;
procedure TContextor.SetSurveyResponse(const reason: WideString);
begin
DefaultInterface.SetSurveyResponse(reason);
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
constructor TContextorProperties.Create(AServer: TContextor);
begin
inherited Create;
FServer := AServer;
end;
function TContextorProperties.GetDefaultInterface: IContextor;
begin
Result := FServer.DefaultInterface;
end;
function TContextorProperties.Get_State: ContextorState;
begin
Result := DefaultInterface.Get_State;
end;
function TContextorProperties.Get_CurrentContext: IContextItemCollection;
begin
Result := DefaultInterface.Get_CurrentContext;
end;
function TContextorProperties.Get_NotificationFilter: WideString;
begin
Result := DefaultInterface.Get_NotificationFilter;
end;
procedure TContextorProperties.Set_NotificationFilter(const filter: WideString);
begin
DefaultInterface.Set_NotificationFilter(filter);
end;
function TContextorProperties.Get_Name: WideString;
begin
Result := DefaultInterface.Get_Name;
end;
{$ENDIF}
procedure TContextorControl.InitControlData;
const
CEventDispIDs: array [0..2] of DWORD = (
$00000001, $00000002, $00000003);
CControlData: TControlData2 = (
ClassID: '{8778ACF7-5CA9-11D3-8727-0060B0B5E137}';
EventIID: '{6BED8971-B3DD-11D3-8736-0060B0B5E137}';
EventCount: 3;
EventDispIDs: @CEventDispIDs;
LicenseKey: nil (*HR:$80004002*);
Flags: $00000000;
Version: 401);
begin
ControlData := @CControlData;
TControlData2(CControlData).FirstEventOfs := Cardinal(@@FOnPending) - Cardinal(Self);
end;
procedure TContextorControl.CreateControl;
procedure DoCreate;
begin
FIntf := IUnknown(OleObject) as IContextor;
end;
begin
if FIntf = nil then DoCreate;
end;
function TContextorControl.GetControlInterface: IContextor;
begin
CreateControl;
Result := FIntf;
end;
function TContextorControl.Get_CurrentContext: IContextItemCollection;
begin
Result := DefaultInterface.Get_CurrentContext;
end;
procedure TContextorControl.Run(const applicationLabel: WideString; const passcode: WideString;
survey: WordBool; const initialNotificationFilter: WideString);
begin
DefaultInterface.Run(applicationLabel, passcode, survey, initialNotificationFilter);
end;
procedure TContextorControl.Suspend;
begin
DefaultInterface.Suspend;
end;
procedure TContextorControl.Resume;
begin
DefaultInterface.Resume;
end;
function TContextorControl.GetPrivilege(const subj: WideString): AccessPrivilege;
begin
Result := DefaultInterface.GetPrivilege(subj);
end;
procedure TContextorControl.StartContextChange;
begin
DefaultInterface.StartContextChange;
end;
function TContextorControl.EndContextChange(commit: WordBool;
const aContextItemCollection: IContextItemCollection): UserResponse;
begin
Result := DefaultInterface.EndContextChange(commit, aContextItemCollection);
end;
procedure TContextorControl.SetSurveyResponse(const reason: WideString);
begin
DefaultInterface.SetSurveyResponse(reason);
end;
class function CoContextItemCollection.Create: IContextItemCollection;
begin
Result := CreateComObject(CLASS_ContextItemCollection) as IContextItemCollection;
end;
class function CoContextItemCollection.CreateRemote(const MachineName: string): IContextItemCollection;
begin
Result := CreateRemoteComObject(MachineName, CLASS_ContextItemCollection) as IContextItemCollection;
end;
procedure TContextItemCollection.InitServerData;
const
CServerData: TServerData = (
ClassID: '{AC4C0272-615A-11D3-84B5-0000861FDD4F}';
IntfIID: '{AC4C0271-615A-11D3-84B5-0000861FDD4F}';
EventIID: '';
LicenseKey: nil;
Version: 500);
begin
ServerData := @CServerData;
end;
procedure TContextItemCollection.Connect;
var
punk: IUnknown;
begin
if FIntf = nil then
begin
punk := GetServer;
Fintf:= punk as IContextItemCollection;
end;
end;
procedure TContextItemCollection.ConnectTo(svrIntf: IContextItemCollection);
begin
Disconnect;
FIntf := svrIntf;
end;
procedure TContextItemCollection.DisConnect;
begin
if Fintf <> nil then
begin
FIntf := nil;
end;
end;
function TContextItemCollection.GetDefaultInterface: IContextItemCollection;
begin
if FIntf = nil then
Connect;
Assert(FIntf <> nil, 'DefaultInterface is NULL. Component is not connected to Server. You must call ''Connect'' or ''ConnectTo'' before this operation');
Result := FIntf;
end;
constructor TContextItemCollection.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps := TContextItemCollectionProperties.Create(Self);
{$ENDIF}
end;
destructor TContextItemCollection.Destroy;
begin
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps.Free;
{$ENDIF}
inherited Destroy;
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
function TContextItemCollection.GetServerProperties: TContextItemCollectionProperties;
begin
Result := FProps;
end;
{$ENDIF}
function TContextItemCollection.Get__NewEnum: IUnknown;
begin
Result := DefaultInterface.Get__NewEnum;
end;
function TContextItemCollection.Count: Integer;
begin
Result := DefaultInterface.Count;
end;
procedure TContextItemCollection.Add(const aContextItem: IContextItem);
begin
DefaultInterface.Add(aContextItem);
end;
procedure TContextItemCollection.Remove(const contextItemName: WideString);
begin
DefaultInterface.Remove(contextItemName);
end;
procedure TContextItemCollection.RemoveAll;
begin
DefaultInterface.RemoveAll;
end;
function TContextItemCollection.Present(key: OleVariant): IContextItem;
begin
Result := DefaultInterface.Present(key);
end;
function TContextItemCollection.Item(key: OleVariant): IContextItem;
begin
Result := DefaultInterface.Item(key);
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
constructor TContextItemCollectionProperties.Create(AServer: TContextItemCollection);
begin
inherited Create;
FServer := AServer;
end;
function TContextItemCollectionProperties.GetDefaultInterface: IContextItemCollection;
begin
Result := FServer.DefaultInterface;
end;
function TContextItemCollectionProperties.Get__NewEnum: IUnknown;
begin
Result := DefaultInterface.Get__NewEnum;
end;
{$ENDIF}
class function CoContextItem.Create: IContextItem;
begin
Result := CreateComObject(CLASS_ContextItem) as IContextItem;
end;
class function CoContextItem.CreateRemote(const MachineName: string): IContextItem;
begin
Result := CreateRemoteComObject(MachineName, CLASS_ContextItem) as IContextItem;
end;
procedure TContextItem.InitServerData;
const
CServerData: TServerData = (
ClassID: '{AC4C0274-615A-11D3-84B5-0000861FDD4F}';
IntfIID: '{AC4C0273-615A-11D3-84B5-0000861FDD4F}';
EventIID: '';
LicenseKey: nil;
Version: 500);
begin
ServerData := @CServerData;
end;
procedure TContextItem.Connect;
var
punk: IUnknown;
begin
if FIntf = nil then
begin
punk := GetServer;
Fintf:= punk as IContextItem;
end;
end;
procedure TContextItem.ConnectTo(svrIntf: IContextItem);
begin
Disconnect;
FIntf := svrIntf;
end;
procedure TContextItem.DisConnect;
begin
if Fintf <> nil then
begin
FIntf := nil;
end;
end;
function TContextItem.GetDefaultInterface: IContextItem;
begin
if FIntf = nil then
Connect;
Assert(FIntf <> nil, 'DefaultInterface is NULL. Component is not connected to Server. You must call ''Connect'' or ''ConnectTo'' before this operation');
Result := FIntf;
end;
constructor TContextItem.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps := TContextItemProperties.Create(Self);
{$ENDIF}
end;
destructor TContextItem.Destroy;
begin
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps.Free;
{$ENDIF}
inherited Destroy;
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
function TContextItem.GetServerProperties: TContextItemProperties;
begin
Result := FProps;
end;
{$ENDIF}
function TContextItem.Get_Subject: WideString;
begin
Result := DefaultInterface.Get_Subject;
end;
procedure TContextItem.Set_Subject(const pVal: WideString);
begin
DefaultInterface.Set_Subject(pVal);
end;
function TContextItem.Get_Role: WideString;
begin
Result := DefaultInterface.Get_Role;
end;
procedure TContextItem.Set_Role(const pVal: WideString);
begin
DefaultInterface.Set_Role(pVal);
end;
function TContextItem.Get_Prefix: WideString;
begin
Result := DefaultInterface.Get_Prefix;
end;
procedure TContextItem.Set_Prefix(const pVal: WideString);
begin
DefaultInterface.Set_Prefix(pVal);
end;
function TContextItem.Get_Suffix: WideString;
begin
Result := DefaultInterface.Get_Suffix;
end;
procedure TContextItem.Set_Suffix(const pVal: WideString);
begin
DefaultInterface.Set_Suffix(pVal);
end;
function TContextItem.Get_Name: WideString;
begin
Result := DefaultInterface.Get_Name;
end;
procedure TContextItem.Set_Name(const pVal: WideString);
begin
DefaultInterface.Set_Name(pVal);
end;
function TContextItem.Get_Value: WideString;
begin
Result := DefaultInterface.Get_Value;
end;
procedure TContextItem.Set_Value(const pVal: WideString);
begin
DefaultInterface.Set_Value(pVal);
end;
function TContextItem.Clone: IContextItem;
begin
Result := DefaultInterface.Clone;
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
constructor TContextItemProperties.Create(AServer: TContextItem);
begin
inherited Create;
FServer := AServer;
end;
function TContextItemProperties.GetDefaultInterface: IContextItem;
begin
Result := FServer.DefaultInterface;
end;
function TContextItemProperties.Get_Subject: WideString;
begin
Result := DefaultInterface.Get_Subject;
end;
procedure TContextItemProperties.Set_Subject(const pVal: WideString);
begin
DefaultInterface.Set_Subject(pVal);
end;
function TContextItemProperties.Get_Role: WideString;
begin
Result := DefaultInterface.Get_Role;
end;
procedure TContextItemProperties.Set_Role(const pVal: WideString);
begin
DefaultInterface.Set_Role(pVal);
end;
function TContextItemProperties.Get_Prefix: WideString;
begin
Result := DefaultInterface.Get_Prefix;
end;
procedure TContextItemProperties.Set_Prefix(const pVal: WideString);
begin
DefaultInterface.Set_Prefix(pVal);
end;
function TContextItemProperties.Get_Suffix: WideString;
begin
Result := DefaultInterface.Get_Suffix;
end;
procedure TContextItemProperties.Set_Suffix(const pVal: WideString);
begin
DefaultInterface.Set_Suffix(pVal);
end;
function TContextItemProperties.Get_Name: WideString;
begin
Result := DefaultInterface.Get_Name;
end;
procedure TContextItemProperties.Set_Name(const pVal: WideString);
begin
DefaultInterface.Set_Name(pVal);
end;
function TContextItemProperties.Get_Value: WideString;
begin
Result := DefaultInterface.Get_Value;
end;
procedure TContextItemProperties.Set_Value(const pVal: WideString);
begin
DefaultInterface.Set_Value(pVal);
end;
{$ENDIF}
class function CoResponseDialog.Create: IResponseDialog;
begin
Result := CreateComObject(CLASS_ResponseDialog) as IResponseDialog;
end;
class function CoResponseDialog.CreateRemote(const MachineName: string): IResponseDialog;
begin
Result := CreateRemoteComObject(MachineName, CLASS_ResponseDialog) as IResponseDialog;
end;
procedure TResponseDialog.InitServerData;
const
CServerData: TServerData = (
ClassID: '{9D33ECF2-8277-11D3-8525-0000861FDD4F}';
IntfIID: '{9D33ECF1-8277-11D3-8525-0000861FDD4F}';
EventIID: '';
LicenseKey: nil;
Version: 500);
begin
ServerData := @CServerData;
end;
procedure TResponseDialog.Connect;
var
punk: IUnknown;
begin
if FIntf = nil then
begin
punk := GetServer;
Fintf:= punk as IResponseDialog;
end;
end;
procedure TResponseDialog.ConnectTo(svrIntf: IResponseDialog);
begin
Disconnect;
FIntf := svrIntf;
end;
procedure TResponseDialog.DisConnect;
begin
if Fintf <> nil then
begin
FIntf := nil;
end;
end;
function TResponseDialog.GetDefaultInterface: IResponseDialog;
begin
if FIntf = nil then
Connect;
Assert(FIntf <> nil, 'DefaultInterface is NULL. Component is not connected to Server. You must call ''Connect'' or ''ConnectTo'' before this operation');
Result := FIntf;
end;
constructor TResponseDialog.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps := TResponseDialogProperties.Create(Self);
{$ENDIF}
end;
destructor TResponseDialog.Destroy;
begin
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps.Free;
{$ENDIF}
inherited Destroy;
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
function TResponseDialog.GetServerProperties: TResponseDialogProperties;
begin
Result := FProps;
end;
{$ENDIF}
function TResponseDialog.ProcessSurveyResults(responses: OleVariant; noContinue: WordBool): UserResponse;
begin
Result := DefaultInterface.ProcessSurveyResults(responses, noContinue);
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
constructor TResponseDialogProperties.Create(AServer: TResponseDialog);
begin
inherited Create;
FServer := AServer;
end;
function TResponseDialogProperties.GetDefaultInterface: IResponseDialog;
begin
Result := FServer.DefaultInterface;
end;
{$ENDIF}
class function CoContextorParticipant.Create: IContextParticipant;
begin
Result := CreateComObject(CLASS_ContextorParticipant) as IContextParticipant;
end;
class function CoContextorParticipant.CreateRemote(const MachineName: string): IContextParticipant;
begin
Result := CreateRemoteComObject(MachineName, CLASS_ContextorParticipant) as IContextParticipant;
end;
procedure TContextorParticipant.InitServerData;
const
CServerData: TServerData = (
ClassID: '{4BA034A2-D0FA-11D3-818B-0050049598B2}';
IntfIID: '{3E3DD272-998E-11D0-808D-00A0240943E4}';
EventIID: '';
LicenseKey: nil;
Version: 500);
begin
ServerData := @CServerData;
end;
procedure TContextorParticipant.Connect;
var
punk: IUnknown;
begin
if FIntf = nil then
begin
punk := GetServer;
Fintf:= punk as IContextParticipant;
end;
end;
procedure TContextorParticipant.ConnectTo(svrIntf: IContextParticipant);
begin
Disconnect;
FIntf := svrIntf;
end;
procedure TContextorParticipant.DisConnect;
begin
if Fintf <> nil then
begin
FIntf := nil;
end;
end;
function TContextorParticipant.GetDefaultInterface: IContextParticipant;
begin
if FIntf = nil then
Connect;
Assert(FIntf <> nil, 'DefaultInterface is NULL. Component is not connected to Server. You must call ''Connect'' or ''ConnectTo'' before this operation');
Result := FIntf;
end;
constructor TContextorParticipant.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps := TContextorParticipantProperties.Create(Self);
{$ENDIF}
end;
destructor TContextorParticipant.Destroy;
begin
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
FProps.Free;
{$ENDIF}
inherited Destroy;
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
function TContextorParticipant.GetServerProperties: TContextorParticipantProperties;
begin
Result := FProps;
end;
{$ENDIF}
function TContextorParticipant.ContextChangesPending(contextCoupon: Integer; var reason: WideString): WideString;
begin
Result := DefaultInterface.ContextChangesPending(contextCoupon, reason);
end;
procedure TContextorParticipant.ContextChangesAccepted(contextCoupon: Integer);
begin
DefaultInterface.ContextChangesAccepted(contextCoupon);
end;
procedure TContextorParticipant.ContextChangesCanceled(contextCoupon: Integer);
begin
DefaultInterface.ContextChangesCanceled(contextCoupon);
end;
procedure TContextorParticipant.CommonContextTerminated;
begin
DefaultInterface.CommonContextTerminated;
end;
procedure TContextorParticipant.Ping;
begin
DefaultInterface.Ping;
end;
{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
constructor TContextorParticipantProperties.Create(AServer: TContextorParticipant);
begin
inherited Create;
FServer := AServer;
end;
function TContextorParticipantProperties.GetDefaultInterface: IContextParticipant;
begin
Result := FServer.DefaultInterface;
end;
{$ENDIF}
{
procedure Register;
begin
RegisterComponents('Kernel',[TContextorControl]);
RegisterComponents('Kernel',[TContextor, TContextItemCollection, TContextItem, TResponseDialog,
TContextorParticipant]);
end;
}
end.