#if !defined(AFX_DLGSELECTENTITYATTRS_H__333B51AA_5AE1_4D6C_9F54_9B33F3772E4D__INCLUDED_)
#define AFX_DLGSELECTENTITYATTRS_H__333B51AA_5AE1_4D6C_9F54_9B33F3772E4D__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// DlgSelectEntityAttrs.h : header file
//
#include "resource.h"
#include <apl_gui.h>
#include <afxwin.h>


class CDlgQlLang;

/////////////////////////////////////////////////////////////////////////////
// CDlgSelectEntityAttrs dialog

class CDlgSelectEntityAttrs : public CaplResizableDialog
{
// Construction
public:
	CDlgSelectEntityAttrs(CWnd* pParent = NULL);   // standard constructor
	virtual ~CDlgSelectEntityAttrs();   // standard constructor

// Dialog Data
	//{{AFX_DATA(CDlgSelectEntityAttrs)
	enum { IDD = IDD_DLG_SELECT_ENTITY_ATTRS };
	CButton	m_StGroup;
	CListCtrl	m_ListAttrs;
	CListCtrl	m_ListEntities;
	CComboBox	m_CmbxEntity;
	CComboBox	m_CmbxAttrs;
	CString	m_FindWord;
	int		m_Radio1;
	int		m_Radio2;
	CString m_FilterEntity;
	CString m_FilterAttrib;
	//}}AFX_DATA
	CaplNetStepData *m_data;
	CString m_string;
	CDlgQlLang* m_parent;
	bool m_prev_ent;

	void StartDialog();
	void MakeList();
	void MakeListEnt();
	void MakeListAttrs();
	void ClearMap();

	CaplStrMap m_attr_map;
	CaplStrMap m_ent_map;

	CaplEntity *m_selected_ent;


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

// Implementation
protected:
	// предотвращаем потерю модальности после диалога с бочками из aplSocketTransport
	CaplParentWndProcesser m_pwp;

	// Generated message map functions
	//{{AFX_MSG(CDlgSelectEntityAttrs)
	afx_msg void OnPasteEntityName();
	afx_msg void OnPasteAttrName();
	virtual BOOL OnInitDialog();
	afx_msg void OnSelchangeComboEntity();
	afx_msg void OnPasteEntityDotAttr();
	virtual void OnCancel();
	afx_msg void OnItemchangedListEntities(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnItemchangedListAttrs(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnRadio();
	afx_msg void OnChangeEditParentSelection();
	afx_msg void OnDblclkListEntities(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnDblclkListAttrs(NMHDR* pNMHDR, LRESULT* pResult);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
public:
	afx_msg void OnEnChangeEditFilterEntity();
	afx_msg void OnEnChangeEditFilterAttrib();
};

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

#endif // !defined(AFX_DLGSELECTENTITYATTRS_H__333B51AA_5AE1_4D6C_9F54_9B33F3772E4D__INCLUDED_)
