|
|
#include "stock.h"
#pragma hdrstop
void SHPropertyBag_ReadStrDef(IPropertyBag* ppb, LPCWSTR pszPropName, LPWSTR psz, int cch, LPCWSTR pszDef) { if (FAILED(SHPropertyBag_ReadStr(ppb, pszPropName, psz, cch))) { if (pszDef) { StrCpyNW(psz, pszDef, cch); } else { StrCpyNW(psz, L"", cch); } } }
void SHPropertyBag_ReadIntDef(IPropertyBag* ppb, LPCWSTR pszPropName, int* piResult, int iDef) { if (FAILED(SHPropertyBag_ReadInt(ppb, pszPropName, piResult))) { *piResult = iDef; } }
void SHPropertyBag_ReadSHORTDef(IPropertyBag* ppb, LPCWSTR pszPropName, SHORT* psh, SHORT shDef) { if (FAILED(SHPropertyBag_ReadSHORT(ppb, pszPropName, psh))) { *psh = shDef; } }
void SHPropertyBag_ReadLONGDef(IPropertyBag* ppb, LPCWSTR pszPropName, LONG* pl, LONG lDef) { if (FAILED(SHPropertyBag_ReadLONG(ppb, pszPropName, pl))) { *pl = lDef; } }
void SHPropertyBag_ReadDWORDDef(IPropertyBag* ppb, LPCWSTR pszPropName, DWORD* pdw, DWORD dwDef) { if (FAILED(SHPropertyBag_ReadDWORD(ppb, pszPropName, pdw))) { *pdw = dwDef; } }
void SHPropertyBag_ReadBOOLDef(IPropertyBag* ppb, LPCWSTR pszPropName, BOOL* pf, BOOL fDef) { if (FAILED(SHPropertyBag_ReadBOOL(ppb, pszPropName, pf))) { *pf = fDef; } }
BOOL SHPropertyBag_ReadBOOLDefRet(IPropertyBag* ppb, LPCWSTR pszPropName, BOOL fDef) { BOOL fRet;
SHPropertyBag_ReadBOOLDef(ppb, pszPropName, &fRet, fDef);
return fRet; }
void SHPropertyBag_ReadGUIDDef(IPropertyBag* ppb, LPCWSTR pszPropName, GUID* pguid, const GUID* pguidDef) { if (FAILED(SHPropertyBag_ReadGUID(ppb, pszPropName, pguid))) { *pguid = *pguidDef; } }
void SHPropertyBag_ReadPOINTLDef(IPropertyBag* ppb, LPCWSTR pszPropName, POINTL* ppt, const POINTL* pptDef) { if (FAILED(SHPropertyBag_ReadPOINTL(ppb, pszPropName, ppt))) { *ppt = *pptDef; } }
void SHPropertyBag_ReadPOINTSDef(IPropertyBag* ppb, LPCWSTR pszPropName, POINTS* ppt, const POINTS* pptDef) { if (FAILED(SHPropertyBag_ReadPOINTS(ppb, pszPropName, ppt))) { *ppt = *pptDef; } }
void SHPropertyBag_ReadRECTLDef(IPropertyBag* ppb, LPCWSTR pszPropName, RECTL* prc, const RECTL* prcDef) { if (FAILED(SHPropertyBag_ReadRECTL(ppb, pszPropName, prc))) { *prc = *prcDef; } }
void AppendScreenResString(const WCHAR* psz, WCHAR* pszBuff, ULONG cchBuff) { StrCpyNW(pszBuff, psz, cchBuff); ULONG cch = lstrlenW(pszBuff); SHGetPerScreenResName(pszBuff + cch, cchBuff- cch, 0); }
HRESULT SHPropertyBag_ReadStreamScreenRes(IPropertyBag* ppb, LPCWSTR pszPropName, IStream** ppstm) { WCHAR szScreenResProp[128]; AppendScreenResString(pszPropName, szScreenResProp, ARRAYSIZE(szScreenResProp));
return SHPropertyBag_ReadStream(ppb, szScreenResProp, ppstm); }
HRESULT SHPropertyBag_WriteStreamScreenRes(IPropertyBag* ppb, LPCWSTR pszPropName, IStream* pstm) { WCHAR szScreenResProp[128]; AppendScreenResString(pszPropName, szScreenResProp, ARRAYSIZE(szScreenResProp));
return SHPropertyBag_WriteStream(ppb, szScreenResProp, pstm); }
HRESULT SHPropertyBag_ReadPOINTSScreenRes(IPropertyBag* ppb, LPCWSTR pszPropName, POINTS* ppt) { WCHAR szScreenResProp[128]; AppendScreenResString(pszPropName, szScreenResProp, ARRAYSIZE(szScreenResProp));
return SHPropertyBag_ReadPOINTS(ppb, szScreenResProp, ppt); }
HRESULT SHPropertyBag_WritePOINTSScreenRes(IPropertyBag* ppb, LPCWSTR pszPropName, const POINTS* ppt) { WCHAR szScreenResProp[128]; AppendScreenResString(pszPropName, szScreenResProp, ARRAYSIZE(szScreenResProp));
return SHPropertyBag_WritePOINTS(ppb, szScreenResProp, ppt); }
void SHPropertyBag_ReadDWORDScreenResDef(IPropertyBag* ppb, LPCWSTR pszPropName, DWORD* pdw, DWORD dw) { WCHAR szScreenResProp[128]; AppendScreenResString(pszPropName, szScreenResProp, ARRAYSIZE(szScreenResProp));
SHPropertyBag_ReadDWORDDef(ppb, szScreenResProp, pdw, dw); }
HRESULT SHPropertyBag_WriteDWORDScreenRes(IPropertyBag* ppb, LPCWSTR pszPropName, const DWORD dw) { WCHAR szScreenResProp[128]; AppendScreenResString(pszPropName, szScreenResProp, ARRAYSIZE(szScreenResProp));
return SHPropertyBag_WriteDWORD(ppb, szScreenResProp, dw); }
HRESULT SHPropertyBag_ReadPOINTLScreenRes(IPropertyBag* ppb, LPCWSTR pszPropName, POINTL* ppt) { WCHAR szScreenResProp[128]; AppendScreenResString(pszPropName, szScreenResProp, ARRAYSIZE(szScreenResProp));
return SHPropertyBag_ReadPOINTL(ppb, szScreenResProp, ppt); }
HRESULT SHPropertyBag_WritePOINTLScreenRes(IPropertyBag* ppb, LPCWSTR pszPropName, const POINTL* ppt) { WCHAR szScreenResProp[128]; AppendScreenResString(pszPropName, szScreenResProp, ARRAYSIZE(szScreenResProp));
return SHPropertyBag_WritePOINTL(ppb, szScreenResProp, ppt); }
HRESULT SHPropertyBag_ReadRECTLScreenRes(IPropertyBag* ppb, LPCWSTR pszPropName, RECTL* prc) { WCHAR szScreenResProp[128]; AppendScreenResString(pszPropName, szScreenResProp, ARRAYSIZE(szScreenResProp));
return SHPropertyBag_ReadRECTL(ppb, szScreenResProp, prc); }
HRESULT SHPropertyBag_WriteRECTLScreenRes(IPropertyBag* ppb, LPCWSTR pszPropName, const RECTL* prc) { WCHAR szScreenResProp[128]; AppendScreenResString(pszPropName, szScreenResProp, ARRAYSIZE(szScreenResProp));
return SHPropertyBag_WriteRECTL(ppb, szScreenResProp, prc); }
HRESULT SHPropertyBag_DeleteScreenRes(IPropertyBag* ppb, LPCWSTR pszPropName) { WCHAR szScreenResProp[128]; AppendScreenResString(pszPropName, szScreenResProp, ARRAYSIZE(szScreenResProp));
return SHPropertyBag_Delete(ppb, szScreenResProp); }
|