Team Fortress 2 Source Code as on 22/4/2020
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.
|
|
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
//=============================================================================
#ifndef MDLSEQUENCEPICKER_H
#define MDLSEQUENCEPICKER_H
#ifdef _WIN32
#pragma once
#endif
#include "vgui_controls/ImageList.h"
#include "vgui_controls/Frame.h"
#include "datacache/imdlcache.h"
#include "matsys_controls/mdlpanel.h"
//-----------------------------------------------------------------------------
// Forward declarations
//-----------------------------------------------------------------------------
namespace vgui { class Splitter; class Button; }
class CGameFileTreeView;
//-----------------------------------------------------------------------------
// Purpose: Main app window
//-----------------------------------------------------------------------------
class CMDLSequencePicker : public vgui::EditablePanel { DECLARE_CLASS_SIMPLE( CMDLSequencePicker, vgui::EditablePanel ); public: CMDLSequencePicker( vgui::Panel *pParent ); virtual ~CMDLSequencePicker();
// overridden frame functions
virtual void Activate(); virtual void OnClose(); virtual void PerformLayout(); virtual void OnTick();
char const *GetModelName(); char const *GetSequenceName(); int GetSequenceNumber();
private: void SelectMDL( const char *pMDLName ); void RefreshFileList(); void RefreshActivitiesAndSequencesList();
// Plays the selected activity
void PlaySelectedActivity( );
// Plays the selected sequence
void PlaySelectedSequence( );
MESSAGE_FUNC( OnFileSelected, "TreeViewItemSelected" ); MESSAGE_FUNC_PTR_CHARPTR( OnTextChanged, "TextChanged", Panel, text ); MESSAGE_FUNC_PARAMS( OnItemSelected, "ItemSelected", kv ); MESSAGE_FUNC( OnPageChanged, "PageChanged" );
// changes
// MESSAGE_FUNC_INT( CloakFolder, "CloakFolder", item );
// MESSAGE_FUNC_INT( OpenFileForEdit, "EditFile", item );
// MESSAGE_FUNC_INT( OpenFileForDelete, "DeleteFile", item );
CMDLPanel *m_pMDLPreview; vgui::ComboBox *m_pFilterList; CGameFileTreeView *m_pFileTree; vgui::ImageList m_Images; vgui::Splitter* m_pMDLSplitter; vgui::Splitter* m_pSequenceSplitter; vgui::PropertySheet *m_pViewsSheet; vgui::PropertyPage *m_pSequencesPage; vgui::PropertyPage *m_pActivitiesPage;
vgui::ListPanel *m_pSequencesList; vgui::ListPanel *m_pActivitiesList;
MDLHandle_t m_hSelectedMDL;
friend class CMDLSequencePickerFrame; };
//-----------------------------------------------------------------------------
// Model sequence picker frame
//-----------------------------------------------------------------------------
class CMDLSequencePickerFrame : public vgui::Frame { DECLARE_CLASS_SIMPLE( CMDLSequencePickerFrame, vgui::Frame ); public: CMDLSequencePickerFrame( vgui::Panel *parent, char const *title ); virtual ~CMDLSequencePickerFrame();
virtual void PerformLayout();
protected:
virtual void OnTick();
MESSAGE_FUNC( OnOK, "OnOK" ); MESSAGE_FUNC( OnCancel, "OnCancel" );
private: CMDLSequencePicker *m_pMDLSequencePicker;
vgui::Button *m_pOK; vgui::Button *m_pCancel; };
#endif // MDLSEQUENCEPICKER_H
|