ReactOS  0.4.14-dev-98-gb0d4763
CDesktopFolder.cpp File Reference
#include <precomp.h>
Include dependency graph for CDesktopFolder.cpp:

Go to the source code of this file.

Classes

class  CDesktopFolderEnum
 

Macros

#define DESKTOPSHELLVIEWCOLUMNS   6
 

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (shell)
 
HRESULT WINAPI IEParseDisplayNameWithBCW (DWORD codepage, LPCWSTR lpszDisplayName, LPBC pbc, LPITEMIDLIST *ppidl)
 
static INT IsNamespaceExtensionHidden (const WCHAR *iid)
 
static INT IsNamespaceExtensionHidden (LPCITEMIDLIST pidl)
 
int SHELL_ConfirmMsgBox (HWND hWnd, LPWSTR lpszText, LPWSTR lpszCaption, HICON hIcon, BOOL bYesToAll)
 
HRESULT WINAPI SHGetDesktopFolder (IShellFolder **psf)
 

Variables

static const WCHAR ClassicStartMenuW []
 
static const shvheader DesktopSFHeader []
 
static const DWORD dwDesktopAttributes
 
static const DWORD dwMyComputerAttributes
 
static DWORD dwMyNetPlacesAttributes
 

Macro Definition Documentation

◆ DESKTOPSHELLVIEWCOLUMNS

#define DESKTOPSHELLVIEWCOLUMNS   6

Definition at line 181 of file CDesktopFolder.cpp.

Function Documentation

◆ IEParseDisplayNameWithBCW()

HRESULT WINAPI IEParseDisplayNameWithBCW ( DWORD  codepage,
LPCWSTR  lpszDisplayName,
LPBC  pbc,
LPITEMIDLIST ppidl 
)

Definition at line 471 of file shdocvw_main.c.

472 {
473  /* Guessing at parameter 3 based on IShellFolder's ParseDisplayName */
474  FIXME("stub: 0x%x %s %p %p\n",codepage,debugstr_w(lpszDisplayName),pbc,ppidl);
475  return E_FAIL;
476 }
#define E_FAIL
Definition: ddrawi.h:102
#define debugstr_w
Definition: kernel32.h:32
#define FIXME(fmt,...)
Definition: debug.h:110
int codepage
Definition: win_iconv.c:156

Referenced by CDesktopFolder::ParseDisplayName().

◆ IsNamespaceExtensionHidden() [1/2]

static INT IsNamespaceExtensionHidden ( const WCHAR iid)
static

Definition at line 51 of file CDesktopFolder.cpp.

52 {
53  DWORD Result, dwResult;
54  dwResult = sizeof(DWORD);
55 
56  if (RegGetValueW(HKEY_CURRENT_USER, /* FIXME use NewStartPanel when activated */
58  iid,
60  NULL,
61  &Result,
62  &dwResult) != ERROR_SUCCESS)
63  {
64  return -1;
65  }
66 
67  return Result;
68 }
LSTATUS WINAPI RegGetValueW(HKEY hKey, LPCWSTR pszSubKey, LPCWSTR pszValue, DWORD dwFlags, LPDWORD pdwType, PVOID pvData, LPDWORD pcbData)
Definition: reg.c:1965
#define ERROR_SUCCESS
Definition: deptool.c:10
#define HKEY_CURRENT_USER
Definition: winreg.h:11
static const WCHAR ClassicStartMenuW[]
#define DWORD
Definition: nt_native.h:44
smooth NULL
Definition: ftsmooth.c:416
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
Definition: wsk.h:426
#define RRF_RT_DWORD
Definition: driver.c:581
unsigned long DWORD
Definition: ntddk_ex.h:95

Referenced by CDesktopFolderEnum::Initialize(), and IsNamespaceExtensionHidden().

◆ IsNamespaceExtensionHidden() [2/2]

static INT IsNamespaceExtensionHidden ( LPCITEMIDLIST  pidl)
static

Definition at line 70 of file CDesktopFolder.cpp.

71 {
72  GUID const *clsid = _ILGetGUIDPointer (pidl);
73  if (!clsid)
74  return -1;
75 
76  WCHAR pwszGuid[CHARS_IN_GUID];
77  SHELL32_GUIDToStringW(*clsid, pwszGuid);
78  return IsNamespaceExtensionHidden(pwszGuid);
79 }
#define CHARS_IN_GUID
__wchar_t WCHAR
Definition: xmlstorage.h:180
IID * _ILGetGUIDPointer(LPCITEMIDLIST pidl)
Definition: pidl.c:2300
static __inline int SHELL32_GUIDToStringW(REFGUID guid, LPWSTR str)
Definition: shfldr.h:81
REFCLSID clsid
Definition: msctf.c:84
static INT IsNamespaceExtensionHidden(const WCHAR *iid)

◆ SHELL_ConfirmMsgBox()

int SHELL_ConfirmMsgBox ( HWND  hWnd,
LPWSTR  lpszText,
LPWSTR  lpszCaption,
HICON  hIcon,
BOOL  bYesToAll 
)

Definition at line 208 of file shlfileop.cpp.

209 {
210  struct confirm_msg_info info;
211 
212  info.lpszText = lpszText;
213  info.lpszCaption = lpszCaption;
214  info.hIcon = hIcon;
215  info.bYesToAll = bYesToAll;
217 }
INT_PTR WINAPI DialogBoxParamW(_In_opt_ HINSTANCE, _In_ LPCWSTR, _In_opt_ HWND, _In_opt_ DLGPROC, _In_ LPARAM)
#define IDD_YESTOALL_MSGBOX
Definition: shresdef.h:352
HWND hWnd
Definition: settings.c:17
HINSTANCE shell32_hInstance
Definition: misc.cpp:82
LONG_PTR LPARAM
Definition: windef.h:208
static INT_PTR CALLBACK ConfirmMsgBoxProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
Definition: shlfileop.cpp:190
HICON hIcon
Definition: msconfig.c:44
#define MAKEINTRESOURCEW(i)
Definition: winuser.h:582
LPWSTR lpszCaption
Definition: shlfileop.cpp:95

Referenced by SHELL_ConfirmDialogW().

◆ SHGetDesktopFolder()

HRESULT WINAPI SHGetDesktopFolder ( IShellFolder **  psf)

Definition at line 876 of file CDesktopFolder.cpp.

877 {
878  HRESULT hres = S_OK;
879  TRACE("\n");
880 
881  if(!psf) return E_INVALIDARG;
882  *psf = NULL;
883  hres = CDesktopFolder::_CreatorClass::CreateInstance(NULL, IID_PPV_ARG(IShellFolder, psf));
884 
885  TRACE("-- %p->(%p)\n",psf, *psf);
886  return hres;
887 }
#define IID_PPV_ARG(Itype, ppType)
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
#define S_OK
Definition: intsafe.h:59

Referenced by CFSDropTarget::_DoDrop(), _GetDocumentsPidl(), CBandSiteMenu::_GetMenuIdFromISFBand(), _ILParsePathW(), _ParsePathToPidl(), BindToDesktop(), CShellItem::BindToHandler(), BrsFolder_NewFolder(), BrsFolder_OnSetExpanded(), CGuidItemExtractIcon_CreateInstance(), COMDLG32_GetDisplayNameOf(), COMDLG32_UpdateCurrentDir(), CShellItem::Compare(), CAddressEditBox::Execute(), FileDialog_constructor(), FILEDLG95_LOOKIN_Init(), FILEDLG95_ValidatePathAction(), CAddressEditBox::FillOneLevel(), CQuickLaunchBand::FinalConstruct(), FM_InitMenuPopup(), CShellItem::get_parent_shellfolder(), CFolderItem::get_Path(), CShellItem::get_shellfolder(), CShellItem::GetAttributes(), GetFullName(), GetName(), GetPidlFromName(), CFolder::GetShellFolder(), GetShellFolderFromPidl(), CFindFolder::GetUIObjectOf(), HCR_GetFolderAttributes(), ILGetDisplayNameExW(), Initialize(), CDesktopBrowser::Initialize(), CFolderItems::Initialize(), CExplorerBand::InitializeExplorerBand(), CISFBand::InitializeSFB(), InitializeTreeView(), InitInstance(), CAddressEditBox::Invoke(), CSearchBar::Invoke(), CCPLItemMenu::InvokeCommand(), CShellBrowser::Navigate(), on_default_action(), CShellMenuCallback::OnGetSubMenu(), CShellBrowser::OnOrganizeFavorites(), CAddressEditBox::ParseNow(), ParseSharedPacket(), CStartMenuBtnCtxMenu::QueryContextMenu(), CNtObjectFolder::ResolveSymLink(), SHBindToFolder(), SHBindToFolderIDListParent(), SHBindToParent(), SHELL_GetPathFromIDListForExecuteW(), ShellFolder::ShellFolder(), SHEmptyRecycleBinW(), SHILCreateFromPathW(), SHOpenFolderAndSelectItems(), SHParseDisplayName(), START_TEST(), test_basics(), test_BindToObject(), test_CallForAttributes(), test_click_make_new_folder_button(), test_CreateViewWindow(), test_CShellMenu(), test_CShellMenu_params(), test_DataObject(), test_desktop_folder(), test_desktop_IPersist(), test_EnumObjects_and_CompareIDs(), test_ExpectFolders_imp(), test_FolderShortcut(), test_GetAttributesOf(), test_GetDisplayName(), test_GetItemObject(), test_GetSetCurrentViewMode(), test_GetUIObject(), test_IFolderView(), test_InputObject(), test_IOleCommandTarget(), test_IOleWindow(), test_IShellFolderView(), test_ITEMIDLIST_format(), test_LocalizedNames(), test_navigation(), test_parse_for_control_panel(), test_parse_for_entire_network(), test_ParseDisplayName(), test_ParseDisplayNamePBC(), test_selection(), test_SHCreateDefaultContextMenu(), test_SHCreateShellFolderView(), test_SHCreateShellFolderViewEx(), test_SHCreateShellItem(), test_SHCreateShellItemArray(), test_ShellFolderViewDual(), test_ShellItemArrayEnumItems(), test_ShellItemArrayGetAttributes(), test_ShellItemCompare(), test_ShellItemGetAttributes(), test_SHGetIDListFromObject(), test_SHGetItemFromDataObject(), test_SHGetItemFromObject(), test_SHGetNameFromIDList(), test_SHGetPathFromIDList(), test_SHIShellFolder_EnumObjects(), test_SHLimitInputEdit(), test_ShortcutFolder(), and test_SHParseDisplayName().

◆ WINE_DEFAULT_DEBUG_CHANNEL()

WINE_DEFAULT_DEBUG_CHANNEL ( shell  )

Variable Documentation

◆ ClassicStartMenuW

const WCHAR ClassicStartMenuW[]
static
Initial value:
= L"SOFTWARE\\Microsoft\\Windows\\"
L"CurrentVersion\\Explorer\\HideDesktopIcons\\ClassicStartMenu"
static const WCHAR L[]
Definition: oid.c:1250

Definition at line 47 of file CDesktopFolder.cpp.

Referenced by CDesktopFolderEnum::AddItemsFromClassicStartMenuKey(), and IsNamespaceExtensionHidden().

◆ DesktopSFHeader

◆ dwDesktopAttributes

const DWORD dwDesktopAttributes
static
Initial value:
=
SFGAO_HASSUBFOLDER | SFGAO_FILESYSTEM | SFGAO_FOLDER | SFGAO_FILESYSANCESTOR |
SFGAO_STORAGEANCESTOR | SFGAO_HASPROPSHEET | SFGAO_STORAGE

Definition at line 183 of file CDesktopFolder.cpp.

Referenced by CDesktopFolder::GetAttributesOf().

◆ dwMyComputerAttributes

const DWORD dwMyComputerAttributes
static
Initial value:
=
SFGAO_CANRENAME | SFGAO_CANDELETE | SFGAO_HASPROPSHEET | SFGAO_DROPTARGET |
SFGAO_FILESYSANCESTOR | SFGAO_FOLDER | SFGAO_HASSUBFOLDER | SFGAO_CANLINK

Definition at line 186 of file CDesktopFolder.cpp.

Referenced by CDesktopFolder::GetAttributesOf().

◆ dwMyNetPlacesAttributes

DWORD dwMyNetPlacesAttributes
static
Initial value:
=
SFGAO_CANRENAME | SFGAO_CANDELETE | SFGAO_HASPROPSHEET | SFGAO_DROPTARGET |
SFGAO_FILESYSANCESTOR | SFGAO_FOLDER | SFGAO_HASSUBFOLDER | SFGAO_CANLINK

Definition at line 189 of file CDesktopFolder.cpp.

Referenced by CDesktopFolder::GetAttributesOf().