Counter Strike : Global Offensive Source Code
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

82 lines
2.5 KiB

//====== Copyright © 1996-2005, Valve Corporation, All rights reserved. =======
//
// Purpose:
//
//=============================================================================
#ifndef BASEANIMATIONSETEDITOR_H
#define BASEANIMATIONSETEDITOR_H
#ifdef _WIN32
#pragma once
#endif
#include "vgui_controls/EditablePanel.h"
#include "vgui_controls/ImageList.h"
#include "dme_controls/RecordingState.h"
#include "dme_controls/BaseAnimationSetEditorController.h"
#include "tier1/utlvector.h"
//-----------------------------------------------------------------------------
// Forward declarations
//-----------------------------------------------------------------------------
struct LogPreview_t;
class CDmeAnimationSet;
class CDmeAnimationList;
class CDmeChannelsClip;
class CBaseAnimSetControlGroupPanel;
class CBaseAnimSetPresetFaderPanel;
class CBaseAnimSetAttributeSliderPanel;
//-----------------------------------------------------------------------------
// Base class for the panel for editing animation sets
//-----------------------------------------------------------------------------
class CBaseAnimationSetEditor : public vgui::EditablePanel
{
DECLARE_CLASS_SIMPLE( CBaseAnimationSetEditor, vgui::EditablePanel );
public:
enum EAnimSetLayout_t
{
LAYOUT_SPLIT = 0,
LAYOUT_VERTICAL,
LAYOUT_HORIZONTAL,
};
CBaseAnimationSetEditor( vgui::Panel *parent, char const *panelName, CBaseAnimationSetControl *pAnimationSetController );
virtual ~CBaseAnimationSetEditor();
virtual void CreateToolsSubPanels();
virtual void ChangeLayout( EAnimSetLayout_t newLayout );
virtual void OpenTreeViewContextMenu( KeyValues *pItemData );
CBaseAnimationSetControl *GetController();
CBaseAnimSetControlGroupPanel *GetControlGroup();
CBaseAnimSetPresetFaderPanel *GetPresetFader();
CBaseAnimSetAttributeSliderPanel *GetAttributeSlider();
void ChangeAnimationSetClip( CDmeFilmClip *pFilmClip );
void OnControlsAddedOrRemoved();
protected:
virtual void ApplySchemeSettings( vgui::IScheme *pScheme );
MESSAGE_FUNC_PARAMS( OnOpenContextMenu, "OpenContextMenu", params );
MESSAGE_FUNC_INT( OnChangeLayout, "OnChangeLayout", value );
protected:
EAnimSetLayout_t m_Layout;
vgui::DHANDLE< vgui::Splitter > m_Splitter;
vgui::DHANDLE< CBaseAnimSetControlGroupPanel > m_hControlGroup;
vgui::DHANDLE< CBaseAnimSetPresetFaderPanel > m_hPresetFader;
vgui::DHANDLE< CBaseAnimSetAttributeSliderPanel > m_hAttributeSlider;
vgui::DHANDLE< vgui::Menu > m_hContextMenu;
CBaseAnimationSetControl *m_pController;
};
#endif // BASEANIMATIONSETEDITOR_H