ReactOS 0.4.16-dev-1278-gd809cd0
COpenWithDialog Class Reference
Collaboration diagram for COpenWithDialog:

Public Member Functions

 COpenWithDialog (const OPENASINFO *pInfo, COpenWithList *pAppList)
 
 ~COpenWithDialog ()
 
BOOL IsNoOpen (HWND hwnd)
 

Static Public Member Functions

static INT_PTR CALLBACK DialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
 

Private Member Functions

VOID Init (HWND hwnd)
 
VOID AddApp (COpenWithList::SApp *pApp, BOOL bSelected)
 
VOID Browse ()
 
VOID Accept ()
 
COpenWithList::SAppGetCurrentApp ()
 

Static Private Member Functions

static INT_PTR CALLBACK NoOpenDlgProc (HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
 

Private Attributes

const OPENASINFOm_pInfo
 
COpenWithListm_pAppList
 
UINT m_InFlags
 
BOOL m_bListAllocated
 
HWND m_hDialog
 
HWND m_hTreeView
 
HTREEITEM m_hRecommend
 
HTREEITEM m_hOther
 
HIMAGELIST m_hImgList
 
BOOL m_bNoOpen
 

Detailed Description

Definition at line 911 of file COpenWithMenu.cpp.

Constructor & Destructor Documentation

◆ COpenWithDialog()

COpenWithDialog::COpenWithDialog ( const OPENASINFO pInfo,
COpenWithList pAppList = NULL 
)

Definition at line 938 of file COpenWithMenu.cpp.

938 :
939 m_pInfo(pInfo), m_pAppList(pAppList), m_hImgList(NULL), m_bNoOpen(FALSE)
940{
941 if (!m_pAppList)
942 {
945 }
946 else
948}
COpenWithList * m_pAppList
HIMAGELIST m_hImgList
const OPENASINFO * m_pInfo
#define NULL
Definition: types.h:112
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117

◆ ~COpenWithDialog()

COpenWithDialog::~COpenWithDialog ( )

Definition at line 950 of file COpenWithMenu.cpp.

951{
953 delete m_pAppList;
954 if (m_hImgList)
956}
BOOL WINAPI ImageList_Destroy(HIMAGELIST himl)
Definition: imagelist.c:941

Member Function Documentation

◆ Accept()

VOID COpenWithDialog::Accept ( )
private

Definition at line 1179 of file COpenWithMenu.cpp.

1180{
1182 if (pApp)
1183 {
1184 /* Set programm as default handler */
1186 {
1188 // FIXME: Update DefaultIcon registry
1190 }
1191
1192 /* Execute program */
1193 if (m_InFlags & OAIF_EXEC)
1195
1196 EndDialog(m_hDialog, 1);
1197 }
1198}
EXTERN_C void WINAPI SHChangeNotify(LONG wEventId, UINT uFlags, LPCVOID dwItem1, LPCVOID dwItem2)
COpenWithList::SApp * GetCurrentApp()
static BOOL Execute(SApp *pApp, LPCWSTR pwszFilePath)
BOOL SetDefaultHandler(SApp *pApp, LPCWSTR pwszFilename)
@ OAIF_EXEC
Definition: shlobj.h:2690
@ OAIF_REGISTER_EXT
Definition: shlobj.h:2689
#define SHCNE_ASSOCCHANGED
Definition: shlobj.h:1919
#define SHCNF_FLUSHNOWAIT
Definition: shlobj.h:1937
LPCWSTR pcszFile
Definition: shlobj.h:2701
UINT WINAPI IsDlgButtonChecked(_In_ HWND, _In_ int)
#define BST_CHECKED
Definition: winuser.h:197
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)

Referenced by DialogProc().

◆ AddApp()

VOID COpenWithDialog::AddApp ( COpenWithList::SApp pApp,
BOOL  bSelected 
)
private

Definition at line 1005 of file COpenWithMenu.cpp.

