ReactOS  0.4.14-dev-552-g2fad488
vfdshext.h
Go to the documentation of this file.
1 /*
2  vfdshext.h
3 
4  Virtual Floppy Drive for Windows
5  Driver control library
6  shell extension COM class header
7 
8  Copyright (c) 2003-2005 Ken Kato
9 */
10 
11 #ifndef _VFDSHEXT_H_
12 #define _VFDSHEXT_H_
13 
14 //
15 // CVfdShExt
16 // COM Shell extension class
17 //
18 class CVfdShExt : public IContextMenu,
21 // IQueryInfo
22 {
23 protected:
24  ULONG m_cRefCnt; // reference count
25  LPDATAOBJECT m_pDataObj; // IDataObject pointer
26  ULONG m_nDevice; // VFD device number
27  CHAR m_sTarget[MAX_PATH]; // target path
29 
30 public:
31  // constructor / destructor
32  CVfdShExt();
33  ~CVfdShExt();
34 
35  // perform VFD operations
42 
43  // get current attributes
44  ULONG GetDevice() { return m_nDevice; }
45  PCSTR GetTarget() { return m_sTarget; }
46 
47  // IUnknown inheritance
51 
52  // IShellExtInit inheritance
54  LPCITEMIDLIST pIDFolder,
55  LPDATAOBJECT pDataObj,
56  HKEY hKeyID);
57 
58  // IContextMenu inheritance
60  HMENU hMenu,
61  UINT indexMenu,
62  UINT idCmdFirst,
63  UINT idCmdLast,
64  UINT uFlags);
65 
67  LPCMINVOKECOMMANDINFO lpcmi);
68 
70 #ifndef __REACTOS__
71  UINT idCmd,
72 #else
73  UINT_PTR idCmd,
74 #endif
75  UINT uFlags,
76  UINT *reserved,
77  LPSTR pszName,
78  UINT cchMax);
79 
80  // IShellPropSheetExt inheritance
82  LPFNADDPROPSHEETPAGE lpfnAddPage,
83  LPARAM lParam);
84 
86  UINT uPageID,
87  LPFNADDPROPSHEETPAGE lpfnReplaceWith,
88  LPARAM lParam);
89 /*
90  // IQueryInfo inheritance
91 
92  STDMETHODIMP GetInfoFlags(
93  DWORD *pdwFlags);
94 
95  STDMETHODIMP GetInfoTip(
96  DWORD dwFlags,
97  LPWSTR *ppwszTip);
98 */
99 };
100 
102 
103 #endif // _VFDSHEXT_H_
#define REFIID
Definition: guiddef.h:118
DWORD DoVfdClose(HWND hParent)
Definition: vfdshmenu.cpp:484
DWORD DoVfdOpen(HWND hParent)
Definition: vfdshmenu.cpp:459
STDMETHODIMP InvokeCommand(LPCMINVOKECOMMANDINFO lpcmi)
Definition: vfdshmenu.cpp:332
STDMETHODIMP QueryContextMenu(HMENU hMenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags)
Definition: vfdshmenu.cpp:106
LPDATAOBJECT m_pDataObj
Definition: vfdshext.h:25
DWORD DoVfdProtect(HWND hParent)
Definition: vfdshmenu.cpp:493
DWORD DoVfdNew(HWND hParent)
char CHAR
Definition: xmlstorage.h:175
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
BOOL(CALLBACK * LPFNADDPROPSHEETPAGE)(HPROPSHEETPAGE, LPARAM)
Definition: prsht.h:309
UINT uFlags
Definition: api.c:59
STDMETHODIMP ReplacePage(UINT uPageID, LPFNADDPROPSHEETPAGE lpfnReplaceWith, LPARAM lParam)
Definition: vfdshprop.cpp:454
char * LPSTR
Definition: xmlstorage.h:182
DWORD DoVfdSave(HWND hParent)
Definition: vfdshmenu.cpp:475
DWORD DoVfdDrop(HWND hParent)
Definition: vfdshmenu.cpp:529
BOOL m_bDragDrop
Definition: vfdshext.h:28
STDMETHODIMP QueryInterface(REFIID, LPVOID *)
Definition: vfdshext.cpp:55
CVfdShExt * LPCVFDSHEXT
Definition: vfdshext.h:101
unsigned int BOOL
Definition: ntddk_ex.h:94
ULONG m_nDevice
Definition: vfdshext.h:26
#define STDMETHODIMP
Definition: basetyps.h:43
r reserved
Definition: btrfs.c:2865
ULONG Release()
LONG_PTR LPARAM
Definition: windef.h:208
PCSTR GetTarget()
Definition: vfdshext.h:45
STDMETHODIMP_(ULONG) AddRef()
struct IContextMenu::tagCMINVOKECOMMANDINFO * LPCMINVOKECOMMANDINFO
~CVfdShExt()
Definition: vfdshext.cpp:42
CHAR m_sTarget[MAX_PATH]
Definition: vfdshext.h:27
STDMETHODIMP GetCommandString(UINT idCmd, UINT uFlags, UINT *reserved, LPSTR pszName, UINT cchMax)
Definition: vfdshmenu.cpp:269
#define MAX_PATH
Definition: compat.h:26
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned __int3264 UINT_PTR
Definition: mstsclib_h.h:274
ULONG AddRef()
UINT cchMax
ULONG GetDevice()
Definition: vfdshext.h:44
const DOCKBAR PVOID HWND hParent
Definition: tooldock.h:22
interface IDataObject * LPDATAOBJECT
Definition: objfwd.h:21
STDMETHODIMP Initialize(LPCITEMIDLIST pIDFolder, LPDATAOBJECT pDataObj, HKEY hKeyID)
Definition: vfdshext.cpp:121
unsigned int UINT
Definition: ndis.h:50
ULONG m_cRefCnt
Definition: vfdshext.h:24
unsigned int ULONG
Definition: retypes.h:1
const char * PCSTR
Definition: typedefs.h:51
STDMETHODIMP AddPages(LPFNADDPROPSHEETPAGE lpfnAddPage, LPARAM lParam)
Definition: vfdshprop.cpp:416
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:60
LPARAM lParam
Definition: combotst.c:139