Click here to Skip to main content
Click here to Skip to main content
Add your own
alternative version

XBrowseForFolder - Wrapper for SHBrowseForFolder

, 7 Mar 2008 CPOL
XBrowseForFolder wraps the SHBrowseForFolder API, provides a way to specify an initial directory, and cleans up the SHBrowseForFolder dialog.
// XBrowseForFolderTestDlg.h : header file
//

#ifndef XBROWSEFORFOLDERTESTDLG_H
#define XBROWSEFORFOLDERTESTDLG_H

#include "XColorStatic.h"

/////////////////////////////////////////////////////////////////////////////
// CXBrowseForFolderTestDlg dialog

class CXBrowseForFolderTestDlg : public CDialog
{
// Construction
public:
	CXBrowseForFolderTestDlg(CWnd* pParent = NULL);	// standard constructor

// Dialog Data
	//{{AFX_DATA(CXBrowseForFolderTestDlg)
	enum { IDD = IDD_XBROWSEFORFOLDERTEST_DIALOG };
	CComboBox	m_comboInitial;
	CXColorStatic	m_staticAsterisk1;
	CXColorStatic	m_staticAsterisk2;
	CXColorStatic	m_staticAsterisk3;
	CXColorStatic	m_staticAsterisk4;
	CXColorStatic	m_staticAsterisk5;
	CComboBox		m_comboRoot;
	CEdit			m_edtReturnCode;
	CEdit			m_edtFolder;
	BOOL			m_bEditBox;
	int				m_nRootIndex;
	CString			m_strInitialFolder;
	CString			m_strCaption;
	int				m_nInitialIndex;
	int		m_nInitial;
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CXBrowseForFolderTestDlg)
protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	HICON m_hIcon;
	struct CSIDL
	{
		TCHAR * pszCsidl;
		int		nCsidl;
	};
	static const CSIDL m_nCsidl[];

	// Generated message map functions
	//{{AFX_MSG(CXBrowseForFolderTestDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	afx_msg void OnSHBrowseForFolder();
	afx_msg void OnXBrowseForFolder();
	afx_msg void OnInitial();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif //XBROWSEFORFOLDERTESTDLG_H

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Hans Dietrich
Software Developer (Senior) Hans Dietrich Software
United States United States
I attended St. Michael's College of the University of Toronto, with the intention of becoming a priest. A friend in the University's Computer Science Department got me interested in programming, and I have been hooked ever since.
 
Recently, I have moved to Los Angeles where I am doing consulting and development work.
 
For consulting and custom software development, please see www.hdsoft.org.






| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.141223.1 | Last Updated 7 Mar 2008
Article Copyright 2003 by Hans Dietrich
Everything else Copyright © CodeProject, 1999-2014
Layout: fixed | fluid