1006{
1007 LPCWSTR pwszName = m_pAppList->GetName(pApp);
1008 if (!pwszName) return;
1009 HICON hIcon = m_pAppList->GetIcon(pApp);
1010
1011 TRACE("AddApp Cmd %ls Name %ls\n", pApp->wszCmd, pwszName);
1012
1013 /* Add item to the list */
1014 TVINSERTSTRUCT tvins;
1015
1016 if (pApp->bRecommended)
1017 tvins.hParent = tvins.hInsertAfter = m_hRecommend;
1018 else
1019 tvins.hParent = tvins.hInsertAfter = m_hOther;
1020
1021 tvins.item.mask = TVIF_TEXT|TVIF_PARAM;
1022 tvins.item.pszText = const_cast<LPWSTR>(pwszName);
1023 tvins.item.lParam = (LPARAM)pApp;
1024
1025 if (hIcon)
1026 {
1027 tvins.item.mask |= TVIF_IMAGE | TVIF_SELECTEDIMAGE;
1028 tvins.item.iImage = tvins.item.iSelectedImage = ImageList_AddIcon(m_hImgList, hIcon);
1029 }
1030
1032
1033 if (bSelected)
1035}
HTREEITEM m_hRecommend
static LPCWSTR GetName(SApp *pApp)
static HICON GetIcon(SApp *pApp)
static HICON
Definition: imagelist.c:80
HICON hIcon
Definition: msconfig.c:44
#define TVIF_TEXT
Definition: commctrl.h:3271
#define TreeView_SelectItem(hwnd, hitem)
Definition: commctrl.h:3486
#define TVINSERTSTRUCT
Definition: commctrl.h:3407
#define TVIF_IMAGE
Definition: commctrl.h:3272
#define ImageList_AddIcon(himl, hicon)
Definition: commctrl.h:415
#define TVIF_PARAM
Definition: commctrl.h:3273
#define TreeView_InsertItem(hwnd, lpis)
Definition: commctrl.h:3417
#define TVIF_SELECTEDIMAGE
Definition: commctrl.h:3276
#define TRACE(s)
Definition: solgame.cpp:4
WCHAR wszCmd[MAX_PATH]
LONG_PTR LPARAM
Definition: windef.h:208
WCHAR * LPWSTR
Definition: xmlstorage.h:184
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185

Referenced by Browse(), and Init().

◆ Browse()

VOID COpenWithDialog::Browse ( )
private

Definition at line 1037 of file COpenWithMenu.cpp.

1038{
1039 WCHAR wszTitle[64];
1040 WCHAR wszFilter[256];
1041 WCHAR wszPath[MAX_PATH];
1043
1044 /* Initialize OPENFILENAMEW structure */
1045 ZeroMemory(&ofn, sizeof(OPENFILENAMEW));
1046 ofn.lStructSize = sizeof(OPENFILENAMEW);
1050 ofn.nMaxFile = (sizeof(wszPath) / sizeof(WCHAR));
1051 ofn.lpstrFile = wszPath;
1052 ofn.lpstrInitialDir = L"%programfiles%";
1053
1054 /* Init title */
1055 if (LoadStringW(shell32_hInstance, IDS_OPEN_WITH, wszTitle, sizeof(wszTitle) / sizeof(WCHAR)))
1056 {
1057 ofn.lpstrTitle = wszTitle;
1058 ofn.nMaxFileTitle = wcslen(wszTitle);
1059 }
1060
1061 /* Init the filter string */
1064 ZeroMemory(wszPath, sizeof(wszPath));
1065
1066 /* Create OpenFile dialog */
1067 if (!GetOpenFileNameW(&ofn))
1068 return;
1069
1070 /* Setup context for insert proc */
1071 COpenWithList::SApp *pApp = m_pAppList->Add(wszPath);
1072 AddApp(pApp, TRUE);
1073}
#define shell32_hInstance
static WCHAR wszFilter[MAX_STRING_LEN *4+6 *3+5]
Definition: wordpad.c:72
VOID AddApp(COpenWithList::SApp *pApp, BOOL bSelected)
SApp * Add(LPCWSTR pwszPath)
#define OFN_EXPLORER
Definition: commdlg.h:104
#define OFN_FILEMUSTEXIST
Definition: commdlg.h:106
#define OFN_PATHMUSTEXIST
Definition: commdlg.h:117
struct tagOFNW OPENFILENAMEW
BOOL WINAPI GetOpenFileNameW(OPENFILENAMEW *ofn)
Definition: filedlg.c:4736
#define MAX_PATH
Definition: compat.h:34
INT WINAPI DECLSPEC_HOTPATCH LoadStringW(HINSTANCE instance, UINT resource_id, LPWSTR buffer, INT buflen)
Definition: string.c:1220
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
#define L(x)
Definition: ntvdm.h:50
#define IDS_OPEN_WITH_FILTER
Definition: shresdef.h:146
#define IDS_OPEN_WITH
Definition: shresdef.h:134
OPENFILENAME ofn
Definition: sndrec32.cpp:56
HWND hwndOwner
Definition: commdlg.h:330
LPCSTR lpstrTitle
Definition: commdlg.h:341
HINSTANCE hInstance
Definition: commdlg.h:331
LPSTR lpstrFile
Definition: commdlg.h:336
DWORD nMaxFileTitle
Definition: commdlg.h:339
DWORD Flags
Definition: commdlg.h:342
LPCSTR lpstrInitialDir
Definition: commdlg.h:340
DWORD lStructSize
Definition: commdlg.h:329
LPCSTR lpstrFilter
Definition: commdlg.h:332
DWORD nMaxFile
Definition: commdlg.h:337
#define ZeroMemory
Definition: winbase.h:1753
__wchar_t WCHAR
Definition: xmlstorage.h:180

Referenced by DialogProc().

◆ DialogProc()

INT_PTR CALLBACK COpenWithDialog::DialogProc ( HWND  hwndDlg,
UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam 
)
static

Definition at line 1200 of file COpenWithMenu.cpp.

1201{
1202 COpenWithDialog *pThis = reinterpret_cast<COpenWithDialog *>(GetWindowLongPtr(hwndDlg, DWLP_USER));
1203
1204 switch(uMsg)
1205 {
1206 case WM_INITDIALOG:
1207 {
1208 COpenWithDialog *pThis = reinterpret_cast<COpenWithDialog *>(lParam);
1209
1210 pThis->Init(hwndDlg);
1211 return TRUE;
1212 }
1213 case WM_COMMAND:
1214 switch(LOWORD(wParam))
1215 {
1216 case 14004: /* browse */
1217 {
1218 pThis->Browse();
1219 return TRUE;
1220 }
1221 case IDOK: /* ok */
1222 {
1223 pThis->Accept();
1224 return TRUE;
1225 }
1226 case IDCANCEL: /* cancel */
1227 EndDialog(hwndDlg, 0);
1228 return TRUE;
1229 default:
1230 break;
1231 }
1232 break;
1233 case WM_NOTIFY:
1234 switch (((LPNMHDR)lParam)->code)
1235 {
1236 case TVN_SELCHANGED:
1237 EnableWindow(GetDlgItem(hwndDlg, IDOK), pThis->GetCurrentApp() ? TRUE : FALSE);
1238 break;
1239 case NM_DBLCLK:
1240 case NM_RETURN:
1241 pThis->Accept();
1242 break;
1243 }
1244 break;
1245 case WM_CLOSE:
1246 EndDialog(hwndDlg, 0);
1247 return TRUE;
1248 default:
1249 break;
1250 }
1251 return FALSE;
1252}
VOID Init(HWND hwnd)
WPARAM wParam
Definition: combotst.c:138
LPARAM lParam
Definition: combotst.c:139
#define LOWORD(l)
Definition: pedump.c:82
#define TVN_SELCHANGED
Definition: commctrl.h:3740
#define NM_DBLCLK
Definition: commctrl.h:131
#define NM_RETURN
Definition: commctrl.h:132
#define WM_NOTIFY
Definition: richedit.h:61
Definition: inflate.c:139
#define GetWindowLongPtr
Definition: treelist.c:73
#define WM_CLOSE
Definition: winuser.h:1640
#define DWLP_USER
Definition: winuser.h:883
#define IDCANCEL
Definition: winuser.h:842
#define WM_COMMAND
Definition: winuser.h:1759
#define WM_INITDIALOG
Definition: winuser.h:1758
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
#define IDOK
Definition: winuser.h:841
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)

Referenced by SHOpenWithDialog().

◆ GetCurrentApp()

COpenWithList::SApp * COpenWithDialog::GetCurrentApp ( )
private

Definition at line 1075 of file COpenWithMenu.cpp.

1076{
1077 TVITEM tvi;
1079 if (!tvi.hItem)
1080 return NULL;
1081
1082 tvi.mask = TVIF_PARAM;
1083 if (!TreeView_GetItem(m_hTreeView, &tvi))
1084 return NULL;
1085
1086 return (COpenWithList::SApp*)tvi.lParam;
1087}
#define TVITEM
Definition: commctrl.h:3370
#define TreeView_GetSelection(hwnd)
Definition: commctrl.h:3478
#define TreeView_GetItem(hwnd, pitem)
Definition: commctrl.h:3495

Referenced by Accept(), and DialogProc().

◆ Init()

VOID COpenWithDialog::Init ( HWND  hwnd)
private

Definition at line 1089 of file COpenWithMenu.cpp.

1090{
1091 TRACE("COpenWithDialog::Init hwnd %p\n", hwnd);
1092
1093 m_hDialog = hwnd;
1095
1096 UINT fDisallow = 0;
1098 // Don't allow registration for "" nor "." nor ".exe" etc.
1099 if (!pszExt || !pszExt[0] || !pszExt[1] || PathIsExeW(m_pInfo->pcszFile))
1103
1104 /* Handle register checkbox */
1105 m_InFlags = m_pInfo->oaifInFlags & ~fDisallow;
1106 HWND hRegisterCheckbox = GetDlgItem(hwnd, 14003);
1108 EnableWindow(hRegisterCheckbox, FALSE);
1110 SendMessage(hRegisterCheckbox, BM_SETCHECK, BST_CHECKED, 0);
1112 ShowWindow(hRegisterCheckbox, SW_HIDE);
1113
1114 if (m_pInfo->pcszFile)
1115 {
1116 WCHAR wszBuf[MAX_PATH];
1117 UINT cchBuf;
1118
1119 /* Add filename to label */
1120 cchBuf = GetDlgItemTextW(hwnd, 14001, wszBuf, _countof(wszBuf));
1121 StringCchCopyW(wszBuf + cchBuf, _countof(wszBuf) - cchBuf, PathFindFileNameW(m_pInfo->pcszFile));
1122 SetDlgItemTextW(hwnd, 14001, wszBuf);
1123
1124 /* Load applications from registry */
1125 m_pAppList->Load();
1127
1128 /* Determine if the type of file can be opened directly from the shell */
1129 if (m_pAppList->IsNoOpen() != FALSE)
1130 m_bNoOpen = TRUE;
1131
1132 /* Init treeview */
1133 m_hTreeView = GetDlgItem(hwnd, 14002);
1136
1137 /* If there are some recommendations add parent nodes: Recommended and Others */
1138 UINT cRecommended = m_pAppList->GetRecommendedCount();
1139 if (cRecommended > 0)
1140 {
1141 TVINSERTSTRUCT tvins;
1142 HICON hFolderIcon;
1143
1144 tvins.hParent = tvins.hInsertAfter = TVI_ROOT;
1146 tvins.item.pszText = (LPWSTR)wszBuf;
1147 tvins.item.state = tvins.item.stateMask = TVIS_EXPANDED;
1149 tvins.item.iImage = tvins.item.iSelectedImage = ImageList_AddIcon(m_hImgList, hFolderIcon);
1150
1153
1156 }
1157 else
1159
1160 /* Add all applications */
1161 BOOL bNoAppSelected = TRUE;
1162 COpenWithList::SApp *pAppList = m_pAppList->GetList();
1163 for (UINT i = 0; i < m_pAppList->GetCount(); ++i)
1164 {
1165 if (!COpenWithList::IsHidden(&pAppList[i]))
1166 {
1167 if (bNoAppSelected && (pAppList[i].bRecommended || !cRecommended))
1168 {
1169 AddApp(&pAppList[i], TRUE);
1170 bNoAppSelected = FALSE;
1171 }
1172 else
1173 AddApp(&pAppList[i], FALSE);
1174 }
1175 }
1176 }
1177}
EXTERN_C BOOL PathIsExeW(LPCWSTR lpszPath)
Definition: shellpath.c:539
BOOL LoadRecommended(LPCWSTR pwszFilePath)
BOOL IsNoOpen(VOID)
UINT GetRecommendedCount()
static BOOL IsHidden(SApp *pApp)
HIMAGELIST WINAPI ImageList_Create(INT cx, INT cy, UINT flags, INT cInitial, INT cGrow)
Definition: imagelist.c:814
WCHAR *WINAPI PathFindFileNameW(const WCHAR *path)
Definition: path.c:1644
LPWSTR WINAPI PathFindExtensionW(const WCHAR *path)
Definition: path.c:1217
unsigned int BOOL
Definition: ntddk_ex.h:94
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
__int3264 LONG_PTR
Definition: mstsclib_h.h:276
unsigned int UINT
Definition: ndis.h:50
#define MAKEINTRESOURCE(i)
Definition: ntverrsrc.c:25
#define TVSIL_NORMAL
Definition: commctrl.h:3448
#define ILC_COLOR32
Definition: commctrl.h:358
#define TVI_ROOT
Definition: commctrl.h:3373
#define TVIS_EXPANDED
Definition: commctrl.h:3289
#define ILC_MASK
Definition: commctrl.h:351
#define TreeView_SetImageList(hwnd, himl, iImage)
Definition: commctrl.h:3452
#define TVIF_STATE
Definition: commctrl.h:3274
@ OAIF_ALLOW_REGISTRATION
Definition: shlobj.h:2688
@ OAIF_HIDE_REGISTRATION
Definition: shlobj.h:2693
@ OAIF_FORCE_REGISTRATION
Definition: shlobj.h:2691
@ REST_NOFILEASSOCIATE
Definition: shlobj.h:1876
DWORD WINAPI SHRestricted(RESTRICTIONS rest)
Definition: shpolicy.c:166
#define IDS_OPEN_WITH_RECOMMENDED
Definition: shresdef.h:192
#define IDI_SHELL_PROGRAMS_FOLDER
Definition: shresdef.h:602
#define IDS_OPEN_WITH_OTHER
Definition: shresdef.h:193
#define _countof(array)
Definition: sndvol32.h:70
STRSAFEAPI StringCchCopyW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszSrc)
Definition: strsafe.h:149
OPEN_AS_INFO_FLAGS oaifInFlags
Definition: shlobj.h:2703
#define SetWindowLongPtr
Definition: treelist.c:70
const uint16_t * PCWSTR
Definition: typedefs.h:57
UINT WINAPI GetDlgItemTextW(HWND hDlg, int nIDDlgItem, LPWSTR lpString, int nMaxCount)
Definition: dialog.c:2263
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
#define SW_HIDE
Definition: winuser.h:779
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
#define IMAGE_ICON
Definition: winuser.h:212
BOOL WINAPI SetDlgItemTextW(_In_ HWND, _In_ int, _In_ LPCWSTR)
#define BM_SETCHECK
Definition: winuser.h:1940
#define SendMessage
Definition: winuser.h:5928
#define LoadImage
Definition: winuser.h:5900

