81 lines
2.2 KiB
C++
81 lines
2.2 KiB
C++
// ComboOXTree.h: interface for the CComboOXTree class.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////
|
|
|
|
#if !defined(AFX_COMBOOXTREE_H__35306228_1C37_11D4_AD1F_0050BAAB46B1__INCLUDED_)
|
|
#define AFX_COMBOOXTREE_H__35306228_1C37_11D4_AD1F_0050BAAB46B1__INCLUDED_
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
|
|
#include "OXTreeCtrl.h"
|
|
#include "OXComboPickerCtrl.h"
|
|
|
|
class CComboOXTree : public COXTreeCtrl , public COXComboDropDown
|
|
{
|
|
public:
|
|
CComboOXTree();
|
|
virtual ~CComboOXTree();
|
|
protected:
|
|
COXDropDownContainer m_container;
|
|
COXComboPickerCtrl* m_pCombo;
|
|
|
|
// helper rectangle for flicker-free control
|
|
CRect m_rectValid;
|
|
|
|
// last selected item
|
|
HTREEITEM m_hLastSelectedItem;
|
|
|
|
|
|
public:
|
|
void ForwardMouseMessage(UINT message, UINT nFlags, CPoint point);
|
|
|
|
protected:
|
|
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
|
|
void OnLButtonDblClk( UINT nFlags, CPoint point );
|
|
|
|
|
|
public:
|
|
virtual void SetOwnerCombo(COXComboPickerCtrl* pCombo) { m_pCombo=pCombo; }
|
|
inline COXComboPickerCtrl* GetOwnerCombo() const { return m_pCombo; }
|
|
|
|
virtual BOOL CanSelectItem(HTREEITEM hItem);
|
|
|
|
virtual COXDropDownContainer* GetContainer() { return &m_container; }
|
|
virtual CWnd* GetWindow() { return this; }
|
|
|
|
virtual void ShowDropDown(BOOL bShowIt=TRUE);
|
|
|
|
virtual void GetDroppedControlRect(LPRECT lprect) const;
|
|
virtual BOOL GetDroppedState() const;
|
|
virtual CRect GetBestRect();
|
|
virtual int GetItemHeight();
|
|
|
|
virtual BOOL IsThereSelectedItem();
|
|
virtual CImageList* GetSelectedItemImage();
|
|
virtual CString GetSelectedItemText();
|
|
virtual CFont* GetSelectedItemFont();
|
|
virtual COLORREF GetSelectedItemTextColor();
|
|
|
|
|
|
virtual void ResetContent();
|
|
|
|
virtual BOOL NeedFocus() const { return TRUE; }
|
|
|
|
virtual void OnAttachToComboPicker();
|
|
virtual void OnChangeMinMaxWidthHeight();
|
|
virtual void OnChangeOwnerComboSize();
|
|
|
|
protected:
|
|
virtual void AutoResize();
|
|
virtual LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam);
|
|
|
|
virtual void OnKillFocus(CWnd* pNewWnd);
|
|
virtual void OnLButtonDown(UINT nFlags, CPoint point);
|
|
virtual void OnMouseMove(UINT nFlags, CPoint point);
|
|
virtual void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
|
|
};
|
|
|
|
#endif // !defined(AFX_COMBOOXTREE_H__35306228_1C37_11D4_AD1F_0050BAAB46B1__INCLUDED_)
|