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.
|
|
//========= Copyright � 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
//=============================================================================//
#ifndef MDLVIEWER_H
#define MDLVIEWER_H
#ifdef _WIN32
#pragma once
#endif
#include "sceneimage.h"
#include "tier1/UtlVector.h"
#include "tier1/UtlString.h"
#define IDC_FILE_LOADMODEL 1001
#define IDC_FILE_LOADBACKGROUNDTEX 1002
#define IDC_FILE_LOADGROUNDTEX 1003
#define IDC_FILE_UNLOADGROUNDTEX 1004
#define IDC_FILE_RECENTFILES1 1008
#define IDC_FILE_RECENTFILES2 1009
#define IDC_FILE_RECENTFILES3 1010
#define IDC_FILE_RECENTFILES4 1011
#define IDC_FILE_RECENTFILES5 1012
#define IDC_FILE_RECENTFILES6 1013
#define IDC_FILE_RECENTFILES7 1014
#define IDC_FILE_RECENTFILES8 1015
#define IDC_FILE_EXIT 1016
#define IDC_FILE_REFRESH 1017
#define IDC_FILE_SAVESOUNDSCRIPTCHANGES 1018
#define IDC_FILE_REBUILDSCENESIMAGE 1019
#define IDC_FILE_UPDATESCENESIMAGE 1028
#define IDC_EXPRESSIONS_SAVE 1020
#define IDC_EXPRESSIONS_LOAD 1021
#define IDC_EXPRESSIONS_SAVEAS 1022
#define IDC_EXPRESSIONS_EXPORT 1023
#define IDC_EXPRESSIONS_CLOSE 1024
#define IDC_EXPRESSIONS_CLOSEALL 1025
#define IDC_EXPRESSIONS_NEW 1026
#define IDC_EXPRESSIONS_REDOBITMAPS 1027
// #define IDC_FILE_UPDATESCENESIMAGE 1028
#define IDC_CHOREOSCENE_NEW 1030
#define IDC_CHOREOSCENE_LOAD 1031
#define IDC_CHOREOSCENE_SAVE 1032
#define IDC_CHOREOSCENE_SAVEAS 1033
#define IDC_CHOREOSCENE_CLOSE 1034
#define IDC_CHOREOSCENE_ADDACTOR 1035
#define IDC_FILE_LOADMODEL_STEAM 1036
#define IDC_CHOREOSCENE_SCRUB_UNITS 1037
#define IDC_CHOREOSCENE_LOADNEXT 1038
#define IDC_OPTIONS_COLORBACKGROUND 1101
#define IDC_OPTIONS_COLORGROUND 1102
#define IDC_OPTIONS_COLORLIGHT 1103
#define IDC_OPTIONS_CENTERVIEW 1104
#define IDC_OPTIONS_MAKESCREENSHOT 1105
#define IDC_OPTIONS_DUMP 1106
#define IDC_OPTIONS_CENTERONFACE 1107
#define IDC_OPTIONS_CLEARMODELSOUNDS 1108
#define IDC_OPTIONS_LANGUAGESTART 1150
#define IDC_WINDOW_FIRSTTOOL 1200
#define IDC_WINDOW_LASTTOOL 1231
#define IDC_WINDOW_TILE_HORIZ 1232
#define IDC_WINDOW_TILE_VERT 1233
#define IDC_WINDOW_CASCADE 1234
#define IDC_WINDOW_HIDEALL 1235
#define IDC_WINDOW_SHOWALL 1236
#define IDC_WINDOW_TILE 1237
#define IDC_WINDOW_TAB 1238
#define IDC_MODEL_TAB 1239
#define IDC_GRIDSETTINGS 1240
#define IDC_HELP_GOTOHOMEPAGE 1301
#define IDC_HELP_ABOUT 1302
#define IDC_FOUNDRY_PLAYSCENE 1400
class mxMenuBar; class mxMenu; class MatSysWindow; class ControlPanel; class FlexPanel; class mxStatusWindow; class CChoreoView; class CMDLViewerWorkspace; class CMDLViewerWindowTab; class CMDLViewerModelTab; class CMDLViewerGridSettings;
enum { Action, Size, Timer, Idle, Show, Hide, MouseUp, MouseDown, MouseMove, MouseDrag, KeyUp, KeyDown };
class MDLViewer : public mxWindow, public ISceneCompileStatus { mxMenuBar *mb; mxMenu *menuFile; mxMenu *menuOptions; mxMenu *menuCloseCaptionLanguages; mxMenu *menuWindow; mxMenu *menuHelp; mxMenu *menuEdit; mxMenu *menuExpressions; mxMenu *menuChoreography; mxMenu *menuFoundry;
CMDLViewerWorkspace *workspace; CMDLViewerWindowTab *windowtab; CMDLViewerModelTab *modeltab; CMDLViewerGridSettings *gridsettings;
void loadRecentFiles (); void saveRecentFiles (); void initRecentFiles ();
int m_nCurrentFrame;
public: // CREATORS
MDLViewer (); ~MDLViewer ();
virtual void OnDelete(); virtual bool CanClose();
virtual void UpdateStatus( char const *pchSceneName, bool bQuiet, int nIndex, int nCount );
void OnFileLoaded( char const *pszFile );
// MANIPULATORS
virtual int handleEvent (mxEvent *event); void redraw (); virtual bool PaintBackground( void );
void UpdateWindowMenu( void ); void UpdateLanguageMenu( int currentLanguageId );
void InitModelTab( void ); void InitGridSettings( void );
int GetActiveModelTab( void ); void SetActiveModelTab( int modelindex );
void Refresh( void ); void LoadModelFile( const char *pszFile ); int GetCurrentHitboxSet(void);
virtual bool Closing( void );
void LoadWindowPositions( void ); void SaveWindowPositions( void );
void OnSaveSoundScriptChanges(); void OnRebuildScenesImage(); void OnUpdateScenesImage();
void OnCascade(); void OnTile(); void OnTileHorizontally(); void OnTileVertically();
void OnHideAll(); void OnShowAll();
void Think( float dt );
int GetCurrentFrame( void );
// ACCESSORS
mxMenuBar *getMenuBar () const { return mb; }
void LoadModel_Steam();
void OnVCDSaved( char const *pFullpath ); void OnPlaySceneInFoundry(); private: void DoTile( int x, int y );
void LoadPosition( void ); void SavePosition( void );
bool AreSoundScriptsDirty(); void UpdateTheUpdateScenesImageMenu();
bool m_bAlwaysUpdate; bool m_bOldSoundScriptsDirty; CUtlVector< CUtlString > m_vecDirtyVCDs; };
const char *GetGameDirectory( ); void CreatePath( const char *pPath ); extern MDLViewer *g_MDLViewer; extern char g_appTitle[];
#endif // MDLVIEWER_H
|