;--------------------------------------------------------------------------
;
; IAsmCtrl.inc
;
; Interfaces and general definitions for the AsmCtrl object
;
; Copyright (c) 9/14/00  Ernest Murphy
; For educational use only. Any commercial re-use only by written license
;
; 9/15/00 begin re-writing file for Connection Points
;
;
;--------------------------------------------------------------------------
; IAsmCtrl  Interface
;--------------------------------------------------------------------------
;

.data
sLIBID_AsmCtrl          TEXTEQU <{0AFFD6F81H, 09D30H, 011D4H, \
                                {0A3H, 024H, 044H, 045H, 053H, 054H, 000H, 000H}}>
; {AFFD6F81-9D30-11d4-A324-444553540000}

sIID_IAsmCtrl           TEXTEQU <{0AFFD6F82H, 09D30H, 011D4H, \
                                {0A3H, 024H, 044H, 045H, 053H, 054H, 000H, 000H}}>
; {AFFD6F82-9D30-11d4-A324-444553540000}

sCLSID_AsmCtrl          TEXTEQU <{0AFFD6F83H, 09D30H, 011D4H, \
                                {0A3H, 024H, 044H, 045H, 053H, 054H, 000H, 000H}}>
; {AFFD6F83-9D30-11d4-A324-444553540000}
                            
sIID_IAsmCtrlEvent1     TEXTEQU <{0AFFD6F84H, 09D30H, 011D4H, \
                                {0A3H, 024H, 044H, 045H, 053H, 054H, 000H, 000H}}>
; {AFFD6F84-9D30-11d4-A324-444553540000}
                            
sIID_IAsmCtrlEvent2     TEXTEQU <{0AFFD6F85H, 09D30H, 011D4H, \
                                {0A3H, 024H, 044H, 045H, 053H, 054H, 000H, 000H}}>
; {AFFD6F85-9D30-11d4-A324-444553540000}


;IID_IAsmCtrlEvent1      GUID    sIID_IAsmCtrlEvent1  
;IID_IAsmCtrlEvent2      GUID    sIID_IAsmCtrlEvent2

;pIID_IAsmCtrlEvent1     EQU     OFFSET IID_IAsmCtrlEvent1  
;pIID_IAsmCtrlEvent2     EQU     OFFSET IID_IAsmCtrlEvent2

 ; ; ConnectionPoint Enumerator is a child object, hence we only need an object item (not map)
 ; 
 ; AsmCPObjectMap      ObjectItem          \ ; object item instance  
 ;      { NULL, NULL, NULL, AsmCtrlCPMap, CreateEnumCP, 
 ;        DestroyEnumCP, SIZEOF CpManagerObject, OFFSET CpcIMap, NULL }


;CpcIMap         DWORD       2       ; count of outgoing interfaces
;    IOut1       DWORD       pIID_IAsmCtrlEvent1
;    IOut2       DWORD       pIID_IAsmCtrlEvent2

;AsmCtrlCPMap   DWORD       ?  ;   TBD



_vtIAsmCtrl MACRO CastName:REQ
    ; IDispatch methods 
    _vtIDispatch CastName
    ; IAsmCtrl methods
    &CastName&_put_Value            comethod2 ?
    &CastName&_get_Value            comethod2 ?
    &CastName&_Raise                comethod2 ?
    &CastName&_put_ForeColor        comethod2 ?
    &CastName&_get_ForeColor        comethod2 ?
    &CastName&_put_BackColor        comethod2 ?
    &CastName&_get_BackColor        comethod2 ?
    &CastName&_AboutBox             comethod1 ?
ENDM

IAsmCtrl              STRUCT
    _vtIAsmCtrl IAsmCtrl
IAsmCtrl              ENDS

