#if !defined(AFX_TREECHOOSE_H__457D1FA5_31D5_47B7_9029_DECD65A98F4D__INCLUDED_)
#define AFX_TREECHOOSE_H__457D1FA5_31D5_47B7_9029_DECD65A98F4D__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// TreeChoose.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CTreeChoose dialog

class CTreeChoose : public CDialog
{
// Construction
public:
	CTreeChoose(char* DialogName, CWnd* pParent = NULL);   // standard constructor

// Dialog Data
	//{{AFX_DATA(CTreeChoose)
	enum { IDD = IDD_TREEVIEW };
	//}}AFX_DATA
	CTreeCtrl	m_TreeView;
	CImageList	m_ImageList;
	char*		m_DialogName;
	structVIA**	m_pVIA;
	int			m_VIACount;
	DWORD		m_Selected;
	BOOL		m_SelGroup;

	void FillTree(structVIA** pVIA, int count, HTREEITEM hParentItem = TVI_ROOT);
	void SetTreeArray(structVIA** pVIA, int count);

// Overrides
	//{{AFX_VIRTUAL(CTreeCoose)
	public:
	virtual int DoModal();
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:

	//{{AFX_MSG(CTreeChoose)
	virtual void OnCancel();
	virtual void OnOK();
	virtual BOOL OnInitDialog();
	afx_msg void OnItemexpandedTree(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnDblclkTree(NMHDR* pNMHDR, LRESULT* pResult);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}

#endif // !defined(AFX_TREECHOOSE_H__457D1FA5_31D5_47B7_9029_DECD65A98F4D__INCLUDED_)
