ReactOS 0.4.16-dev-2252-gb2c1dd8
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 921 of file COpenWithMenu.cpp.

Constructor & Destructor Documentation

◆ COpenWithDialog()

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

Definition at line 948 of file COpenWithMenu.cpp.

948 :
949 m_pInfo(pInfo), m_pAppList(pAppList), m_hImgList(NULL), m_bNoOpen(FALSE)
950{
951 if (!m_pAppList)
952 {
955 }
956 else
958}
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 960 of file COpenWithMenu.cpp.

961{
963 delete m_pAppList;
964 if (m_hImgList)
966}
BOOL WINAPI ImageList_Destroy(HIMAGELIST himl)
Definition: imagelist.c:941

Member Function Documentation

◆ Accept()

VOID COpenWithDialog::Accept ( )
private

Definition at line 1189 of file COpenWithMenu.cpp.

1190{
1192 if (pApp)
1193 {
1194 /* Set programm as default handler */
1197
1198 /* Execute program */
1199 if (m_InFlags & OAIF_EXEC)
1201
1202 EndDialog(m_hDialog, 1);
1203 }
1204}
COpenWithList::SApp * GetCurrentApp()
static BOOL Execute(SApp *pApp, LPCWSTR pwszFilePath)
BOOL SetDefaultHandler(SApp *pApp, LPCWSTR pwszFilename)
@ OAIF_EXEC
Definition: shlobj.h:2688
@ OAIF_REGISTER_EXT
Definition: shlobj.h:2687
LPCWSTR pcszFile
Definition: shlobj.h:2699
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 1015 of file COpenWithMenu.cpp.

1016{
1017 LPCWSTR pwszName = m_pAppList->GetName(pApp);
1018 if (!pwszName) return;
1019 HICON hIcon = m_pAppList->GetIcon(pApp);
1020
1021 TRACE("AddApp Cmd %ls Name %ls\n", pApp->wszCmd, pwszName);
1022
1023 /* Add item to the list */
1024 TVINSERTSTRUCT tvins;
1025
1026 if (pApp->bRecommended)
1027 tvins.hParent = tvins.hInsertAfter = m_hRecommend;
1028 else
1029 tvins.hParent = tvins.hInsertAfter = m_hOther;
1030
1031 tvins.item.mask = TVIF_TEXT|TVIF_PARAM;
1032 tvins.item.pszText = const_cast<LPWSTR>(pwszName);
1033 tvins.item.lParam = (LPARAM)pApp;
1034
1035 if (hIcon)
1036 {
1037 tvins.item.mask |= TVIF_IMAGE | TVIF_SELECTEDIMAGE;
1038 tvins.item.iImage = tvins.item.iSelectedImage = ImageList_AddIcon(m_hImgList, hIcon);
1039 }
1040
1042
1043 if (bSelected)
1045}
HTREEITEM m_hRecommend
static LPCWSTR GetName(SApp *pApp)
static HICON GetIcon(SApp *pApp)
LONG_PTR LPARAM
Definition: minwindef.h:175
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]
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
WCHAR * LPWSTR
Definition: xmlstorage.h:184

Referenced by Browse(), and Init().

◆ Browse()

VOID COpenWithDialog::Browse ( )
private

Definition at line 1047 of file COpenWithMenu.cpp.

1048{
1049 WCHAR wszTitle[64];
1050 WCHAR wszFilter[256];
1051 WCHAR wszPath[MAX_PATH];
1053
1054 /* Initialize OPENFILENAMEW structure */
1055 ZeroMemory(&ofn, sizeof(OPENFILENAMEW));
1056 ofn.lStructSize = sizeof(OPENFILENAMEW);
1060 ofn.nMaxFile = (sizeof(wszPath) / sizeof(WCHAR));
1061 ofn.lpstrFile = wszPath;
1062 ofn.lpstrInitialDir = L"%programfiles%";
1063
1064 /* Init title */
1065 if (LoadStringW(shell32_hInstance, IDS_OPEN_WITH, wszTitle, sizeof(wszTitle) / sizeof(WCHAR)))
1066 {
1067 ofn.lpstrTitle = wszTitle;
1068 ofn.nMaxFileTitle = wcslen(wszTitle);
1069 }
1070
1071 /* Init the filter string */
1074 ZeroMemory(wszPath, sizeof(wszPath));
1075
1076 /* Create OpenFile dialog */
1077 if (!GetOpenFileNameW(&ofn))
1078 return;
1079
1080 /* Setup context for insert proc */
1081 COpenWithList::SApp *pApp = m_pAppList->Add(wszPath);
1082 AddApp(pApp, TRUE);
1083}
#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
_ACRTIMP size_t __cdecl wcslen(const wchar_t *)
Definition: wcs.c:2983
#define L(x)
Definition: resources.c:13
#define ZeroMemory
Definition: minwinbase.h:31
#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
__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 1206 of file COpenWithMenu.cpp.

