📄 todo.h
字号:
#ifndef __TODO_H
#define __TODO_H
/*
* Stuff missing in our headers
*/
#define SM_REMOTECONTROL 0x2001
/* FIXME: Ugly hack!!! FIX ASAP! Move to uuid! */
static const GUID IID_HACK_IShellView2 = {0x88E39E80,0x3578,0x11CF,{0xAE,0x69,0x08,0x00,0x2B,0x2E,0x12,0x62}};
#define IID_IShellView2 IID_HACK_IShellView2
static const GUID IID_HACK_IShellView3 = {0xEC39FA88,0xF8AF,0x41CF,{0x84,0x21,0x38,0xBE,0xD2,0x8F,0x46,0x73}};
#define IID_IShellView3 IID_HACK_IShellView2
static const GUID VID_HACK_LargeIcons = {0x0057D0E0, 0x3573, 0x11CF, {0xAE, 0x69, 0x08, 0x00, 0x2B, 0x2E, 0x12, 0x62}};
#define VID_LargeIcons VID_HACK_LargeIcons
static const GUID IID_HACK_IDeskBarClient = {0xEB0FE175, 0x1A3A, 0x11D0, {0x89, 0xB3, 0x00, 0xA0, 0xC9, 0x0A, 0x90, 0xAC}};
#define IID_IDeskBarClient IID_HACK_IDeskBarClient
static const GUID IID_HACK_IDeskBar = {0xEB0FE173, 0x1A3A, 0x11D0, {0x89, 0xB3, 0x00, 0xA0, 0xC9, 0x0A, 0x90, 0xAC}};
#define IID_IDeskBar IID_HACK_IDeskBar
static const GUID IID_HACK_IMenuPopup = {0xD1E7AFEB,0x6A2E,0x11D0,{0x8C,0x78,0x00,0xC0,0x4F,0xD9,0x18,0xB4}};
#define IID_IMenuPopup IID_HACK_IMenuPopup
static const GUID IID_HACK_IBanneredBar = {0x596A9A94,0x013E,0x11D1,{0x8D,0x34,0x00,0xA0,0xC9,0x0F,0x27,0x19}};
#define IID_IBanneredBar IID_HACK_IBanneredBar
static const GUID IID_HACK_IInitializeObject = {0x4622AD16,0xFF23,0x11D0,{0x8D,0x34,0x00,0xA0,0xC9,0x0F,0x27,0x19}};
#define IID_IInitializeObject IID_HACK_IInitializeObject
static const GUID SID_HACK_SMenuPopup = {0xD1E7AFEB,0x6A2E,0x11D0,{0x8C,0x78,0x00,0xC0,0x4F,0xD9,0x18,0xB4}};
#define SID_SMenuPopup SID_HACK_SMenuPopup
#ifdef COBJMACROS
#define IDockingWindow_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
#define IDockingWindow_AddRef(T) (T)->lpVtbl->AddRef(T)
#define IDockingWindow_Release(T) (T)->lpVtbl->Release(T)
#define IDockingWindow_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
#define IDockingWindow_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
#define IDockingWindow_ShowDW(T,a) (T)->lpVtbl->ShowDW(T,a)
#define IDockingWindow_CloseDW(T,a) (T)->lpVtbl->CloseDW(T,a)
#define IDockingWindow_ResizeBorderDW(T,a,b,c) (T)->lpVtbl->ResizeBorderDW(T,a,b,c)
#endif
#define INTERFACE IDeskBarClient
DECLARE_INTERFACE_(IDeskBarClient,IUnknown)
{
/*** IUnknown methods ***/
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
/*** IOleWindow methods ***/
STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND*) PURE;
STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL) PURE;
/*** IDeskBarClient methods ***/
STDMETHOD_(HRESULT,SetDeskBarSite)(THIS_ IUnknown*) PURE;
STDMETHOD_(HRESULT,SetModeDBC)(THIS_ DWORD) PURE;
STDMETHOD_(HRESULT,UIActivateDBC)(THIS_ DWORD) PURE;
STDMETHOD_(HRESULT,GetSize)(THIS_ DWORD,LPRECT) PURE;
};
#undef INTERFACE
#ifdef COBJMACROS
#define IDeskBarClient_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
#define IDeskBarClient_AddRef(T) (T)->lpVtbl->AddRef(T)
#define IDeskBarClient_Release(T) (T)->lpVtbl->Release(T)
#define IDeskBarClient_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
#define IDeskBarClient_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
#define IDeskBarClient_SetDeskBarSite(T,a) (T)->lpVtbl->SetDeskBarSite(T,a)
#define IDeskBarClient_SetModeDBC(T,a) (T)->lpVtbl->SetModeDBC(T,a)
#define IDeskBarClient_UIActivateDBC(T,a) (T)->lpVtbl->UIActivateDBC(T,a)
#define IDeskBarClient_GetSize(T,a,b) (T)->lpVtbl->GetSize(T,a,b)
#endif
#define DBIM_TITLE 0x10
#define DBIMF_VARIABLEHEIGHT 0x8
#define DBIMF_DEBOSSED 0x20
#define DBIF_VIEWMODE_VERTICAL 0x1
#include <pshpack8.h>
typedef struct tagDESKBANDINFO
{
DWORD dwMask;
POINTL ptMinSize;
POINTL ptMaxSize;
POINTL ptIntegral;
POINTL ptActual;
WCHAR wszTitle[256];
DWORD dwModeFlags;
COLORREF crBkgnd;
} DESKBANDINFO;
#include <poppack.h>
#define INTERFACE IDeskBand
DECLARE_INTERFACE_(IDeskBand,IUnknown)
{
/*** IUnknown methods ***/
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
/*** IOleWindow methods ***/
STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND*) PURE;
STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL) PURE;
/*** IDockingWindow methods ***/
STDMETHOD_(HRESULT,ShowDW)(THIS_ BOOL) PURE;
STDMETHOD_(HRESULT,CloseDW)(THIS_ DWORD) PURE;
STDMETHOD_(HRESULT,ResizeBoderDW)(THIS_ LPCRECT,IUnknown*,BOOL) PURE;
/*** IDeskBand methods ***/
STDMETHOD_(HRESULT,GetBandInfo)(THIS_ DWORD,DWORD,DESKBANDINFO*) PURE;
};
#undef INTERFACE
#ifdef COBJMACROS
#define IDeskBand_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
#define IDeskBand_AddRef(T) (T)->lpVtbl->AddRef(T)
#define IDeskBand_Release(T) (T)->lpVtbl->Release(T)
#define IDeskBand_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
#define IDeskBand_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
#define IDeskBand_ShowDW(T,a) (T)->lpVtbl->ShowDW(T,a)
#define IDeskBand_CloseDW(T,a) (T)->lpVtbl->CloseDW(T,a)
#define IDeskBand_ResizeBorderDW(T,a,b,c) (T)->lpVtbl->ResizeBorderDW(T,a,b,c)
#define IDeskBand_GetBandInfo(T,a,b,c) (T)->lpVtbl->GetBandInfo(T,a,b,c)
#endif
#define INTERFACE IDeskBar
DECLARE_INTERFACE_(IDeskBar,IUnknown)
{
/*** IUnknown methods ***/
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
/*** IOleWindow methods ***/
STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND*) PURE;
STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL) PURE;
/*** IDeskBar methods ***/
STDMETHOD_(HRESULT,SetClient)(THIS_ IUnknown*) PURE;
STDMETHOD_(HRESULT,GetClient)(THIS_ IUnknown**) PURE;
STDMETHOD_(HRESULT,OnPosRectChangeDB)(THIS_ RECT*) PURE;
};
#undef INTERFACE
#ifdef COBJMACROS
#define IDeskBar_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
#define IDeskBar_AddRef(T) (T)->lpVtbl->AddRef(T)
#define IDeskBar_Release(T) (T)->lpVtbl->Release(T)
#define IDeskBar_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
#define IDeskBar_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
#define IDeskBar_SetClient(T,a) (T)->lpVtbl->SetClient(T,a)
#define IDeskBar_GetClient(T,a) (T)->lpVtbl->GetClient(T,a)
#define IDeskBar_OnPosRectChangeDB(T,a) (T)->lpVtbl->OnPosRectChangeDB(T,a)
#endif
#include <pshpack8.h>
typedef struct
{
DWORD dwMask;
DWORD dwState;
DWORD dwStyle;
} BANDSITEINFO;
#include <poppack.h>
#define BSIM_STATE 0x1
#define BSIM_STYLE 0x2
#define BSIS_AUTOGRIPPER 0x0
#define BSIS_NOGRIPPER 0x1
#define BSIS_ALWAYSGRIPPER 0x2
#define BSIS_LOCKED 0x100
#define BSSF_UNDELETEABLE 0x1000
DEFINE_GUID(IID_IBandSite, 0x4CF504B0, 0xDE96, 0x11D0, 0x8B, 0x3F, 0x00, 0xA0, 0xC9, 0x11, 0xE8, 0xE5);
#define INTERFACE IBandSite
DECLARE_INTERFACE_(IBandSite,IUnknown)
{
/*** IUnknown methods ***/
STDMETHOD_(HRESULT,QueryInterface) (THIS_ REFIID riid, void** ppvObject) PURE;
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
STDMETHOD_(ULONG,Release) (THIS) PURE;
/*** IBandSite methods ***/
STDMETHOD_(HRESULT,AddBand) (THIS_ IUnknown *punk) PURE;
STDMETHOD_(HRESULT,EnumBands) (THIS_ UINT uBand, DWORD *pdwBandID) PURE;
STDMETHOD_(HRESULT,QueryBand) (THIS_ DWORD dwBandID, IDeskBand **ppstb, DWORD *pdwState, LPWSTR pszName, int cchName) PURE;
STDMETHOD_(HRESULT,SetBandState) (THIS_ DWORD dwBandID, DWORD dwMask, DWORD dwState) PURE;
STDMETHOD_(HRESULT,RemoveBand) (THIS_ DWORD dwBandID) PURE;
STDMETHOD_(HRESULT,GetBandObject) (THIS_ DWORD dwBandID, REFIID riid, VOID **ppv) PURE;
STDMETHOD_(HRESULT,SetBandSiteInfo) (THIS_ const BANDSITEINFO *pbsinfo) PURE;
STDMETHOD_(HRESULT,GetBandSiteInfo) (THIS_ BANDSITEINFO *pbsinfo) PURE;
};
#undef INTERFACE
#if defined(COBJMACROS)
/*** IUnknown methods ***/
#define IBandSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IBandSite_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IBandSite_Release(p) (p)->lpVtbl->Release(p)
/*** IBandSite methods ***/
#define IBandSite_AddBand(p,a) (p)->lpVtbl->AddBand(p,a)
#define IBandSite_EnumBands(p,a,b) (p)->lpVtbl->EnumBands(p,a,b)
#define IBandSite_QueryBand(p,a,b,c,d,e) (p)->lpVtbl->QueryBand(p,a,b,c,d,e)
#define IBandSite_SetBandState(p,a,b,c) (p)->lpVtbl->SetBandState(p,a,b,c)
#define IBandSite_RemoveBand(p,a) (p)->lpVtbl->RemoveBand(p,a)
#define IBandSite_GetBandObject(p,a,b,c) (p)->lpVtbl->GetBandObject(p,a,b,c)
#define IBandSite_SetBandSiteInfo(p,a) (p)->lpVtbl->SetBandSiteInfo(p,a)
#define IBandSite_GetBandSiteInfo(p,a) (p)->lpVtbl->GetBandSiteInfo(p,a)
#endif
#include <pshpack8.h>
typedef struct _SV2CVW2_PARAMS
{
DWORD cbSize;
IShellView *psvPrev;
LPCFOLDERSETTINGS pfs;
IShellBrowser *psbOwner;
RECT *prcView;
SHELLVIEWID const *pvid;
HWND hwndView;
} SV2CVW2_PARAMS, *LPSV2CVW2_PARAMS;
#include <poppack.h>
typedef ITEMIDLIST ITEMID_CHILD;
#define PITEMID_CHILD LPITEMIDLIST
typedef const ITEMID_CHILD /* __unaligned */ *PCUITEMID_CHILD;
enum tagSV3CVW3
{
SV3CVW3_DEFAULT = 0x0,
SV3CVW3_NONINTERACTIVE = 0x1,
SV3CVW3_FORCEVIEWMODE = 0x2,
SV3CVW3_FORCEFOLDERFLAGS = 0x4
} ;
typedef DWORD SV3CVW3_FLAGS;
#define INTERFACE IShellView3
DECLARE_INTERFACE_(IShellView3,IShellView)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
STDMETHOD(TranslateAccelerator) (THIS_ LPMSG) PURE;
#ifdef _FIX_ENABLEMODELESS_CONFLICT
STDMETHOD(EnableModelessSV)(THIS_ BOOL) PURE;
#else
STDMETHOD(EnableModeless)(THIS_ BOOL) PURE;
#endif
STDMETHOD(UIActivate)(THIS_ UINT) PURE;
STDMETHOD(Refresh) (THIS) PURE;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -