ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

shfldr.h
Go to the documentation of this file.
00001 
00002 /*
00003  *  Virtual Folder
00004  *  common definitions
00005  *
00006  *  Copyright 1997          Marcus Meissner
00007  *  Copyright 1998, 1999, 2002  Juergen Schmied
00008  *
00009  * This library is free software; you can redistribute it and/or
00010  * modify it under the terms of the GNU Lesser General Public
00011  * License as published by the Free Software Foundation; either
00012  * version 2.1 of the License, or (at your option) any later version.
00013  *
00014  * This library is distributed in the hope that it will be useful,
00015  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00016  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00017  * Lesser General Public License for more details.
00018  *
00019  * You should have received a copy of the GNU Lesser General Public
00020  * License along with this library; if not, write to the Free Software
00021  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
00022  */
00023 
00024 #ifndef _SHFLDR_H_
00025 #define _SHFLDR_H_
00026 
00027 #define CHARS_IN_GUID 39
00028 
00029 typedef struct {
00030     int colnameid;
00031     int pcsFlags;
00032     int fmt;
00033     int cxChar;
00034 } shvheader;
00035 
00036 #define GET_SHGDN_FOR(dwFlags)         ((DWORD)dwFlags & (DWORD)0x0000FF00)
00037 #define GET_SHGDN_RELATION(dwFlags)    ((DWORD)dwFlags & (DWORD)0x000000FF)
00038 
00039 BOOL SHELL32_GetCustomFolderAttribute (LPCITEMIDLIST pidl, LPCWSTR pwszHeading, LPCWSTR pwszAttribute, LPWSTR pwszValue, DWORD cchValue);
00040 
00041 LPCWSTR GetNextElementW (LPCWSTR pszNext, LPWSTR pszOut, DWORD dwOut);
00042 HRESULT SHELL32_ParseNextElement (IShellFolder2 * psf, HWND hwndOwner, LPBC pbc, LPITEMIDLIST * pidlInOut,
00043                   LPOLESTR szNext, DWORD * pEaten, DWORD * pdwAttributes);
00044 HRESULT SHELL32_GetItemAttributes (IShellFolder * psf, LPCITEMIDLIST pidl, LPDWORD pdwAttributes);
00045 HRESULT SHELL32_GetDisplayNameOfChild (IShellFolder2 * psf, LPCITEMIDLIST pidl, DWORD dwFlags, LPWSTR szOut,
00046                        DWORD dwOutLen);
00047 
00048 HRESULT SHELL32_BindToChild (LPCITEMIDLIST pidlRoot,
00049                  LPCWSTR pathRoot, LPCITEMIDLIST pidlComplete, REFIID riid, LPVOID * ppvOut);
00050 
00051 HRESULT SHELL32_CompareIDs (IShellFolder * iface, LPARAM lParam, LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2);
00052 LPITEMIDLIST SHELL32_CreatePidlFromBindCtx(IBindCtx *pbc, LPCWSTR path);
00053 
00054 static int __inline SHELL32_GUIDToStringA (REFGUID guid, LPSTR str)
00055 {
00056     return sprintf(str, "{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
00057             guid.Data1, guid.Data2, guid.Data3,
00058             guid.Data4[0], guid.Data4[1], guid.Data4[2], guid.Data4[3],
00059             guid.Data4[4], guid.Data4[5], guid.Data4[6], guid.Data4[7]);
00060 }
00061 
00062 static int __inline SHELL32_GUIDToStringW (REFGUID guid, LPWSTR str)
00063 {
00064     static const WCHAR fmtW[] =
00065      { '{','%','0','8','l','x','-','%','0','4','x','-','%','0','4','x','-',
00066      '%','0','2','x','%','0','2','x','-',
00067      '%','0','2','x','%','0','2','x','%','0','2','x','%','0','2','x',
00068      '%','0','2','x','%','0','2','x','}',0 };
00069     return swprintf(str, fmtW,
00070             guid.Data1, guid.Data2, guid.Data3,
00071             guid.Data4[0], guid.Data4[1], guid.Data4[2], guid.Data4[3],
00072             guid.Data4[4], guid.Data4[5], guid.Data4[6], guid.Data4[7]);
00073 }
00074 
00075 void SHELL_FS_ProcessDisplayFilename(LPWSTR szPath, DWORD dwFlags);
00076 BOOL SHELL_FS_HideExtension(LPWSTR pwszPath);
00077 
00078 #endif // _SHFLDR_H_

Generated on Sat May 26 2012 04:25:03 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.