ReactOS 0.4.16-dev-109-gf4cb10f
CQuickLaunchBand.cpp File Reference
#include <windef.h>
#include <winbase.h>
#include <winreg.h>
#include <wingdi.h>
#include <winnls.h>
#include <wincon.h>
#include <shellapi.h>
#include <shlobj.h>
#include <shlobj_undoc.h>
#include <shlwapi.h>
#include <shlguid_undoc.h>
#include <atlbase.h>
#include <atlcom.h>
#include <atlwin.h>
#include <undocshell.h>
#include <shellutils.h>
#include "CQuickLaunchBand.h"
Include dependency graph for CQuickLaunchBand.cpp:

Go to the source code of this file.

Macros

#define WIN32_NO_STATUS
 
#define _INC_WINDOWS
 
#define COM_NO_WINDOWS_H
 
#define COBJMACROS
 

Functions

HRESULT WINAPI RSHELL_CISFBand_CreateInstance (REFIID riid, void **ppv)
 
HRESULT RegisterComCat ()
 
HRESULT UnregisterComCat ()
 
LPITEMIDLIST PidlBrowse (HWND hwnd, int nCSIDL)
 

Variables

const GUID CLSID_QuickLaunchBand = { 0x260cb95d, 0x4544, 0x44f6, { 0xa0, 0x79, 0x57, 0x5b, 0xaa, 0x60, 0xb7, 0x2f } }
 

Macro Definition Documentation

◆ _INC_WINDOWS

#define _INC_WINDOWS

Definition at line 9 of file CQuickLaunchBand.cpp.

◆ COBJMACROS

#define COBJMACROS

Definition at line 12 of file CQuickLaunchBand.cpp.

◆ COM_NO_WINDOWS_H

#define COM_NO_WINDOWS_H

Definition at line 10 of file CQuickLaunchBand.cpp.

◆ WIN32_NO_STATUS

#define WIN32_NO_STATUS

Definition at line 8 of file CQuickLaunchBand.cpp.

Function Documentation

◆ PidlBrowse()

LPITEMIDLIST PidlBrowse ( HWND  hwnd,
int  nCSIDL 
)

Definition at line 80 of file CQuickLaunchBand.cpp.

81{
82 CComHeapPtr<ITEMIDLIST> pidlRoot;
83
85
86 if (nCSIDL)
87 {
88 SHGetSpecialFolderLocation(hwnd, nCSIDL, &pidlRoot);
89 }
90
91 BROWSEINFO bi = { hwnd, pidlRoot, path, L"Choose a folder", 0, NULL, 0, 0 };
92 LPITEMIDLIST pidlSelected = SHBrowseForFolder(&bi);
93
94 return pidlSelected;
95}
#define NULL
Definition: types.h:112
#define MAX_PATH
Definition: compat.h:34
HRESULT WINAPI SHGetSpecialFolderLocation(HWND hwndOwner, INT nFolder, LPITEMIDLIST *ppidl)
Definition: shellpath.c:3257
#define L(x)
Definition: ntvdm.h:50
#define BROWSEINFO
Definition: shlobj.h:1210
#define SHBrowseForFolder
Definition: shlobj.h:1253
ITEMIDLIST UNALIGNED * LPITEMIDLIST
Definition: shtypes.idl:41
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
__wchar_t WCHAR
Definition: xmlstorage.h:180

Referenced by CQuickLaunchBand::FinalConstruct().

◆ RegisterComCat()

HRESULT RegisterComCat ( )

Definition at line 41 of file CQuickLaunchBand.cpp.

42{
43 CComPtr<ICatRegister> pcr;
44 HRESULT hr = CoCreateInstance(CLSID_StdComponentCategoriesMgr, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(ICatRegister, &pcr));
45 if (SUCCEEDED(hr))
46 {
47 CATID catid = CATID_DeskBand;
48 hr = pcr->RegisterClassImplCategories(CLSID_QuickLaunchBand, 1, &catid);
49 }
50 return hr;
51}
const GUID CLSID_QuickLaunchBand
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
Definition: compobj.c:3325
#define SUCCEEDED(hr)
Definition: intsafe.h:50
GUID catid
Definition: msctf.idl:647
HRESULT hr
Definition: shlfolder.c:183
#define IID_PPV_ARG(Itype, ppType)

Referenced by DllRegisterServer(), and SetRegisterLangBand().

◆ RSHELL_CISFBand_CreateInstance()

HRESULT WINAPI RSHELL_CISFBand_CreateInstance ( REFIID  riid,
void **  ppv 
)

Definition at line 669 of file CISFBand.cpp.

670 {
671 return ShellObjectCreator<CISFBand>(riid, ppv);
672 }
REFIID riid
Definition: atlbase.h:39
REFIID LPVOID * ppv
Definition: atlbase.h:39

Referenced by CQuickLaunchBand::FinalConstruct().

◆ UnregisterComCat()

HRESULT UnregisterComCat ( )

Definition at line 53 of file CQuickLaunchBand.cpp.

54{
55 CComPtr<ICatRegister> pcr;
56 HRESULT hr = CoCreateInstance(CLSID_StdComponentCategoriesMgr, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(ICatRegister, &pcr));
57 if (SUCCEEDED(hr))
58 {
59 CATID catid = CATID_DeskBand;
60 hr = pcr->UnRegisterClassImplCategories(CLSID_QuickLaunchBand, 1, &catid);
61 }
62 return hr;
63}

Referenced by DllUnregisterServer().

Variable Documentation

◆ CLSID_QuickLaunchBand

const GUID CLSID_QuickLaunchBand = { 0x260cb95d, 0x4544, 0x44f6, { 0xa0, 0x79, 0x57, 0x5b, 0xaa, 0x60, 0xb7, 0x2f } }