1207{
1208 COpenWithDialog *pThis = reinterpret_cast<COpenWithDialog *>(GetWindowLongPtr(hwndDlg, DWLP_USER));
1209
1210 switch(uMsg)
1211 {
1212 case WM_INITDIALOG:
1213 {
1214 COpenWithDialog *pThis = reinterpret_cast<COpenWithDialog *>(lParam);
1215
1216 pThis->Init(hwndDlg);
1217 return TRUE;
1218 }
1219 case WM_COMMAND:
1220 switch(LOWORD(wParam))
1221 {
1222 case 14004: /* browse */
1223 {
1224 pThis->Browse();
1225 return TRUE;
1226 }
1227 case IDOK: /* ok */
1228 {
1229 pThis->Accept();
1230 return TRUE;
1231 }
1232 case IDCANCEL: /* cancel */
1233 EndDialog(hwndDlg, 0);
1234 return TRUE;
1235 default:
1236 break;
1237 }
1238 break;
1239 case WM_NOTIFY:
1240 switch (((LPNMHDR)lParam)->code)
1241 {
1242 case TVN_SELCHANGED:
1243 EnableWindow(GetDlgItem(hwndDlg, IDOK), pThis->GetCurrentApp() ? TRUE : FALSE);
1244 break;
1245 case NM_DBLCLK:
1246 case NM_RETURN:
1247 pThis->Accept();
1248 break;
1249 }
1250 break;
1251 case WM_CLOSE:
1252 EndDialog(hwndDlg, 0);
1253 return TRUE;
1254 default:
1255 break;
1256 }
1257 return FALSE;
1258}
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:1649
#define DWLP_USER
Definition: winuser.h:883
#define IDCANCEL
Definition: winuser.h:842
#define WM_COMMAND
Definition: winuser.h:1768
#define WM_INITDIALOG
Definition: winuser.h:1767
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 1085 of file COpenWithMenu.cpp.

1086{
1087 TVITEM tvi;
1089 if (!tvi.hItem)
1090 return NULL;
1091
1092 tvi.mask = TVIF_PARAM;
1093 if (!TreeView_GetItem(m_hTreeView, &tvi))
1094 return NULL;
1095
1096 return (COpenWithList::SApp*)tvi.lParam;
1097}
#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 1099 of file COpenWithMenu.cpp.

1100{
1101 TRACE("COpenWithDialog::Init hwnd %p\n", hwnd);
1102
1103 m_hDialog = hwnd;
1105
1106 UINT fDisallow = 0;
1108 // Don't allow registration for "" nor "." nor ".exe" etc.
1109 if (!pszExt || !pszExt[0] || !pszExt[1] || PathIsExeW(m_pInfo->pcszFile))
1113
1114 /* Handle register checkbox */
1115 m_InFlags = m_pInfo->oaifInFlags & ~fDisallow;
1116 HWND hRegisterCheckbox = GetDlgItem(hwnd, 14003);
1118 EnableWindow(hRegisterCheckbox, FALSE);
1120 SendMessage(hRegisterCheckbox, BM_SETCHECK, BST_CHECKED, 0);
1122 ShowWindow(hRegisterCheckbox, SW_HIDE);
1123
1124 if (m_pInfo->pcszFile)
1125 {
1126 WCHAR wszBuf[MAX_PATH];
1127 UINT cchBuf;
1128
1129 /* Add filename to label */
1130 cchBuf = GetDlgItemTextW(hwnd, 14001, wszBuf, _countof(wszBuf));
1132 SetDlgItemTextW(hwnd, 14001, wszBuf);
1133
1134 /* Load applications from registry */
1135 m_pAppList->Load();
1137
1138 /* Determine if the type of file can be opened directly from the shell */
1139 if (m_pAppList->IsNoOpen() != FALSE)
1140 m_bNoOpen = TRUE;
1141
1142 /* Init treeview */
1143 m_hTreeView = GetDlgItem(hwnd, 14002);
1146
1147 /* If there are some recommendations add parent nodes: Recommended and Others */
1148 UINT cRecommended = m_pAppList->GetRecommendedCount();
1149 if (cRecommended > 0)
1150 {
1151 TVINSERTSTRUCT tvins;
1152 HICON hFolderIcon;
1153
1154 tvins.hParent = tvins.hInsertAfter = TVI_ROOT;
1156 tvins.item.pszText = (LPWSTR)wszBuf;
1157 tvins.item.state = tvins.item.stateMask = TVIS_EXPANDED;
1159 tvins.item.iImage = tvins.item.iSelectedImage = ImageList_AddIcon(m_hImgList, hFolderIcon);
1160
1163
1166 }
1167 else
1169
1170 /* Add all applications */
1171 BOOL bNoAppSelected = TRUE;
1172 COpenWithList::SApp *pAppList = m_pAppList->GetList();
1173 for (UINT i = 0; i < m_pAppList->GetCount(); ++i)
1174 {
1175 if (!COpenWithList::IsHidden(&pAppList[i]))
1176 {
1177 if (bNoAppSelected && (pAppList[i].bRecommended || !cRecommended))
1178 {
1179 AddApp(&pAppList[i], TRUE);
1180 bNoAppSelected = FALSE;
1181 }
1182 else
1183 AddApp(&pAppList[i], FALSE);
1184 }
1185 }
1186 }
1187}
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:1701
LPWSTR WINAPI PathFindExtensionW(const WCHAR *path)
Definition: path.c:1274
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
_In_ UINT cchBuf
Definition: shlwapi.h:378
@ OAIF_ALLOW_REGISTRATION
Definition: shlobj.h:2686
@ OAIF_HIDE_REGISTRATION
Definition: shlobj.h:2691
@ OAIF_FORCE_REGISTRATION
Definition: shlobj.h:2689
@ REST_NOFILEASSOCIATE
Definition: shlobj.h:1873
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:613
#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:2701
#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:1950
#define SendMessage
Definition: winuser.h:5954
#define LoadImage
Definition: winuser.h:5926

Referenced by DialogProc().

◆ IsNoOpen()

BOOL COpenWithDialog::IsNoOpen ( HWND  hwnd)

Definition at line 996 of file COpenWithMenu.cpp.

997{
998 /* Only do the actual check if the file type has the 'NoOpen' flag. */
999 if (m_bNoOpen)
1000 {
1002
1003 if (dReturnValue == IDNO)
1004 return TRUE;
1005 else if (dReturnValue == -1)
1006 {
1007 ERR("IsNoOpen failed to load dialog box\n");
1008 return TRUE;
1009 }
1010 }
1011
1012 return FALSE;
1013}
#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:562
#define IDNO
Definition: winuser.h:847
#define DialogBox
Definition: winuser.h:5872

Referenced by SHOpenWithDialog().

◆ NoOpenDlgProc()

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

Definition at line 968 of file COpenWithMenu.cpp.

969{
970 switch(Message)
971 {
972 case WM_INITDIALOG:
973 {
974 return TRUE;
975 }
976 case WM_CLOSE:
978 break;
979 case WM_COMMAND:
980 switch(LOWORD(wParam))
981 {
982 case IDYES:
984 break;
985 case IDNO:
987 break;
988 }
989 break;
990 default:
991 return FALSE;
992 }
993 return TRUE;
994}
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 940 of file COpenWithMenu.cpp.

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

◆ m_bNoOpen

BOOL COpenWithDialog::m_bNoOpen
private

Definition at line 945 of file COpenWithMenu.cpp.

Referenced by Init(), and IsNoOpen().

◆ m_hDialog

HWND COpenWithDialog::m_hDialog
private

Definition at line 941 of file COpenWithMenu.cpp.

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

◆ m_hImgList

HIMAGELIST COpenWithDialog::m_hImgList
private

Definition at line 944 of file COpenWithMenu.cpp.

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

◆ m_hOther

HTREEITEM COpenWithDialog::m_hOther
private

Definition at line 943 of file COpenWithMenu.cpp.

Referenced by AddApp(), and Init().

◆ m_hRecommend

HTREEITEM COpenWithDialog::m_hRecommend
private

Definition at line 942 of file COpenWithMenu.cpp.

Referenced by AddApp(), and Init().

◆ m_hTreeView

HWND COpenWithDialog::m_hTreeView
private

Definition at line 941 of file COpenWithMenu.cpp.

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

◆ m_InFlags

UINT COpenWithDialog::m_InFlags
private

Definition at line 939 of file COpenWithMenu.cpp.

Referenced by Accept(), and Init().

◆ m_pAppList

COpenWithList* COpenWithDialog::m_pAppList
private

Definition at line 938 of file COpenWithMenu.cpp.

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

◆ m_pInfo

const OPENASINFO* COpenWithDialog::m_pInfo
private

Definition at line 937 of file COpenWithMenu.cpp.

Referenced by Accept(), and Init().


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