www.pudn.com > 44757463.rar > ColorPicker.h


#if !defined(AFX_COLORPICKER_H__52F28BCF_DBD4_49A1_8293_1B7FBFB8735D__INCLUDED_) 
#define AFX_COLORPICKER_H__52F28BCF_DBD4_49A1_8293_1B7FBFB8735D__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
 
class CColorPicker : public CButton 
{ 
// Construction 
public: 
	CColorPicker(); 
	virtual ~CColorPicker(); 
 
// Attributes 
protected: 
   CRect m_rectFill,m_rectSel; 
// Operations 
public: 
	void		SetColor(COLORREF ref); 
	void		SetBuddy(HWND hWnd); 
	COLORREF	GetColor(); 
	void		GetColor(CString& strColor); 
	void        SetFillRect(CRect rect); 
	void        SetFillRect(int left,int top,int right,int bottom); 
	CRect       GetFillRect(); 
	void        SetSelRect(CRect rect); 
	void        SetSelRect(int left,int top,int right,int bottom); 
	CRect       GetSelRect(); 
//	CPoint m_OldPos; 
	//CPoint m_CurrentPos; 
 
// Overrides 
	// ClassWizard generated virtual function overrides 
	//{{AFX_VIRTUAL(CColorPicker) 
	protected: 
	virtual LRESULT DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam); 
	//}}AFX_VIRTUAL 
 
// Implementation 
private: 
	void		DestroyPaletteWindow(); 
	BOOL		CreatePaletteWindow(); 
	static	LONG FAR PASCAL PaletteWndProc(HWND hWnd, UINT nMsg, WPARAM wParam, LPARAM lParam); 
 
	// Generated message map functions 
protected: 
	//{{AFX_MSG(CColorPicker) 
	afx_msg void OnLButtonDown(UINT nFlags, CPoint point); 
	afx_msg void OnLButtonUp(UINT nFlags, CPoint point); 
	afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message); 
	afx_msg void OnPaint(); 
	afx_msg void OnMouseMove(UINT nFlags, CPoint point); 
	afx_msg LRESULT OnMouseLeave(WPARAM wParam, LPARAM lParam); 
	afx_msg LRESULT OnMouseHover(WPARAM wParam, LPARAM lParam);	 
	afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point); 
	//}}AFX_MSG 
 
	DECLARE_MESSAGE_MAP() 
private: 
	HWND		m_hwndBuddy; 
	COLORREF	m_CurrentColor; 
	HWND		m_hPaletteWnd; 
	BOOL		m_bPaletteWndActive; 
	HCURSOR		m_hCursorStraw; 
    BOOL        m_bMouseDown; 
}; 
 
///////////////////////////////////////////////////////////////////////////// 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Visual C++ will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_COLORPICKER_H__52F28BCF_DBD4_49A1_8293_1B7FBFB8735D__INCLUDED_)