#if !defined(__RV_PATT_CAL_H_INCLUDED_)
#define      __RV_PATT_CAL_H_INCLUDED_

#include "CaliX.h"
#include "areacal.h"


class CALIX_API CPattCal :	public CAreaCal
{
public:
	CPattCal(void);
	~CPattCal(void);

	//manual alignment reference line
	enum
	{
		PC_RL_NONE = -1,
		PC_RL_VERT    = RV_DIR_VERT,
		PC_RL_HORI    = RV_DIR_HORI,
		PC_RL_BOTH    = RV_DIR_BOTH,
	};
	 
	void SetReferenceType(int type)
	{
		m_nReferType =type;
		RV_UC_NOTIFY_REDRAW(RV_REDRAW_ALL) ;
	}

	int GetReferenceType(){ return m_nReferType; }

	virtual BOOL Serialize(HANDLE device, BOOL bIn );
	virtual CUCObj* Clone(  CUCObj *twin) ;

	virtual void Show(CDelegate* pDelegate, int mode, BOOL bForce);
	 
public:
	virtual void  ShowExtender(CDelegate* pDelegate,CLeadMark* pMark );
	virtual void  ShowGrabber(CDelegate* pDelegate, CLeadMark* pMark );


protected:
	int m_nReferType;
};






#endif //__RV_PATT_CAL_H_INCLUDED_