home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2002 March / PCWMAR02.iso / software / turbocad / v8trial / TurboCADv8ProfessionalNoReg.exe / Data.Cab / F37586_InsSymb.h < prev    next >
Encoding:
C/C++ Source or Header  |  2001-10-16  |  2.5 KB  |  65 lines

  1. /******************************************************************/
  2. /*                                                                */
  3. /*                      TurboCAD for Windows                      */
  4. /*                   Copyright (c) 1993 - 2001                    */
  5. /*             International Microcomputer Software, Inc.         */
  6. /*                            (IMSI)                              */
  7. /*                      All rights reserved.                      */
  8. /*                                                                */
  9. /******************************************************************/
  10.  
  11. // InsSymb.h : Declaration of the CInsSymb
  12.  
  13. #ifndef __INSSYMB_H_
  14. #define __INSSYMB_H_
  15.  
  16. #include "resource.h"       // main symbols
  17.  
  18. /////////////////////////////////////////////////////////////////////////////
  19. // CInsSymb
  20. class ATL_NO_VTABLE CInsSymb : 
  21.     public CComObjectRootEx<CComSingleThreadModel>,
  22.     public CComCoClass<CInsSymb, &CLSID_InsSymb>,
  23.     public ISupportErrorInfo,
  24.     public CComDualImpl<ITurboCADTool, &IID_ITurboCADTool, &LIBID_INSTOOLLib, TYPELIB_MAJOR, TYPELIB_MINOR>
  25. {
  26. public:
  27.     CInsSymb()
  28.     {
  29.         m_bRunned = false;
  30.     }
  31.  
  32. DECLARE_REGISTRY_RESOURCEID(IDR_INSSYMB)
  33. DECLARE_CLASSFACTORY_SINGLETON(CInsSymb)
  34.  
  35. BEGIN_COM_MAP(CInsSymb)
  36. //    COM_INTERFACE_ENTRY(IInsSymb)
  37.     COM_INTERFACE_ENTRY(ITurboCADTool)
  38.     COM_INTERFACE_ENTRY(IDispatch)
  39.     COM_INTERFACE_ENTRY(ISupportErrorInfo)
  40. END_COM_MAP()
  41.  
  42. // ISupportsErrorInfo
  43.     STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
  44.  
  45. // IInsSymb
  46. public:
  47.     BOOL m_bRunned;
  48.     AFX_MODULE_STATE* m_pTCState;
  49.     /* ITurboCADTool properties: */
  50.     STDMETHOD(get_ClassID)(THIS_ BSTR* retval);
  51.     STDMETHOD(get_Description)(THIS_ BSTR* retval);
  52.  
  53.     /* ITurboCADTool methods: */
  54.     STDMETHOD(GetToolInfo)(THIS_ VARIANT FAR* CommandNames, VARIANT FAR* MenuCaptions, VARIANT FAR* StatusPrompts, VARIANT FAR* ToolTips, VARIANT FAR* Enabled, VARIANT FAR* WantsUpdates, long FAR* retval);
  55.     STDMETHOD(CopyBitmap)(THIS_ VARIANT_BOOL LargeButtons, VARIANT_BOOL Monochrome, VARIANT_BOOL FAR* retval);
  56.     STDMETHOD(GetPicture)(THIS_ VARIANT_BOOL LargeButtons, VARIANT_BOOL Monochrome, IDispatch** retval);
  57.     STDMETHOD(Run)(THIS_ IDispatch* ThisTool, VARIANT_BOOL FAR* retval);
  58.     STDMETHOD(UpdateToolStatus)(THIS_ IDispatch* ThisTool, VARIANT_BOOL FAR* Enabled, VARIANT_BOOL FAR* Checked, VARIANT_BOOL FAR* retval);
  59.     STDMETHOD(Initialize)(THIS_ IDispatch * ThisTool, VARIANT_BOOL FAR* retval);
  60.  
  61. protected:
  62. };
  63.  
  64. #endif //__INSSYMB_H_
  65.