Referenced by DialogProc().

◆ IsNoOpen()

BOOL COpenWithDialog::IsNoOpen ( HWND  hwnd)

Definition at line 986 of file COpenWithMenu.cpp.

987{
988 /* Only do the actual check if the file type has the 'NoOpen' flag. */
989 if (m_bNoOpen)
990 {
992
993 if (dReturnValue == IDNO)
994 return TRUE;
995 else if (dReturnValue == -1)
996 {
997 ERR("IsNoOpen failed to load dialog box\n");
998 return TRUE;
999 }
1000 }
1001
1002 return FALSE;
1003}
#define ERR(fmt,...)
Definition: precomp.h:57
static INT_PTR CALLBACK NoOpenDlgProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
#define IDD_NOOPEN
Definition: shresdef.h:551
#define IDNO
Definition: winuser.h:847
#define DialogBox
Definition: winuser.h:5846

Referenced by SHOpenWithDialog().

◆ NoOpenDlgProc()

INT_PTR CALLBACK COpenWithDialog::NoOpenDlgProc ( HWND  hwnd,
UINT  Message,
WPARAM  wParam,
LPARAM  lParam 
)
staticprivate

Definition at line 958 of file COpenWithMenu.cpp.

959{
960 switch(Message)
961 {
962 case WM_INITDIALOG:
963 {
964 return TRUE;
965 }
966 case WM_CLOSE:
968 break;
969 case WM_COMMAND:
970 switch(LOWORD(wParam))
971 {
972 case IDYES:
974 break;
975 case IDNO:
977 break;
978 }
979 break;
980 default:
981 return FALSE;
982 }
983 return TRUE;
984}
static const WCHAR Message[]
Definition: register.c:74
#define IDYES
Definition: winuser.h:846

