ReactOS 0.4.15-dev-7834-g00c4b3d
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 11 of file CQuickLaunchBand.cpp.

◆ COBJMACROS

#define COBJMACROS

Definition at line 14 of file CQuickLaunchBand.cpp.

◆ COM_NO_WINDOWS_H

#define COM_NO_WINDOWS_H

Definition at line 12 of file CQuickLaunchBand.cpp.

◆ WIN32_NO_STATUS

#define WIN32_NO_STATUS

Definition at line 10 of file CQuickLaunchBand.cpp.

Function Documentation

◆ PidlBrowse()

LPITEMIDLIST PidlBrowse ( HWND  hwnd,
int  nCSIDL 
)

Definition at line 82 of file CQuickLaunchBand.cpp.

83 {
84 CComHeapPtr<ITEMIDLIST> pidlRoot;
85
87
88 if (nCSIDL)
89 {
90 SHGetSpecialFolderLocation(hwnd, nCSIDL, &pidlRoot);
91 }
92
93 BROWSEINFO bi = { hwnd, pidlRoot, path, L"Choose a folder", 0, NULL, 0, 0 };
94 LPITEMIDLIST pidlSelected = SHBrowseForFolder(&bi);
95
96 return pidlSelected;
97 }
#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:3194
#define L(x)
Definition: ntvdm.h:50
#define BROWSEINFO
Definition: shlobj.h:1203
#define SHBrowseForFolder
Definition: shlobj.h:1246
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 43 of file CQuickLaunchBand.cpp.

44 {
45 CComPtr<ICatRegister> pcr;
46 HRESULT hr = CoCreateInstance(CLSID_StdComponentCategoriesMgr, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(ICatRegister, &pcr));
47 if (SUCCEEDED(hr))
48 {
49 CATID catid = CATID_DeskBand;
50 hr = pcr->RegisterClassImplCategories(CLSID_QuickLaunchBand, 1, &catid);
51 }
52 return hr;
53 }
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 55 of file CQuickLaunchBand.cpp.

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

Referenced by DllUnregisterServer().

Variable Documentation

◆ CLSID_QuickLaunchBand

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