[PATCH] comdlg32: Dump parameter in PrintDlg16

Detlef Riekenberg wine.dev at web.de
Fri Nov 9 17:06:31 CST 2007


---
 dlls/comdlg32/printdlg.h   |   46 +++++++++++++++++++++++---------------------
 dlls/comdlg32/printdlg16.c |   31 +++++++++++++++++-------------
 2 files changed, 42 insertions(+), 35 deletions(-)

diff --git a/dlls/comdlg32/printdlg.h b/dlls/comdlg32/printdlg.h
index 77a39f9..e0c4adc 100644
--- a/dlls/comdlg32/printdlg.h
+++ b/dlls/comdlg32/printdlg.h
@@ -63,28 +63,28 @@ static const struct pd_flags {
   DWORD  flag;
   LPCSTR name;
 } pd_flags[] = {
-  {PD_SELECTION, "PD_SELECTION "},
-  {PD_PAGENUMS, "PD_PAGENUMS "},
-  {PD_NOSELECTION, "PD_NOSELECTION "},
-  {PD_NOPAGENUMS, "PD_NOPAGENUMS "},
-  {PD_COLLATE, "PD_COLLATE "},
-  {PD_PRINTTOFILE, "PD_PRINTTOFILE "},
-  {PD_PRINTSETUP, "PD_PRINTSETUP "},
-  {PD_NOWARNING, "PD_NOWARNING "},
-  {PD_RETURNDC, "PD_RETURNDC "},
-  {PD_RETURNIC, "PD_RETURNIC "},
-  {PD_RETURNDEFAULT, "PD_RETURNDEFAULT "},
-  {PD_SHOWHELP, "PD_SHOWHELP "},
-  {PD_ENABLEPRINTHOOK, "PD_ENABLEPRINTHOOK "},
-  {PD_ENABLESETUPHOOK, "PD_ENABLESETUPHOOK "},
-  {PD_ENABLEPRINTTEMPLATE, "PD_ENABLEPRINTTEMPLATE "},
-  {PD_ENABLESETUPTEMPLATE, "PD_ENABLESETUPTEMPLATE "},
-  {PD_ENABLEPRINTTEMPLATEHANDLE, "PD_ENABLEPRINTTEMPLATEHANDLE "},
-  {PD_ENABLESETUPTEMPLATEHANDLE, "PD_ENABLESETUPTEMPLATEHANDLE "},
-  {PD_USEDEVMODECOPIES, "PD_USEDEVMODECOPIES[ANDCOLLATE] "},
-  {PD_DISABLEPRINTTOFILE, "PD_DISABLEPRINTTOFILE "},
-  {PD_HIDEPRINTTOFILE, "PD_HIDEPRINTTOFILE "},
-  {PD_NONETWORKBUTTON, "PD_NONETWORKBUTTON "},
+  {PD_SELECTION, "PD_SELECTION"},
+  {PD_PAGENUMS, "PD_PAGENUMS"},
+  {PD_NOSELECTION, "PD_NOSELECTION"},
+  {PD_NOPAGENUMS, "PD_NOPAGENUMS"},
+  {PD_COLLATE, "PD_COLLATE"},
+  {PD_PRINTTOFILE, "PD_PRINTTOFILE"},
+  {PD_PRINTSETUP, "PD_PRINTSETUP"},
+  {PD_NOWARNING, "PD_NOWARNING"},
+  {PD_RETURNDC, "PD_RETURNDC"},
+  {PD_RETURNIC, "PD_RETURNIC"},
+  {PD_RETURNDEFAULT, "PD_RETURNDEFAULT"},
+  {PD_SHOWHELP, "PD_SHOWHELP"},
+  {PD_ENABLEPRINTHOOK, "PD_ENABLEPRINTHOOK"},
+  {PD_ENABLESETUPHOOK, "PD_ENABLESETUPHOOK"},
+  {PD_ENABLEPRINTTEMPLATE, "PD_ENABLEPRINTTEMPLATE"},
+  {PD_ENABLESETUPTEMPLATE, "PD_ENABLESETUPTEMPLATE"},
+  {PD_ENABLEPRINTTEMPLATEHANDLE, "PD_ENABLEPRINTTEMPLATEHANDLE"},
+  {PD_ENABLESETUPTEMPLATEHANDLE, "PD_ENABLESETUPTEMPLATEHANDLE"},
+  {PD_USEDEVMODECOPIES, "PD_USEDEVMODECOPIES[ANDCOLLATE]"},
+  {PD_DISABLEPRINTTOFILE, "PD_DISABLEPRINTTOFILE"},
+  {PD_HIDEPRINTTOFILE, "PD_HIDEPRINTTOFILE"},
+  {PD_NONETWORKBUTTON, "PD_NONETWORKBUTTON"},
   {-1, NULL}
 };
 
