mirror of
https://github.com/nillerusr/source-engine.git
synced 2024-12-22 22:27:05 +00:00
93 lines
2.7 KiB
C++
93 lines
2.7 KiB
C++
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose:
|
|
//
|
|
// $NoKeywords: $
|
|
//=============================================================================
|
|
|
|
#ifndef DMECOMBINATIONSYSTEMEDITORPANEL_H
|
|
#define DMECOMBINATIONSYSTEMEDITORPANEL_H
|
|
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
#include "tier1/utlvector.h"
|
|
#include "vgui_controls/Frame.h"
|
|
#include "datamodel/dmehandle.h"
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Forward declarations
|
|
//-----------------------------------------------------------------------------
|
|
class CDmeCombinationControlsPanel;
|
|
class CDmeCombinationDominationRulesPanel;
|
|
class CDmeCombinationOperator;
|
|
class CDmeElementPanel;
|
|
|
|
namespace vgui
|
|
{
|
|
class PropertySheet;
|
|
class PropertyPage;
|
|
class Button;
|
|
}
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Dag editor panel
|
|
//-----------------------------------------------------------------------------
|
|
class CDmeCombinationSystemEditorPanel : public vgui::EditablePanel
|
|
{
|
|
DECLARE_CLASS_SIMPLE( CDmeCombinationSystemEditorPanel, vgui::EditablePanel );
|
|
|
|
public:
|
|
// constructor, destructor
|
|
CDmeCombinationSystemEditorPanel( vgui::Panel *pParent, const char *pName );
|
|
virtual ~CDmeCombinationSystemEditorPanel();
|
|
|
|
// Sets the current scene + animation list
|
|
void SetDmeElement( CDmeCombinationOperator *pComboSystem );
|
|
CDmeCombinationOperator *GetDmeElement();
|
|
|
|
private:
|
|
// Called when the selection changes moves
|
|
MESSAGE_FUNC( OnPageChanged, "PageChanged" );
|
|
MESSAGE_FUNC_PARAMS( OnDmeElementChanged, "DmeElementChanged", kv );
|
|
|
|
vgui::PropertySheet *m_pEditorSheet;
|
|
vgui::PropertyPage *m_pControlsPage;
|
|
vgui::PropertyPage *m_pDominationRulesPage;
|
|
vgui::PropertyPage *m_pPropertiesPage;
|
|
CDmeCombinationControlsPanel *m_pControlsPanel;
|
|
CDmeCombinationDominationRulesPanel *m_pDominationRulesPanel;
|
|
CDmeElementPanel *m_pPropertiesPanel;
|
|
};
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Frame for combination system
|
|
//-----------------------------------------------------------------------------
|
|
class CDmeCombinationSystemEditorFrame : public vgui::Frame
|
|
{
|
|
DECLARE_CLASS_SIMPLE( CDmeCombinationSystemEditorFrame, vgui::Frame );
|
|
|
|
public:
|
|
CDmeCombinationSystemEditorFrame( vgui::Panel *pParent, const char *pTitle );
|
|
~CDmeCombinationSystemEditorFrame();
|
|
|
|
// Sets the current scene + animation list
|
|
void SetCombinationOperator( CDmeCombinationOperator *pComboSystem );
|
|
|
|
// Inherited from Frame
|
|
virtual void OnCommand( const char *pCommand );
|
|
|
|
private:
|
|
MESSAGE_FUNC( OnDmeElementChanged, "DmeElementChanged" );
|
|
|
|
CDmeCombinationSystemEditorPanel *m_pEditor;
|
|
vgui::Button *m_pOpenButton;
|
|
vgui::Button *m_pCancelButton;
|
|
};
|
|
|
|
|
|
#endif // DMECOMBINATIONSYSTEMEDITORPANEL_H
|