/*=========================================================================*/
/* CPADgBar.hpp : header file for main dialog bar*/
/* This is a part of the CPA project.*/
/**/
/* Version			1.0*/
/* Creation date	06/06/96*/
/* Revision date*/
/**/
/* (c) Ubi Studio 1996*/
/**/
/* DO NOT MODIFY THAT FILE. IF SOMETHING NEEDS TO BE CHANGE, PLEASE CONTACT */
/* VINCENT GRECO OR CHRISTOPHE BEAUDET.*/
/*=========================================================================*/
 
#ifndef __CPADGBAR_HPP__
#define __CPADGBAR_HPP__
 
/****************************************/
#ifndef CPA_EXPORT
#if defined(CPA_WANTS_IMPORT)
#define CPA_EXPORT __declspec(dllimport)
#elif defined(CPA_WANTS_EXPORT)
#define CPA_EXPORT __declspec(dllexport)
#else
#define CPA_EXPORT
#endif
#endif
/****************************************/
 
#ifdef ACTIVE_EDITOR
#include "CPAPopTb.hpp"
 
/* Begin Mircea Dunka 31 August 1998 Editor Buttons on DialogBar*/
#include <afxtempl.h> /*for the new member m_oListOfEditorButtons*/
/* End Mircea Dunka 31 August 1998 Editor Buttons on DialogBar*/
 
 
/*CPA2 Corneliu Babiuc 20-05-98*/
/*definitions for constraints masks*/
#define CPA_MASK_CONSTRAINTX	1
#define CPA_MASK_CONSTRAINTY	2
#define CPA_MASK_CONSTRAINTZ	4
/*END CPA2 Corneliu Babiuc 20-05-98*/
 
class CPA_BaseObject;
class CPA_Interface;
class DEV_MultiDevice;
class FRMBaseMenu;
class FRMSplitter;
 
class CPA_EXPORT CPA_DialogBar : public CDialogBar
{
 
/* Begin Mircea Dunka 31 August 1998 Editor Buttons on DialogBar*/
public:
	CList<CButton*,CButton*> m_oListOfEditorButtons;
/* End Mircea Dunka 31 August 1998 Editor Buttons on DialogBar*/
 
public:
	CPA_PopUpToolBar	m_oDeviceToolbar;
	CPA_PopUpToolBar	m_oDisplayToolbar;
	CPA_BaseObject		*m_p_oCamera;	
 
	HICON				m_hFullSelIcon;
	HICON				m_hNoFullIcon;
 
	HICON				m_hDeltaSelIcon;
	HICON				m_hNoDeltaIcon;
 
	HICON				m_hLockSelIcon;
	HICON				m_hNoLockIcon;
 
	HICON				m_hTargetIcon;
	HICON				m_hNoTargetIcon;
 
	HICON				m_hZoomIcon;
	HICON				m_hNoZoomIcon;
 
	HICON				m_hMoveIcon;
	HICON				m_hNoMoveIcon;
 
	CToolTipCtrl		m_ToolTip;
 
/* Begin Silviu Simen 13 August 1998 Button for StatusBar*/
	HICON				m_hInsInfIcon;
	HICON				m_hInsCamIcon;
	HICON				m_hCamInfIcon;
/* End Silviu Simen 13 August 1998 Button for StatusBar*/
/* Begin Silviu Simen Select by sector*/
	HICON				m_hSelectBySector;
/* Begin Silviu Simen Select by sector*/
 
public:
	CPA_DialogBar();
	~CPA_DialogBar();
 
	void SetMoveCamera( int state ); /* CPA_Ed_1 FS*/
 
	virtual BOOL Create(CWnd* pParentWnd, UINT nIDTemplate, UINT nStyle, UINT nID);
 
	CPA_Interface * GetInterface (void);
 
	FRMBaseMenu * GetParentFrame();
	DEV_MultiDevice * GetParentMultiDevice();
	FRMSplitter * GetParentSplitter();
 
