// ************************************************************************ //
// 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.                                         
// ************************************************************************ //

// C++ TLBWRTR : $Revision:   1.134.1.39  $
// File generated on 28/02/01 17:28:13 from Type Library described below.

// ************************************************************************ //
// Type Lib: C:\Program Files\Euresys\MultiCam for Picolo\ActiveX\EDisplayACL.dll (1)
// IID\LCID: {CA1DC8B0-767C-11D3-89F3-0050042A3D34}\0
// Helpfile: 
// DepndLst: 
//   (1) v2.0 stdole, (C:\WINNT\System32\STDOLE2.TLB)
//   (2) v4.0 StdVCL, (C:\WINNT\System32\STDVCL40.DLL)
// ************************************************************************ //

#include <vcl.h>
#pragma hdrstop

#if defined(USING_ATL)
#include <atl\atlvcl.h>
#endif

#include "EDISPLAYACLLib_OCX.h"

#if !defined(__PRAGMA_PACKAGE_SMART_INIT)
#define      __PRAGMA_PACKAGE_SMART_INIT
#pragma package(smart_init)
#endif

namespace Edisplayacllib_tlb
{



// *********************************************************************//
// OCX PROXY CLASS IMPLEMENTATION
// (The following variables/methods implement the class TEDisplay which
// allows "EDisplay Class" to be hosted in CBuilder IDE/apps).
// *********************************************************************//
TControlData TEDisplay::CControlData =
{
  // GUID of CoClass and Event Interface of Control
  {0xCA1DC8C0, 0x767C, 0x11D3,{ 0x89, 0xF3, 0x00, 0x50, 0x04, 0x2A, 0x3D, 0x34} }, // CoClass
  {0xCA1DC8C1, 0x767C, 0x11D3,{ 0x89, 0xF3, 0x00, 0x50, 0x04, 0x2A, 0x3D, 0x34} }, // Events

  // Count of Events and array of their DISPIDs
  0, NULL,

  // Pointer to Runtime License string
  NULL,  // HRESULT(0x80040154)

  // Flags for OnChanged PropertyNotification
  0x00000000,
  300,// (IDE Version)

  // Count of Font Prop and array of their DISPIDs
  0, NULL,

  // Count of Pict Prop and array of their DISPIDs
  0, NULL,
  0, // Reserved
  0, // Instance count (used internally)
  0, // List of Enum descriptions (internal)
};

GUID     TEDisplay::DEF_CTL_INTF = {0xCA1DC8BF, 0x767C, 0x11D3,{ 0x89, 0xF3, 0x00, 0x50, 0x04, 0x2A, 0x3D, 0x34} };
TNoParam TEDisplay::OptParam;

static inline void ValidCtrCheck(TEDisplay *)
{
   delete new TEDisplay((TComponent*)(0));
};

void __fastcall TEDisplay::InitControlData()
{
  ControlData = &CControlData;
};

void __fastcall TEDisplay::CreateControl()
{
  if (!m_OCXIntf)
  {
    _ASSERTE(DefaultDispatch);
    DefaultDispatch->QueryInterface(DEF_CTL_INTF, (LPVOID*)&m_OCXIntf);
  }
};

TCOMIEDisplay __fastcall TEDisplay::GetDefaultInterface()
{
  CreateControl();
  return m_OCXIntf;
};

void __fastcall TEDisplay::Refresh(void)
{
  GetDefaultInterface()->Refresh();
}


};     // namespace Edisplayacllib_tlb


// *********************************************************************//
// The Register function is invoked by the IDE when this module is 
// installed in a Package. It provides the list of Components (including
// OCXes) implemented by this module. The following implementation
// informs the IDE of the OCX proxy classes implemented here.
// *********************************************************************//
namespace Edisplayacllib_ocx
{

void __fastcall PACKAGE Register()
{
  // [1]
  TComponentClass cls_ocx[] = {
                              __classid(Edisplayacllib_tlb::TEDisplay)
                           };
  RegisterComponents("ActiveX", cls_ocx,
                     sizeof(cls_ocx)/sizeof(cls_ocx[0])-1);
}

};     // namespace Edisplayacllib_ocx
