73 lines
1.9 KiB
C++
73 lines
1.9 KiB
C++
////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Crytek Engine Source File.
|
|
// Copyright (C), Crytek Studios, 2002.
|
|
// -------------------------------------------------------------------------
|
|
// File name: PickEntitiesPanel.h
|
|
// Version: v1.00
|
|
// Created: 24/10/2002 by Lennert.
|
|
// Compilers: Visual C++.NET
|
|
// Description:
|
|
// -------------------------------------------------------------------------
|
|
// History:
|
|
//
|
|
////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef __PickEntitiesPanel_h__
|
|
#define __PickEntitiesPanel_h__
|
|
#pragma once
|
|
|
|
#include "Controls\PickObjectButton.h"
|
|
#include "Controls\ToolButton.h"
|
|
|
|
class CBaseObject;
|
|
|
|
struct IPickEntitesOwner
|
|
{
|
|
virtual void AddEntity(CBaseObject *pEntity) = 0;
|
|
virtual CBaseObject* GetEntity(int nIdx) = 0;
|
|
virtual int GetEntityCount() = 0;
|
|
virtual void RemoveEntity(int nIdx) = 0;
|
|
};
|
|
|
|
// CShapePanel dialog
|
|
class CPickEntitiesPanel : public CDialog, public IPickObjectCallback
|
|
{
|
|
DECLARE_DYNAMIC(CPickEntitiesPanel)
|
|
|
|
public:
|
|
CPickEntitiesPanel( CWnd* pParent = NULL); // standard constructor
|
|
virtual ~CPickEntitiesPanel();
|
|
|
|
// Dialog Data
|
|
enum { IDD = IDD_PANEL_PICKENTITIES };
|
|
|
|
void SetOwner(IPickEntitesOwner *pOwner);
|
|
IPickEntitesOwner* GetOwner() const { return m_pOwner; }
|
|
|
|
protected:
|
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
|
virtual BOOL OnInitDialog();
|
|
afx_msg void OnBnClickedSelect();
|
|
afx_msg void OnBnClickedRemove();
|
|
afx_msg void OnLbnDblclkEntities();
|
|
|
|
virtual void OnOK() {};
|
|
virtual void OnCancel() {};
|
|
|
|
// Ovverriden from IPickObjectCallback
|
|
virtual void OnPick( CBaseObject *picked );
|
|
virtual bool OnPickFilter( CBaseObject *picked );
|
|
virtual void OnCancelPick();
|
|
|
|
DECLARE_MESSAGE_MAP()
|
|
|
|
void ReloadEntities();
|
|
|
|
IPickEntitesOwner *m_pOwner;
|
|
CPickObjectButton m_pickButton;
|
|
CCustomButton m_selectButton;
|
|
CColoredListBox m_entities;
|
|
};
|
|
|
|
#endif // __PickEntitiesPanel_h__
|