@@ -99,4 +99,6 @@ BOOL PRINTDLG_OpenDefaultPrinter(HANDLE 
 LRESULT PRINTDLG_WMCommandA(HWND hDlg, WPARAM wParam,
 			LPARAM lParam, PRINT_PTRA* PrintStructures);
 
+void flags_to_string(DWORD, const struct pd_flags *, LPSTR);
+
 #endif /* _WINE_PRINTDLG_H */
diff --git a/dlls/comdlg32/printdlg16.c b/dlls/comdlg32/printdlg16.c
index b23ef0b..2f285dc 100644
--- a/dlls/comdlg32/printdlg16.c
+++ b/dlls/comdlg32/printdlg16.c
@@ -346,20 +346,25 @@ BOOL16 WINAPI PrintDlg16(
     LPVOID   ptr;
     HINSTANCE16 hInst = GetWindowLongPtrW( HWND_32(lppd->hwndOwner), GWLP_HINSTANCE );
 
+    TRACE("(%p)\n", lppd);
     if(TRACE_ON(commdlg)) {
-        char flagstr[1000] = "";
-	const struct pd_flags *pflag = pd_flags;
-	for( ; pflag->name; pflag++) {
-	    if(lppd->Flags & pflag->flag)
-	        strcat(flagstr, pflag->name);
-	}
-	TRACE("(%p): hwndOwner = %08x, hDevMode = %08x, hDevNames = %08x\n"
-              "pp. %d-%d, min p %d, max p %d, copies %d, hinst %08x\n"
-              "flags %08x (%s)\n",
-	      lppd, lppd->hwndOwner, lppd->hDevMode, lppd->hDevNames,
-	      lppd->nFromPage, lppd->nToPage, lppd->nMinPage, lppd->nMaxPage,
-	      lppd->nCopies, lppd->hInstance, lppd->Flags, flagstr);
-    }
+        char flagstr[1000];
+
+        flags_to_string(lppd->Flags, pd_flags, flagstr);
+        TRACE("hwndOwner = 0x%x, hDevMode = 0x%x, hDevNames = 0x%x\n",
+              lppd->hwndOwner, lppd->hDevMode, lppd->hDevNames);
+        TRACE("flags 0x%x (%s)\n", lppd->Flags, flagstr);
+        TRACE("pages: %d-%d, min %d, max %d, copies %d, hinst 0x%x\n",
+              lppd->nFromPage, lppd->nToPage, lppd->nMinPage, lppd->nMaxPage,
+              lppd->nCopies, lppd->hInstance);
+        TRACE("CustData: 0x%lx, PrintHook: %p, SetupHook: %p\n",
+              lppd->lCustData, lppd->lpfnPrintHook, lppd->lpfnSetupHook);
+        TRACE("PrintTemplateName: 0x%04x %s, SetupTemplateName: 0x%04x %s\n", lppd->lpPrintTemplateName,
+              (lppd->Flags & PD_ENABLEPRINTTEMPLATE) ? debugstr_a(MapSL(lppd->lpPrintTemplateName)) : "",
+              lppd->lpSetupTemplateName,
+              (lppd->Flags & PD_ENABLESETUPTEMPLATE) ? debugstr_a(MapSL(lppd->lpSetupTemplateName)) : "");
+        TRACE("PrintTemplate: 0x%04x, SetupTemplate: 0x%04x\n",
+              lppd->hPrintTemplate, lppd->hSetupTemplate);    }
 
     if(lppd->lStructSize != sizeof(PRINTDLG16)) {
         ERR("structure size %d\n",lppd->lStructSize);
-- 
1.4.1


--=-cGG7bAR82CbYQZdePHDY--




More information about the wine-patches mailing list