//========= Copyright Valve Corporation, All rights reserved. ============// // // Purpose: // //============================================================================= #ifndef VMTPICKER_H #define VMTPICKER_H #ifdef _WIN32 #pragma once #endif #include "matsys_controls/baseassetpicker.h" //----------------------------------------------------------------------------- // Forward declarations //----------------------------------------------------------------------------- class CVMTPreviewPanel; namespace vgui { class Splitter; } //----------------------------------------------------------------------------- // Purpose: Base class for choosing raw assets //----------------------------------------------------------------------------- class CVMTPicker : public CBaseAssetPicker { DECLARE_CLASS_SIMPLE( CVMTPicker, CBaseAssetPicker ); public: CVMTPicker( vgui::Panel *pParent, bool bAllowMultiselect = false ); virtual ~CVMTPicker(); private: // Derived classes have this called when the previewed asset changes virtual void OnSelectedAssetPicked( const char *pAssetName ); CVMTPreviewPanel *m_pVMTPreview2D; CVMTPreviewPanel *m_pVMTPreview3D; vgui::Splitter *m_p2D3DSplitter; vgui::Splitter *m_pPreviewSplitter; }; //----------------------------------------------------------------------------- // Purpose: Modal dialog for asset picker //----------------------------------------------------------------------------- class CVMTPickerFrame : public CBaseAssetPickerFrame { DECLARE_CLASS_SIMPLE( CVMTPickerFrame, CBaseAssetPickerFrame ); public: CVMTPickerFrame( vgui::Panel *pParent, const char *pTitle, bool bAllowMultiselect = false ); }; #endif // VMTPICKER_H