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 LOADCOMMENTARYDIALOG_H
#define LOADCOMMENTARYDIALOG_H
#ifdef _WIN32
#pragma once
#endif
#include "vgui_controls/Frame.h"
#include "filesystem.h"
#include "utlvector.h"
#define COMMENTARY_MAPFILENAME_MAX_LEN MAX_PATH
#define COMMENTARY_MAPNAME_MAX_LEN 32
#define COMMENTARY_DESCRIP_MAX_LEN 512
#define MAX_LISTED_COMMENTARY_ITEMS 32
struct CommentaryItem_t { char szMapFileName[COMMENTARY_MAPFILENAME_MAX_LEN]; // file location of the map
char szMapName[COMMENTARY_MAPNAME_MAX_LEN]; // clean name of the map, eg "dod_kalt"
char szPrintName[COMMENTARY_MAPNAME_MAX_LEN]; // printable name "Kalt"
char szDescription[COMMENTARY_DESCRIP_MAX_LEN]; // track description "This map is fun, and people like it!"
//int iChannel; // TODO: multiple channels within a single map, loaded into separate commentary tracks
};
//-----------------------------------------------------------------------------
// Purpose: Base class for save & load game dialogs
//-----------------------------------------------------------------------------
class CLoadCommentaryDialog : public vgui::Frame { DECLARE_CLASS_SIMPLE( CLoadCommentaryDialog, vgui::Frame );
public: CLoadCommentaryDialog( vgui::Panel *parent );
protected: CUtlVector<CommentaryItem_t> m_CommentaryItems; vgui::PanelListPanel *m_pGameList;
virtual void OnCommand( const char *command ); virtual void OnKeyCodePressed( vgui::KeyCode code );
void ScanCommentaryFiles(); void CreateCommentaryItemList(); int GetSelectedItemIndex(); void AddCommentaryItemToList( int saveIndex );
void ParseCommentaryFile( char const *pszFileName, char const *pszShortName ); static int __cdecl SaveGameSortFunc( const void *lhs, const void *rhs );
private: MESSAGE_FUNC( OnPanelSelected, "PanelSelected" ); };
#endif // LOADCOMMENTARYDIALOG_H
|