Lei Zhang : comctl32:
Reduce duplicate code between PROPSHEET_CollectSheetInfoA/W.
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Jun 26 07:12:06 CDT 2007
Module: wine
Branch: master
Commit: f4dd14abc6ddf7b1b1f50bf75df8b857af85f6aa
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f4dd14abc6ddf7b1b1f50bf75df8b857af85f6aa
Author: Lei Zhang <thestig at google.com>
Date: Tue Jun 26 00:14:03 2007 -0700
comctl32: Reduce duplicate code between PROPSHEET_CollectSheetInfoA/W.
---
dlls/comctl32/propsheet.c | 55 ++++++++++++++++++++------------------------
1 files changed, 25 insertions(+), 30 deletions(-)
diff --git a/dlls/comctl32/propsheet.c b/dlls/comctl32/propsheet.c
index 6a60e19..b8e156c 100644
--- a/dlls/comctl32/propsheet.c
+++ b/dlls/comctl32/propsheet.c
@@ -286,29 +286,44 @@ static void PROPSHEET_AtoW(LPCWSTR *tostr, LPCSTR frstr)
}
/******************************************************************************
+ * PROPSHEET_CollectSheetInfoCommon
+ *
+ * Common code for PROPSHEET_CollectSheetInfoA/W
+ */
+static void PROPSHEET_CollectSheetInfoCommon(PropSheetInfo * psInfo, DWORD dwFlags)
+{
+ PROPSHEET_UnImplementedFlags(dwFlags);
+
+ psInfo->hasHelp = dwFlags & PSH_HASHELP;
+ psInfo->hasApply = !(dwFlags & PSH_NOAPPLYNOW);
+ psInfo->hasFinish = dwFlags & PSH_WIZARDHASFINISH;
+ psInfo->isModeless = dwFlags & PSH_MODELESS;
+ if (psInfo->active_page < 0 || psInfo->active_page >= psInfo->nPages)
+ psInfo->active_page = 0;
+
+ psInfo->result = 0;
+ psInfo->hImageList = 0;
+ psInfo->activeValid = FALSE;
+}
+
+/******************************************************************************
* PROPSHEET_CollectSheetInfoA
*
* Collect relevant data.
*/
-static BOOL PROPSHEET_CollectSheetInfoA(LPCPROPSHEETHEADERA lppsh,
+static void PROPSHEET_CollectSheetInfoA(LPCPROPSHEETHEADERA lppsh,
PropSheetInfo * psInfo)
{
DWORD dwSize = min(lppsh->dwSize,sizeof(PROPSHEETHEADERA));
DWORD dwFlags = lppsh->dwFlags;
- psInfo->hasHelp = dwFlags & PSH_HASHELP;
- psInfo->hasApply = !(dwFlags & PSH_NOAPPLYNOW);
- psInfo->hasFinish = dwFlags & PSH_WIZARDHASFINISH;
psInfo->useCallback = (dwFlags & PSH_USECALLBACK )&& (lppsh->pfnCallback);
- psInfo->isModeless = dwFlags & PSH_MODELESS;
memcpy(&psInfo->ppshheader,lppsh,dwSize);
TRACE("\n** PROPSHEETHEADER **\ndwSize\t\t%d\ndwFlags\t\t%08x\nhwndParent\t%p\nhInstance\t%p\npszCaption\t'%s'\nnPages\t\t%d\npfnCallback\t%p\n",
lppsh->dwSize, lppsh->dwFlags, lppsh->hwndParent, lppsh->hInstance,
debugstr_a(lppsh->pszCaption), lppsh->nPages, lppsh->pfnCallback);
- PROPSHEET_UnImplementedFlags(lppsh->dwFlags);
-
if (lppsh->dwFlags & INTRNL_ANY_WIZARD)
psInfo->ppshheader.pszCaption = NULL;
else
@@ -332,14 +347,7 @@ static BOOL PROPSHEET_CollectSheetInfoA(LPCPROPSHEETHEADERA lppsh,
else
psInfo->active_page = lppsh->u2.nStartPage;
- if (psInfo->active_page < 0 || psInfo->active_page >= psInfo->nPages)
- psInfo->active_page = 0;
-
- psInfo->result = 0;
- psInfo->hImageList = 0;
- psInfo->activeValid = FALSE;
-
- return TRUE;
+ PROPSHEET_CollectSheetInfoCommon(psInfo, dwFlags);
}
/******************************************************************************
@@ -347,24 +355,18 @@ static BOOL PROPSHEET_CollectSheetInfoA(LPCPROPSHEETHEADERA lppsh,
*
* Collect relevant data.
*/
-static BOOL PROPSHEET_CollectSheetInfoW(LPCPROPSHEETHEADERW lppsh,
+static void PROPSHEET_CollectSheetInfoW(LPCPROPSHEETHEADERW lppsh,
PropSheetInfo * psInfo)
{
DWORD dwSize = min(lppsh->dwSize,sizeof(PROPSHEETHEADERW));
DWORD dwFlags = lppsh->dwFlags;
- psInfo->hasHelp = dwFlags & PSH_HASHELP;
- psInfo->hasApply = !(dwFlags & PSH_NOAPPLYNOW);
- psInfo->hasFinish = dwFlags & PSH_WIZARDHASFINISH;
psInfo->useCallback = (dwFlags & PSH_USECALLBACK) && (lppsh->pfnCallback);
- psInfo->isModeless = dwFlags & PSH_MODELESS;
memcpy(&psInfo->ppshheader,lppsh,dwSize);
TRACE("\n** PROPSHEETHEADER **\ndwSize\t\t%d\ndwFlags\t\t%08x\nhwndParent\t%p\nhInstance\t%p\npszCaption\t%s\nnPages\t\t%d\npfnCallback\t%p\n",
lppsh->dwSize, lppsh->dwFlags, lppsh->hwndParent, lppsh->hInstance, debugstr_w(lppsh->pszCaption), lppsh->nPages, lppsh->pfnCallback);
- PROPSHEET_UnImplementedFlags(lppsh->dwFlags);
-
if (lppsh->dwFlags & INTRNL_ANY_WIZARD)
psInfo->ppshheader.pszCaption = NULL;
else
@@ -387,14 +389,7 @@ static BOOL PROPSHEET_CollectSheetInfoW(LPCPROPSHEETHEADERW lppsh,
else
psInfo->active_page = lppsh->u2.nStartPage;
- if (psInfo->active_page < 0 || psInfo->active_page >= psInfo->nPages)
- psInfo->active_page = 0;
-
- psInfo->result = 0;
- psInfo->hImageList = 0;
- psInfo->activeValid = FALSE;
-
- return TRUE;
+ PROPSHEET_CollectSheetInfoCommon(psInfo, dwFlags);
}
/******************************************************************************
More information about the wine-cvs
mailing list