/*!
 	@file
 	@brief	ファイルに保存 or ファイルを開くダイアログを表示します。 
 */

#ifndef COpenFileName_h
#define COpenFileName_h

#include"../../Setup/CompileMode.h"
#include"../../Setup/Win32.h"
#include"../Macro.h"
#include"../mstring.h"

#include<boost/smart_ptr.hpp>
#include<string>
#include<commdlg.h>

namespace Maid
{
	class COpenFileName
	{
	public:
		COpenFileName();
		~COpenFileName();

		bool ShowOpenDialog( HWND hWnd, const mstring& Title, const mstring& DefExt, const mstring& DefaultName=mstring() );
		bool ShowSaveDialog( HWND hWnd, const mstring& Title, const mstring& DefExt, const mstring& DefaultName=mstring() );
		void SetDefaultDirectory( const mstring& strDirectry );
		void SetFileFilter( char* szFilter );

		const mstring&	GetFilePath() { return m_FullPath; }
		const mstring&	GetFileName() { return m_FileName; }

	private:
		OPENFILENAME	m_ofn;
		boost::shared_array<char>	m_pFilter;
		MySTL::string	m_DefaultDirectry;
		mstring	m_FullPath;		//　選択されたパス
		mstring	m_FileName;		//　選択されたファイル名

	};
}


#endif
