// AsHexadecimalEdit.h : header file
//
#if !defined(_ASHEXADECIMALEDIT_H_)
#define _ASHEXADECIMALEDIT_H_

/////////////////////////////////////////////////////////////////////////////
// CAsNumericEdit window

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

// Attributes
public:
	void SetBitCount(long bitCount);
	long GetBitCount() const;

	void SetValue(long value);
	long GetValue();
	
	long Validate();

	CString FormatValue(long value);

// Operations
public:

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CAsNumericEdit)
	public:
	//}}AFX_VIRTUAL

// Implementation
public:
	virtual ~CAsHexadecimalEdit();

	// Generated message map functions
protected:
	//{{AFX_MSG(CAsHexadecimalEdit)
	afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);
	afx_msg void OnKillfocus();
	//}}AFX_MSG

	DECLARE_MESSAGE_MAP();

	long ValidateString(const CString& valueStr);
	long ValidateValue(long value);
	

	long bitCount_;
};

/////////////////////////////////////////////////////////////////////////////

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

#endif // !defined(_ASHEXADECIMALEDIT_H_)
