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> "parameter">function</span></p>
<p><strong>Notes:</strong></p> <p><strong>Notes:</strong></p>
<ul> <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, <li>In the Pre function of the Welcome page and the Finish page,
you can write to the InstallOptions INI file of the page you can write to the InstallOptions INI file of the page
(ioSpecial.ini)</li> (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> $MUI_HWND contains the HWND of the inner dialog</li>
</ul> </ul>
</div> </div>

View file

@ -849,6 +849,11 @@ Var /GLOBAL MUI_TEMP2
!define "MUI_STARTMENUPAGE_${ID}_REGISTRY_VALUENAME" "${MUI_STARTMENUPAGE_REGISTRY_VALUENAME}" !define "MUI_STARTMENUPAGE_${ID}_REGISTRY_VALUENAME" "${MUI_STARTMENUPAGE_REGISTRY_VALUENAME}"
!endif !endif
!ifndef MUI_VAR_HWND
Var /GLOBAL MUI_HWND
!define MUI_VAR_HWND
!endif
PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}custom PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}custom
PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuLeave_${MUI_UNIQUEID} 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 StrCmp $(^RTL) 0 mui.startmenu_nortl
!ifndef MUI_STARTMENUPAGE_NODISABLE !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 !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 !endif
Goto mui.startmenu_calldone Goto mui.startmenu_initdone
mui.startmenu_nortl: mui.startmenu_nortl:
!ifndef MUI_STARTMENUPAGE_NODISABLE !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 !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 !endif
mui.startmenu_calldone: mui.startmenu_initdone:
Pop $MUI_HWND
!insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
StartMenu::Show
Pop $MUI_TEMP1 Pop $MUI_TEMP1
StrCmp $MUI_TEMP1 "success" 0 +2 StrCmp $MUI_TEMP1 "success" 0 +2