1 // ShellTreeDlg.cpp : implementation file
6 #include "ShellTreeDlg.h"
7 #include "UIMessages.h"
12 static char THIS_FILE[] = __FILE__;
15 /////////////////////////////////////////////////////////////////////////////
16 // CShellTreeDlg dialog
19 CShellTreeDlg::CShellTreeDlg(CWnd* pParent /*=NULL*/)
20 : CDialog(CShellTreeDlg::IDD, pParent)
22 //{{AFX_DATA_INIT(CShellTreeDlg)
29 void CShellTreeDlg::DoDataExchange(CDataExchange* pDX)
31 CDialog::DoDataExchange(pDX);
32 //{{AFX_DATA_MAP(CShellTreeDlg)
33 DDX_Control(pDX, IDC_SHELL_TREE, m_ShellTree);
34 DDX_Text(pDX, IDC_ST_HELP, m_stHelp);
35 DDX_Text(pDX, IDC_ST_PATH, m_stPath);
40 BEGIN_MESSAGE_MAP(CShellTreeDlg, CDialog)
41 //{{AFX_MSG_MAP(CShellTreeDlg)
42 ON_MESSAGE(WM_SETMESSAGESTRING,OnSetmessagestring)
43 ON_MESSAGE(WM_APP_UPDATE_ALL_VIEWS,OnAppUpdateAllViews)
47 /////////////////////////////////////////////////////////////////////////////
48 // CShellTreeDlg message handlers
50 BOOL CShellTreeDlg::OnInitDialog()
52 CDialog::OnInitDialog();
54 // TODO: Add extra initialization here
55 m_ShellTree.LoadFolderItems();
57 return TRUE; // return TRUE unless you set the focus to a control
58 // EXCEPTION: OCX Property Pages should return FALSE
61 LRESULT CShellTreeDlg::OnAppUpdateAllViews(WPARAM wParam, LPARAM lParam)
63 if (wParam == HINT_TREE_SEL_CHANGED)
65 const CRefreshShellFolder *pRefresh = reinterpret_cast<const CRefreshShellFolder*>(lParam);
66 m_stPath = m_ShellTree.GetPathName(pRefresh->GetItem());
72 LRESULT CShellTreeDlg::OnSetmessagestring(WPARAM wParam, LPARAM lParam)
76 m_stHelp = (LPCTSTR)lParam;