oledlg: Debugging code to dump the OLEUIPASTESPECIAL structure.
This commit is contained in:
parent
bed39b45ee
commit
f08c5c2ccf
|
@ -31,6 +31,70 @@
|
|||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(ole);
|
||||
|
||||
static const struct ps_flag
|
||||
{
|
||||
DWORD flag;
|
||||
const char *name;
|
||||
} ps_flags[] = {
|
||||
#define PS_FLAG_ENTRY(p) {p, #p}
|
||||
PS_FLAG_ENTRY(PSF_SHOWHELP),
|
||||
PS_FLAG_ENTRY(PSF_SELECTPASTE),
|
||||
PS_FLAG_ENTRY(PSF_SELECTPASTELINK),
|
||||
PS_FLAG_ENTRY(PSF_CHECKDISPLAYASICON),
|
||||
PS_FLAG_ENTRY(PSF_DISABLEDISPLAYASICON),
|
||||
PS_FLAG_ENTRY(PSF_HIDECHANGEICON),
|
||||
PS_FLAG_ENTRY(PSF_STAYONCLIPBOARDCHANGE),
|
||||
PS_FLAG_ENTRY(PSF_NOREFRESHDATAOBJECT),
|
||||
{-1, NULL}
|
||||
#undef PS_FLAG_ENTRY
|
||||
};
|
||||
|
||||
static void dump_ps_flags(DWORD flags)
|
||||
{
|
||||
char flagstr[1000] = "";
|
||||
|
||||
const struct ps_flag *flag = ps_flags;
|
||||
for( ; flag->name; flag++) {
|
||||
if(flags & flag->flag) {
|
||||
strcat(flagstr, flag->name);
|
||||
strcat(flagstr, "|");
|
||||
}
|
||||
}
|
||||
TRACE("flags %08x %s\n", flags, flagstr);
|
||||
}
|
||||
|
||||
static void dump_pastespecial(LPOLEUIPASTESPECIALW ps)
|
||||
{
|
||||
UINT i;
|
||||
dump_ps_flags(ps->dwFlags);
|
||||
TRACE("hwnd %p caption %s hook %p custdata %lx\n",
|
||||
ps->hWndOwner, debugstr_w(ps->lpszCaption), ps->lpfnHook, ps->lCustData);
|
||||
if(IS_INTRESOURCE(ps->lpszTemplate))
|
||||
TRACE("hinst %p template %04x hresource %p\n", ps->hInstance, (WORD)(ULONG_PTR)ps->lpszTemplate, ps->hResource);
|
||||
else
|
||||
TRACE("hinst %p template %s hresource %p\n", ps->hInstance, debugstr_w(ps->lpszTemplate), ps->hResource);
|
||||
TRACE("dataobj %p arrpasteent %p cpasteent %d arrlinktype %p clinktype %d\n",
|
||||
ps->lpSrcDataObj, ps->arrPasteEntries, ps->cPasteEntries,
|
||||
ps->arrLinkTypes, ps->cLinkTypes);
|
||||
TRACE("cclsidex %d lpclsidex %p nselect %d flink %d hmetapict %p size(%d,%d)\n",
|
||||
ps->cClsidExclude, ps->lpClsidExclude, ps->nSelectedIndex, ps->fLink,
|
||||
ps->hMetaPict, ps->sizel.cx, ps->sizel.cy);
|
||||
for(i = 0; i < ps->cPasteEntries; i++)
|
||||
{
|
||||
TRACE("arrPasteEntries[%d]: cFormat %08x pTargetDevice %p dwAspect %d lindex %d tymed %d\n",
|
||||
i, ps->arrPasteEntries[i].fmtetc.cfFormat, ps->arrPasteEntries[i].fmtetc.ptd,
|
||||
ps->arrPasteEntries[i].fmtetc.dwAspect, ps->arrPasteEntries[i].fmtetc.lindex,
|
||||
ps->arrPasteEntries[i].fmtetc.tymed);
|
||||
TRACE("\tformat name %s result text %s flags %04x\n", debugstr_w(ps->arrPasteEntries[i].lpstrFormatName),
|
||||
debugstr_w(ps->arrPasteEntries[i].lpstrResultText), ps->arrPasteEntries[i].dwFlags);
|
||||
}
|
||||
for(i = 0; i < ps->cLinkTypes; i++)
|
||||
TRACE("arrLinkTypes[%d] %08x\n", i, ps->arrLinkTypes[i]);
|
||||
for(i = 0; i < ps->cClsidExclude; i++)
|
||||
TRACE("lpClsidExclude[%d] %s\n", i, debugstr_guid(&ps->lpClsidExclude[i]));
|
||||
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* OleUIPasteSpecialA (OLEDLG.4)
|
||||
*/
|
||||
|
@ -44,9 +108,12 @@ UINT WINAPI OleUIPasteSpecialA(LPOLEUIPASTESPECIALA lpOleUIPasteSpecial)
|
|||
/***********************************************************************
|
||||
* OleUIPasteSpecialW (OLEDLG.22)
|
||||
*/
|
||||
UINT WINAPI OleUIPasteSpecialW(LPOLEUIPASTESPECIALW lpOleUIPasteSpecial)
|
||||
UINT WINAPI OleUIPasteSpecialW(LPOLEUIPASTESPECIALW ps)
|
||||
{
|
||||
FIXME("(%p): stub\n", lpOleUIPasteSpecial);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return OLEUI_FALSE;
|
||||
TRACE("(%p)\n", ps);
|
||||
|
||||
if(TRACE_ON(ole)) dump_pastespecial(ps);
|
||||
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return OLEUI_FALSE;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue