NSIS/Contrib/Modern UI/System.nsh

1956 lines
No EOL
47 KiB
NSIS

;NSIS Modern User Interface version 1.63
;Macro System
;Written by Joost Verburg
;Have a look the scripts in the 'Examples\Modern UI' directory for examples of usage.
;--------------------------------
!echo "NSIS Modern User Interface version 1.63 - © 2002-2003 Joost Verburg"
!ifndef MUI_MANUALVERBOSE
!verbose 3
!endif
!ifndef MUI_INCLUDED
!define MUI_INCLUDED
!include "WinMessages.nsh"
!define MUI_TEMP1 $R0
!define MUI_TEMP2 $R1
!define MUI_TEMP3 $R2
!macro MUI_INTERFACE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
;User interface
!ifndef MUI_UI
!define MUI_UI "${NSISDIR}\Contrib\UIs\modern.exe"
!endif
!ifndef MUI_UI_HEADERBITMAP
!define MUI_UI_HEADERBITMAP "${NSISDIR}\Contrib\UIs\modern_headerbmp.exe"
!endif
!ifndef MUI_UI_HEADERBITMAP_RIGHT
!define MUI_UI_HEADERBITMAP_RIGHT "${NSISDIR}\Contrib\UIs\modern_headerbmpr.exe"
!endif
!ifndef MUI_UI_SMALLDESCRIPTION
!define MUI_UI_SMALLDESCRIPTION "${NSISDIR}\Contrib\UIs\modern_smalldesc.exe"
!endif
!ifndef MUI_UI_NODESCRIPTION
!define MUI_UI_NODESCRIPTION "${NSISDIR}\Contrib\UIs\modern_nodesc.exe"
!endif
!ifndef MUI_ICON
!define MUI_ICON "${NSISDIR}\Contrib\Icons\modern-install.ico"
!endif
!ifndef MUI_UNICON
!define MUI_UNICON "${NSISDIR}\Contrib\Icons\modern-uninstall.ico"
!endif
!ifndef MUI_CHECKBITMAP
!define MUI_CHECKBITMAP "${NSISDIR}\Contrib\Icons\modern.bmp"
!endif
!ifndef MUI_FONT
!define MUI_FONT "MS Shell Dlg"
!endif
!ifndef MUI_FONTSIZE
!define MUI_FONTSIZE "8"
!endif
!ifndef MUI_FONT_HEADER
!define MUI_FONT_HEADER "MS Shell Dlg"
!endif
!ifndef MUI_FONTSIZE_HEADER
!define MUI_FONTSIZE_HEADER "8"
!endif
!ifndef MUI_FONTSTYLE_HEADER
!define MUI_FONTSTYLE_HEADER "700"
!endif
!ifndef MUI_FONT_TITLE
!define MUI_FONT_TITLE "Verdana"
!endif
!ifndef MUI_FONTSIZE_TITLE
!define MUI_FONTSIZE_TITLE "12"
!endif
!ifndef MUI_FONTSTYLE_TITLE
!define MUI_FONTSTYLE_TITLE "700"
!endif
!ifndef MUI_INSTALLCOLORS
!define MUI_INSTALLCOLORS "/windows"
!endif
!ifndef MUI_PROGRESSBAR
!define MUI_PROGRESSBAR "smooth"
!endif
!ifndef MUI_SPECIALINI
!define MUI_SPECIALINI "${NSISDIR}\Contrib\Modern UI\ioSpecial.ini"
!endif
!ifndef MUI_SPECIALBITMAP
!define MUI_SPECIALBITMAP "${NSISDIR}\Contrib\Icons\modern-wizard.bmp"
!endif
!ifndef MUI_BGCOLOR
!define MUI_BGCOLOR "0xFFFFFF"
!endif
!ifdef MUI_FINISHPAGE
!ifndef MUI_FINISHPAGE_NOAUTOCLOSE
AutoCloseWindow true
!endif
!endif
XPStyle On
!ifndef MUI_RTL_UI
ChangeUI all "${MUI_UI}"
!ifdef MUI_HEADERBITMAP
!ifndef MUI_HEADERBITMAP_RIGHT
ChangeUI IDD_INST "${MUI_UI_HEADERBITMAP}"
!else
ChangeUI IDD_INST "${MUI_UI_HEADERBITMAP_RIGHT}"
!endif
!endif
!ifdef MUI_COMPONENTSPAGE_SMALLDESC
ChangeUI IDD_SELCOM "${MUI_UI_SMALLDESCRIPTION}"
!else ifdef MUI_COMPONENTSPAGE_NODESC
ChangeUI IDD_SELCOM "${MUI_UI_NODESCRIPTION}"
!endif
!else
ChangeUI /RTL all "${MUI_UI}"
!ifndef MUI_HEADERBITMAP_RIGHT
ChangeUI /RTL IDD_INST "${MUI_UI_HEADERBITMAP}"
!else
ChangeUI /RTL IDD_INST "${MUI_UI_HEADERBITMAP_RIGHT}"
!endif
!ifdef MUI_COMPONENTSPAGE_SMALLDESC
ChangeUI /RTL IDD_SELCOM "${MUI_UI_SMALLDESCRIPTION}"
!else ifdef MUI_COMPONENTSPAGE_NODESC
ChangeUI /RTL IDD_SELCOM "${MUI_UI_NODESCRIPTION}"
!endif
!endif
Icon "${MUI_ICON}"
!ifdef MUI_UNINSTALLER
UninstallIcon "${MUI_UNICON}"
!endif
CheckBitmap "${MUI_CHECKBITMAP}"
SetFont "${MUI_FONT}" "${MUI_FONTSIZE}"
InstallColors ${MUI_INSTALLCOLORS}
InstProgressFlags ${MUI_PROGRESSBAR}
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_INNERDIALOG_TEXT CONTROL TEXT
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
;Set text on inner dialogs component
Push ${MUI_TEMP1}
FindWindow ${MUI_TEMP1} "#32770" "" $HWNDPARENT
GetDlgItem ${MUI_TEMP1} ${MUI_TEMP1} ${CONTROL}
SendMessage ${MUI_TEMP1} ${WM_SETTEXT} 0 "STR:${TEXT}"
Pop ${MUI_TEMP1}
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_HEADER_TEXT TEXT SUBTEXT
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
;Set text on the white rectangle
Push ${MUI_TEMP1}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1037
SendMessage ${MUI_TEMP1} ${WM_SETTEXT} 0 "STR:${TEXT}"
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1038
SendMessage ${MUI_TEMP1} ${WM_SETTEXT} 0 "STR:${SUBTEXT}"
Pop ${MUI_TEMP1}
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_DESCRIPTION_BEGIN
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Push ${MUI_TEMP1}
FindWindow ${MUI_TEMP1} "#32770" "" $HWNDPARENT
GetDlgItem ${MUI_TEMP1} ${MUI_TEMP1} 1043
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_DESCRIPTION_TEXT VAR TEXT
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
;Set text on the Description frame
StrCmp $0 ${VAR} "" +3
SendMessage ${MUI_TEMP1} ${WM_SETTEXT} 0 "STR:${TEXT}"
Goto description_done
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_DESCRIPTION_END
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
description_done:
Pop ${MUI_TEMP1}
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FINISHHEADER
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
;Finish text on the header (white rectangle)
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_FINISH_TITLE) $(MUI_TEXT_FINISH_SUBTITLE)
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_UNFINISHHEADER
!ifndef MUI_MANUALVERBOSE
!verbose 3
!endif
!define MUI_NOVERBOSE
;Finish text on the header (white rectangle)
!insertmacro MUI_HEADER_TEXT $(un.MUI_UNTEXT_FINISHED_TITLE) $(un.MUI_UNTEXT_FINISHED_SUBTITLE)
!undef MUI_NOVERBOSE
!ifndef MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_ABORTWARNING
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
;Warning when Cancel button is pressed
MessageBox MB_YESNO|MB_ICONEXCLAMATION "$(MUI_TEXT_ABORTWARNING)" IDYES quit
Abort
quit:
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_GUIINIT
!insertmacro MUI_WELCOMEFINISHPAGE_INIT
!insertmacro MUI_HEADERBITMAP_INIT
!insertmacro MUI_GUIINIT_BASIC
!macroend
!macro MUI_UNGUIINIT
!insertmacro MUI_HEADERBITMAP_INIT
!insertmacro MUI_GUIINIT_BASIC
!macroend
!macro MUI_GUIINIT_BASIC
Push ${MUI_TEMP1}
Push ${MUI_TEMP2}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1037
CreateFont ${MUI_TEMP2} "${MUI_FONT_HEADER}" "${MUI_FONTSIZE_HEADER}" "${MUI_FONTSTYLE_HEADER}"
SendMessage ${MUI_TEMP1} ${WM_SETFONT} ${MUI_TEMP2} 0
SetBkColor ${MUI_TEMP1} "${MUI_BGCOLOR}"
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1038
SetBkColor ${MUI_TEMP1} "${MUI_BGCOLOR}"
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1034
SetBkColor ${MUI_TEMP1} "${MUI_BGCOLOR}"
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1039
SetBkColor ${MUI_TEMP1} "${MUI_BGCOLOR}"
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1028
SetBkColor ${MUI_TEMP1} -1
GetWindowText ${MUI_TEMP2} ${MUI_TEMP1}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1256
SetBkColor ${MUI_TEMP1} -1
SendMessage ${MUI_TEMP1} ${WM_SETTEXT} ${NSIS_MAX_STRLEN} "STR:${MUI_TEMP2}"
Pop ${MUI_TEMP2}
Pop ${MUI_TEMP1}
!macroend
!macro MUI_WELCOMEFINISHPAGE_INIT
!ifdef MUI_WELCOMEPAGE || MUI_FINISHPAGE
;Extract InstallOptions INI Files
!insertmacro MUI_INSTALLOPTIONS_EXTRACT_AS "${MUI_SPECIALINI}" "ioSpecial.ini"
!insertmacro MUI_INSTALLOPTIONS_EXTRACT_AS "${MUI_SPECIALBITMAP}" "modern-wizard.bmp"
;Write bitmap location
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 1" "Text" "$PLUGINSDIR\modern-wizard.bmp"
;Write Welcome text
!ifdef MUI_WELCOMEPAGE
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 2" "Text" "$(MUI_TEXT_WELCOME_INFO_TITLE)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Text" "$(MUI_TEXT_WELCOME_INFO_TEXT)"
!endif
!endif
!macroend
!macro MUI_HEADERBITMAP_INIT
!ifdef MUI_HEADERBITMAP
InitPluginsDir
File "/oname=$PLUGINSDIR\modern-header.bmp" "${MUI_HEADERBITMAP}"
SetBrandingImage /IMGID=1046 /RESIZETOFIT "$PLUGINSDIR\modern-header.bmp"
!endif
!macroend
!macro MUI_LANGUAGE LANGUAGE
!ifndef MUI_MANUALVERBOSE
!verbose 3
!endif
!include "${NSISDIR}\Contrib\Modern UI\Language files\${LANGUAGE}.nsh"
!ifndef MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_LANGDLL_PUSH LANGUAGE
;1.62 compatibility
!error "To use the language selection dialog, you only have to add '!insertmacro MUI_LANGDLL_DISPLAY' to .onInit now. You should remove all the other code and Push commands."
!macroend
!macro MUI_STARTMENU_WRITE_BEGIN
!verbose 3
Push ${MUI_TEMP1}
StrCpy ${MUI_TEMP1} ${MUI_STARTMENUPAGE_VARIABLE} 1
StrCmp ${MUI_TEMP1} ">" no_startmenu_shortcuts
Pop ${MUI_TEMP1}
!verbose 4
!macroend
!macro MUI_STARTMENU_WRITE_END
!verbose 3
!ifdef MUI_STARTMENUPAGE_REGISTRY_ROOT & MUI_STARTMENUPAGE_REGISTRY_KEY & MUI_STARTMENUPAGE_REGISTRY_VALUENAME
WriteRegStr "${MUI_STARTMENUPAGE_REGISTRY_ROOT}" "${MUI_STARTMENUPAGE_REGISTRY_KEY}" "${MUI_STARTMENUPAGE_REGISTRY_VALUENAME}" "${MUI_STARTMENUPAGE_VARIABLE}"
!endif
no_startmenu_shortcuts:
!verbose 4
!macroend
!macro MUI_LANGDLL_DISPLAY
!ifndef MUI_MANUALVERBOSE
!verbose 3
!endif
!ifndef MUI_TEXT_LANGDLL_WINDOWTITLE
!define MUI_TEXT_LANGDLL_WINDOWTITLE "Installer Language"
!endif
!ifndef MUI_TEXT_LANGDLL_INFO
!define MUI_TEXT_LANGDLL_INFO "Please select a language."
!endif
!ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
Push ${MUI_TEMP1}
ReadRegStr ${MUI_TEMP1} "${MUI_LANGDLL_REGISTRY_ROOT}" "${MUI_LANGDLL_REGISTRY_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
StrCmp ${MUI_TEMP1} "" showlangdialog
StrCpy $LANGUAGE ${MUI_TEMP1}
Goto langdll_done
showlangdialog:
Pop ${MUI_TEMP1}
!endif
LangDLL::LangDialog "${MUI_TEXT_LANGDLL_WINDOWTITLE}" "${MUI_TEXT_LANGDLL_INFO}" A ${MUI_LANGDLL_PUSHLIST} ""
Pop $LANGUAGE
StrCmp $LANGUAGE "cancel" 0 +2
Abort
!ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
WriteRegStr "${MUI_LANGDLL_REGISTRY_ROOT}" "${MUI_LANGDLL_REGISTRY_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}" $LANGUAGE
langdll_done:
!endif
!ifndef MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
;--------------------------------
;PAGE COMMANDS
!macro MUI_PAGECOMMANDS
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifndef MUI_CUSTOMPAGECOMMANDS
!insertmacro MUI_PAGECOMMAND_WELCOME
!insertmacro MUI_PAGECOMMAND_LICENSE
!insertmacro MUI_PAGECOMMAND_COMPONENTS
!insertmacro MUI_PAGECOMMAND_DIRECTORY
!insertmacro MUI_PAGECOMMAND_STARTMENU
!insertmacro MUI_PAGECOMMAND_INSTFILES
!insertmacro MUI_PAGECOMMAND_FINISH
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_PAGECOMMAND_WELCOME
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifdef MUI_WELCOMEPAGE
Page custom mui.Welcome "" "" "MUI_INSTALLBUTTON_WELCOME"
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_PAGECOMMAND_LICENSE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifdef MUI_LICENSEPAGE
Page license mui.LicensePre mui.LicenseShow mui.LicenseLeave
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_PAGECOMMAND_COMPONENTS
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifdef MUI_COMPONENTSPAGE
Page components mui.ComponentsPre mui.ComponentsShow mui.ComponentsLeave "MUI_INSTALLBUTTON_COMPONENTS"
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_PAGECOMMAND_DIRECTORY
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifdef MUI_DIRECTORYPAGE
Page directory mui.DirectoryPre mui.DirectoryShow mui.DirectoryLeave "MUI_INSTALLBUTTON_DIRECTORY"
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_PAGECOMMAND_STARTMENU
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifdef MUI_STARTMENUPAGE
Page custom mui.Startmenu "" "" "MUI_INSTALLBUTTON_STARTMENU"
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_PAGECOMMAND_INSTFILES
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Page instfiles mui.InstFilesPre mui.InstFilesShow mui.InstFilesLeave
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_PAGECOMMAND_FINISH
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifdef MUI_FINISHPAGE
!ifdef MUI_FINISHPAGE_RUN | MUI_FINISHPAGE_SHOWREADME)
Page custom mui.Finish /ENABLECANCEL
!else
Page custom mui.Finish
!endif
!endif
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_UNPAGECOMMANDS
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifndef MUI_UNCUSTOMPAGECOMMANDS
!insertmacro MUI_UNPAGECOMMAND_CONFIRM
!insertmacro MUI_UNPAGECOMMAND_INSTFILES
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_UNPAGECOMMAND_CONFIRM
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifdef MUI_UNCONFIRMPAGE
UninstPage uninstConfirm un.mui.ConfirmPre un.mui.ConfirmShow un.mui.ConfirmLeave "MUI_UNINSTALLBUTTON_CONFIRM"
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_UNPAGECOMMAND_INSTFILES
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
UninstPage instfiles un.mui.InstFilesPre un.mui.InstFilesShow un.mui.InstFilesLeave
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
;--------------------------------
;INSTALL OPTIONS
!macro MUI_INSTALLOPTIONS_EXTRACT FILE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
;Init plugin system
InitPluginsDir
File "/oname=$PLUGINSDIR\${FILE}" "${FILE}"
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_INSTALLOPTIONS_EXTRACT_AS FILE FILENAME
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
;Init plugin system
InitPluginsDir
File "/oname=$PLUGINSDIR\${FILENAME}" "${FILE}"
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_INSTALLOPTIONS_DISPLAY FILE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Push ${MUI_TEMP1}
InstallOptions::dialog "$PLUGINSDIR\${FILE}"
Pop ${MUI_TEMP1}
Pop ${MUI_TEMP1}
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_INSTALLOPTIONS_DISPLAY_RETURN FILE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
InstallOptions::dialog "$PLUGINSDIR\${FILE}"
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_INSTALLOPTIONS_INITDIALOG FILE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
InstallOptions::initDialog /NOUNLOAD "$PLUGINSDIR\${FILE}"
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_INSTALLOPTIONS_SHOW
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Push ${MUI_TEMP1}
InstallOptions::show
Pop ${MUI_TEMP1}
Pop ${MUI_TEMP1}
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_INSTALLOPTIONS_SHOW_RETURN
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
InstallOptions::show
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_INSTALLOPTIONS_READ VAR FILE SECTION KEY
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
ReadIniStr ${VAR} "$PLUGINSDIR\${FILE}" "${SECTION}" "${KEY}"
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_INSTALLOPTIONS_WRITE FILE SECTION KEY VALUE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
WriteIniStr "$PLUGINSDIR\${FILE}" "${SECTION}" "${KEY}" "${VALUE}"
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
;--------------------------------
;SECTIONS
!macro MUI_SECTIONS_FINISHHEADER
!ifndef MUI_MANUALVERBOSE
!verbose 3
!endif
!define MUI_NOVERBOSE
Section ""
;Invisible section to display the Finish header
!insertmacro MUI_FINISHHEADER
SectionEnd
!undef MUI_NOVERBOSE
!ifndef MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
;--------------------------------
;FUNCTIONS
!macro MUI_FUNCTIONS_GUIINIT
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Function .onGUIInit
!insertmacro MUI_GUIINIT
!ifdef MUI_CUSTOMFUNCTION_GUIINIT
Call "${MUI_CUSTOMFUNCTION_GUIINIT}"
!endif
FunctionEnd
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FUNCTIONS_PAGES
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifdef MUI_WELCOMEPAGE
!insertmacro MUI_FUNCTIONS_WELCOMEPAGE mui.Welcome
!endif
!ifdef MUI_LICENSEPAGE
!insertmacro MUI_FUNCTIONS_LICENSEPAGE mui.LicensePre mui.LicenseShow mui.LicenseLeave
!endif
!ifdef MUI_COMPONENTSPAGE
!insertmacro MUI_FUNCTIONS_COMPONENTSPAGE mui.ComponentsPre mui.ComponentsShow mui.ComponentsLeave
!endif
!ifdef MUI_DIRECTORYPAGE
!insertmacro MUI_FUNCTIONS_DIRECTORYPAGE mui.DirectoryPre mui.DirectoryShow mui.DirectoryLeave
!endif
!ifdef MUI_STARTMENUPAGE
!insertmacro MUI_FUNCTIONS_STARTMENUPAGE mui.Startmenu
!endif
!insertmacro MUI_FUNCTIONS_INSTFILESPAGE mui.InstFilesPre mui.InstFilesShow mui.InstFilesLeave
!ifdef MUI_FINISHPAGE
!insertmacro MUI_FUNCTIONS_FINISHPAGE mui.Finish
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FUNCTIONS_WELCOMEPAGE FUNCTION
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Function "${FUNCTION}"
!ifdef MUI_CUSTOMFUNCTION_WELCOME_PRE
Call "${MUI_CUSTOMFUNCTION_WELCOME_PRE}"
!endif
Push ${MUI_TEMP1}
Push ${MUI_TEMP2}
Push ${MUI_TEMP3}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1028
ShowWindow ${MUI_TEMP1} ${SW_HIDE}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1256
ShowWindow ${MUI_TEMP1} ${SW_HIDE}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1035
ShowWindow ${MUI_TEMP1} ${SW_HIDE}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1045
ShowWindow ${MUI_TEMP1} ${SW_NORMAL}
!insertmacro MUI_INSTALLOPTIONS_INITDIALOG "ioSpecial.ini"
Pop ${MUI_TEMP1}
SetBkColor ${MUI_TEMP1} "${MUI_BGCOLOR}"
GetDlgItem ${MUI_TEMP2} ${MUI_TEMP1} 1201
SetBkColor ${MUI_TEMP2} "${MUI_BGCOLOR}"
CreateFont ${MUI_TEMP3} "${MUI_FONT_TITLE}" "${MUI_FONTSIZE_TITLE}" "${MUI_FONTSTYLE_TITLE}"
SendMessage ${MUI_TEMP2} ${WM_SETFONT} ${MUI_TEMP3} 0
GetDlgItem ${MUI_TEMP2} ${MUI_TEMP1} 1202
SetBkColor ${MUI_TEMP2} "${MUI_BGCOLOR}"
!ifdef MUI_CUSTOMFUNCTION_WELCOME_SHOW
Call "${MUI_CUSTOMFUNCTION_WELCOME_SHOW}"
!endif
!insertmacro MUI_INSTALLOPTIONS_SHOW
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1028
ShowWindow ${MUI_TEMP1} ${SW_NORMAL}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1256
ShowWindow ${MUI_TEMP1} ${SW_NORMAL}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1035
ShowWindow ${MUI_TEMP1} ${SW_NORMAL}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1045
ShowWindow ${MUI_TEMP1} ${SW_HIDE}
Pop ${MUI_TEMP3}
Pop ${MUI_TEMP2}
Pop ${MUI_TEMP1}
FunctionEnd
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FUNCTIONS_LICENSEPAGE PRE SHOW LEAVE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Function "${PRE}"
!ifdef MUI_CUSTOMFUNCTION_LICENSE_PRE
Call "${MUI_CUSTOMFUNCTION_LICENSE_PRE}"
!endif
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_LICENSE_TITLE) $(MUI_TEXT_LICENSE_SUBTITLE)
FunctionEnd
Function "${SHOW}"
!insertmacro MUI_INNERDIALOG_TEXT 1040 $(MUI_INNERTEXT_LICENSE_BOTTOM)
!ifdef MUI_CUSTOMFUNCTION_LICENSE_SHOW
Call "${MUI_CUSTOMFUNCTION_LICENSE_SHOW}"
!endif
FunctionEnd
Function "${LEAVE}"
!ifdef MUI_CUSTOMFUNCTION_LICENSE_LEAVE
Call "${MUI_CUSTOMFUNCTION_LICENSE_LEAVE}"
!endif
FunctionEnd
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FUNCTIONS_COMPONENTSPAGE PRE SHOW LEAVE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Function "${PRE}"
!ifdef MUI_CUSTOMFUNCTION_COMPONENTS_PRE
Call "${MUI_CUSTOMFUNCTION_COMPONENTS_PRE}"
!endif
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_COMPONENTS_TITLE) $(MUI_TEXT_COMPONENTS_SUBTITLE)
FunctionEnd
Function "${SHOW}"
!insertmacro MUI_INNERDIALOG_TEXT 1042 $(MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE)
!insertmacro MUI_INNERDIALOG_TEXT 1043 $(MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO)
!ifdef MUI_CUSTOMFUNCTION_COMPONENTS_SHOW
Call "${MUI_CUSTOMFUNCTION_COMPONENTS_SHOW}"
!endif
FunctionEnd
Function "${LEAVE}"
!ifdef MUI_CUSTOMFUNCTION_COMPONENTS_LEAVE
Call "${MUI_CUSTOMFUNCTION_COMPONENTS_LEAVE}"
!endif
FunctionEnd
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FUNCTIONS_DIRECTORYPAGE PRE SHOW LEAVE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Function "${PRE}"
!ifdef MUI_CUSTOMFUNCTION_DIRECTORY_PRE
Call "${MUI_CUSTOMFUNCTION_DIRECTORY_PRE}"
!endif
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_DIRECTORY_TITLE) $(MUI_TEXT_DIRECTORY_SUBTITLE)
FunctionEnd
Function "${SHOW}"
!insertmacro MUI_INNERDIALOG_TEXT 1041 $(MUI_INNERTEXT_DIRECTORY_DESTINATION)
!ifdef MUI_CUSTOMFUNCTION_DIRECTORY_SHOW
Call "${MUI_CUSTOMFUNCTION_DIRECTORY_SHOW}"
!endif
FunctionEnd
Function "${LEAVE}"
!ifdef MUI_CUSTOMFUNCTION_DIRECTORY_LEAVE
Call "${MUI_CUSTOMFUNCTION_DIRECTORY_LEAVE}"
!endif
FunctionEnd
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FUNCTIONS_STARTMENUPAGE FUNCTION
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
;Check defines
!ifndef MUI_STARTMENUPAGE_VARIABLE
!define MUI_STARTMENUPAGE_VARIABLE "$9"
!endif
!ifndef MUI_STARTMENUPAGE_DEFAULTFOLDER
!define MUI_STARTMENUPAGE_DEFAULTFOLDER "${MUI_PRODUCT}"
!endif
Function "${FUNCTION}"
!ifdef MUI_CUSTOMFUNCTION_STARTMENU_PRE
Call "${MUI_CUSTOMFUNCTION_STARTMENU_PRE}"
!endif
Push ${MUI_TEMP1}
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_STARTMENU_TITLE) $(MUI_TEXT_STARTMENU_SUBTITLE)
!ifdef MUI_STARTMENUPAGE_REGISTRY_ROOT & MUI_STARTMENUPAGE_REGISTRY_KEY & MUI_STARTMENUPAGE_REGISTRY_VALUENAME
StrCmp "${MUI_STARTMENUPAGE_VARIABLE}" "" "" +4
ReadRegStr ${MUI_TEMP1} "${MUI_STARTMENUPAGE_REGISTRY_ROOT}" "${MUI_STARTMENUPAGE_REGISTRY_KEY}" "${MUI_STARTMENUPAGE_REGISTRY_VALUENAME}"
StrCmp ${MUI_TEMP1} "" +2
StrCpy "${MUI_STARTMENUPAGE_VARIABLE}" ${MUI_TEMP1}
!endif
!ifndef MUI_STARTMENUPAGE_NODISABLE
StartMenu::Select /noicon /autoadd /text "$(MUI_INNERTEXT_STARTMENU_TOP)" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" /checknoshortcuts "$(MUI_INNERTEXT_STARTMENU_CHECKBOX)" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
!else
StartMenu::Select /noicon /autoadd /text "$(MUI_INNERTEXT_STARTMENU_TOP)" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
!endif
Pop ${MUI_TEMP1}
StrCmp ${MUI_TEMP1} "success" 0 +2
Pop "${MUI_STARTMENUPAGE_VARIABLE}"
Pop ${MUI_TEMP1}
!ifdef MUI_CUSTOMFUNCTION_STARTMENU_LEAVE
Call "${MUI_CUSTOMFUNCTION_STARTMENU_LEAVE}"
!endif
FunctionEnd
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FUNCTIONS_INSTFILESPAGE PRE SHOW LEAVE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Function "${PRE}"
!ifdef MUI_CUSTOMFUNCTION_INSTFILES_PRE
Call "${MUI_CUSTOMFUNCTION_INSTFILES_PRE}"
!endif
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_INSTALLING_TITLE) $(MUI_TEXT_INSTALLING_SUBTITLE)
FunctionEnd
Function "${SHOW}"
!ifdef MUI_CUSTOMFUNCTION_INSTFILES_SHOW
Call "${MUI_CUSTOMFUNCTION_INSTFILES_SHOW}"
!endif
FunctionEnd
Function "${LEAVE}"
!ifdef MUI_CUSTOMFUNCTION_INSTFILES_LEAVE
Call "${MUI_CUSTOMFUNCTION_INSTFILES_LEAVE}"
!endif
FunctionEnd
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FUNCTIONS_FINISHPAGE FUNCTION
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Function "${FUNCTION}"
!ifdef MUI_CUSTOMFUNCTION_FINISH_PRE
Call "${MUI_CUSTOMFUNCTION_FINISH_PRE}"
!endif
Push ${MUI_TEMP1}
Push ${MUI_TEMP2}
Push ${MUI_TEMP3}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1028
ShowWindow ${MUI_TEMP1} ${SW_HIDE}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1256
ShowWindow ${MUI_TEMP1} ${SW_HIDE}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1035
ShowWindow ${MUI_TEMP1} ${SW_HIDE}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1045
ShowWindow ${MUI_TEMP1} ${SW_NORMAL}
;Write Finish text
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 2" "Text" "$(MUI_TEXT_FINISH_INFO_TITLE)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Top" "45"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "85"
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
IfRebootFlag "" noreboot_init
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Text" "$(MUI_TEXT_FINISH_INFO_REBOOT)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "5"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Type" "RadioButton"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Text" "$(MUI_TEXT_FINISH_REBOOTNOW)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Left" "120"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Right" "321"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "90"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "100"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "State" "1"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Type" "RadioButton"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Text" "$(MUI_TEXT_FINISH_REBOOTLATER)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Left" "120"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Right" "321"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Top" "110"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Bottom" "120"
Goto init
noreboot_init:
!endif
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Text" "$(MUI_TEXT_FINISH_INFO_TEXT)"
!ifdef MUI_FINISHPAGE_RUN
!ifndef MUI_FINISHPAGE_SHOWREADME
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "4"
!endif
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Type" "CheckBox"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Text" "$(MUI_TEXT_FINISH_RUN)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Left" "120"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Right" "315"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "90"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "100"
!ifndef MUI_FINISHPAGE_RUN_NOTCHECKED
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "State" "1"
!endif
!ifdef MUI_FINISHPAGE_SHOWREADME
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "5"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Type" "CheckBox"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Text" "$(MUI_TEXT_FINISH_SHOWREADME)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Left" "120"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Right" "315"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Top" "110"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Bottom" "120"
!ifndef MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "State" "1"
!endif
!endif
!else ifdef MUI_FINISHPAGE_SHOWREADME
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "4"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Type" "CheckBox"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Text" "$(MUI_TEXT_FINISH_SHOWREADME)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Left" "120"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Right" "315"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "90"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "100"
!ifndef MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "State" "1"
!endif
!endif
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
init:
!endif
!insertmacro MUI_INSTALLOPTIONS_INITDIALOG "ioSpecial.ini"
Pop ${MUI_TEMP1}
SetBkColor ${MUI_TEMP1} "${MUI_BGCOLOR}"
GetDlgItem ${MUI_TEMP2} ${MUI_TEMP1} 1201
SetBkColor ${MUI_TEMP2} "${MUI_BGCOLOR}"
CreateFont ${MUI_TEMP3} "${MUI_FONT_TITLE}" "${MUI_FONTSIZE_TITLE}" "${MUI_FONTSTYLE_TITLE}"
SendMessage ${MUI_TEMP2} ${WM_SETFONT} ${MUI_TEMP3} 0
GetDlgItem ${MUI_TEMP2} ${MUI_TEMP1} 1202
SetBkColor ${MUI_TEMP2} "${MUI_BGCOLOR}"
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
IfRebootFlag "" noreboot_show
GetDlgItem ${MUI_TEMP2} ${MUI_TEMP1} 1203
SetBkColor ${MUI_TEMP2} "${MUI_BGCOLOR}"
GetDlgItem ${MUI_TEMP2} ${MUI_TEMP1} 1204
SetBkColor ${MUI_TEMP2} "${MUI_BGCOLOR}"
Goto show
noreboot_show:
!endif
!ifdef MUI_FINISHPAGE_RUN
GetDlgItem ${MUI_TEMP2} ${MUI_TEMP1} 1203
SetBkColor ${MUI_TEMP2} "${MUI_BGCOLOR}"
!ifdef MUI_FINISHPAGE_SHOWREADME
GetDlgItem ${MUI_TEMP2} ${MUI_TEMP1} 1204
SetBkColor ${MUI_TEMP2} "${MUI_BGCOLOR}"
!endif
!else ifdef MUI_FINISHPAGE_SHOWREADME
GetDlgItem ${MUI_TEMP2} ${MUI_TEMP1} 1203
SetBkColor ${MUI_TEMP2} "${MUI_BGCOLOR}"
!endif
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
show:
!endif
!ifdef MUI_CUSTOMFUNCTION_FINISH_SHOW
Call "${MUI_CUSTOMFUNCTION_FINISH_SHOW}"
!endif
!insertmacro MUI_INSTALLOPTIONS_SHOW_RETURN
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1028
ShowWindow ${MUI_TEMP1} ${SW_NORMAL}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1256
ShowWindow ${MUI_TEMP1} ${SW_NORMAL}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1035
ShowWindow ${MUI_TEMP1} ${SW_NORMAL}
GetDlgItem ${MUI_TEMP1} $HWNDPARENT 1045
ShowWindow ${MUI_TEMP1} ${SW_HIDE}
Pop ${MUI_TEMP1}
StrCmp ${MUI_TEMP1} "success" "" done
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
IfRebootFlag "" noreboot_end
!insertmacro MUI_INSTALLOPTIONS_READ ${MUI_TEMP1} "ioSpecial.ini" "Field 4" "State"
StrCmp ${MUI_TEMP1} "1" "" +2
Reboot
Goto done
noreboot_end:
!endif
!ifdef MUI_FINISHPAGE_RUN
!insertmacro MUI_INSTALLOPTIONS_READ ${MUI_TEMP1} "ioSpecial.ini" "Field 4" "State"
StrCmp ${MUI_TEMP1} "1" "" +3
!ifndef MUI_FINISHPAGE_RUN_PARAMETERS
StrCpy ${MUI_TEMP1} "$\"${MUI_FINISHPAGE_RUN}$\""
!else
StrCpy ${MUI_TEMP1} "$\"${MUI_FINISHPAGE_RUN}$\" ${MUI_FINISHPAGE_RUN_PARAMETERS}"
!endif
Exec "${MUI_TEMP1}"
!ifdef MUI_FINISHPAGE_SHOWREADME
!insertmacro MUI_INSTALLOPTIONS_READ ${MUI_TEMP1} "ioSpecial.ini" "Field 5" "State"
StrCmp ${MUI_TEMP1} "1" "" +2
ExecShell "open" "${MUI_FINISHPAGE_SHOWREADME}"
!endif
!else ifdef MUI_FINISHPAGE_SHOWREADME
!insertmacro MUI_INSTALLOPTIONS_READ ${MUI_TEMP1} "ioSpecial.ini" "Field 4" "State"
StrCmp ${MUI_TEMP1} "1" "" +2
ExecShell "open" "${MUI_FINISHPAGE_SHOWREADME}"
!endif
!endif
done:
Pop ${MUI_TEMP3}
Pop ${MUI_TEMP2}
Pop ${MUI_TEMP1}
!ifdef MUI_CUSTOMFUNCTION_FINISH
Call "${MUI_CUSTOMFUNCTION_FINISH}"
!endif
FunctionEnd
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FUNCTIONS_DESCRIPTION_BEGIN
!ifndef MUI_MANUALVERBOSE
!verbose 3
!endif
!define MUI_NOVERBOSE
Function .onMouseOverSection
!insertmacro MUI_DESCRIPTION_BEGIN
!undef MUI_NOVERBOSE
!ifndef MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FUNCTIONS_DESCRIPTION_END
!ifndef MUI_MANUALVERBOSE
!verbose 3
!endif
!insertmacro MUI_DESCRIPTION_END
FunctionEnd
!ifndef MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_FUNCTIONS_ABORTWARNING
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifdef MUI_ABORTWARNING
Function .onUserAbort
!insertmacro MUI_ABORTWARNING
!ifdef MUI_CUSTOMFUNCTION_ABORT
Call "${MUI_CUSTOMFUNCTION_ABORT}"
!endif
FunctionEnd
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_UNFUNCTION_GUIINIT
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Function un.onGUIInit
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!insertmacro MUI_UNGUIINIT
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!ifdef MUI_CUSTOMFUNCTION_UNGUIINIT
Call "${MUI_CUSTOMFUNCTION_UNGUIINIT}"
!endif
FunctionEnd
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_UNFUNCTION_PAGES
!ifdef MUI_UNCONFIRMPAGE
!insertmacro MUI_UNFUNCTION_CONFIRMPAGE un.mui.ConfirmPre un.mui.ConfirmShow un.mui.ConfirmLeave
!endif
!insertmacro MUI_UNFUNCTION_INSTFILESPAGE un.mui.InstFilesPre un.mui.InstFilesShow un.mui.InstFilesLeave
!macroend
!macro MUI_UNFUNCTION_CONFIRMPAGE PRE SHOW LEAVE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Function "${PRE}"
!insertmacro MUI_HEADER_TEXT $(un.MUI_UNTEXT_INTRO_TITLE) $(un.MUI_UNTEXT_INTRO_SUBTITLE)
!ifdef MUI_UNCUSTOMFUNCTION_CONFIRM_PRE
Call "${MUI_UNCUSTOMFUNCTION_CONFIRM_PRE}"
!endif
FunctionEnd
Function "${SHOW}"
!ifdef MUI_UNCUSTOMFUNCTION_CONFIRM_SHOW
Call "${MUI_UNCUSTOMFUNCTION_CONFIRM_SHOW}"
!endif
FunctionEnd
Function "${LEAVE}"
!ifdef MUI_UNCUSTOMFUNCTION_CONFIRM_LEAVE
Call "${MUI_UNCUSTOMFUNCTION_CONFIRM_LEAVE}"
!endif
FunctionEnd
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_UNFUNCTION_INSTFILESPAGE PRE SHOW LEAVE
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
Function ${PRE}
!insertmacro MUI_HEADER_TEXT $(un.MUI_UNTEXT_UNINSTALLING_TITLE) $(un.MUI_UNTEXT_UNINSTALLING_SUBTITLE)
!ifdef MUI_UNCUSTOMFUNCTION_INSTFILES_PRE
Call "${MUI_UNCUSTOMFUNCTION_INSTFILES_PRE}"
!endif
FunctionEnd
Function "${SHOW}"
!ifdef MUI_UNCUSTOMFUNCTION_INSTFILES_SHOW
Call "${MUI_UNCUSTOMFUNCTION_INSTFILES_SHOW}"
!endif
FunctionEnd
Function "${LEAVE}"
!ifdef MUI_UNCUSTOMFUNCTION_INSTFILES_LEAVE
Call "${MUI_UNCUSTOMFUNCTION_INSTFILES_LEAVE}"
!endif
FunctionEnd
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
;--------------------------------
;RESERVE FILES
!macro MUI_RESERVEFILE_WELCOMEFINISHPAGE
!verbose 3
!define MUI_NOVERBOSE
!insertmacro MUI_RESERVEFILE_SPECIALINI
!insertmacro MUI_RESERVEFILE_SPECIALBITMAP
!insertmacro MUI_RESERVEFILE_INSTALLOPTIONS
!undef MUI_NOVERBOSE
!verbose 4
!macroend
!macro MUI_RESERVEFILE_INSTALLOPTIONS
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
ReserveFile "${NSISDIR}\Plugins\InstallOptions.dll"
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_RESERVEFILE_SPECIALINI
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
ReserveFile "${NSISDIR}\Contrib\Modern UI\ioSpecial.ini"
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_RESERVEFILE_SPECIALBITMAP
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
ReserveFile "${NSISDIR}\Contrib\Icons\modern-wizard.bmp"
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_RESERVEFILE_LANGDLL
!verbose 3
ReserveFile "${NSISDIR}\Plugins\LangDLL.dll"
!verbose 4
!macroend
;--------------------------------
;BASIC MACRO'S
!macro MUI_SYSTEM
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifndef MUI_SYSTEM_INSERTED
!define MUI_SYSTEM_INSERTED
;1.62 compatibility
!ifdef MUI_STARTMENU_VARIABLE || MUI_STARTMENU_DEFAULTFOLDER || MUI_STARTMENU_REGISTRY_ROOT
!error "The Start Menu Folder page defines have been renamed from MUI_STARTMENU_??? to MUI_STARTMENUPAGE_???. Please rename these defines in your script."
!endif
!insertmacro MUI_INTERFACE
!insertmacro MUI_BASIC
!insertmacro MUI_UNBASIC
!else
;1.62 compatibility
!warning "The MUI_SYSTEM macro is now being inserted automatically. You can remove '!insertmacro MUI_SYSTEM' from your script."
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_BASIC
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!insertmacro MUI_PAGECOMMANDS
!insertmacro MUI_FUNCTIONS_PAGES
!insertmacro MUI_FUNCTIONS_GUIINIT
!insertmacro MUI_FUNCTIONS_ABORTWARNING
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
!macro MUI_UNBASIC
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 3
!endif
!ifdef MUI_UNINSTALLER
!insertmacro MUI_UNPAGECOMMANDS
!insertmacro MUI_UNFUNCTION_PAGES
!insertmacro MUI_UNFUNCTION_GUIINIT
!endif
!ifndef MUI_NOVERBOSE && MUI_MANUALVERBOSE
!verbose 4
!endif
!macroend
;--------------------------------
;LANGUAGE FILES
!macro MUI_LANGUAGEFILE_BEGIN LANGUAGE
!ifndef MUI_SYSTEM_INSERT
!define MUI_SYSTEM_INSERT
!define MUI_NOVERBOSE
!insertmacro MUI_SYSTEM
!undef MUI_NOVERBOSE
!endif
!ifndef "MUI_LANGUAGEFILE_${LANGUAGE}_USED"
!define "MUI_LANGUAGEFILE_${LANGUAGE}_USED"
LoadLanguageFile "${NSISDIR}\Contrib\Language files\${LANGUAGE}.nlf"
!else
!error "Modern UI language file ${LANGUAGE} included twice!"
!endif
!macroend
!macro MUI_LANGUAGEFILE_STRING NAME VALUE
!ifndef "${NAME}"
!define "${NAME}" "${VALUE}"
!endif
!macroend
!macro MUI_LANGUAGEFILE_LANGSTRING NAME
LangString "${NAME}" 0 "${${NAME}}"
!undef "${NAME}"
!macroend
!macro MUI_LANGUAGEFILE_LANGSTRING_CONTINUE NAME INSTALLBUTTON
!ifndef "${INSTALLBUTTON}"
LangString "${NAME}" 0 "${${NAME}}${MUI_TEXT_CONTINUE_NEXT}"
!else
LangString "${NAME}" 0 "${${NAME}}${MUI_TEXT_CONTINUE_INSTALL}"
!endif
!undef "${NAME}"
!macroend
!macro MUI_LANGUAGEFILE_UNLANGSTRING NAME
LangString "un.${NAME}" 0 "${${NAME}}"
!undef "${NAME}"
!macroend
!macro MUI_LANGUAGEFILE_NSISCOMMAND COMMAND NAME
${COMMAND} "${${NAME}}"
!undef "${NAME}"
!macroend
!macro MUI_LANGUAGEFILE_NSISCOMMAND_MULTIPARAMETER COMMAND NAME VALUE
${COMMAND} ${VALUE}
!undef "${NAME}"
!macroend
!macro MUI_LANGUAGEFILE_NSISCOMMAND_CONTINUE COMMAND NAME INSTALLBUTTON
!ifndef "${INSTALLBUTTON}"
${COMMAND} "${${NAME}} ${MUI_TEXT_CONTINUE_NEXT}"
!else
${COMMAND} "${${NAME}} ${MUI_TEXT_CONTINUE_INSTALL}"
!endif
!undef "${NAME}"
!macroend
!macro MUI_LANGUAGEFILE_UNNSISCOMMAND_CONTINUE COMMAND NAME INSTALLBUTTON
!ifndef "${INSTALLBUTTON}"
${COMMAND} "${${NAME}} ${MUI_TEXT_CONTINUE_NEXT}"
!else
${COMMAND} "${${NAME}} ${MUI_UNTEXT_CONTINUE_UNINSTALL}"
!endif
!undef "${NAME}"
!macroend
!macro MUI_LANGUAGEFILE_DEFINE DEFINE NAME
!ifndef "${DEFINE}"
!define "${DEFINE}" "${${NAME}}"
!endif
!undef "${NAME}"
!macroend
!macro MUI_LANGUAGEFILE_END
!insertmacro MUI_LANGUAGEFILE_DEFINE "MUI_${LANGUAGE}_LANGNAME" "MUI_LANGNAME"
!ifndef MUI_LANGDLL_PUSHLIST
!define MUI_LANGDLL_PUSHLIST "'${MUI_${LANGUAGE}_LANGNAME}' ${LANG_${LANGUAGE}} "
!else
!ifdef MUI_LANGDLL_PUSHLIST_TEMP
!undef MUI_LANGDLL_PUSHLIST_TEMP
!endif
!define MUI_LANGDLL_PUSHLIST_TEMP "${MUI_LANGDLL_PUSHLIST}"
!undef MUI_LANGDLL_PUSHLIST
!define MUI_LANGDLL_PUSHLIST "'${MUI_${LANGUAGE}_LANGNAME}' ${LANG_${LANGUAGE}} ${MUI_LANGDLL_PUSHLIST_TEMP}"
!endif
!insertmacro MUI_LANGUAGEFILE_NSISCOMMAND "Name" "MUI_NAME"
SubCaption 0 " "
SubCaption 1 " "
SubCaption 2 " "
SubCaption 3 " "
SubCaption 4 " "
UninstallSubCaption 0 " "
UninstallSubCaption 1 " "
UninstallSubCaption 2 " "
!ifndef MUI_BRANDINGTEXT
!define MUI_BRANDINGTEXT ""
!endif
!insertmacro MUI_LANGUAGEFILE_NSISCOMMAND "BrandingText" "MUI_BRANDINGTEXT"
!ifdef MUI_WELCOMEPAGE
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_WELCOME_INFO_TITLE"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING_CONTINUE "MUI_TEXT_WELCOME_INFO_TEXT" "MUI_INSTALLBUTTON_WELCOME"
!endif
!ifdef MUI_LICENSEPAGE
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_LICENSE_TITLE"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_LICENSE_SUBTITLE"
!insertmacro MUI_LANGUAGEFILE_NSISCOMMAND "LicenseText" "MUI_INNERTEXT_LICENSE_TOP"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_INNERTEXT_LICENSE_BOTTOM"
!endif
!ifdef MUI_COMPONENTSPAGE
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_COMPONENTS_TITLE"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_COMPONENTS_SUBTITLE"
!insertmacro MUI_LANGUAGEFILE_NSISCOMMAND_CONTINUE "ComponentText" "MUI_INNERTEXT_COMPONENTS_TOP" "MUI_INSTALLBUTTON_COMPONENTS"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO"
!endif
!ifdef MUI_DIRECTORYPAGE
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_DIRECTORY_TITLE"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_DIRECTORY_SUBTITLE"
!insertmacro MUI_LANGUAGEFILE_NSISCOMMAND_CONTINUE "DirText" "MUI_INNERTEXT_DIRECTORY_TOP" "MUI_INSTALLBUTTON_DIRECTORY"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_INNERTEXT_DIRECTORY_DESTINATION"
!endif
!ifdef MUI_STARTMENUPAGE
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_STARTMENU_TITLE"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_STARTMENU_SUBTITLE"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING_CONTINUE "MUI_INNERTEXT_STARTMENU_TOP" "MUI_INSTALLBUTTON_STARTMENU"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_INNERTEXT_STARTMENU_CHECKBOX"
!endif
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_INSTALLING_TITLE"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_INSTALLING_SUBTITLE"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_FINISH_TITLE"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_FINISH_SUBTITLE"
!ifdef MUI_FINISHPAGE
!insertmacro MUI_LANGUAGEFILE_NSISCOMMAND_MULTIPARAMETER "MiscButtonText" "MUI_TEXT_FINISH_BUTTON" '"" "" "" "${MUI_TEXT_FINISH_BUTTON}"'
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_FINISH_INFO_TITLE"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_FINISH_INFO_TEXT"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_FINISH_INFO_REBOOT"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_FINISH_REBOOTNOW"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_FINISH_REBOOTLATER"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_FINISH_RUN"
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_FINISH_SHOWREADME"
!endif
!ifdef MUI_ABORTWARNING
!insertmacro MUI_LANGUAGEFILE_LANGSTRING "MUI_TEXT_ABORTWARNING"
!endif
!ifdef MUI_UNINSTALLER
!insertmacro MUI_LANGUAGEFILE_UNLANGSTRING "MUI_UNTEXT_INTRO_TITLE"
!insertmacro MUI_LANGUAGEFILE_UNLANGSTRING "MUI_UNTEXT_INTRO_SUBTITLE"
!ifdef MUI_UNCONFIRMPAGE
!insertmacro MUI_LANGUAGEFILE_UNNSISCOMMAND_CONTINUE "UninstallText" "MUI_UNINNERTEXT_INTRO" "MUI_UNINSTALLBUTTON_CONFIRM"
!endif
!insertmacro MUI_LANGUAGEFILE_UNLANGSTRING "MUI_UNTEXT_UNINSTALLING_TITLE"
!insertmacro MUI_LANGUAGEFILE_UNLANGSTRING "MUI_UNTEXT_UNINSTALLING_SUBTITLE"
!insertmacro MUI_LANGUAGEFILE_UNLANGSTRING "MUI_UNTEXT_FINISHED_TITLE"
!insertmacro MUI_LANGUAGEFILE_UNLANGSTRING "MUI_UNTEXT_FINISHED_SUBTITLE"
!endif
!undef MUI_TEXT_CONTINUE_NEXT
!undef MUI_TEXT_CONTINUE_INSTALL
!ifdef MUI_UNTEXT_CONTINUE_UNINSTALL
!undef MUI_UNTEXT_CONTINUE_UNINSTALL
!endif
!macroend
;--------------------------------
;END
!endif
!ifndef MUI_MANUALVERBOSE
!verbose 4
!endif