/***************************************************************************
   �¿�����ЩԴ������ֵ�:
       ���!
       �Ȿ������Ϊһ����ҵPDA��Ʒ��������������,�����ֲ��PC����, �����㷨
   �����ݲ������ô�C++д��,���漰MFC,���еĴ��붼���Զ̽�ʡ�洢�ռ�Ϊ��ҪĿ
   ��.
	   �ܸ��������Щ��������Ȥ,��������⸴�ƺ�ʹ��Щ����,Ψһ��һ��СС��
   Ը��:����ʹ�ú͸��Ƹ�����ʱ,����ע����Щ��������:-)���������Ҳ�Ͱ���,��
   ������ݿ����������������������ҳ������ȥ�ġ�
	   �������ʲô�õ��������Mail���ҡ�

       wangfei@hanwang.com.cn
	   ��
	   wangfei@engineer.com.cn
****************************************************************************/
#if !defined(AFX_CALENDARFRM_H__9EC203BC_1574_4986_B73C_A44C975739CC__INCLUDED_)
#define AFX_CALENDARFRM_H__9EC203BC_1574_4986_B73C_A44C975739CC__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "Calendar1.h"
// CalendarFrm.h : header file
// Download by http://www.codefans.net

/////////////////////////////////////////////////////////////////////////////
// CCalendarFrm window
/////////////////////////////////////////////////////////////////////////////
// CYearEdit window

class CYearEdit : public CEdit
{
// Construction
public:
	CYearEdit();

// Attributes
public:

// Operations
public:

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CYearEdit)
	public:
	virtual BOOL Create(const RECT& rect, CWnd* pParentWnd, UINT nID);
	//}}AFX_VIRTUAL

// Implementation
public:
	virtual ~CYearEdit();

	// Generated message map functions
protected:
	//{{AFX_MSG(CYearEdit)
	afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);
	afx_msg void OnKillFocus(CWnd* pNewWnd);
	//}}AFX_MSG

	DECLARE_MESSAGE_MAP()
};

class CCalendarFrm : public CWnd  // Jeff��ر�ͼ��;
{
private:
	CFont            m_oDispFont;
// Construction
public:
	CCalendar        m_oCalendar;
	CCalendarFrm();
	void DateChange(LONG iYear, LONG iMonth);
	void DateChange2(LONG iYear, LONG iMonth, LONG iDay);
    CRect m_rect;
// Attributes
public:
   void SetDate(WORD iYear, WORD iMonth, WORD iDay)
   {
	   m_oCalendar.SetDate(iYear, iMonth, iDay);
   }
   void GetDate(WORD &iYear, WORD &iMonth, WORD &iDay)
   {
	   m_oCalendar.GetDate(iYear, iMonth, iDay);
   }
   
   CFont * GetDispFont(){return &m_oDispFont;}

public:
	virtual BOOL Create(RECT &rect, CWnd * pParentWnd, UINT nID); // Jeff
	virtual ~CCalendarFrm();

	// Generated message map functions
private:
	void l_PaintToday(CPaintDC &dc);
	void l_PaintBorder(CPaintDC &dc);
	void l_PaintChineseInfo(CPaintDC &dc);
	void l_CreateDispFont();

protected:
	afx_msg void OnPaint();
	afx_msg int  OnCreate(LPCREATESTRUCT lpCreateStruct);
	//}}AFX_MSG
#ifdef VC60
	afx_msg void OnSelChange(LONG iYearMonth, LONG iDay);
#else
	afx_msg LRESULT OnSelChange(WPARAM wp, LPARAM lp);
#endif
	afx_msg void OnMonthChange();
	afx_msg void OnYearChange();
	afx_msg void OnTodayClick();

	DECLARE_MESSAGE_MAP()
};

#endif