hl2_src-leak-2017/src/public/matsys_controls/vmtpicker.h

62 lines
1.7 KiB
C++

//========= 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