ReactOS  0.4.13-dev-249-gcba1a2f
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  }
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
GLsizei const GLchar ** path
Definition: glext.h:7234
#define BROWSEINFO
Definition: shlobj.h:1128
smooth NULL
Definition: ftsmooth.c:416
#define SHBrowseForFolder
Definition: shlobj.h:1171
__wchar_t WCHAR
Definition: xmlstorage.h:180
HRESULT WINAPI SHGetSpecialFolderLocation(HWND hwndOwner, INT nFolder, LPITEMIDLIST *ppidl)
Definition: shellpath.c:2687
#define MAX_PATH
Definition: compat.h:26
static const WCHAR L[]
Definition: oid.c:1250
Definition: services.c:325
ITEMIDLIST UNALIGNED * LPITEMIDLIST
Definition: shtypes.idl:41

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  }
HRESULT hr
Definition: shlfolder.c:183
#define IID_PPV_ARG(Itype, ppType)
smooth NULL
Definition: ftsmooth.c:416
GUID catid
Definition: msctf.idl:608
LONG HRESULT
Definition: typedefs.h:77
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
Definition: compobj.c:3234
const GUID CLSID_QuickLaunchBand
#define SUCCEEDED(hr)
Definition: intsafe.h:57

Referenced by DllRegisterServer().

◆ RSHELL_CISFBand_CreateInstance()

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

Definition at line 670 of file CISFBand.cpp.

671  {
672  return ShellObjectCreator<CISFBand>(riid, ppv);
673  }
REFIID riid
Definition: precomp.h:44
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  }
HRESULT hr
Definition: shlfolder.c:183
#define IID_PPV_ARG(Itype, ppType)
smooth NULL
Definition: ftsmooth.c:416
GUID catid
Definition: msctf.idl:608
LONG HRESULT
Definition: typedefs.h:77
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
Definition: compobj.c:3234
const GUID CLSID_QuickLaunchBand
#define SUCCEEDED(hr)
Definition: intsafe.h:57

Referenced by DllUnregisterServer().

Variable Documentation

◆ CLSID_QuickLaunchBand

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