// Interface of the IAD_ControlView class
/////////////////////////////////////////////////////////////////////////////
#ifndef _IAD_CONTROL_VIEW_HPP_
#define _IAD_CONTROL_VIEW_HPP_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

#include <afxtempl.h>

#include "IAD_Res.h"

class CPA_Actor;

//###########################################################################
typedef struct IAD_stInternalActorDescription
{
	CPA_Actor *pclActor;

	BOOL bTraceIsEnabled;
	long lNumberOfEntries;
	class IAD_EditorTreeNode *pclRoot;

} IAD_td_stInternalActorDescription;
//###########################################################################

#include "IADLstCt.hpp"

class IAD_MyDocument;

//###########################################################################

class IAD_ControlView : public CFormView
{
public:
	IAD_ControlView();
	virtual ~IAD_ControlView();

protected: // create from serialization only
	DECLARE_DYNCREATE(IAD_ControlView)

// Attributes
public:
	//{{AFX_DATA(IAD_ControlView)
	enum { IDD = IDD_IAD_CONTROL };
	IAD_ListControl	m_clListControl;
	//}}AFX_DATA

protected:

private:
	CList<IAD_td_stInternalActorDescription *,IAD_td_stInternalActorDescription *> m_pri_clListOfActors;
	// BEGIN ROMTEAM Cristi Petrescu 98-08-
	BOOL m_bViewAll;
	// END ROMTEAM Cristi Petrescu 98-08-

	// Operations
public:
	void m_pub_fn_vUnselectAllItems();

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

	//Gets the (only existing) document
	IAD_MyDocument* m_pub_fn_pclGetDocument();

	//Constructs the list of Actors
	void m_pub_fn_vBuildActorsList();

	// Displays the list ofActors
	void m_fn_vDisplayActorsList ();
 
protected:

private:
	BOOL m_pri_fn_bActorIsInList(CPA_Actor *_pclSearchedActor);

// Generated message map functions
protected:
	//{{AFX_MSG(IAD_ControlView)
	afx_msg BOOL OnHelpInfo(HELPINFO* pHelpInfo);
	afx_msg void OnCheckIaDebuggerOn();
	afx_msg void OnSize(UINT nType, int cx, int cy);
	afx_msg void OnSelchangedListActors(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnViewAll();
	//}}AFX_MSG

 	afx_msg BOOL OnToolTipNotify(UINT id, NMHDR * pTTTStruct, LRESULT * pResult);


// Implementation
public:
#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
#endif

	DECLARE_MESSAGE_MAP()

friend class IAD_MyDocument;
friend class IAD_ListControl;
};

/////////////////////////////////////////////////////////////////////////////
#endif //_IAD_CONTROL_VIEW_HPP_