	void fn_vUpdateAutoTarget	(BOOL bAutoTarget);
	void fn_vUpdateAutoZoom		(BOOL bAutoZoom);
	void fn_vUpdateLockButton	(void);
	void fn_vUpdateFullSelect	(BOOL bSelect);
	void fn_vUpdateDeltaSelect	(BOOL bSelect);
	void fn_vUpdateCenterMode	(int iNewMode);
	void fn_vUpdateAppearance	(long lFlag);
	void fn_vUpdateBVMode		(int iMode);
	void fn_vUpdateAxisMode		(int iDisplayMode);
	void fn_vUpdateConstraints	(int iConstraintsMask);
/* Begin Silviu Simen 13 August 1998 Button for StatusBar*/
	void fn_vUpdateStatusBarMode (int iStatusMode);
/* End Silviu Simen 13 August 1998 Button for StatusBar*/
/* Begin Mircea Dunka 2 Sept 1998 Button for Editor*/
	void ShowWindow(BOOL bStat);
/* End Mircea Dunka 2 Sept 1998 Button for Editor*/
 
protected:
	/* Generated message map functions*/
	/*{{AFX_MSG(CPA_DialogBar)*/
	afx_msg void OnSelChangeComboMode();
	afx_msg	void OnAutoTarget();
	afx_msg	void OnAutoZoom();
	afx_msg void OnFull();
	afx_msg void OnDelta();
	afx_msg void OnLockSelection();
	afx_msg void OnSelChangeComboSector();
	afx_msg void OnDisplayWorld(void);
	afx_msg void OnDisplayVisible(void);
	afx_msg void OnDisplaySector(void);
	afx_msg void OnDisplayFog(void);
	afx_msg void OnDisplayNoFog(void);
	afx_msg void OnTextured(void);
	afx_msg void OnNoTex(void);
	afx_msg void OnWired(void);
	afx_msg void OnWiredNoTex(void);
	afx_msg void OnGrided(void);
	afx_msg void OnGridedNoTex(void);
	afx_msg void OnNoBV(void);
	afx_msg void OnSectorBV(void);
	afx_msg void OnActorBV(void);
	afx_msg void OnObjectBV(void);
	afx_msg void OnNoCenter(void);
	afx_msg void OnMainCenters(void);
	afx_msg void OnAllCenters(void);
	afx_msg void OnNoConstraint(void);
	afx_msg void OnConstraintX(void);
	afx_msg void OnConstraintY(void);
	afx_msg void OnConstraintZ(void);
	afx_msg void OnConstraintXY(void);
	afx_msg void OnConstraintXZ(void);
	afx_msg void OnConstraintYZ(void);
	afx_msg void OnOpenDevice(void);
	afx_msg void OnTileHoriz(void);
	afx_msg void OnTileVert(void);
	afx_msg void OnCascade(void);
	afx_msg void OnSplitHoriz(void);
	afx_msg void OnSplitVert(void);
	afx_msg void OnCommandRange(UINT nID);
	afx_msg BOOL OnToolTipNotify(UINT id, NMHDR *pNMHDR, LRESULT *pResult);
	afx_msg	void OnMoveCamera(); 
	afx_msg void OnDisplayNoAxis(void);
	afx_msg void OnDisplayAxisDownLeft(void);
	afx_msg void OnDisplayAxisDownRight(void);
	BOOL PreTranslateMessage(MSG* pMsg);
	afx_msg void OnStatusBarMode(void);	/* Silviu Simen 13 August 1998 Button for StatusBar*/
	afx_msg void OnSelectBySector(void);	/* Silviu Simen Select by sector*/
	/*}}AFX_MSG*/
	DECLARE_MESSAGE_MAP()
};
 
#endif /* ACTIVE_EDITOR*/
#endif /* __CPADGBAR_HPP__*/