Referenced by IsNoOpen().

Member Data Documentation

◆ m_bListAllocated

BOOL COpenWithDialog::m_bListAllocated
private

Definition at line 930 of file COpenWithMenu.cpp.

Referenced by COpenWithDialog(), and ~COpenWithDialog().

◆ m_bNoOpen

BOOL COpenWithDialog::m_bNoOpen
private

Definition at line 935 of file COpenWithMenu.cpp.

Referenced by Init(), and IsNoOpen().

◆ m_hDialog

HWND COpenWithDialog::m_hDialog
private

Definition at line 931 of file COpenWithMenu.cpp.

Referenced by Accept(), Browse(), and Init().

◆ m_hImgList

HIMAGELIST COpenWithDialog::m_hImgList
private

Definition at line 934 of file COpenWithMenu.cpp.

Referenced by AddApp(), Init(), and ~COpenWithDialog().

◆ m_hOther

HTREEITEM COpenWithDialog::m_hOther
private

Definition at line 933 of file COpenWithMenu.cpp.

Referenced by AddApp(), and Init().

◆ m_hRecommend

HTREEITEM COpenWithDialog::m_hRecommend
private

Definition at line 932 of file COpenWithMenu.cpp.

Referenced by AddApp(), and Init().

◆ m_hTreeView

HWND COpenWithDialog::m_hTreeView
private

Definition at line 931 of file COpenWithMenu.cpp.

Referenced by AddApp(), GetCurrentApp(), and Init().

◆ m_InFlags

UINT COpenWithDialog::m_InFlags
private

Definition at line 929 of file COpenWithMenu.cpp.

Referenced by Accept(), and Init().

◆ m_pAppList

COpenWithList* COpenWithDialog::m_pAppList
private

Definition at line 928 of file COpenWithMenu.cpp.

Referenced by Accept(), AddApp(), Browse(), COpenWithDialog(), Init(), and ~COpenWithDialog().

◆ m_pInfo

const OPENASINFO* COpenWithDialog::m_pInfo
private

Definition at line 927 of file COpenWithMenu.cpp.

Referenced by Accept(), and Init().


The documentation for this class was generated from the following file: