// LicCtl.h : Declaration of the CLicCtrl OLE control class.

/////////////////////////////////////////////////////////////////////////////
// CLicCtrl : See LicCtl.cpp for implementation.

class CLicCtrl : public COleControl
{
	DECLARE_DYNCREATE(CLicCtrl)

// Constructor
public:
	CLicCtrl();

// Overrides

	// Drawing function
	virtual void OnDraw(
				CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid);

	// Persistence
	virtual void DoPropExchange(CPropExchange* pPX);

	// Reset control state
	virtual void OnResetState();

// Implementation
protected:
	~CLicCtrl();

	BEGIN_OLEFACTORY(CLicCtrl)        // Class factory and guid
		virtual BOOL VerifyUserLicense();
		virtual BOOL GetLicenseKey(DWORD, BSTR FAR*);
	END_OLEFACTORY(CLicCtrl)

	DECLARE_OLETYPELIB(CLicCtrl)      // GetTypeInfo
	DECLARE_PROPPAGEIDS(CLicCtrl)     // Property page IDs
	DECLARE_OLECTLTYPE(CLicCtrl)		// Type name and misc status

// Message maps
	//{{AFX_MSG(CLicCtrl)
		// NOTE - ClassWizard will add and remove member functions here.
		//    DO NOT EDIT what you see in these blocks of generated code !
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()

// Dispatch maps
	//{{AFX_DISPATCH(CLicCtrl)
		// NOTE - ClassWizard will add and remove member functions here.
		//    DO NOT EDIT what you see in these blocks of generated code !
	//}}AFX_DISPATCH
	DECLARE_DISPATCH_MAP()

	afx_msg void AboutBox();

// Event maps
	//{{AFX_EVENT(CLicCtrl)
		// NOTE - ClassWizard will add and remove member functions here.
		//    DO NOT EDIT what you see in these blocks of generated code !
	//}}AFX_EVENT
	DECLARE_EVENT_MAP()

// Dispatch and event IDs
public:
	enum {
	//{{AFX_DISP_ID(CLicCtrl)
		// NOTE: ClassWizard will add and remove enumeration elements here.
		//    DO NOT EDIT what you see in these blocks of generated code !
	//}}AFX_DISP_ID
	};
};
