# HG changeset patch # User Dan # Date 1243351231 14400 # Node ID 6e80a6828d0a010e813c82b6098294b97c223f31 # Parent b081db857e2f375a369d246d45949c801d471ba7 Fixed artifacts in text boxes and other typable things when XPUI_BGIMAGE is enabled diff -r b081db857e2f -r 6e80a6828d0a Contrib/ExperienceUI/XPUI.nsh --- a/Contrib/ExperienceUI/XPUI.nsh Sat Apr 18 07:32:54 2009 -0400 +++ b/Contrib/ExperienceUI/XPUI.nsh Tue May 26 11:20:31 2009 -0400 @@ -255,6 +255,14 @@ !macroend +!macro XPUI_CONTROL_SKIN_PAGE_NOTRANS HWND + + !ifndef XPUI_EXTERNAL_SKINNER + !insertmacro XPUI_CONTROL_SKIN ${HWND} + !endif + +!macroend + !macro XPUI_PAGECOLOR_INIT ID Push $XPUI_HWND @@ -382,20 +390,8 @@ StrCmp $XPUI_ABORTED 1 `` +2 Abort WriteINIStr `$PLUGINSDIR\${FILE}` `Settings` `RTL` `$(^RTL)` - InstallOptions::initDialog /NOUNLOAD `$PLUGINSDIR\${FILE}` - Pop $XPUI_HWND - !insertmacro XPUI_CONTROL_SKIN_PAGE $XPUI_HWND - LockWindow on - StrCpy $XPUI_TEMP2 1199 - XPUI.loop.setctl.${XPUI_UNIQUEID}: - IntOp $XPUI_TEMP2 $XPUI_TEMP2 + 1 - GetDlgItem $XPUI_TEMP1 $XPUI_HWND $XPUI_TEMP2 - !insertmacro XPUI_CONTROL_SKIN_PAGE $XPUI_TEMP1 - IntCmp $XPUI_TEMP2 ${XPUI_INSTALLOPTIONS_MAXFIELD} `` XPUI.loop.setctl.${XPUI_UNIQUEID} - GetDlgItem $XPUI_TEMP1 $HWNDPARENT 1018 - !insertmacro XPUI_CONTROL_SKIN_PAGE $XPUI_TEMP1 - SetBrandingImage /IMGID=1019 /RESIZETOFIT "$PLUGINSDIR\page.bmp" - LockWindow off + + !insertmacro XPUI_INSTALLOPTIONS_INITDIALOG `${FILE}` InstallOptions::show !verbose pop !macroend @@ -407,20 +403,8 @@ StrCmp $XPUI_ABORTED 1 `` +2 Abort WriteINIStr `$PLUGINSDIR\${FILE}` `Settings` `RTL` `$(^RTL)` - InstallOptions::initDialog /NOUNLOAD `$PLUGINSDIR\${FILE}` - Pop $XPUI_HWND - LockWindow on - !insertmacro XPUI_CONTROL_SKIN_PAGE $XPUI_HWND - StrCpy $XPUI_TEMP2 1199 - XPUI.loop.setctl.${XPUI_UNIQUEID}: - IntOp $XPUI_TEMP2 $XPUI_TEMP2 + 1 - GetDlgItem $XPUI_TEMP1 $XPUI_HWND $XPUI_TEMP2 - StrCmp $XPUI_TEMP1 0 XPUI.done - !insertmacro XPUI_CONTROL_SKIN_PAGE $XPUI_TEMP1 - IntCmp $XPUI_TEMP2 ${XPUI_INSTALLOPTIONS_MAXFIELD} XPUI.done.${XPUI_UNIQUEID} XPUI.loop.setctl.${XPUI_UNIQUEID} - XPUI.done.${XPUI_UNIQUEID}: - SetBrandingImage /IMGID=1019 /RESIZETOFIT "$PLUGINSDIR\page.bmp" - LockWindow off + + !insertmacro XPUI_INSTALLOPTIONS_INITDIALOG `${FILE}` InstallOptions::show !verbose pop !macroend @@ -436,14 +420,58 @@ Pop $XPUI_HWND LockWindow on !insertmacro XPUI_CONTROL_SKIN_PAGE $XPUI_HWND - StrCpy $XPUI_TEMP2 1199 + + Push $R0 + Push $R1 + + StrCpy $R0 0 + StrCpy $R1 1199 + + ; $R0 = field count + ; $R1 = control count + ; $XPUI_TEMP2 = total field count + + ReadINIStr $XPUI_TEMP2 `$PLUGINSDIR\${FILE}` "Settings" "NumFields" + XPUI.loop.setctl.${XPUI_UNIQUEID}: - IntOp $XPUI_TEMP2 $XPUI_TEMP2 + 1 - GetDlgItem $XPUI_TEMP1 $XPUI_HWND $XPUI_TEMP2 - StrCmp $XPUI_TEMP1 0 XPUI.done.${XPUI_UNIQUEID} - !insertmacro XPUI_CONTROL_SKIN_PAGE $XPUI_TEMP1 - IntCmp $XPUI_TEMP2 ${XPUI_INSTALLOPTIONS_MAXFIELD} XPUI.done.${XPUI_UNIQUEID} XPUI.loop.setctl.${XPUI_UNIQUEID} - XPUI.done.${XPUI_UNIQUEID}: + + IntOp $R0 $R0 + 1 + IntOp $R1 $R1 + 1 + + ReadINIStr $XPUI_TEMP1 `$PLUGINSDIR\${FILE}` "Field $R0" "Type" + StrCmp $XPUI_TEMP1 "Text" XPUI.SkinNoTrans.${XPUI_UNIQUEID} + StrCmp $XPUI_TEMP1 "Password" XPUI.SkinNoTrans.${XPUI_UNIQUEID} + StrCmp $XPUI_TEMP1 "Listbox" XPUI.SkinNoTrans.${XPUI_UNIQUEID} + StrCmp $XPUI_TEMP1 "Combobox" XPUI.SkinNoTrans.${XPUI_UNIQUEID} + StrCmp $XPUI_TEMP1 "Droplist" XPUI.SkinNoTrans.${XPUI_UNIQUEID} + + StrCmp $XPUI_TEMP1 "FileRequest" XPUI.SkinMulti.${XPUI_UNIQUEID} + StrCmp $XPUI_TEMP1 "DirRequest" XPUI.SkinMulti.${XPUI_UNIQUEID} + + GetDlgItem $XPUI_TEMP1 $XPUI_HWND $R1 + !insertmacro XPUI_CONTROL_SKIN_PAGE $XPUI_TEMP1 + Goto XPUI.SkinDone.${XPUI_UNIQUEID} + + XPUI.SkinNoTrans.${XPUI_UNIQUEID}: + GetDlgItem $XPUI_TEMP1 $XPUI_HWND $R1 + !insertmacro XPUI_CONTROL_SKIN_PAGE_NOTRANS $XPUI_TEMP1 + Goto XPUI.SkinDone.${XPUI_UNIQUEID} + + XPUI.SkinMulti.${XPUI_UNIQUEID}: + GetDlgItem $XPUI_TEMP1 $XPUI_HWND $R1 + !insertmacro XPUI_CONTROL_SKIN_PAGE $XPUI_TEMP1 + IntOp $R1 $R1 + 1 + GetDlgItem $XPUI_TEMP1 $XPUI_HWND $R1 + !insertmacro XPUI_CONTROL_SKIN_PAGE $XPUI_TEMP1 + Goto XPUI.SkinDone.${XPUI_UNIQUEID} + + XPUI.SkinDone.${XPUI_UNIQUEID}: + + IntCmp $R0 $XPUI_TEMP1 0 XPUI.loop.setctl.${XPUI_UNIQUEID} + + Pop $R1 + Pop $R0 + SetBrandingImage /IMGID=1019 /RESIZETOFIT "$PLUGINSDIR\page.bmp" LockWindow off Push $XPUI_HWND