Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
91 lines
2.8 KiB
C++
91 lines
2.8 KiB
C++
/*
|
|
Original code by : Mihai Filimon
|
|
Modifications by S. Sridhar
|
|
1. Added a edit control where the user can type in the path
|
|
2. If the path typed in the edit ctrl does not exist then the
|
|
user will be propmted as to whether he/she wants the path
|
|
to be created
|
|
3. Setting the flag bShowFilesInDir to TRUE will result in all
|
|
the files in the current folder to be displayed in the dialog
|
|
4. If u don't want to display all the files then u can use the
|
|
file filter to display the file types u want to display
|
|
5. Calling API SetTitle with the desired title will set the Title
|
|
of the dialog. This API has to be invoked before DoModal is called
|
|
6. User can pass the Initial Folder to be displayed in the constructor
|
|
of CSelectFolder
|
|
|
|
Usage Examples
|
|
--------------
|
|
|
|
CSelectFolderDialog oSelectFolderDialog(FALSE, NULL,
|
|
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
|
|
NULL, NULL);
|
|
|
|
CSelectFolderDialog oSelectFolderDialog(FALSE, "c:\\my documents",
|
|
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
|
|
NULL, NULL);
|
|
|
|
CSelectFolderDialog oSelectFolderDialog(TRUE, "c:\\my documents",
|
|
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
|
|
NULL, NULL);
|
|
|
|
CSelectFolderDialog oSelectFolderDialog(TRUE, "c:\\my documents",
|
|
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
|
|
"Microsoft Word Documents (*.doc)|*.doc|Microsoft Excel Worksheets (*.xls)|*.xls|", NULL);
|
|
|
|
CSelectFolderDialog oSelectFolderDialog(TRUE, "c:\\my documents",
|
|
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
|
|
"HTML Files (*.html, *.htm)|*.html;*.htm||", NULL);
|
|
*/
|
|
|
|
|
|
#if !defined(AFX_MYFD_H__F9CB9441_F91B_11D1_8610_0040055C08D9__INCLUDED_)
|
|
#define AFX_MYFD_H__F9CB9441_F91B_11D1_8610_0040055C08D9__INCLUDED_
|
|
|
|
#if _MSC_VER >= 1000
|
|
#pragma once
|
|
#endif // _MSC_VER >= 1000
|
|
//
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CSelectFolderDialog dialog
|
|
|
|
class CSelectFolderDialog : public CFileDialog
|
|
{
|
|
DECLARE_DYNAMIC(CSelectFolderDialog)
|
|
|
|
public:
|
|
CSelectFolderDialog(BOOL bShowFilesInDir = FALSE,
|
|
LPCSTR lpcstrInitialDir = NULL,
|
|
DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
|
|
LPCTSTR lpszFilter = NULL, CWnd* pParentWnd = NULL);
|
|
~CSelectFolderDialog();
|
|
|
|
static WNDPROC m_wndProc;
|
|
virtual void OnInitDone();
|
|
|
|
void OnFolderChange();
|
|
|
|
void SetSelectedPath(LPCSTR lpcstrPath);
|
|
CString GetSelectedPath() const;
|
|
|
|
void SetTitle(CString cstrTitle);
|
|
|
|
protected:
|
|
//{{AFX_MSG(CSelectFolderDialog)
|
|
// NOTE - the ClassWizard will add and remove member functions here.
|
|
//}}AFX_MSG
|
|
DECLARE_MESSAGE_MAP()
|
|
|
|
private:
|
|
BOOL m_bShowFilesInDir;
|
|
CString m_cstrPath;
|
|
CEdit *m_pEdit;
|
|
CString m_cstrTitle;
|
|
};
|
|
|
|
//{{AFX_INSERT_LOCATION}}
|
|
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
|
|
|
#endif // !defined(AFX_MYFD_H__F9CB9441_F91B_11D1_8610_0040055C08D9__INCLUDED_)
|