GME  13
GMEOLEColl.h
Go to the documentation of this file.
00001 // CGMEOLEColl.h : header file
00002 //
00003 
00005 // CGMEOLEColl command target
00006 
00007 class CGMEOLEColl : public CCmdTarget
00008 {
00009         DECLARE_DYNCREATE(CGMEOLEColl)
00010 public:
00011         CGMEOLEColl();
00012 
00013 // Attributes
00014 public:
00015         CPtrArray m_ptrArray;
00016 
00017 // Operations
00018 public:
00019         void CheckIndex(long nIndex);
00020 
00021 // Overrides
00022 public:
00023         virtual void OnFinalRelease();
00024 
00025 
00026         // OLE dispatch map functions
00027         afx_msg long GetCount();
00028         afx_msg void Add(LPDISPATCH newValue);
00029         afx_msg long Find(LPDISPATCH findValue);
00030         afx_msg void Remove(const VARIANT FAR& removeValue);
00031         afx_msg void RemoveAll();
00032         afx_msg LPDISPATCH GetItem(long nIndex);
00033         afx_msg void SetItem(long nIndex, LPDISPATCH newValue);
00034         afx_msg LPUNKNOWN GetNewEnum();
00035         
00036 
00037 // Implementation
00038 protected:
00039         virtual ~CGMEOLEColl();
00040         
00041         // Generated message map functions
00042         //{{AFX_MSG(CGMEOLEColl)
00043                 // NOTE - the ClassWizard will add and remove member functions here.
00044         //}}AFX_MSG
00045 
00046         DECLARE_MESSAGE_MAP()
00047 
00048         DECLARE_DISPATCH_MAP()
00049 
00050         DECLARE_INTERFACE_MAP()
00051 
00052         BEGIN_DUAL_INTERFACE_PART(Dual, IGMEOLEColl)
00053                 STDMETHOD(get_Count)(THIS_ long *cnt);
00054 
00055                 STDMETHOD(Add)(THIS_ IDispatch* newValue);
00056                 STDMETHOD(Find)(THIS_ IDispatch* findValue, long *cnt);
00057                 STDMETHOD(Remove)(THIS_ VARIANT removeValue);
00058                 STDMETHOD(RemoveAll)(THIS);
00059 
00060                 STDMETHOD(get_Item)(THIS_ long nIndex, IDispatch** val);
00061                 STDMETHOD(put_Item)(THIS_ long nIndex, IDispatch* newValue);
00062                 STDMETHOD(get__NewEnum)(THIS_ IUnknown** e);
00063         END_DUAL_INTERFACE_PART(Dual)
00064 
00065         //     add declaration of ISupportErrorInfo implementation
00066         //     to indicate we support the OLE Automation error object
00067         DECLARE_DUAL_ERRORINFO()
00068 };
00069