diff options
Diffstat (limited to 'utils/scenemanager/soundbrowser.h')
| -rw-r--r-- | utils/scenemanager/soundbrowser.h | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/utils/scenemanager/soundbrowser.h b/utils/scenemanager/soundbrowser.h new file mode 100644 index 0000000..5b3b067 --- /dev/null +++ b/utils/scenemanager/soundbrowser.h @@ -0,0 +1,89 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: +// +//=============================================================================// + +#ifndef SOUNDBROWSER_H +#define SOUNDBROWSER_H +#ifdef _WIN32 +#pragma once +#endif + +#include "mxtk/mxListView.h" +#include "commctrl.h" +#include "utlsymbol.h" + +class CWorkspace; +class CProject; +class CScene; +class CVCDFile; +class CSoundEntry; + +class CSoundList; +class CWorkspaceManager; +class CSoundFilterTab; +class COptionsWindow; + + +class CSoundBrowser : public mxWindow +{ + typedef mxWindow BaseClass; +public: + + CSoundBrowser( mxWindow *parent, CWorkspaceManager *manager, int id ); + + virtual int handleEvent( mxEvent *event ); + virtual void OnDelete(); + + CWorkspaceManager *GetManager(); + + void RepopulateTree(); + + void BuildSelectionList( CUtlVector< CSoundEntry * >& selected ); + + void OnPlay(); + + void JumpToItem( CSoundEntry *se ); + + void OnSearch(); + +private: + + char const *GetSearchString(); + + void OnShowInWaveBrowser(); + void OnSoundProperties(); + void OnAddSound(); + void OnRemoveSound(); + void OnGetSentence(); + void PopulateTree( bool voiceonly, char const *scriptonly ); + + void ShowContextMenu( void ); + + void LoadAllSounds(); + void RemoveAllSounds(); + + + CSoundList *m_pListView; + + enum + { + NUM_BITMAPS = 8, + }; + + CWorkspaceManager *m_pManager; + + CUtlVector< CSoundEntry * > m_AllSounds; + CUtlSymbolTable m_ScriptTable; + + CUtlVector< CUtlSymbol > m_Scripts; + + CSoundFilterTab *m_pFilter; + COptionsWindow *m_pOptions; + + CUtlVector< CSoundEntry * > m_CurrentSelection; +}; + + +#endif // SOUNDBROWSER_H |