#if !defined(AFX_PNALARMCLOCKCTL_H__6F6032FE_59B1_11D4_A014_080009EE62AA__INCLUDED_)
#define AFX_PNALARMCLOCKCTL_H__6F6032FE_59B1_11D4_A014_080009EE62AA__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

// PNAlarmClockCtl.h : Declaration of the CPNAlarmClockCtrl ActiveX Control class.

/////////////////////////////////////////////////////////////////////////////
// CPNAlarmClockCtrl : See PNAlarmClockCtl.cpp for implementation.

class CPNAlarmClockCtrl : public COleControl
{
	DECLARE_DYNCREATE(CPNAlarmClockCtrl)

// Constructor
public:
	CPNAlarmClockCtrl();

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CPNAlarmClockCtrl)
	public:
	virtual void OnDraw(CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid);
	virtual void DoPropExchange(CPropExchange* pPX);
	virtual void OnResetState();
	//}}AFX_VIRTUAL

// Implementation
protected:
	~CPNAlarmClockCtrl();

	DECLARE_OLECREATE_EX(CPNAlarmClockCtrl)    // Class factory and guid
	DECLARE_OLETYPELIB(CPNAlarmClockCtrl)      // GetTypeInfo
	DECLARE_PROPPAGEIDS(CPNAlarmClockCtrl)     // Property page IDs
	DECLARE_OLECTLTYPE(CPNAlarmClockCtrl)		// Type name and misc status

// Message maps
	//{{AFX_MSG(CPNAlarmClockCtrl)
	afx_msg void OnTimer(UINT nIDEvent);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()

// Dispatch maps
	//{{AFX_DISPATCH(CPNAlarmClockCtrl)
	afx_msg BSTR GetAlarmTime();
	afx_msg void SetAlarmTime(LPCTSTR lpszNewValue);
	//}}AFX_DISPATCH
	DECLARE_DISPATCH_MAP()

	afx_msg void AboutBox();

// Event maps
	//{{AFX_EVENT(CPNAlarmClockCtrl)
	void FireAlarm()
		{FireEvent(eventidAlarm,EVENT_PARAM(VTS_NONE));}
	//}}AFX_EVENT
	DECLARE_EVENT_MAP()

// Dispatch and event IDs
public:
	bool m_TimerSet;
	int m_AlarmH, m_AlarmM, m_AlarmS;
	CString m_AlarmTime;
	CTime m_Now;

	enum {
	//{{AFX_DISP_ID(CPNAlarmClockCtrl)
	dispidAlarmTime = 1L,
	eventidAlarm = 1L,
	//}}AFX_DISP_ID
	};
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_PNALARMCLOCKCTL_H__6F6032FE_59B1_11D4_A014_080009EE62AA__INCLUDED)
