summaryrefslogtreecommitdiff
path: root/utils/scenemanager/wavebrowser.h
diff options
context:
space:
mode:
Diffstat (limited to 'utils/scenemanager/wavebrowser.h')
-rw-r--r--utils/scenemanager/wavebrowser.h102
1 files changed, 102 insertions, 0 deletions
diff --git a/utils/scenemanager/wavebrowser.h b/utils/scenemanager/wavebrowser.h
new file mode 100644
index 0000000..b21f7e9
--- /dev/null
+++ b/utils/scenemanager/wavebrowser.h
@@ -0,0 +1,102 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+//=============================================================================//
+
+#ifndef WAVEBROWSER_H
+#define WAVEBROWSER_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include "mxtk/mxListView.h"
+#include "commctrl.h"
+#include "utldict.h"
+
+class CWorkspace;
+class CProject;
+class CScene;
+class CVCDFile;
+class CWaveFile;
+
+class CWaveList;
+class CWorkspaceManager;
+class CWaveFilterTab;
+class CWaveOptionsWindow;
+class CWaveFileTree;
+
+class CWaveBrowser : public mxWindow
+{
+ typedef mxWindow BaseClass;
+public:
+
+ CWaveBrowser( mxWindow *parent, CWorkspaceManager *manager, int id );
+
+ virtual int handleEvent( mxEvent *event );
+ virtual void OnDelete();
+
+ CWorkspaceManager *GetManager();
+
+ void RepopulateTree();
+
+ void BuildSelectionList( CUtlVector< CWaveFile * >& selected );
+
+ void OnPlay();
+
+ void JumpToItem( CWaveFile *wav );
+
+ CWaveFile *FindEntry( char const *wavname, bool jump = false );
+
+
+ int GetSoundCount() const;
+ CWaveFile *GetSound( int index );
+
+ void OnSearch();
+
+private:
+
+ char const *GetSearchString();
+
+ bool LoadWaveFilesInDirectory( CUtlDict< CWaveFile *, int >& soundlist, char const* pDirectoryName, int nDirectoryNameLen );
+ bool InitDirectoryRecursive( CUtlDict< CWaveFile *, int >& soundlist, char const* pDirectoryName );
+
+ void OnWaveProperties();
+ void OnEnableVoiceDucking();
+ void OnDisableVoiceDucking();
+ void OnCheckout();
+ void OnCheckin();
+
+ void OnImportSentence();
+ void OnExportSentence();
+
+ void OnGetSentence();
+
+ void PopulateTree( char const *subdirectory, bool textsearch = false );
+
+ void ShowContextMenu( void );
+
+ void LoadAllSounds();
+ void RemoveAllSounds();
+
+ CWaveList *m_pListView;
+
+ enum
+ {
+ NUM_BITMAPS = 6,
+ };
+
+ CWorkspaceManager *m_pManager;
+
+ CUtlDict< CWaveFile *, int > m_AllSounds;
+ CUtlSymbolTable m_ScriptTable;
+
+ CUtlVector< CUtlSymbol > m_Scripts;
+
+ CWaveOptionsWindow *m_pOptions;
+ CWaveFileTree *m_pFileTree;
+
+ CUtlVector< CWaveFile * > m_CurrentSelection;
+};
+
+#endif // WAVEBROWSER_H