Team Fortress 2 Source Code as on 22/4/2020
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 Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#include "DemoPage.h"
#include <VGUI/IVGui.h>
#include <vgui_controls/Controls.h>
#include <Keyvalues.h>
#include <vgui_controls/FileOpenDialog.h>
using namespace vgui;
class FileOpenDemo: public DemoPage { public: FileOpenDemo(Panel *parent, const char *name); ~FileOpenDemo();
void SetVisible(bool status); private: void OnFileSelected(const char *fullpath);
DHANDLE<FileOpenDialog> m_hFileDialog;
DECLARE_PANELMAP(); };
//-----------------------------------------------------------------------------
// Purpose: Constructor
//-----------------------------------------------------------------------------
FileOpenDemo::FileOpenDemo(Panel *parent, const char *name) : DemoPage(parent, name) { }
//-----------------------------------------------------------------------------
// Purpose: Destructor
//-----------------------------------------------------------------------------
FileOpenDemo::~FileOpenDemo() { }
//-----------------------------------------------------------------------------
// Purpose: When we make this this demo page visible we make the dialog visible.
//-----------------------------------------------------------------------------
void FileOpenDemo::SetVisible(bool status) { if (status) { if (!m_hFileDialog.Get()) { // Pop up the dialog
FileOpenDialog *pFileDialog = new FileOpenDialog (NULL, "Find the TestFile", true); m_hFileDialog = pFileDialog; m_hFileDialog->AddActionSignalTarget(this); } m_hFileDialog->DoModal(false); } }
//-----------------------------------------------------------------------------
// Purpose: When a file is selected print out its full path in the debugger
//-----------------------------------------------------------------------------
void FileOpenDemo::OnFileSelected(const char *fullpath) { ivgui()->DPrintf("File selected\n"); ivgui()->DPrintf(fullpath); ivgui()->DPrintf("\n"); }
MessageMapItem_t FileOpenDemo::m_MessageMap[] = { MAP_MESSAGE_CONSTCHARPTR(FileOpenDemo, "FileSelected", OnFileSelected, "fullpath"), };
IMPLEMENT_PANELMAP(FileOpenDemo, DemoPage);
Panel* FileOpenDemo_Create(Panel *parent) { return new FileOpenDemo(parent, "FileOpenDialogDemo"); }
|