#if !defined(AFX_TAGLISTDLG_H__D588AF23_E1E9_11D2_A5F1_00902712C9AE__INCLUDED_)
#define AFX_TAGLISTDLG_H__D588AF23_E1E9_11D2_A5F1_00902712C9AE__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// TagListDlg.h : header file
//
#include "GameEdHeaders.hpp"

/////////////////////////////////////////////////////////////////////////////
// CTagListDlg dialog
class ListNode;

class ListNode	
{
public:
	ListNode(CString text, void *data_ptr = NULL):
	  nodeText(text),
	  data(data_ptr)
	  {};
	ListNode():
	  data(NULL)
	  {};

	CString 
		nodeText;
	void
		*data;
};
class CTagListDlg : public CDialog
{
// Construction
public:
	CTagListDlg(CWnd* pParent = NULL);   // standard constructor

// Dialog Data
	//{{AFX_DATA(CTagListDlg)
	enum { IDD = IDD_TAGLISTDLG };
	CListBox	m_ListCtrl;
	CTabCtrl	m_TabCtrl;
	//}}AFX_DATA

	bool
		isCreated;
	bool
		isTabBoxDirty;
	
// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CTagListDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:

	// Generated message map functions
	//{{AFX_MSG(CTagListDlg)
	afx_msg void OnDblclkListctrl();
	afx_msg void OnSize(UINT nType, int cx, int cy);
	virtual BOOL OnInitDialog();
	afx_msg void OnSelchangeTabctrl(NMHDR* pNMHDR, LRESULT* pResult);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

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

#endif // !defined(AFX_TAGLISTDLG_H__D588AF23_E1E9_11D2_A5F1_00902712C9AE__INCLUDED_)
