implemented feature request #1448176 - show function support for start menu page

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4582 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2006-03-14 14:09:20 +00:00
parent 062dd34c6b
commit 2b364bf17c
2 changed files with 18 additions and 8 deletions

View file

@ -1169,11 +1169,10 @@ Functions</h3>
"parameter">function</span></p>
<p><strong>Notes:</strong></p>
<ul>
<li>The StartMenu page does not have a Show function</li>
<li>In the Pre function of the Welcome page and the Finish page,
you can write to the InstallOptions INI file of the page
(ioSpecial.ini)</li>
<li>In the Show function of Welcome page and the Finish page,
<li>In the Show function of the Welcome, Finish and StartMenu pages,
$MUI_HWND contains the HWND of the inner dialog</li>
</ul>
</div>

View file

@ -849,6 +849,11 @@ Var /GLOBAL MUI_TEMP2
!define "MUI_STARTMENUPAGE_${ID}_REGISTRY_VALUENAME" "${MUI_STARTMENUPAGE_REGISTRY_VALUENAME}"
!endif
!ifndef MUI_VAR_HWND
Var /GLOBAL MUI_HWND
!define MUI_VAR_HWND
!endif
PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}custom
PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuLeave_${MUI_UNIQUEID}
@ -1313,18 +1318,24 @@ Var /GLOBAL MUI_TEMP2
StrCmp $(^RTL) 0 mui.startmenu_nortl
!ifndef MUI_STARTMENUPAGE_NODISABLE
StartMenu::Select /rtl /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" /checknoshortcuts "${MUI_STARTMENUPAGE_TEXT_CHECKBOX}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
StartMenu::Init /NOUNLOAD /rtl /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" /checknoshortcuts "${MUI_STARTMENUPAGE_TEXT_CHECKBOX}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
!else
StartMenu::Select /rtl /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
StartMenu::Init /NOUNLOAD /rtl /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
!endif
Goto mui.startmenu_calldone
Goto mui.startmenu_initdone
mui.startmenu_nortl:
!ifndef MUI_STARTMENUPAGE_NODISABLE
StartMenu::Select /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" /checknoshortcuts "${MUI_STARTMENUPAGE_TEXT_CHECKBOX}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
StartMenu::Init /NOUNLOAD /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" /checknoshortcuts "${MUI_STARTMENUPAGE_TEXT_CHECKBOX}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
!else
StartMenu::Select /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
StartMenu::Init /NOUNLOAD /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
!endif
mui.startmenu_calldone:
mui.startmenu_initdone:
Pop $MUI_HWND
!insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
StartMenu::Show
Pop $MUI_TEMP1
StrCmp $MUI_TEMP1 "success" 0 +2