merged from work
This commit is contained in:
86
KattekerCreator/nsis/Contrib/Modern UI 2/Deprecated.nsh
Normal file
86
KattekerCreator/nsis/Contrib/Modern UI 2/Deprecated.nsh
Normal file
@ -0,0 +1,86 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
Deprecated code - display warnings
|
||||
|
||||
*/
|
||||
|
||||
|
||||
!macro MUI_LEGACY_MAP_NOSTRETCH NAME R
|
||||
!if "${R}" != ""
|
||||
!ifdef ${NAME}NOSTRETCH
|
||||
!define /IfNDef ${NAME}STRETCH NoStretchNoCropNoAlign
|
||||
!endif
|
||||
!else
|
||||
!insertmacro ${__MACRO__} ${NAME}BITMAP_ 1
|
||||
!insertmacro ${__MACRO__} ${NAME}BITMAP_RTL_ 1
|
||||
!insertmacro ${__MACRO__} ${NAME}UNBITMAP_ 1
|
||||
!insertmacro ${__MACRO__} ${NAME}UNBITMAP_RTL_ 1
|
||||
!endif
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;InstallOptions
|
||||
|
||||
!define INSTALLOPTIONS_ERROR "MUI_INSTALLOPTIONS_* macros are no longer a part of MUI2. Include InstallOptions.nsh and use INSTALLOPTIONS_* macros instead. It is also recommended to upgrade to nsDialogs."
|
||||
|
||||
!macro MUI_INSTALLOPTIONS_EXTRACT FILE
|
||||
|
||||
!error "${INSTALLOPTIONS_ERROR}"
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_INSTALLOPTIONS_EXTRACT_AS FILE FILENAME
|
||||
|
||||
!error "${INSTALLOPTIONS_ERROR}"
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_INSTALLOPTIONS_DISPLAY FILE
|
||||
|
||||
!error "${INSTALLOPTIONS_ERROR}"
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_INSTALLOPTIONS_DISPLAY_RETURN FILE
|
||||
|
||||
!error "${INSTALLOPTIONS_ERROR}"
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_INSTALLOPTIONS_INITDIALOG FILE
|
||||
|
||||
!error "${INSTALLOPTIONS_ERROR}"
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_INSTALLOPTIONS_SHOW
|
||||
|
||||
!error "${INSTALLOPTIONS_ERROR}"
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_INSTALLOPTIONS_SHOW_RETURN
|
||||
|
||||
!error "${INSTALLOPTIONS_ERROR}"
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_INSTALLOPTIONS_READ VAR FILE SECTION KEY
|
||||
|
||||
!error "${INSTALLOPTIONS_ERROR}"
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_INSTALLOPTIONS_WRITE FILE SECTION KEY VALUE
|
||||
|
||||
!error "${INSTALLOPTIONS_ERROR}"
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_RESERVEFILE_INSTALLOPTIONS
|
||||
|
||||
!error `MUI_RESERVEFILE_INSTALLOPTIONS is no longer supported as InstallOptions is no longer used by MUI2. Instead, use "ReserveFile /plugin InstallOptions.dll". It is also recommended to upgrade to nsDialogs.`
|
||||
|
||||
!macroend
|
361
KattekerCreator/nsis/Contrib/Modern UI 2/Interface.nsh
Normal file
361
KattekerCreator/nsis/Contrib/Modern UI 2/Interface.nsh
Normal file
@ -0,0 +1,361 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
Interface code for all pages
|
||||
|
||||
*/
|
||||
|
||||
;--------------------------------
|
||||
;Variables
|
||||
|
||||
Var mui.Header.Text
|
||||
Var mui.Header.Text.Font
|
||||
Var mui.Header.SubText
|
||||
Var mui.Header.Background
|
||||
Var mui.Header.Image
|
||||
|
||||
Var mui.Branding.Text
|
||||
Var mui.Branding.Background
|
||||
|
||||
Var mui.Line.Standard
|
||||
Var mui.Line.FullWindow
|
||||
|
||||
Var mui.Button.Next
|
||||
Var mui.Button.Cancel
|
||||
Var mui.Button.Back
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;General interface settings
|
||||
|
||||
!macro MUI_INTERFACE
|
||||
|
||||
!ifndef MUI_INTERFACE
|
||||
|
||||
!define MUI_INTERFACE
|
||||
|
||||
;These values are set after the interface settings in the script,
|
||||
;so the script itself can override all values.
|
||||
|
||||
;Default interface settings in nsisconf.nsh
|
||||
!ifdef MUI_INSERT_NSISCONF
|
||||
!insertmacro MUI_NSISCONF
|
||||
!endif
|
||||
|
||||
;Default interface settings
|
||||
!insertmacro MUI_DEFAULT MUI_UI "${NSISDIR}\Contrib\UIs\modern.exe"
|
||||
!insertmacro MUI_DEFAULT MUI_UI_HEADERIMAGE "${NSISDIR}\Contrib\UIs\modern_headerbmp.exe"
|
||||
!insertmacro MUI_DEFAULT MUI_UI_HEADERIMAGE_RIGHT "${NSISDIR}\Contrib\UIs\modern_headerbmpr.exe"
|
||||
!insertmacro MUI_DEFAULT MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico"
|
||||
!insertmacro MUI_DEFAULT MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"
|
||||
!insertmacro MUI_DEFAULT MUI_BGCOLOR "FFFFFF"
|
||||
!insertmacro MUI_DEFAULT MUI_TEXTCOLOR "000000"
|
||||
|
||||
;Map *_NOSTRETCH legacy define to the correct *_STRETCH value
|
||||
!verbose push 2
|
||||
!insertmacro MUI_LEGACY_MAP_NOSTRETCH MUI_HEADERIMAGE_ ""
|
||||
!insertmacro MUI_LEGACY_MAP_NOSTRETCH MUI_WELCOMEFINISHPAGE_ ""
|
||||
!insertmacro MUI_LEGACY_MAP_NOSTRETCH MUI_UNWELCOMEFINISHPAGE_ ""
|
||||
!verbose pop
|
||||
|
||||
;Default header images
|
||||
!ifdef MUI_HEADERIMAGE
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_HEADERIMAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Header\nsis.bmp"
|
||||
!insertmacro MUI_DEFAULT MUI_HEADERIMAGE_BITMAP_STRETCH "FitControl"
|
||||
!insertmacro MUI_DEFAULT MUI_HEADERIMAGE_BITMAP_RTL_STRETCH ${MUI_HEADERIMAGE_BITMAP_STRETCH}
|
||||
|
||||
!ifndef MUI_HEADERIMAGE_UNBITMAP
|
||||
!define MUI_HEADERIMAGE_UNBITMAP "${MUI_HEADERIMAGE_BITMAP}"
|
||||
!insertmacro MUI_SET MUI_HEADERIMAGE_UNBITMAP_STRETCH ${MUI_HEADERIMAGE_BITMAP_STRETCH}
|
||||
!endif
|
||||
|
||||
!if "${MUI_HEADERIMAGE_BITMAP}" == ""
|
||||
!error "Invalid MUI_HEADERIMAGE_BITMAP"
|
||||
!endif
|
||||
!if "${MUI_HEADERIMAGE_UNBITMAP}" == ""
|
||||
!error "Invalid MUI_HEADERIMAGE_UNBITMAP"
|
||||
!endif
|
||||
|
||||
!ifdef MUI_HEADERIMAGE_BITMAP_RTL
|
||||
!ifndef MUI_HEADERIMAGE_UNBITMAP_RTL
|
||||
!define MUI_HEADERIMAGE_UNBITMAP_RTL "${MUI_HEADERIMAGE_BITMAP_RTL}"
|
||||
!insertmacro MUI_SET MUI_HEADERIMAGE_UNBITMAP_RTL_STRETCH ${MUI_HEADERIMAGE_BITMAP_RTL_STRETCH}
|
||||
!endif
|
||||
|
||||
!if "${MUI_HEADERIMAGE_BITMAP_RTL}" == ""
|
||||
!error "Invalid MUI_HEADERIMAGE_BITMAP_RTL"
|
||||
!endif
|
||||
!if "${MUI_HEADERIMAGE_UNBITMAP_RTL}" == ""
|
||||
!error "Invalid MUI_HEADERIMAGE_UNBITMAP_RTL"
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_HEADERIMAGE_UNBITMAP_STRETCH ${MUI_HEADERIMAGE_BITMAP_STRETCH}
|
||||
!insertmacro MUI_DEFAULT MUI_HEADERIMAGE_UNBITMAP_RTL_STRETCH ${MUI_HEADERIMAGE_BITMAP_RTL_STRETCH}
|
||||
|
||||
!endif
|
||||
|
||||
;Default texts
|
||||
!insertmacro MUI_DEFAULT MUI_ABORTWARNING_TEXT "$(MUI_TEXT_ABORTWARNING)"
|
||||
!insertmacro MUI_DEFAULT MUI_UNABORTWARNING_TEXT "$(MUI_UNTEXT_ABORTWARNING)"
|
||||
|
||||
;Apply settings
|
||||
|
||||
XPStyle On ;XP style setting in manifest resource
|
||||
|
||||
;Dialog resources
|
||||
ChangeUI all "${MUI_UI}"
|
||||
!ifdef MUI_HEADERIMAGE
|
||||
!ifndef MUI_HEADERIMAGE_RIGHT
|
||||
ChangeUI IDD_INST "${MUI_UI_HEADERIMAGE}"
|
||||
!else
|
||||
ChangeUI IDD_INST "${MUI_UI_HEADERIMAGE_RIGHT}"
|
||||
!endif
|
||||
!endif
|
||||
|
||||
;Icons
|
||||
Icon "${MUI_ICON}"
|
||||
UninstallIcon "${MUI_UNICON}"
|
||||
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Abort warning message box
|
||||
|
||||
!macro MUI_ABORTWARNING
|
||||
|
||||
!ifdef MUI_ABORTWARNING_CANCEL_DEFAULT
|
||||
MessageBox MB_YESNO|MB_ICONEXCLAMATION|MB_DEFBUTTON2 "${MUI_ABORTWARNING_TEXT}" IDYES mui.Quit
|
||||
!else
|
||||
MessageBox MB_YESNO|MB_ICONEXCLAMATION "${MUI_ABORTWARNING_TEXT}" IDYES mui.Quit
|
||||
!endif
|
||||
|
||||
Abort
|
||||
mui.Quit:
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNABORTWARNING
|
||||
|
||||
!ifdef MUI_UNABORTWARNING_CANCEL_DEFAULT
|
||||
MessageBox MB_YESNO|MB_ICONEXCLAMATION|MB_DEFBUTTON2 "${MUI_UNABORTWARNING_TEXT}" IDYES mui.Quit
|
||||
!else
|
||||
MessageBox MB_YESNO|MB_ICONEXCLAMATION "${MUI_UNABORTWARNING_TEXT}" IDYES mui.Quit
|
||||
!endif
|
||||
|
||||
Abort
|
||||
mui.Quit:
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Initialization of GUI
|
||||
|
||||
!macro MUI_HEADERIMAGE_INITHELPER_LOADIMAGEWITHMACRO MACRO
|
||||
|
||||
!ifdef MUI_HEADERIMAGE_RIGHT
|
||||
!ifndef MUI_OPTIMIZE_ALWAYSLTR ; Undocumented
|
||||
${if} $(^RTL) == 1
|
||||
!insertmacro ${MACRO} $mui.Header.Image "${PATH}" Left Leak
|
||||
${Else}
|
||||
!insertmacro ${MACRO} $mui.Header.Image "${PATH}" Right Leak
|
||||
${EndIf}
|
||||
!else
|
||||
!insertmacro ${MACRO} $mui.Header.Image "${PATH}" Right Leak
|
||||
!endif
|
||||
!else
|
||||
!insertmacro ${MACRO} $mui.Header.Image "${PATH}" Auto Leak
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
!macro MUI_HEADERIMAGE_INITHELPER_LOADIMAGE UN RTL IMGRESID PATH
|
||||
|
||||
GetDlgItem $mui.Header.Image $HWNDPARENT ${IMGRESID} ; This variable is not used by every mode but we have to reference it to avoid a compiler warning.
|
||||
|
||||
!if "${MUI_HEADERIMAGE_${UN}BITMAP${RTL}_STRETCH}" == "NoStretchNoCropNoAlign"
|
||||
|
||||
SetBrandingImage /IMGID=${IMGRESID} "${PATH}"
|
||||
|
||||
!else if "${MUI_HEADERIMAGE_${UN}BITMAP${RTL}_STRETCH}" == "NoStretchNoCrop"
|
||||
|
||||
!insertmacro MUI_HEADERIMAGE_INITHELPER_LOADIMAGEWITHMACRO \
|
||||
MUI_LOADANDXALIGNIMAGE
|
||||
|
||||
!else if "${MUI_HEADERIMAGE_${UN}BITMAP${RTL}_STRETCH}" == "AspectFitHeight"
|
||||
|
||||
!insertmacro MUI_HEADERIMAGE_INITHELPER_LOADIMAGEWITHMACRO \
|
||||
MUI_LOADANDASPECTSTRETCHIMAGETOCONTROLHEIGHT
|
||||
|
||||
!else
|
||||
|
||||
!if "${MUI_HEADERIMAGE_${UN}BITMAP${RTL}_STRETCH}" != "FitControl"
|
||||
!warning 'MUI_HEADERIMAGE_${UN}BITMAP${RTL}_STRETCH set to unknown value, defaulting to FitControl'
|
||||
!endif
|
||||
SetBrandingImage /IMGID=${IMGRESID} /RESIZETOFIT "${PATH}"
|
||||
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_HEADERIMAGE_INIT UN IMGRESID
|
||||
|
||||
;Load and display header image
|
||||
|
||||
!ifdef MUI_HEADERIMAGE
|
||||
|
||||
InitPluginsDir
|
||||
|
||||
!ifdef MUI_HEADERIMAGE_${UN}BITMAP_RTL
|
||||
${if} $(^RTL) == 1
|
||||
|
||||
File "/oname=$PLUGINSDIR\modern-header.bmp" "${MUI_HEADERIMAGE_${UN}BITMAP_RTL}"
|
||||
!insertmacro MUI_HEADERIMAGE_INITHELPER_LOADIMAGE "${UN}" "_RTL" ${IMGRESID} "$PLUGINSDIR\modern-header.bmp"
|
||||
|
||||
${else}
|
||||
!endif
|
||||
|
||||
File "/oname=$PLUGINSDIR\modern-header.bmp" "${MUI_HEADERIMAGE_${UN}BITMAP}"
|
||||
!insertmacro MUI_HEADERIMAGE_INITHELPER_LOADIMAGE "${UN}" "" ${IMGRESID} "$PLUGINSDIR\modern-header.bmp"
|
||||
|
||||
!ifdef MUI_HEADERIMAGE_${UN}BITMAP_RTL
|
||||
${endif}
|
||||
!endif
|
||||
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_GUIINIT_OUTERDIALOG UNINSTALLER
|
||||
|
||||
;Initialize outer dialog (fonts & colors)
|
||||
|
||||
;Header
|
||||
GetDlgItem $mui.Header.Text $HWNDPARENT 1037
|
||||
CreateFont $mui.Header.Text.Font "$(^Font)" "$(^FontSize)" "700"
|
||||
SendMessage $mui.Header.Text ${WM_SETFONT} $mui.Header.Text.Font 0
|
||||
|
||||
GetDlgItem $mui.Header.SubText $HWNDPARENT 1038
|
||||
|
||||
!ifndef MUI_HEADER_TRANSPARENT_TEXT
|
||||
SetCtlColors $mui.Header.Text "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
SetCtlColors $mui.Header.SubText "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
!else
|
||||
SetCtlColors $mui.Header.Text "${MUI_TEXTCOLOR}" "transparent"
|
||||
SetCtlColors $mui.Header.SubText "${MUI_TEXTCOLOR}" "transparent"
|
||||
!endif
|
||||
|
||||
;Header image
|
||||
!insertmacro MUI_HEADERIMAGE_INIT "${UNINSTALLER}" 1046
|
||||
|
||||
;Header background
|
||||
GetDlgItem $mui.Header.Background $HWNDPARENT 1034
|
||||
SetCtlColors $mui.Header.Background "" "${MUI_BGCOLOR}"
|
||||
|
||||
;Header icon image background
|
||||
!ifndef MUI_HEADERIMAGE
|
||||
GetDlgItem $mui.Header.Image $HWNDPARENT 1039
|
||||
SetCtlColors $mui.Header.Image "" "${MUI_BGCOLOR}"
|
||||
!endif
|
||||
|
||||
;Branding text
|
||||
GetDlgItem $mui.Branding.Background $HWNDPARENT 1028
|
||||
SetCtlColors $mui.Branding.Background /BRANDING
|
||||
GetDlgItem $mui.Branding.Text $HWNDPARENT 1256
|
||||
SetCtlColors $mui.Branding.Text /BRANDING
|
||||
SendMessage $mui.Branding.Text ${WM_SETTEXT} 0 "STR:$(^Branding) "
|
||||
|
||||
;Lines
|
||||
GetDlgItem $mui.Line.Standard $HWNDPARENT 1035
|
||||
GetDlgItem $mui.Line.FullWindow $HWNDPARENT 1045
|
||||
|
||||
;Buttons
|
||||
GetDlgItem $mui.Button.Next $HWNDPARENT 1
|
||||
GetDlgItem $mui.Button.Cancel $HWNDPARENT 2
|
||||
GetDlgItem $mui.Button.Back $HWNDPARENT 3
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Interface functions
|
||||
|
||||
!macro MUI_FUNCTION_GUIINIT
|
||||
|
||||
Function .onGUIInit
|
||||
|
||||
!insertmacro MUI_GUIINIT_OUTERDIALOG ""
|
||||
|
||||
!ifdef MUI_PAGE_FUNCTION_GUIINIT
|
||||
Call "${MUI_PAGE_FUNCTION_GUIINIT}"
|
||||
!endif
|
||||
|
||||
!ifdef MUI_CUSTOMFUNCTION_GUIINIT
|
||||
Call "${MUI_CUSTOMFUNCTION_GUIINIT}"
|
||||
!endif
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNFUNCTION_GUIINIT
|
||||
|
||||
Function un.onGUIInit
|
||||
|
||||
!insertmacro MUI_GUIINIT_OUTERDIALOG UN
|
||||
|
||||
!ifdef MUI_UNPAGE_FUNCTION_GUIINIT
|
||||
Call "${MUI_UNPAGE_FUNCTION_GUIINIT}"
|
||||
!endif
|
||||
|
||||
!ifdef MUI_CUSTOMFUNCTION_UNGUIINIT
|
||||
Call "${MUI_CUSTOMFUNCTION_UNGUIINIT}"
|
||||
!endif
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_FUNCTION_ABORTWARNING
|
||||
|
||||
Function .onUserAbort
|
||||
|
||||
!ifdef MUI_PAGE_FUNCTION_ABORTWARNING
|
||||
Call ${MUI_PAGE_FUNCTION_ABORTWARNING}
|
||||
!endif
|
||||
|
||||
!ifdef MUI_ABORTWARNING
|
||||
!insertmacro MUI_ABORTWARNING
|
||||
!endif
|
||||
|
||||
!ifdef MUI_CUSTOMFUNCTION_ABORT
|
||||
Call "${MUI_CUSTOMFUNCTION_ABORT}"
|
||||
!endif
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_FUNCTION_UNABORTWARNING
|
||||
|
||||
Function un.onUserAbort
|
||||
|
||||
!ifdef MUI_UNPAGE_FUNCTION_ABORTWARNING
|
||||
Call ${MUI_UNPAGE_FUNCTION_ABORTWARNING}
|
||||
!endif
|
||||
|
||||
!ifdef MUI_UNABORTWARNING
|
||||
!insertmacro MUI_UNABORTWARNING
|
||||
!endif
|
||||
|
||||
!ifdef MUI_CUSTOMFUNCTION_UNABORT
|
||||
Call "${MUI_CUSTOMFUNCTION_UNABORT}"
|
||||
!endif
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
198
KattekerCreator/nsis/Contrib/Modern UI 2/Localization.nsh
Normal file
198
KattekerCreator/nsis/Contrib/Modern UI 2/Localization.nsh
Normal file
@ -0,0 +1,198 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
Localization
|
||||
|
||||
*/
|
||||
|
||||
;--------------------------------
|
||||
;Variables
|
||||
|
||||
!macro MUI_LANGDLL_VARIABLES
|
||||
|
||||
!ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
|
||||
!ifndef MUI_LANGDLL_REGISTRY_VARIABLES
|
||||
!define MUI_LANGDLL_REGISTRY_VARIABLES
|
||||
|
||||
;/GLOBAL because the macros are included in a function
|
||||
Var /GLOBAL mui.LangDLL.RegistryLanguage
|
||||
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Include langauge files
|
||||
|
||||
!macro MUI_LANGUAGEEX LangDir NLFID
|
||||
|
||||
!verbose push ${MUI_VERBOSE}
|
||||
|
||||
!ifndef MUI_PAGE_UNINSTALLER_PREFIX
|
||||
!ifndef MUI_DISABLE_INSERT_LANGUAGE_AFTER_PAGES_WARNING ; Define this to avoid the warning if you only have custom pages
|
||||
!warning "MUI_LANGUAGE[EX] should be inserted after the MUI_[UN]PAGE_* macros"
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!insertmacro MUI_INSERT
|
||||
|
||||
;Include a language
|
||||
LoadLanguageFile "${LangDir}\${NLFID}.nlf"
|
||||
|
||||
;Include MUI language file
|
||||
!insertmacro LANGFILE_INCLUDE_WITHDEFAULT \
|
||||
"${LangDir}\${NLFID}.nsh" "${NSISDIR}\Contrib\Language files\English.nsh"
|
||||
|
||||
;Add language to list of languages for selection dialog
|
||||
!define /ifndef MUI_LANGDLL_LANGUAGES ""
|
||||
!define /redef MUI_LANGDLL_LANGUAGES \
|
||||
`"${LANGFILE_${NLFID}_LANGDLL}" "${LANG_${NLFID}}" ${MUI_LANGDLL_LANGUAGES}`
|
||||
!define /ifndef MUI_LANGDLL_LANGUAGES_CP ""
|
||||
!define /redef MUI_LANGDLL_LANGUAGES_CP \
|
||||
`"${LANGFILE_${NLFID}_LANGDLL}" "${LANG_${NLFID}}" "${LANG_${NLFID}_CP}" ${MUI_LANGDLL_LANGUAGES_CP}`
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_LANGUAGE NLFID
|
||||
|
||||
!verbose push ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_LANGUAGEEX "${NSISDIR}\Contrib\Language files" "${NLFID}"
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Language selection
|
||||
|
||||
!macro MUI_LANGDLL_DISPLAY
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!ifndef MUI_LANGDLL_LANGUAGES
|
||||
!warning "MUI_LANGDLL_DISPLAY should only be used after inserting the MUI_LANGUAGE macro(s)"
|
||||
!endif
|
||||
|
||||
!insertmacro MUI_LANGDLL_VARIABLES
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_LANGDLL_WINDOWTITLE "Installer Language"
|
||||
!insertmacro MUI_DEFAULT MUI_LANGDLL_INFO "Please select a language."
|
||||
|
||||
!ifdef MUI_LANGDLL_REGISTRY_VARIABLES
|
||||
|
||||
ReadRegStr $mui.LangDLL.RegistryLanguage "${MUI_LANGDLL_REGISTRY_ROOT}" "${MUI_LANGDLL_REGISTRY_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
|
||||
|
||||
${if} $mui.LangDLL.RegistryLanguage != ""
|
||||
;Set default langauge to registry language
|
||||
StrCpy $LANGUAGE $mui.LangDLL.RegistryLanguage
|
||||
${endif}
|
||||
|
||||
!endif
|
||||
|
||||
!ifdef NSIS_CONFIG_SILENT_SUPPORT
|
||||
${unless} ${Silent}
|
||||
!endif
|
||||
|
||||
!ifndef MUI_LANGDLL_ALWAYSSHOW
|
||||
!ifdef MUI_LANGDLL_REGISTRY_VARIABLES
|
||||
${if} $mui.LangDLL.RegistryLanguage == ""
|
||||
!endif
|
||||
!endif
|
||||
|
||||
;Show langauge selection dialog
|
||||
!ifdef MUI_LANGDLL_ALLLANGUAGES
|
||||
LangDLL::LangDialog "${MUI_LANGDLL_WINDOWTITLE}" "${MUI_LANGDLL_INFO}" A ${MUI_LANGDLL_LANGUAGES} ""
|
||||
!else
|
||||
LangDLL::LangDialog "${MUI_LANGDLL_WINDOWTITLE}" "${MUI_LANGDLL_INFO}" AC ${MUI_LANGDLL_LANGUAGES_CP} ""
|
||||
!endif
|
||||
|
||||
Pop $LANGUAGE
|
||||
${if} $LANGUAGE == "cancel"
|
||||
Abort
|
||||
${endif}
|
||||
|
||||
!ifndef MUI_LANGDLL_ALWAYSSHOW
|
||||
!ifdef MUI_LANGDLL_REGISTRY_VARIABLES
|
||||
${endif}
|
||||
!endif
|
||||
!endif
|
||||
|
||||
|
||||
!ifdef NSIS_CONFIG_SILENT_SUPPORT
|
||||
${endif}
|
||||
!endif
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_LANGDLL_SAVELANGUAGE
|
||||
|
||||
;Save language in registry
|
||||
|
||||
!ifndef MUI_PAGE_UNINSTALLER
|
||||
|
||||
IfAbort mui.langdllsavelanguage_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
|
||||
!endif
|
||||
|
||||
mui.langdllsavelanguage_abort:
|
||||
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNGETLANGUAGE
|
||||
|
||||
;Get language from registry in uninstaller
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_LANGDLL_VARIABLES
|
||||
|
||||
!ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
|
||||
|
||||
ReadRegStr $mui.LangDLL.RegistryLanguage "${MUI_LANGDLL_REGISTRY_ROOT}" "${MUI_LANGDLL_REGISTRY_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
|
||||
|
||||
${if} $mui.LangDLL.RegistryLanguage = ""
|
||||
|
||||
!endif
|
||||
|
||||
!insertmacro MUI_LANGDLL_DISPLAY
|
||||
|
||||
!ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
|
||||
|
||||
${else}
|
||||
StrCpy $LANGUAGE $mui.LangDLL.RegistryLanguage
|
||||
${endif}
|
||||
|
||||
!endif
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Rerserve LangDLL file
|
||||
|
||||
!macro MUI_RESERVEFILE_LANGDLL
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
ReserveFile /plugin LangDLL.dll
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
117
KattekerCreator/nsis/Contrib/Modern UI 2/MUI2.nsh
Normal file
117
KattekerCreator/nsis/Contrib/Modern UI 2/MUI2.nsh
Normal file
@ -0,0 +1,117 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface - Version 2.1
|
||||
Copyright 2002-2018 Joost Verburg
|
||||
Contributors: Amir Szekely, Anders Kjersem
|
||||
|
||||
*/
|
||||
|
||||
!ifndef MUI_INCLUDED
|
||||
!verbose push 3
|
||||
!define MUI_INCLUDED
|
||||
!define MUI_SYSVERSION "2.1"
|
||||
!verbose pop
|
||||
!echo "NSIS Modern User Interface version ${MUI_SYSVERSION} - Copyright 2002-2018 Joost Verburg"
|
||||
|
||||
;--------------------------------
|
||||
!verbose push 3
|
||||
!define /IfNDef MUI_VERBOSE 3
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!addincludedir "${NSISDIR}\Contrib\Modern UI 2"
|
||||
|
||||
;--------------------------------
|
||||
;Header files required by MUI
|
||||
|
||||
!include WinMessages.nsh
|
||||
!include LogicLib.nsh
|
||||
!include nsDialogs.nsh
|
||||
!include LangFile.nsh
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Macros for compile-time defines
|
||||
|
||||
!macro MUI_DEFAULT SYMBOL CONTENT
|
||||
|
||||
;Define symbol if not yet defined
|
||||
;For setting default values
|
||||
|
||||
!ifndef "${SYMBOL}"
|
||||
!define "${SYMBOL}" "${CONTENT}"
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_SET SYMBOL CONTENT
|
||||
|
||||
;Define symbol and undefine if neccesary
|
||||
|
||||
!insertmacro MUI_UNSET "${SYMBOL}"
|
||||
!define "${SYMBOL}" "${CONTENT}"
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNSET SYMBOL
|
||||
|
||||
;Undefine symbol if defined
|
||||
|
||||
!ifdef "${SYMBOL}"
|
||||
!undef "${SYMBOL}"
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;MUI interface
|
||||
|
||||
!include "Deprecated.nsh"
|
||||
!include "Interface.nsh"
|
||||
!include "Localization.nsh"
|
||||
!include "Pages.nsh"
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Pages
|
||||
|
||||
!include "Pages\Components.nsh"
|
||||
!include "Pages\Directory.nsh"
|
||||
!include "Pages\Finish.nsh"
|
||||
!include "Pages\InstallFiles.nsh"
|
||||
!include "Pages\License.nsh"
|
||||
!include "Pages\StartMenu.nsh"
|
||||
!include "Pages\UninstallConfirm.nsh"
|
||||
!include "Pages\Welcome.nsh"
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Insert MUI code in script
|
||||
|
||||
!macro MUI_INSERT
|
||||
|
||||
!ifndef MUI_INSERT
|
||||
!define MUI_INSERT
|
||||
|
||||
;This macro is included when the first language file is included,
|
||||
;after the pages.
|
||||
|
||||
;Interface settings
|
||||
!insertmacro MUI_INTERFACE
|
||||
|
||||
;Interface functions - Installer
|
||||
!insertmacro MUI_FUNCTION_GUIINIT
|
||||
!insertmacro MUI_FUNCTION_ABORTWARNING
|
||||
|
||||
;Interface functions - Uninstaller
|
||||
!ifdef MUI_UNINSTALLER
|
||||
!insertmacro MUI_UNFUNCTION_GUIINIT
|
||||
!insertmacro MUI_FUNCTION_UNABORTWARNING
|
||||
!endif
|
||||
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
!verbose pop
|
||||
!endif ;~ MUI_INCLUDED
|
324
KattekerCreator/nsis/Contrib/Modern UI 2/Pages.nsh
Normal file
324
KattekerCreator/nsis/Contrib/Modern UI 2/Pages.nsh
Normal file
@ -0,0 +1,324 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
Support code for all pages
|
||||
|
||||
*/
|
||||
|
||||
;--------------------------------
|
||||
;Page initialization
|
||||
|
||||
!macro MUI_PAGE_INIT
|
||||
|
||||
!ifdef MUI_INSERT
|
||||
!warning "MUI_PAGE_* inserted after MUI_LANGUAGE"
|
||||
!endif
|
||||
|
||||
;Include interface settings in neccesary
|
||||
!insertmacro MUI_INTERFACE
|
||||
|
||||
;Define settings for installer page
|
||||
!insertmacro MUI_UNSET MUI_PAGE_UNINSTALLER
|
||||
!insertmacro MUI_UNSET MUI_PAGE_UNINSTALLER_PREFIX
|
||||
!insertmacro MUI_UNSET MUI_PAGE_UNINSTALLER_FUNCPREFIX
|
||||
|
||||
!insertmacro MUI_SET MUI_PAGE_UNINSTALLER_PREFIX ""
|
||||
!insertmacro MUI_SET MUI_PAGE_UNINSTALLER_FUNCPREFIX ""
|
||||
|
||||
;Generate unique ID
|
||||
!insertmacro MUI_UNSET MUI_UNIQUEID
|
||||
!define MUI_UNIQUEID ${__LINE__}
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNPAGE_INIT
|
||||
|
||||
!ifdef MUI_INSERT
|
||||
!warning "MUI_UNPAGE_* inserted after MUI_LANGUAGE"
|
||||
!endif
|
||||
|
||||
;Include interface settings
|
||||
!insertmacro MUI_INTERFACE
|
||||
|
||||
;Define prefixes for uninstaller page
|
||||
!insertmacro MUI_SET MUI_UNINSTALLER ""
|
||||
|
||||
!insertmacro MUI_SET MUI_PAGE_UNINSTALLER ""
|
||||
!insertmacro MUI_SET MUI_PAGE_UNINSTALLER_PREFIX "UN"
|
||||
!insertmacro MUI_SET MUI_PAGE_UNINSTALLER_FUNCPREFIX "un."
|
||||
|
||||
;Generate unique ID
|
||||
!insertmacro MUI_UNSET MUI_UNIQUEID
|
||||
!define MUI_UNIQUEID ${__LINE__}
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Header text for standard MUI page
|
||||
|
||||
!macro MUI_HEADER_TEXT_PAGE TEXT SUBTEXT
|
||||
|
||||
!ifdef MUI_PAGE_HEADER_TEXT & MUI_PAGE_HEADER_SUBTEXT
|
||||
!insertmacro MUI_HEADER_TEXT "${MUI_PAGE_HEADER_TEXT}" "${MUI_PAGE_HEADER_SUBTEXT}"
|
||||
!else ifdef MUI_PAGE_HEADER_TEXT
|
||||
!insertmacro MUI_HEADER_TEXT "${MUI_PAGE_HEADER_TEXT}" "${SUBTEXT}"
|
||||
!else ifdef MUI_PAGE_HEADER_SUBTEXT
|
||||
!insertmacro MUI_HEADER_TEXT "${TEXT}" "${MUI_PAGE_HEADER_SUBTEXT}"
|
||||
!else
|
||||
!insertmacro MUI_HEADER_TEXT "${TEXT}" "${SUBTEXT}"
|
||||
!endif
|
||||
|
||||
!insertmacro MUI_UNSET MUI_PAGE_HEADER_TEXT
|
||||
!insertmacro MUI_UNSET MUI_PAGE_HEADER_SUBTEXT
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Header text for custom page
|
||||
|
||||
!macro MUI_HEADER_TEXT TEXT SUBTEXT ;Called from script
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!ifdef MUI_HEADER_TRANSPARENT_TEXT
|
||||
LockWindow on
|
||||
!endif
|
||||
|
||||
SendMessage $mui.Header.Text ${WM_SETTEXT} 0 "STR:${TEXT}"
|
||||
SendMessage $mui.Header.SubText ${WM_SETTEXT} 0 "STR:${SUBTEXT}"
|
||||
|
||||
!ifdef MUI_HEADER_TRANSPARENT_TEXT
|
||||
LockWindow off
|
||||
!endif
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Custom page functions
|
||||
|
||||
!macro MUI_PAGE_FUNCTION_CUSTOM TYPE
|
||||
|
||||
!ifdef MUI_PAGE_CUSTOMFUNCTION_${TYPE}
|
||||
Call "${MUI_PAGE_CUSTOMFUNCTION_${TYPE}}"
|
||||
!undef MUI_PAGE_CUSTOMFUNCTION_${TYPE}
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Support for full window pages (like welcome/finish page)
|
||||
|
||||
!macro MUI_PAGE_FUNCTION_FULLWINDOW
|
||||
|
||||
!ifndef MUI_${MUI_PAGE_UNINSTALLER_PREFIX}PAGE_FUNCTION_FULLWINDOW
|
||||
!define MUI_${MUI_PAGE_UNINSTALLER_PREFIX}PAGE_FUNCTION_FULLWINDOW
|
||||
|
||||
Function ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}muiPageLoadFullWindow
|
||||
|
||||
LockWindow on
|
||||
|
||||
;The branding text needs to be hidden because the full windows page
|
||||
;overlaps with it.
|
||||
ShowWindow $mui.Branding.Background ${SW_HIDE}
|
||||
ShowWindow $mui.Branding.Text ${SW_HIDE}
|
||||
|
||||
;The texts need to be hidden because otherwise they may show through
|
||||
;the page above when the Alt key is pressed.
|
||||
ShowWindow $mui.Header.Text ${SW_HIDE}
|
||||
ShowWindow $mui.Header.SubText ${SW_HIDE}
|
||||
ShowWindow $mui.Header.Image ${SW_HIDE}
|
||||
|
||||
;Show line below full width of page
|
||||
ShowWindow $mui.Line.Standard ${SW_HIDE}
|
||||
ShowWindow $mui.Line.FullWindow ${SW_NORMAL}
|
||||
|
||||
LockWindow off
|
||||
|
||||
FunctionEnd
|
||||
|
||||
Function ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}muiPageUnloadFullWindow
|
||||
|
||||
;Set everything back to normal again
|
||||
|
||||
LockWindow on
|
||||
|
||||
ShowWindow $mui.Branding.Background ${SW_NORMAL}
|
||||
ShowWindow $mui.Branding.Text ${SW_NORMAL}
|
||||
|
||||
ShowWindow $mui.Header.Text ${SW_NORMAL}
|
||||
ShowWindow $mui.Header.SubText ${SW_NORMAL}
|
||||
ShowWindow $mui.Header.Image ${SW_NORMAL}
|
||||
|
||||
ShowWindow $mui.Line.Standard ${SW_NORMAL}
|
||||
ShowWindow $mui.Line.FullWindow ${SW_HIDE}
|
||||
|
||||
LockWindow off
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_INTERNAL_FULLWINDOW_LOADWIZARDIMAGE _un _hwndImg _ImgPath _RetImgHandle
|
||||
|
||||
!ifdef MUI_${_un}WELCOMEFINISHPAGE_BITMAP_NOSTRETCH
|
||||
!insertmacro MUI_DEFAULT MUI_${_un}WELCOMEFINISHPAGE_BITMAP_STRETCH NoStretchNoCropNoAlign ; Legacy compatibility
|
||||
!endif
|
||||
!insertmacro MUI_DEFAULT MUI_${_un}WELCOMEFINISHPAGE_BITMAP_STRETCH FitControl
|
||||
|
||||
!if "${MUI_${_un}WELCOMEFINISHPAGE_BITMAP_STRETCH}" == "NoStretchNoCropNoAlign"
|
||||
|
||||
${NSD_SetImage} ${_hwndImg} "${_ImgPath}" "${_RetImgHandle}"
|
||||
|
||||
!else if "${MUI_${_un}WELCOMEFINISHPAGE_BITMAP_STRETCH}" == "NoStretchNoCrop"
|
||||
|
||||
!insertmacro MUI_LOADANDXALIGNIMAGE ${_hwndImg} "${_ImgPath}" Auto "${_RetImgHandle}"
|
||||
|
||||
!else if "${MUI_${_un}WELCOMEFINISHPAGE_BITMAP_STRETCH}" == "AspectFitHeight"
|
||||
|
||||
!insertmacro MUI_LOADANDASPECTSTRETCHIMAGETOCONTROLHEIGHT ${_hwndImg} "${_ImgPath}" Auto "${_RetImgHandle}"
|
||||
|
||||
!else
|
||||
|
||||
!if "${MUI_${_un}WELCOMEFINISHPAGE_BITMAP_STRETCH}" != "FitControl"
|
||||
!warning 'MUI_${_un}WELCOMEFINISHPAGE_BITMAP_STRETCH set to unknown value, defaulting to FitControl'
|
||||
!endif
|
||||
${NSD_SetStretchedImage} ${_hwndImg} "${_ImgPath}" "${_RetImgHandle}"
|
||||
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Helper macros
|
||||
|
||||
!include Util.nsh
|
||||
|
||||
!macro MUI_INTERNAL_LOADANDSIZEIMAGE _macro _hwndImg _ImgPath _XAlign _RetImgHandle
|
||||
!if "${_XAlign}" == "Auto"
|
||||
${if} $(^RTL) == 1
|
||||
Push "*${_ImgPath}"
|
||||
${Else}
|
||||
Push "${_ImgPath}"
|
||||
${EndIf}
|
||||
!else if "${_XAlign}" == "Right"
|
||||
Push "*${_ImgPath}"
|
||||
!else
|
||||
Push "${_ImgPath}"
|
||||
!endif
|
||||
Push "${_hwndImg}"
|
||||
${CallArtificialFunction} ${_macro}
|
||||
!if "${_RetImgHandle}" == "Leak"
|
||||
!insertmacro _LOGICLIB_TEMP
|
||||
Pop $_LOGICLIB_TEMP
|
||||
!else if "${_RetImgHandle}" != "Stack"
|
||||
Pop ${_RetImgHandle}
|
||||
!endif
|
||||
!macroend
|
||||
|
||||
!macro MUI_LOADANDXALIGNIMAGE _hwndImg _ImgPath _XAlign _RetImgHandle
|
||||
!insertmacro MUI_INTERNAL_LOADANDSIZEIMAGE \
|
||||
MUI_INTERNAL_LOADANDXALIGNIMAGE "${_hwndImg}" "${_ImgPath}" "${_XAlign}" "${_RetImgHandle}"
|
||||
!macroend
|
||||
!macro MUI_INTERNAL_LOADANDXALIGNIMAGE
|
||||
System::Store "S"
|
||||
System::Call 'USER32::GetWindowRect(psr0,@r1)'
|
||||
System::Call 'USER32::MapWindowPoints(p0,p$hwndparent,pr1,i2)' ; Note: Assuming control is not in inner dialog
|
||||
System::Call '*$1(i.r5,i.r6,i.r7,i.r8)'
|
||||
IntOp $7 $7 - $5
|
||||
IntOp $8 $8 - $6
|
||||
|
||||
Pop $1
|
||||
StrCpy $3 $1 1
|
||||
${If} $3 == "*" ; Move control to the right?
|
||||
StrCpy $1 $1 "" 1
|
||||
${Endif}
|
||||
System::Call 'USER32::LoadImage(p0,tr1,i${IMAGE_BITMAP},i0,i0,i${LR_LOADFROMFILE})p.r2'
|
||||
SendMessage $0 ${STM_SETIMAGE} ${IMAGE_BITMAP} $2 $1
|
||||
Push $2 ; Return value
|
||||
System::Call 'GDI32::DeleteObject(pr1)' ; Note: Assuming the previous image (if any) was a bitmap
|
||||
System::Call 'USER32::GetClientRect(pr0,@r1)'
|
||||
System::Call '*$1(i,i,i.r1,i.r2)'
|
||||
|
||||
${If} $3 == "*"
|
||||
${AndIf} $1 < $7 ; ImgW < CtlW
|
||||
IntOp $3 $7 - $1
|
||||
IntOp $5 $5 + $3
|
||||
System::Call 'USER32::SetWindowPos(pr0,p0,ir5,ir6,i,i,i0x15)'
|
||||
${EndIf}
|
||||
|
||||
System::Store "L"
|
||||
!macroend
|
||||
|
||||
!macro MUI_LOADANDASPECTSTRETCHIMAGETOCONTROLHEIGHT _hwndImg _ImgPath _XAlign _RetImgHandle
|
||||
!insertmacro MUI_INTERNAL_LOADANDSIZEIMAGE \
|
||||
MUI_INTERNAL_LOADANDASPECTSTRETCHIMAGETOCONTROLHEIGHT "${_hwndImg}" "${_ImgPath}" "${_XAlign}" "${_RetImgHandle}"
|
||||
!macroend
|
||||
!macro MUI_INTERNAL_LOADANDASPECTSTRETCHIMAGETOCONTROLHEIGHT
|
||||
System::Store "S"
|
||||
System::Call 'USER32::GetWindowRect(psr0,@r1)'
|
||||
System::Call 'USER32::MapWindowPoints(p0,p$hwndparent,pr1,i2)' ; Note: Assuming control is not in inner dialog
|
||||
System::Call '*$1(i.r5,i.r6,i.r7,i.r8)'
|
||||
IntOp $7 $7 - $5
|
||||
IntOp $8 $8 - $6
|
||||
|
||||
Pop $1
|
||||
StrCpy $3 $1 1
|
||||
${If} $3 == "*" ; Move control to the right?
|
||||
StrCpy $1 $1 "" 1
|
||||
${Endif}
|
||||
System::Call 'USER32::LoadImage(p0,tr1,i${IMAGE_BITMAP},i0,i0,i${LR_LOADFROMFILE})p.r2'
|
||||
SendMessage $0 ${STM_SETIMAGE} ${IMAGE_BITMAP} $2 $1
|
||||
Push $2 ; Return value
|
||||
System::Call 'GDI32::DeleteObject(pr1)' ; Note: Assuming the previous image (if any) was a bitmap
|
||||
System::Call 'USER32::GetClientRect(pr0,@r1)'
|
||||
System::Call '*$1(i,i,i.r1,i.r2)'
|
||||
|
||||
IntOp $R7 $7 * 10000
|
||||
IntOp $R8 $8 * 10000
|
||||
IntOp $R1 $1 * 10000
|
||||
IntOp $R2 $2 * 10000
|
||||
IntOp $R3 $R1 / $2
|
||||
StrCpy $R4 10000
|
||||
${If} $R1 > $R2
|
||||
StrCpy $R3 10000
|
||||
IntOp $R4 $R2 / $1
|
||||
${EndIf}
|
||||
|
||||
${DoWhile} $R2 > $R8 ; ImgH > CtlH
|
||||
IntOp $R1 $R1 - $R3
|
||||
IntOp $R2 $R2 - $R4
|
||||
${Loop}
|
||||
${DoWhile} $R2 < $R8 ; ImgH < CtlH
|
||||
IntOp $R1 $R1 + $R3
|
||||
IntOp $R2 $R2 + $R4
|
||||
${Loop}
|
||||
IntOp $1 $R1 / 10000
|
||||
IntOp $2 $R2 / 10000
|
||||
|
||||
${If} $1 < $7
|
||||
${AndIf} $3 == "*"
|
||||
IntOp $R3 $7 - $1
|
||||
IntOp $5 $5 + $R3
|
||||
${EndIf}
|
||||
|
||||
${DoWhile} $2 > $8 ; Non-aspect-maintained stretch to make it a pixel perfect match
|
||||
IntOp $2 $2 - 1
|
||||
IntOp $1 $1 - 1
|
||||
${IfThen} $3 == "*" ${|} IntOp $5 $5 + 1 ${|}
|
||||
${Loop}
|
||||
|
||||
System::Call 'USER32::SetWindowPos(pr0,p0,ir5,ir6,ir1,ir2,i0x14)'
|
||||
System::Store "L"
|
||||
!macroend
|
||||
|
||||
|
242
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/Components.nsh
Normal file
242
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/Components.nsh
Normal file
@ -0,0 +1,242 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
Components page
|
||||
|
||||
*/
|
||||
|
||||
;--------------------------------
|
||||
;Page interface settings and variables
|
||||
|
||||
!macro MUI_COMPONENTSPAGE_INTERFACE
|
||||
|
||||
!ifndef MUI_COMPONENTSPAGE_INTERFACE
|
||||
!define MUI_COMPONENTSPAGE_INTERFACE
|
||||
Var mui.ComponentsPage
|
||||
|
||||
Var mui.ComponentsPage.Text
|
||||
Var mui.ComponentsPage.InstTypesText
|
||||
Var mui.ComponentsPage.ComponentsText
|
||||
|
||||
Var mui.ComponentsPage.InstTypes
|
||||
Var mui.ComponentsPage.Components
|
||||
|
||||
Var mui.ComponentsPage.DescriptionTitle
|
||||
Var mui.ComponentsPage.DescriptionText.Info
|
||||
Var mui.ComponentsPage.DescriptionText
|
||||
|
||||
Var mui.ComponentsPage.SpaceRequired
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_CHECKBITMAP "${NSISDIR}\Contrib\Graphics\Checks\modern.bmp"
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_UI_COMPONENTSPAGE_SMALLDESC "${NSISDIR}\Contrib\UIs\modern_smalldesc.exe"
|
||||
!insertmacro MUI_DEFAULT MUI_UI_COMPONENTSPAGE_NODESC "${NSISDIR}\Contrib\UIs\modern_nodesc.exe"
|
||||
|
||||
;Apply settings
|
||||
|
||||
!ifdef MUI_COMPONENTSPAGE_SMALLDESC
|
||||
ChangeUI IDD_SELCOM "${MUI_UI_COMPONENTSPAGE_SMALLDESC}"
|
||||
!else ifdef MUI_COMPONENTSPAGE_NODESC
|
||||
ChangeUI IDD_SELCOM "${MUI_UI_COMPONENTSPAGE_NODESC}"
|
||||
!endif
|
||||
|
||||
CheckBitmap "${MUI_COMPONENTSPAGE_CHECKBITMAP}"
|
||||
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page declaration
|
||||
|
||||
!macro MUI_PAGEDECLARATION_COMPONENTS
|
||||
|
||||
!insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}COMPONENTSPAGE ""
|
||||
!insertmacro MUI_COMPONENTSPAGE_INTERFACE
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_TEXT_TOP ""
|
||||
!insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_TEXT_COMPLIST ""
|
||||
!insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_TEXT_INSTTYPE ""
|
||||
!insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE "$(MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE)"
|
||||
!insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO "$(MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO)"
|
||||
|
||||
PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}components
|
||||
|
||||
PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsLeave_${MUI_UNIQUEID}
|
||||
|
||||
Caption " "
|
||||
|
||||
ComponentText "${MUI_COMPONENTSPAGE_TEXT_TOP}" "${MUI_COMPONENTSPAGE_TEXT_INSTTYPE}" "${MUI_COMPONENTSPAGE_TEXT_COMPLIST}"
|
||||
|
||||
PageExEnd
|
||||
|
||||
!insertmacro MUI_FUNCTION_COMPONENTSPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsLeave_${MUI_UNIQUEID}
|
||||
|
||||
!undef MUI_COMPONENTSPAGE_TEXT_TOP
|
||||
!undef MUI_COMPONENTSPAGE_TEXT_COMPLIST
|
||||
!undef MUI_COMPONENTSPAGE_TEXT_INSTTYPE
|
||||
!insertmacro MUI_UNSET MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE
|
||||
!insertmacro MUI_UNSET MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_PAGE_COMPONENTS
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_PAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_COMPONENTS
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNPAGE_COMPONENTS
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_UNPAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_COMPONENTS
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page functions
|
||||
|
||||
!macro MUI_FUNCTION_COMPONENTSPAGE PRE SHOW LEAVE
|
||||
|
||||
Function "${PRE}"
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
|
||||
!insertmacro MUI_HEADER_TEXT_PAGE $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_COMPONENTS_TITLE) $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_COMPONENTS_SUBTITLE)
|
||||
FunctionEnd
|
||||
|
||||
Function "${SHOW}"
|
||||
|
||||
;Get control hanldes
|
||||
FindWindow $mui.ComponentsPage "#32770" "" $HWNDPARENT
|
||||
GetDlgItem $mui.ComponentsPage.Text $mui.ComponentsPage 1006
|
||||
GetDlgItem $mui.ComponentsPage.InstTypesText $mui.ComponentsPage 1021
|
||||
GetDlgItem $mui.ComponentsPage.ComponentsText $mui.ComponentsPage 1022
|
||||
GetDlgItem $mui.ComponentsPage.InstTypes $mui.ComponentsPage 1017
|
||||
GetDlgItem $mui.ComponentsPage.Components $mui.ComponentsPage 1032
|
||||
GetDlgItem $mui.ComponentsPage.DescriptionTitle $mui.ComponentsPage 1042
|
||||
GetDlgItem $mui.ComponentsPage.DescriptionText $mui.ComponentsPage 1043
|
||||
GetDlgItem $mui.ComponentsPage.SpaceRequired $mui.ComponentsPage 1023
|
||||
|
||||
;Default text in description textbox
|
||||
SendMessage $mui.ComponentsPage.DescriptionTitle ${WM_SETTEXT} 0 "STR:${MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE}"
|
||||
EnableWindow $mui.ComponentsPage.DescriptionText 0
|
||||
SendMessage $mui.ComponentsPage.DescriptionText ${WM_SETTEXT} 0 "STR:${MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO}"
|
||||
|
||||
StrCpy $mui.ComponentsPage.DescriptionText.Info "${MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO}" ;Text for current components page
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
|
||||
|
||||
FunctionEnd
|
||||
|
||||
Function "${LEAVE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Script functions for components descriptions
|
||||
|
||||
!macro MUI_DESCRIPTION_BEGIN
|
||||
|
||||
${if} $0 == -1
|
||||
;No mouse hover over component in list
|
||||
SendMessage $mui.ComponentsPage.DescriptionText ${WM_SETTEXT} 0 "STR:"
|
||||
EnableWindow $mui.ComponentsPage.DescriptionText 0
|
||||
SendMessage $mui.ComponentsPage.DescriptionText ${WM_SETTEXT} 0 "STR:$mui.ComponentsPage.DescriptionText.Info"
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_DESCRIPTION_TEXT VAR TEXT
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
${elseif} $0 == ${VAR}
|
||||
SendMessage $mui.ComponentsPage.DescriptionText ${WM_SETTEXT} 0 "STR:"
|
||||
EnableWindow $mui.ComponentsPage.DescriptionText 1
|
||||
SendMessage $mui.ComponentsPage.DescriptionText ${WM_SETTEXT} 0 "STR:${TEXT}"
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_DESCRIPTION_END
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
${endif}
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_FUNCTION_DESCRIPTION_BEGIN
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
Function .onMouseOverSection
|
||||
!insertmacro MUI_DESCRIPTION_BEGIN
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_FUNCTION_DESCRIPTION_END
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_DESCRIPTION_END
|
||||
!ifdef MUI_CUSTOMFUNCTION_ONMOUSEOVERSECTION
|
||||
Call "${MUI_CUSTOMFUNCTION_ONMOUSEOVERSECTION}"
|
||||
!endif
|
||||
FunctionEnd
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNFUNCTION_DESCRIPTION_BEGIN
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
Function un.onMouseOverSection
|
||||
!insertmacro MUI_DESCRIPTION_BEGIN
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNFUNCTION_DESCRIPTION_END
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_DESCRIPTION_END
|
||||
!ifdef MUI_CUSTOMFUNCTION_UNONMOUSEOVERSECTION
|
||||
Call "${MUI_CUSTOMFUNCTION_UNONMOUSEOVERSECTION}"
|
||||
!endif
|
||||
FunctionEnd
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
126
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/Directory.nsh
Normal file
126
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/Directory.nsh
Normal file
@ -0,0 +1,126 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
Directory page
|
||||
|
||||
*/
|
||||
|
||||
;--------------------------------
|
||||
;Page interface settings and variables
|
||||
|
||||
!macro MUI_DIRECTORYPAGE_INTERFACE
|
||||
|
||||
!ifndef MUI_DIRECTORYPAGE_INTERFACE
|
||||
!define MUI_DIRECTORYPAGE_INTERFACE
|
||||
Var mui.DirectoryPage
|
||||
|
||||
Var mui.DirectoryPage.Text
|
||||
|
||||
Var mui.DirectoryPage.DirectoryBox
|
||||
Var mui.DirectoryPage.Directory
|
||||
Var mui.DirectoryPage.BrowseButton
|
||||
|
||||
Var mui.DirectoryPage.SpaceRequired
|
||||
Var mui.DirectoryPage.SpaceAvailable
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page declaration
|
||||
|
||||
!macro MUI_PAGEDECLARATION_DIRECTORY
|
||||
|
||||
!insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}DIRECTORYPAGE ""
|
||||
!insertmacro MUI_DIRECTORYPAGE_INTERFACE
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_DIRECTORYPAGE_TEXT_TOP ""
|
||||
!insertmacro MUI_DEFAULT MUI_DIRECTORYPAGE_TEXT_DESTINATION ""
|
||||
|
||||
PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}directory
|
||||
|
||||
PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryLeave_${MUI_UNIQUEID}
|
||||
|
||||
Caption " "
|
||||
|
||||
DirText "${MUI_DIRECTORYPAGE_TEXT_TOP}" "${MUI_DIRECTORYPAGE_TEXT_DESTINATION}"
|
||||
|
||||
!ifdef MUI_DIRECTORYPAGE_VARIABLE
|
||||
DirVar "${MUI_DIRECTORYPAGE_VARIABLE}"
|
||||
!endif
|
||||
|
||||
!ifdef MUI_DIRECTORYPAGE_VERIFYONLEAVE
|
||||
DirVerify leave
|
||||
!endif
|
||||
|
||||
PageExEnd
|
||||
|
||||
!insertmacro MUI_FUNCTION_DIRECTORYPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryLeave_${MUI_UNIQUEID}
|
||||
|
||||
!undef MUI_DIRECTORYPAGE_TEXT_TOP
|
||||
!undef MUI_DIRECTORYPAGE_TEXT_DESTINATION
|
||||
!insertmacro MUI_UNSET MUI_DIRECTORYPAGE_VARIABLE
|
||||
!insertmacro MUI_UNSET MUI_DIRECTORYPAGE_VERIFYONLEAVE
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_PAGE_DIRECTORY
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_PAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_DIRECTORY
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNPAGE_DIRECTORY
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_UNPAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_DIRECTORY
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page functions
|
||||
|
||||
!macro MUI_FUNCTION_DIRECTORYPAGE PRE SHOW LEAVE
|
||||
|
||||
Function "${PRE}"
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
|
||||
!insertmacro MUI_HEADER_TEXT_PAGE $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_DIRECTORY_TITLE) $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_DIRECTORY_SUBTITLE)
|
||||
FunctionEnd
|
||||
|
||||
Function "${SHOW}"
|
||||
|
||||
;Get control handles
|
||||
FindWindow $mui.DirectoryPage "#32770" "" $HWNDPARENT
|
||||
GetDlgItem $mui.DirectoryPage.Text $mui.DirectoryPage 1006
|
||||
GetDlgItem $mui.DirectoryPage.DirectoryBox $mui.DirectoryPage 1020
|
||||
GetDlgItem $mui.DirectoryPage.Directory $mui.DirectoryPage 1019
|
||||
GetDlgItem $mui.DirectoryPage.BrowseButton $mui.DirectoryPage 1001
|
||||
GetDlgItem $mui.DirectoryPage.SpaceRequired $mui.DirectoryPage 1023
|
||||
GetDlgItem $mui.DirectoryPage.SpaceAvailable $mui.DirectoryPage 1024
|
||||
|
||||
!ifdef MUI_DIRECTORYPAGE_BGCOLOR
|
||||
!insertmacro MUI_DEFAULT MUI_DIRECTORYPAGE_TEXTCOLOR ""
|
||||
SetCtlColors $mui.DirectoryPage.Directory "${MUI_DIRECTORYPAGE_TEXTCOLOR}" "${MUI_DIRECTORYPAGE_BGCOLOR}"
|
||||
!endif
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
|
||||
FunctionEnd
|
||||
|
||||
Function "${LEAVE}"
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
509
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/Finish.nsh
Normal file
509
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/Finish.nsh
Normal file
@ -0,0 +1,509 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
Finish page (implemented using nsDialogs)
|
||||
|
||||
*/
|
||||
|
||||
;--------------------------------
|
||||
;Page interface settings and variables
|
||||
|
||||
!macro MUI_FINISHPAGE_INTERFACE
|
||||
|
||||
!ifndef MUI_FINISHPAGE_INTERFACE
|
||||
!define MUI_FINISHPAGE_INTERFACE
|
||||
Var mui.FinishPage
|
||||
|
||||
Var mui.FinishPage.Image
|
||||
Var mui.FinishPage.Image.Bitmap
|
||||
|
||||
Var mui.FinishPage.Title
|
||||
Var mui.FinishPage.Title.Font
|
||||
|
||||
Var mui.FinishPage.Text
|
||||
!endif
|
||||
|
||||
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
|
||||
!ifndef MUI_FINISHPAGE_RETURNVALUE_VARIABLES
|
||||
!define MUI_FINISHPAGE_RETURNVALUE_VARIABLES
|
||||
Var mui.FinishPage.ReturnValue
|
||||
!endif
|
||||
!else ifdef MUI_FINISHPAGE_RUN | MUI_FINISHPAGE_SHOWREADME
|
||||
!ifndef MUI_FINISHPAGE_RETURNVALUE_VARIABLES
|
||||
!define MUI_FINISHPAGE_RETURNVALUE_VARIABLES
|
||||
Var mui.FinishPage.ReturnValue
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!ifdef MUI_FINISHPAGE_CANCEL_ENABLED
|
||||
!ifndef MUI_FINISHPAGE_CANCEL_ENABLED_VARIABLES
|
||||
!define MUI_FINISHPAGE_CANCEL_ENABLED_VARIABLES
|
||||
Var mui.FinishPage.DisableAbortWarning
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!ifdef MUI_FINISHPAGE_RUN
|
||||
!ifndef MUI_FINISHPAGE_RUN_VARIABLES
|
||||
!define MUI_FINISHPAGE_RUN_VARIABLES
|
||||
Var mui.FinishPage.Run
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!ifdef MUI_FINISHPAGE_SHOWREADME
|
||||
!ifndef MUI_FINISHPAGE_SHOWREADME_VARIABLES
|
||||
!define MUI_FINISHPAGE_SHOWREADME_VARIABLES
|
||||
Var mui.FinishPage.ShowReadme
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!ifdef MUI_FINISHPAGE_LINK
|
||||
!ifndef MUI_FINISHPAGE_LINK_VARIABLES
|
||||
!define MUI_FINISHPAGE_LINK_VARIABLES
|
||||
Var mui.FinishPage.Link
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
|
||||
!ifndef MUI_FINISHPAGE_REBOOT_VARIABLES
|
||||
!define MUI_FINISHPAGE_REBOOT_VARIABLES
|
||||
Var mui.FinishPage.RebootNow
|
||||
Var mui.FinishPage.RebootLater
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\win.bmp"
|
||||
!if "${MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEFINISHPAGE_BITMAP}" == ""
|
||||
!error "Invalid MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEFINISHPAGE_BITMAP"
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Interface initialization
|
||||
|
||||
!macro MUI_FINISHPAGE_GUIINIT
|
||||
|
||||
!ifndef MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEFINISHPAGE_GUINIT
|
||||
!define MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEFINISHPAGE_GUINIT
|
||||
|
||||
Function ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishPage.GUIInit
|
||||
|
||||
InitPluginsDir
|
||||
File "/oname=$PLUGINSDIR\modern-wizard.bmp" "${MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEFINISHPAGE_BITMAP}"
|
||||
|
||||
!ifdef MUI_${MUI_PAGE_UNINSTALLER_PREFIX}PAGE_FUNCTION_GUIINIT
|
||||
Call "${MUI_${MUI_PAGE_UNINSTALLER_PREFIX}PAGE_FUNCTION_GUIINIT}"
|
||||
!endif
|
||||
|
||||
!ifndef MUI_${MUI_PAGE_UNINSTALLER_PREFIX}FINISHPAGE_NOAUTOCLOSE
|
||||
SetAutoClose true
|
||||
!endif
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}PAGE_FUNCTION_GUIINIT ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishPage.GUIInit
|
||||
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Abort warning
|
||||
|
||||
!macro MUI_FINISHPAGE_ABORTWARNING
|
||||
|
||||
!ifdef MUI_FINISHPAGE_CANCEL_ENABLED
|
||||
|
||||
!ifndef MUI_${MUI_PAGE_UNINSTALLER_PREFIX}FINISHPAGE_ABORTWARNING
|
||||
!define MUI_${MUI_PAGE_UNINSTALLER_PREFIX}FINISHPAGE_ABORTWARNING
|
||||
|
||||
Function ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishPage.AbortWarning
|
||||
|
||||
${if} $mui.FinishPage.DisableAbortWarning == "1"
|
||||
Quit
|
||||
${endif}
|
||||
|
||||
!ifdef MUI_${MUI_PAGE_UNINSTALLER_PREFIX}PAGE_FUNCTION_ABORTWARNING
|
||||
Call ${MUI_${MUI_PAGE_UNINSTALLER_PREFIX}PAGE_FUNCTION_ABORTWARNING}
|
||||
!endif
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}PAGE_FUNCTION_ABORTWARNING ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishPage.AbortWarning
|
||||
|
||||
!endif
|
||||
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page declaration
|
||||
|
||||
!macro MUI_PAGEDECLARATION_FINISH
|
||||
|
||||
!insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}FINISHPAGE ""
|
||||
!insertmacro MUI_FINISHPAGE_INTERFACE
|
||||
|
||||
!insertmacro MUI_FINISHPAGE_GUIINIT
|
||||
!insertmacro MUI_FINISHPAGE_ABORTWARNING
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_FINISHPAGE_TITLE "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_INFO_TITLE)"
|
||||
!insertmacro MUI_DEFAULT MUI_FINISHPAGE_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_INFO_TEXT)"
|
||||
!insertmacro MUI_DEFAULT MUI_FINISHPAGE_BUTTON "$(MUI_BUTTONTEXT_FINISH)"
|
||||
!insertmacro MUI_DEFAULT MUI_FINISHPAGE_TEXT_REBOOT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_INFO_REBOOT)"
|
||||
!insertmacro MUI_DEFAULT MUI_FINISHPAGE_TEXT_REBOOTNOW "$(MUI_TEXT_FINISH_REBOOTNOW)"
|
||||
!insertmacro MUI_DEFAULT MUI_FINISHPAGE_TEXT_REBOOTLATER "$(MUI_TEXT_FINISH_REBOOTLATER)"
|
||||
!insertmacro MUI_DEFAULT MUI_FINISHPAGE_RUN_TEXT "$(MUI_TEXT_FINISH_RUN)"
|
||||
!insertmacro MUI_DEFAULT MUI_FINISHPAGE_SHOWREADME_TEXT "$(MUI_TEXT_FINISH_SHOWREADME)"
|
||||
!insertmacro MUI_DEFAULT MUI_FINISHPAGE_LINK_COLOR "000080"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_FULLWINDOW
|
||||
|
||||
PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}custom
|
||||
|
||||
PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishPage.Pre_${MUI_UNIQUEID} \
|
||||
${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishPage.Leave_${MUI_UNIQUEID}
|
||||
|
||||
Caption " "
|
||||
|
||||
PageExEnd
|
||||
|
||||
!insertmacro MUI_FUNCTION_FINISHPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishPage.Pre_${MUI_UNIQUEID} \
|
||||
${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishPage.Leave_${MUI_UNIQUEID} \
|
||||
${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishPage.Link_${MUI_UNIQUEID}
|
||||
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TITLE
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TITLE_3LINES
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_LARGE
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_BUTTON
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_CANCEL_ENABLED
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_REBOOT
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_REBOOTNOW
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_REBOOTLATER
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_REBOOTLATER_DEFAULT
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_RUN
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_RUN_TEXT
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_RUN_PARAMETERS
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_RUN_NOTCHECKED
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_RUN_FUNCTION
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_SHOWREADME
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_SHOWREADME_TEXT
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_SHOWREADME_FUNCTION
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_LINK
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_LINK_LOCATION
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_LINK_COLOR
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_NOREBOOTSUPPORT
|
||||
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_ABORTWARNINGCHECK
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_CURFIELD_TOP
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_CURFIELD_BOTTOM
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_PAGE_FINISH
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_PAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_FINISH
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNPAGE_FINISH
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_UNPAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_FINISH
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page functions
|
||||
|
||||
!macro MUI_FUNCTION_FINISHPAGE PRE LEAVE LINK
|
||||
|
||||
!ifdef MUI_FINISHPAGE_LINK
|
||||
|
||||
Function "${LINK}"
|
||||
|
||||
ExecShell open "${MUI_FINISHPAGE_LINK_LOCATION}"
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!endif
|
||||
|
||||
Function "${PRE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
|
||||
|
||||
;Set text on Next button
|
||||
SendMessage $mui.Button.Next ${WM_SETTEXT} 0 "STR:${MUI_FINISHPAGE_BUTTON}"
|
||||
|
||||
;Enable cancel button if set in script
|
||||
!ifdef MUI_FINISHPAGE_CANCEL_ENABLED
|
||||
EnableWindow $mui.Button.Cancel 1
|
||||
!endif
|
||||
|
||||
;Create dialog
|
||||
nsDialogs::Create 1044
|
||||
Pop $mui.FinishPage
|
||||
nsDialogs::SetRTL $(^RTL)
|
||||
SetCtlColors $mui.FinishPage "" "${MUI_BGCOLOR}"
|
||||
|
||||
;Image control
|
||||
${NSD_CreateBitmap} 0u 0u 109u 193u ""
|
||||
Pop $mui.FinishPage.Image
|
||||
!insertmacro MUI_INTERNAL_FULLWINDOW_LOADWIZARDIMAGE "${MUI_PAGE_UNINSTALLER_PREFIX}" $mui.FinishPage.Image $PLUGINSDIR\modern-wizard.bmp $mui.FinishPage.Image.Bitmap
|
||||
|
||||
;Positiong of controls
|
||||
|
||||
;Title
|
||||
!ifndef MUI_FINISHPAGE_TITLE_3LINES
|
||||
!define MUI_FINISHPAGE_TITLE_HEIGHT 28
|
||||
!else
|
||||
!define MUI_FINISHPAGE_TITLE_HEIGHT 38
|
||||
!endif
|
||||
|
||||
;Text
|
||||
;17 = 10 (top margin) + 7 (distance between texts)
|
||||
!define /math MUI_FINISHPAGE_TEXT_TOP 17 + ${MUI_FINISHPAGE_TITLE_HEIGHT}
|
||||
|
||||
;Height if space required for radio buttons or check boxes
|
||||
!ifndef MUI_FINISHPAGE_TEXT_LARGE
|
||||
!define MUI_FINISHPAGE_TEXT_HEIGHT_BUTTONS 40
|
||||
!else
|
||||
!define MUI_FINISHPAGE_TEXT_HEIGHT_BUTTONS 60
|
||||
!endif
|
||||
|
||||
!define /math MUI_FINISHPAGE_TEXT_BOTTOM_BUTTONS ${MUI_FINISHPAGE_TEXT_TOP} + ${MUI_FINISHPAGE_TEXT_HEIGHT_BUTTONS}
|
||||
|
||||
;Positioning of radio buttons to ask for a reboot
|
||||
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
|
||||
!define /math MUI_FINISHPAGE_REBOOTNOW_TOP ${MUI_FINISHPAGE_TEXT_BOTTOM_BUTTONS} + 5 ;Distance between text and options
|
||||
;25 = 10 (height of first radio button) + 15 (distance between buttons)
|
||||
!define /math MUI_FINISHPAGE_REBOOTLATER_TOP ${MUI_FINISHPAGE_REBOOTNOW_TOP} + 25
|
||||
!endif
|
||||
|
||||
;Positioning of checkboxes
|
||||
!ifdef MUI_FINISHPAGE_RUN
|
||||
!define /math MUI_FINISHPAGE_RUN_TOP ${MUI_FINISHPAGE_TEXT_BOTTOM_BUTTONS} + 5 ;Distance between text and options
|
||||
!endif
|
||||
!ifdef MUI_FINISHPAGE_SHOWREADME
|
||||
!ifdef MUI_FINISHPAGE_RUN
|
||||
;25 = 10 (height of run checkbox) + 10 (distance between checkboxes)
|
||||
!define /math MUI_FINISHPAGE_SHOWREADME_TOP ${MUI_FINISHPAGE_RUN_TOP} + 20
|
||||
!else
|
||||
!define /math MUI_FINISHPAGE_SHOWREADME_TOP ${MUI_FINISHPAGE_TEXT_BOTTOM_BUTTONS} + 5 ;Distance between text and options
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!ifndef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_SHOWREADME
|
||||
;Height if full space is available for text and link
|
||||
!ifndef MUI_FINISHPAGE_LINK
|
||||
!define MUI_FINISHPAGE_TEXT_HEIGHT 130
|
||||
!else
|
||||
!define MUI_FINISHPAGE_TEXT_HEIGHT 120
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
|
||||
|
||||
${if} ${RebootFlag}
|
||||
|
||||
;Title text
|
||||
${NSD_CreateLabel} 120u 10u 195u ${MUI_FINISHPAGE_TITLE_HEIGHT}u "${MUI_FINISHPAGE_TITLE}"
|
||||
Pop $mui.FinishPage.Title
|
||||
SetCtlColors $mui.FinishPage.Title "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
CreateFont $mui.FinishPage.Title.Font "$(^Font)" "12" "700"
|
||||
SendMessage $mui.FinishPage.Title ${WM_SETFONT} $mui.FinishPage.Title.Font 0
|
||||
|
||||
;Finish text
|
||||
${NSD_CreateLabel} 120u ${MUI_FINISHPAGE_TEXT_TOP}u 195u ${MUI_FINISHPAGE_TEXT_HEIGHT_BUTTONS}u "${MUI_FINISHPAGE_TEXT_REBOOT}"
|
||||
Pop $mui.FinishPage.Text
|
||||
SetCtlColors $mui.FinishPage.Text "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
|
||||
;Radio buttons for reboot page
|
||||
${NSD_CreateRadioButton} 120u ${MUI_FINISHPAGE_REBOOTNOW_TOP}u 195u 10u "${MUI_FINISHPAGE_TEXT_REBOOTNOW}"
|
||||
Pop $mui.FinishPage.RebootNow
|
||||
SetCtlColors $mui.FinishPage.RebootNow "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
${NSD_CreateRadioButton} 120u ${MUI_FINISHPAGE_REBOOTLATER_TOP}u 195u 10u "${MUI_FINISHPAGE_TEXT_REBOOTLATER}"
|
||||
Pop $mui.FinishPage.RebootLater
|
||||
SetCtlColors $mui.FinishPage.RebootLater "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
!ifndef MUI_FINISHPAGE_REBOOTLATER_DEFAULT
|
||||
SendMessage $mui.FinishPage.RebootNow ${BM_SETCHECK} ${BST_CHECKED} 0
|
||||
!else
|
||||
SendMessage $mui.FinishPage.RebootLater ${BM_SETCHECK} ${BST_CHECKED} 0
|
||||
!endif
|
||||
${NSD_SetFocus} $mui.FinishPage.RebootNow
|
||||
|
||||
${else}
|
||||
|
||||
!endif
|
||||
|
||||
;Title text
|
||||
${NSD_CreateLabel} 120u 10u 195u ${MUI_FINISHPAGE_TITLE_HEIGHT}u "${MUI_FINISHPAGE_TITLE}"
|
||||
Pop $mui.FinishPage.Title
|
||||
SetCtlColors $mui.FinishPage.Title "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
CreateFont $mui.FinishPage.Title.Font "$(^Font)" "12" "700"
|
||||
SendMessage $mui.FinishPage.Title ${WM_SETFONT} $mui.FinishPage.Title.Font 0
|
||||
|
||||
;Finish text
|
||||
!ifndef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_SHOWREADME
|
||||
${NSD_CreateLabel} 120u ${MUI_FINISHPAGE_TEXT_TOP}u 195u ${MUI_FINISHPAGE_TEXT_HEIGHT}u "${MUI_FINISHPAGE_TEXT}"
|
||||
!else
|
||||
${NSD_CreateLabel} 120u ${MUI_FINISHPAGE_TEXT_TOP}u 195u ${MUI_FINISHPAGE_TEXT_HEIGHT_BUTTONS}u "${MUI_FINISHPAGE_TEXT}"
|
||||
!endif
|
||||
Pop $mui.FinishPage.Text
|
||||
SetCtlColors $mui.FinishPage.Text "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
|
||||
;Checkboxes
|
||||
!ifdef MUI_FINISHPAGE_RUN
|
||||
${NSD_CreateCheckbox} 120u ${MUI_FINISHPAGE_RUN_TOP}u 195u 10u "${MUI_FINISHPAGE_RUN_TEXT}"
|
||||
Pop $mui.FinishPage.Run
|
||||
SetCtlColors $mui.FinishPage.Run "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
!ifndef MUI_FINISHPAGE_RUN_NOTCHECKED
|
||||
SendMessage $mui.FinishPage.Run ${BM_SETCHECK} ${BST_CHECKED} 0
|
||||
!endif
|
||||
${NSD_SetFocus} $mui.FinishPage.Run
|
||||
!endif
|
||||
!ifdef MUI_FINISHPAGE_SHOWREADME
|
||||
${NSD_CreateCheckbox} 120u ${MUI_FINISHPAGE_SHOWREADME_TOP}u 195u 10u "${MUI_FINISHPAGE_SHOWREADME_TEXT}"
|
||||
Pop $mui.FinishPage.ShowReadme
|
||||
SetCtlColors $mui.FinishPage.ShowReadme "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
!ifndef MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
|
||||
SendMessage $mui.FinishPage.ShowReadme ${BM_SETCHECK} ${BST_CHECKED} 0
|
||||
!endif
|
||||
!ifndef MUI_FINISHPAGE_RUN
|
||||
${NSD_SetFocus} $mui.FinishPage.ShowReadme
|
||||
!endif
|
||||
!endif
|
||||
|
||||
;Link
|
||||
!ifdef MUI_FINISHPAGE_LINK
|
||||
${NSD_CreateLink} 120u 175u 195u 10u "${MUI_FINISHPAGE_LINK}"
|
||||
Pop $mui.FinishPage.Link
|
||||
SetCtlColors $mui.FinishPage.Link "${MUI_FINISHPAGE_LINK_COLOR}" "${MUI_BGCOLOR}"
|
||||
${NSD_OnClick} $mui.FinishPage.Link "${LINK}"
|
||||
!endif
|
||||
|
||||
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
|
||||
${endif}
|
||||
!endif
|
||||
|
||||
!ifdef MUI_FINISHPAGE_CANCEL_ENABLED
|
||||
StrCpy $mui.FinishPage.DisableAbortWarning "1"
|
||||
!endif
|
||||
|
||||
!ifndef MUI_FORCECLASSICCONTROLS
|
||||
${If} ${IsHighContrastModeActive}
|
||||
!endif
|
||||
; SetCtlColors does not change the check/radio text color (bug #443)
|
||||
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
|
||||
System::Call 'UXTHEME::SetWindowTheme(p$mui.FinishPage.RebootNow,w" ",w" ")'
|
||||
System::Call 'UXTHEME::SetWindowTheme(p$mui.FinishPage.RebootLater,w" ",w" ")'
|
||||
!endif
|
||||
!ifdef MUI_FINISHPAGE_RUN
|
||||
System::Call 'UXTHEME::SetWindowTheme(p$mui.FinishPage.Run,w" ",w" ")'
|
||||
!endif
|
||||
!ifdef MUI_FINISHPAGE_SHOWREADME
|
||||
System::Call 'UXTHEME::SetWindowTheme(p$mui.FinishPage.ShowReadme,w" ",w" ")'
|
||||
!endif
|
||||
!ifndef MUI_FORCECLASSICCONTROLS
|
||||
${EndIf}
|
||||
!endif
|
||||
|
||||
;Show page
|
||||
Call ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}muiPageLoadFullWindow
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
|
||||
nsDialogs::Show
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM DESTROYED
|
||||
Call ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}muiPageUnloadFullWindow
|
||||
|
||||
!ifdef MUI_FINISHPAGE_CANCEL_ENABLED
|
||||
StrCpy $mui.FinishPage.DisableAbortWarning ""
|
||||
!endif
|
||||
|
||||
;Delete image from memory
|
||||
${NSD_FreeImage} $mui.FinishPage.Image.Bitmap
|
||||
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TITLE_HEIGHT
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_TOP
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_HEIGHT
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_HEIGHT_BUTTONS
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_BOTTOM_BUTTONS
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_REBOOTNOW_TOP
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_REBOOTLATER_TOP
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_RUN_TOP
|
||||
!insertmacro MUI_UNSET MUI_FINISHPAGE_SHOWREADME_TOP
|
||||
|
||||
FunctionEnd
|
||||
|
||||
Function "${LEAVE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
|
||||
|
||||
!ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
|
||||
|
||||
;Check whether the user has chosen to reboot the computer
|
||||
${if} ${RebootFlag}
|
||||
SendMessage $mui.FinishPage.RebootNow ${BM_GETCHECK} 0 0 $mui.FinishPage.ReturnValue
|
||||
${if} $mui.FinishPage.ReturnValue = ${BST_CHECKED}
|
||||
Reboot
|
||||
${else}
|
||||
Return
|
||||
${endif}
|
||||
${endif}
|
||||
|
||||
!endif
|
||||
|
||||
;Run functions depending on checkbox state
|
||||
|
||||
!ifdef MUI_FINISHPAGE_RUN
|
||||
|
||||
SendMessage $mui.FinishPage.Run ${BM_GETCHECK} 0 0 $mui.FinishPage.ReturnValue
|
||||
|
||||
${if} $mui.FinishPage.ReturnValue = ${BST_CHECKED}
|
||||
!ifndef MUI_FINISHPAGE_RUN_FUNCTION
|
||||
!ifndef MUI_FINISHPAGE_RUN_PARAMETERS
|
||||
Exec "$\"${MUI_FINISHPAGE_RUN}$\""
|
||||
!else
|
||||
Exec "$\"${MUI_FINISHPAGE_RUN}$\" ${MUI_FINISHPAGE_RUN_PARAMETERS}"
|
||||
!endif
|
||||
!else
|
||||
Call "${MUI_FINISHPAGE_RUN_FUNCTION}"
|
||||
!endif
|
||||
${endif}
|
||||
|
||||
!endif
|
||||
|
||||
!ifdef MUI_FINISHPAGE_SHOWREADME
|
||||
|
||||
SendMessage $mui.FinishPage.ShowReadme ${BM_GETCHECK} 0 0 $mui.FinishPage.ReturnValue
|
||||
|
||||
${if} $mui.FinishPage.ReturnValue = ${BST_CHECKED}
|
||||
!ifndef MUI_FINISHPAGE_SHOWREADME_FUNCTION
|
||||
ExecShell open "${MUI_FINISHPAGE_SHOWREADME}"
|
||||
!else
|
||||
Call "${MUI_FINISHPAGE_SHOWREADME_FUNCTION}"
|
||||
!endif
|
||||
${endif}
|
||||
|
||||
!endif
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
149
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/InstallFiles.nsh
Normal file
149
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/InstallFiles.nsh
Normal file
@ -0,0 +1,149 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
InstallFiles page
|
||||
|
||||
*/
|
||||
|
||||
;--------------------------------
|
||||
;Page interface settings and variables
|
||||
|
||||
!macro MUI_INSTFILESPAGE_INTERFACE
|
||||
|
||||
!ifndef MUI_INSTFILESYPAGE_INTERFACE
|
||||
!define MUI_INSTFILESYPAGE_INTERFACE
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_INSTFILESPAGE_COLORS "/windows"
|
||||
!insertmacro MUI_DEFAULT MUI_INSTFILESPAGE_PROGRESSBAR "smooth"
|
||||
|
||||
Var mui.InstFilesPage
|
||||
|
||||
Var mui.InstFilesPage.Text
|
||||
Var mui.InstFilesPage.ProgressBar
|
||||
Var mui.InstFilesPage.ShowLogButton
|
||||
Var mui.InstFilesPage.Log
|
||||
|
||||
;Apply settings
|
||||
InstallColors ${MUI_INSTFILESPAGE_COLORS}
|
||||
InstProgressFlags ${MUI_INSTFILESPAGE_PROGRESSBAR}
|
||||
SubCaption 4 " "
|
||||
UninstallSubCaption 2 " "
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page declaration
|
||||
|
||||
!macro MUI_PAGEDECLARATION_INSTFILES
|
||||
|
||||
!insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INSTFILESPAGE ""
|
||||
!insertmacro MUI_INSTFILESPAGE_INTERFACE
|
||||
|
||||
PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}instfiles
|
||||
|
||||
PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesLeave_${MUI_UNIQUEID}
|
||||
|
||||
Caption " "
|
||||
|
||||
PageExEnd
|
||||
|
||||
!insertmacro MUI_FUNCTION_INSTFILESPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesLeave_${MUI_UNIQUEID}
|
||||
|
||||
!insertmacro MUI_UNSET MUI_INSTFILESPAGE_FINISHHEADER_TEXT
|
||||
!insertmacro MUI_UNSET MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT
|
||||
!insertmacro MUI_UNSET MUI_INSTFILESPAGE_ABORTWARNING_TEXT
|
||||
!insertmacro MUI_UNSET MUI_INSTFILESPAGE_ABORTWARNING_SUBTEXT
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_PAGE_INSTFILES
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_PAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_INSTFILES
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNPAGE_INSTFILES
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_UNPAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_INSTFILES
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page functions
|
||||
|
||||
!macro MUI_FUNCTION_INSTFILESPAGE PRE SHOW LEAVE
|
||||
|
||||
Function "${PRE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
|
||||
!insertmacro MUI_HEADER_TEXT_PAGE $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_${MUI_PAGE_UNINSTALLER_PREFIX}INSTALLING_TITLE) $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_${MUI_PAGE_UNINSTALLER_PREFIX}INSTALLING_SUBTITLE)
|
||||
|
||||
FunctionEnd
|
||||
|
||||
Function "${SHOW}"
|
||||
|
||||
;Get controls handles
|
||||
FindWindow $mui.InstFilesPage "#32770" "" $HWNDPARENT
|
||||
GetDlgItem $mui.InstFilesPage.Text $mui.InstFilesPage 1006
|
||||
GetDlgItem $mui.InstFilesPage.ProgressBar $mui.InstFilesPage 1004
|
||||
GetDlgItem $mui.InstFilesPage.ShowLogButton $mui.InstFilesPage 1027
|
||||
GetDlgItem $mui.InstFilesPage.Log $mui.InstFilesPage 1016
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
|
||||
|
||||
FunctionEnd
|
||||
|
||||
Function "${LEAVE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
|
||||
|
||||
;Set text on completed page header
|
||||
|
||||
IfAbort mui.endheader_abort
|
||||
|
||||
!ifdef MUI_INSTFILESPAGE_FINISHHEADER_TEXT & MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT
|
||||
!insertmacro MUI_HEADER_TEXT "${MUI_INSTFILESPAGE_FINISHHEADER_TEXT}" "${MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT}"
|
||||
!else ifdef MUI_INSTFILESPAGE_FINISHHEADER_TEXT
|
||||
!insertmacro MUI_HEADER_TEXT "${MUI_INSTFILESPAGE_FINISHHEADER_TEXT}" "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_SUBTITLE)"
|
||||
!else ifdef MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT
|
||||
!insertmacro MUI_HEADER_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_TITLE)" "${MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT}"
|
||||
!else
|
||||
!insertmacro MUI_HEADER_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_TITLE)" "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_SUBTITLE)"
|
||||
!endif
|
||||
|
||||
Goto mui.endheader_done
|
||||
|
||||
mui.endheader_abort:
|
||||
|
||||
!ifdef MUI_INSTFILESPAGE_ABORTHEADER_TEXT & MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT
|
||||
!insertmacro MUI_HEADER_TEXT "${MUI_INSTFILESPAGE_ABORTHEADER_TEXT}" "${MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT}"
|
||||
!else ifdef MUI_INSTFILESPAGE_ABORTHEADER_TEXT
|
||||
!insertmacro MUI_HEADER_TEXT "${MUI_INSTFILESPAGE_ABORTHEADER_TEXT}" "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_ABORT_SUBTITLE)"
|
||||
!else ifdef MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT
|
||||
!insertmacro MUI_HEADER_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_ABORT_TITLE)" "${MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT}"
|
||||
!else
|
||||
!insertmacro MUI_HEADER_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_ABORT_TITLE)" "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_ABORT_SUBTITLE)"
|
||||
!endif
|
||||
|
||||
mui.endheader_done:
|
||||
|
||||
!insertmacro MUI_LANGDLL_SAVELANGUAGE
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
143
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/License.nsh
Normal file
143
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/License.nsh
Normal file
@ -0,0 +1,143 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
License page
|
||||
|
||||
*/
|
||||
|
||||
;--------------------------------
|
||||
;Page interface settings and variables
|
||||
|
||||
!macro MUI_LICENSEPAGE_INTERFACE
|
||||
|
||||
!ifndef MUI_LICENSEPAGE_INTERFACE
|
||||
!define MUI_LICENSEPAGE_INTERFACE
|
||||
Var mui.LicensePage
|
||||
|
||||
Var mui.Licensepage.TopText
|
||||
Var mui.Licensepage.Text
|
||||
Var mui.Licensepage.LicenseText
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_LICENSEPAGE_BGCOLOR "/windows"
|
||||
|
||||
;Apply settings
|
||||
LicenseBkColor "${MUI_LICENSEPAGE_BGCOLOR}"
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page declaration
|
||||
|
||||
!macro MUI_PAGEDECLARATION_LICENSE LICENSEDATA
|
||||
|
||||
!insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}LICENSEPAGE ""
|
||||
!insertmacro MUI_LICENSEPAGE_INTERFACE
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_LICENSEPAGE_TEXT_TOP "$(MUI_INNERTEXT_LICENSE_TOP)"
|
||||
!insertmacro MUI_DEFAULT MUI_LICENSEPAGE_BUTTON ""
|
||||
!insertmacro MUI_DEFAULT MUI_LICENSEPAGE_CHECKBOX_TEXT ""
|
||||
!insertmacro MUI_DEFAULT MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT ""
|
||||
!insertmacro MUI_DEFAULT MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE ""
|
||||
|
||||
PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}license
|
||||
|
||||
PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicensePre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicenseShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicenseLeave_${MUI_UNIQUEID}
|
||||
|
||||
Caption " "
|
||||
|
||||
LicenseData "${LICENSEDATA}"
|
||||
|
||||
!ifndef MUI_LICENSEPAGE_TEXT_BOTTOM
|
||||
!ifndef MUI_LICENSEPAGE_CHECKBOX & MUI_LICENSEPAGE_RADIOBUTTONS
|
||||
LicenseText "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INNERTEXT_LICENSE_BOTTOM)" "${MUI_LICENSEPAGE_BUTTON}"
|
||||
!else ifdef MUI_LICENSEPAGE_CHECKBOX
|
||||
LicenseText "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INNERTEXT_LICENSE_BOTTOM_CHECKBOX)" "${MUI_LICENSEPAGE_BUTTON}"
|
||||
!else
|
||||
LicenseText "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS)" "${MUI_LICENSEPAGE_BUTTON}"
|
||||
!endif
|
||||
!else
|
||||
LicenseText "${MUI_LICENSEPAGE_TEXT_BOTTOM}" "${MUI_LICENSEPAGE_BUTTON}"
|
||||
!endif
|
||||
|
||||
!ifdef MUI_LICENSEPAGE_CHECKBOX
|
||||
LicenseForceSelection checkbox "${MUI_LICENSEPAGE_CHECKBOX_TEXT}"
|
||||
!else ifdef MUI_LICENSEPAGE_RADIOBUTTONS
|
||||
LicenseForceSelection radiobuttons "${MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT}" "${MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE}"
|
||||
!endif
|
||||
|
||||
PageExEnd
|
||||
|
||||
!insertmacro MUI_FUNCTION_LICENSEPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicensePre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicenseShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicenseLeave_${MUI_UNIQUEID}
|
||||
|
||||
!insertmacro MUI_UNSET MUI_LICENSEPAGE_TEXT_TOP
|
||||
!insertmacro MUI_UNSET MUI_LICENSEPAGE_TEXT_BOTTOM
|
||||
!insertmacro MUI_UNSET MUI_LICENSEPAGE_BUTTON
|
||||
!insertmacro MUI_UNSET MUI_LICENSEPAGE_CHECKBOX
|
||||
!insertmacro MUI_UNSET MUI_LICENSEPAGE_CHECKBOX_TEXT
|
||||
!insertmacro MUI_UNSET MUI_LICENSEPAGE_RADIOBUTTONS
|
||||
!insertmacro MUI_UNSET MUI_LICENSEPAGE_CHECKBOX_TEXT_ACCEPT
|
||||
!insertmacro MUI_UNSET MUI_LICENSEPAGE_CHECKBOX_TEXT_DECLINE
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_PAGE_LICENSE LICENSEDATA
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_PAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_LICENSE "${LICENSEDATA}"
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNPAGE_LICENSE LICENSEDATA
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_UNPAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_LICENSE "${LICENSEDATA}"
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page functions
|
||||
|
||||
!macro MUI_FUNCTION_LICENSEPAGE PRE SHOW LEAVE
|
||||
|
||||
Function "${PRE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
|
||||
!insertmacro MUI_HEADER_TEXT_PAGE $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_LICENSE_TITLE) $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_LICENSE_SUBTITLE)
|
||||
|
||||
FunctionEnd
|
||||
|
||||
Function "${SHOW}"
|
||||
|
||||
;Get control handles
|
||||
FindWindow $mui.LicensePage "#32770" "" $HWNDPARENT
|
||||
GetDlgItem $mui.LicensePage.TopText $mui.LicensePage 1040
|
||||
GetDlgItem $mui.LicensePage.Text $mui.LicensePage 1006
|
||||
GetDlgItem $mui.LicensePage.LicenseText $mui.LicensePage 1000
|
||||
|
||||
;Top text
|
||||
SendMessage $mui.LicensePage.TopText ${WM_SETTEXT} 0 "STR:${MUI_LICENSEPAGE_TEXT_TOP}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
|
||||
|
||||
FunctionEnd
|
||||
|
||||
Function "${LEAVE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
236
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/StartMenu.nsh
Normal file
236
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/StartMenu.nsh
Normal file
@ -0,0 +1,236 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
Start Menu folder page
|
||||
|
||||
*/
|
||||
|
||||
;--------------------------------
|
||||
;Page interface settings and variables
|
||||
|
||||
!macro MUI_STARTMENUPAGE_INTERFACE
|
||||
|
||||
!ifndef MUI_STARTMENUPAGE_INTERFACE
|
||||
!define MUI_STARTMENUPAGE_INTERFACE
|
||||
Var mui.StartMenuPage
|
||||
Var mui.StartMenuPage.Location
|
||||
Var mui.StartMenuPage.FolderList
|
||||
|
||||
Var mui.StartMenuPage.Temp
|
||||
!endif
|
||||
|
||||
!ifdef MUI_STARTMENUPAGE_REGISTRY_ROOT & MUI_STARTMENUPAGE_REGISTRY_KEY & MUI_STARTMENUPAGE_REGISTRY_VALUENAME
|
||||
!ifndef MUI_STARTMENUPAGE_REGISTRY_VARIABLES
|
||||
!define MUI_STARTMENUPAGE_REGISTRY_VARIABLES
|
||||
Var mui.StartMenuPage.RegistryLocation
|
||||
!endif
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page declaration
|
||||
|
||||
!macro MUI_PAGEDECLARATION_STARTMENU ID VAR
|
||||
|
||||
!insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}STARTMENUPAGE ""
|
||||
!insertmacro MUI_STARTMENUPAGE_INTERFACE
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_STARTMENUPAGE_DEFAULTFOLDER "$(^Name)"
|
||||
!insertmacro MUI_DEFAULT MUI_STARTMENUPAGE_TEXT_TOP "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INNERTEXT_STARTMENU_TOP)"
|
||||
!insertmacro MUI_DEFAULT MUI_STARTMENUPAGE_TEXT_CHECKBOX "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INNERTEXT_STARTMENU_CHECKBOX)"
|
||||
|
||||
!define MUI_STARTMENUPAGE_VARIABLE "${VAR}"
|
||||
!define "MUI_STARTMENUPAGE_${ID}_VARIABLE" "${MUI_STARTMENUPAGE_VARIABLE}"
|
||||
!define "MUI_STARTMENUPAGE_${ID}_DEFAULTFOLDER" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
|
||||
!ifdef MUI_STARTMENUPAGE_REGISTRY_ROOT
|
||||
!define "MUI_STARTMENUPAGE_${ID}_REGISTRY_ROOT" "${MUI_STARTMENUPAGE_REGISTRY_ROOT}"
|
||||
!endif
|
||||
!ifdef MUI_STARTMENUPAGE_REGISTRY_KEY
|
||||
!define "MUI_STARTMENUPAGE_${ID}_REGISTRY_KEY" "${MUI_STARTMENUPAGE_REGISTRY_KEY}"
|
||||
!endif
|
||||
!ifdef MUI_STARTMENUPAGE_REGISTRY_VALUENAME
|
||||
!define "MUI_STARTMENUPAGE_${ID}_REGISTRY_VALUENAME" "${MUI_STARTMENUPAGE_REGISTRY_VALUENAME}"
|
||||
!endif
|
||||
|
||||
PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}custom
|
||||
|
||||
PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuLeave_${MUI_UNIQUEID}
|
||||
|
||||
Caption " "
|
||||
|
||||
PageExEnd
|
||||
|
||||
!insertmacro MUI_FUNCTION_STARTMENUPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuLeave_${MUI_UNIQUEID}
|
||||
|
||||
!undef MUI_STARTMENUPAGE_VARIABLE
|
||||
!undef MUI_STARTMENUPAGE_TEXT_TOP
|
||||
!undef MUI_STARTMENUPAGE_TEXT_CHECKBOX
|
||||
!undef MUI_STARTMENUPAGE_DEFAULTFOLDER
|
||||
!insertmacro MUI_UNSET MUI_STARTMENUPAGE_NODISABLE
|
||||
!insertmacro MUI_UNSET MUI_STARTMENUPAGE_REGISTRY_ROOT
|
||||
!insertmacro MUI_UNSET MUI_STARTMENUPAGE_REGISTRY_KEY
|
||||
!insertmacro MUI_UNSET MUI_STARTMENUPAGE_REGISTRY_VALUENAME
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_PAGE_STARTMENU ID VAR
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_PAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_STARTMENU "${ID}" "${VAR}"
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
;--------------------------------
|
||||
;Page functions
|
||||
|
||||
!macro MUI_FUNCTION_STARTMENUPAGE PRE LEAVE
|
||||
|
||||
Function "${PRE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
|
||||
|
||||
!ifdef MUI_STARTMENUPAGE_REGISTRY_ROOT & MUI_STARTMENUPAGE_REGISTRY_KEY & MUI_STARTMENUPAGE_REGISTRY_VALUENAME
|
||||
|
||||
;Get Start Menu location from registry
|
||||
|
||||
${if} "${MUI_STARTMENUPAGE_VARIABLE}" == ""
|
||||
|
||||
ReadRegStr $mui.StartMenuPage.RegistryLocation "${MUI_STARTMENUPAGE_REGISTRY_ROOT}" "${MUI_STARTMENUPAGE_REGISTRY_KEY}" "${MUI_STARTMENUPAGE_REGISTRY_VALUENAME}"
|
||||
${if} $mui.StartMenuPage.RegistryLocation != ""
|
||||
StrCpy "${MUI_STARTMENUPAGE_VARIABLE}" $mui.StartMenuPage.RegistryLocation
|
||||
${endif}
|
||||
|
||||
ClearErrors
|
||||
|
||||
${endif}
|
||||
|
||||
!endif
|
||||
|
||||
!insertmacro MUI_HEADER_TEXT_PAGE $(MUI_TEXT_STARTMENU_TITLE) $(MUI_TEXT_STARTMENU_SUBTITLE)
|
||||
|
||||
${if} $(^RTL) == "0"
|
||||
!ifndef MUI_STARTMENUPAGE_NODISABLE
|
||||
StartMenu::Init /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" /checknoshortcuts "${MUI_STARTMENUPAGE_TEXT_CHECKBOX}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
|
||||
!else
|
||||
StartMenu::Init /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
|
||||
!endif
|
||||
${else}
|
||||
!ifndef MUI_STARTMENUPAGE_NODISABLE
|
||||
StartMenu::Init /rtl /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" /checknoshortcuts "${MUI_STARTMENUPAGE_TEXT_CHECKBOX}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
|
||||
!else
|
||||
StartMenu::Init /rtl /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
|
||||
!endif
|
||||
${endif}
|
||||
|
||||
Pop $mui.StartMenuPage
|
||||
|
||||
;Get control handles
|
||||
GetDlgItem $mui.StartMenuPage.Location $mui.StartMenuPage 1002
|
||||
GetDlgItem $mui.StartMenuPage.FolderList $mui.StartMenuPage 1004
|
||||
|
||||
!ifdef MUI_STARTMENUPAGE_BGCOLOR
|
||||
!insertmacro MUI_DEFAULT MUI_STARTMENUPAGE_TEXTCOLOR ""
|
||||
SetCtlColors $mui.StartMenuPage.Location "${MUI_STARTMENUPAGE_TEXTCOLOR}" "${MUI_STARTMENUPAGE_BGCOLOR}"
|
||||
SetCtlColors $mui.StartMenuMenu.FolderList "${MUI_STARTMENUPAGE_TEXTCOLOR}" "${MUI_STARTMENUPAGE_BGCOLOR}"
|
||||
!endif
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
|
||||
StartMenu::Show
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM DESTROYED
|
||||
|
||||
Pop $mui.StartMenuPage.Temp
|
||||
${if} $mui.StartMenuPage.Temp == "success"
|
||||
Pop "${MUI_STARTMENUPAGE_VARIABLE}"
|
||||
${endif}
|
||||
|
||||
FunctionEnd
|
||||
|
||||
Function "${LEAVE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Script macros to get Start Menu folder
|
||||
|
||||
!macro MUI_STARTMENU_GETFOLDER ID VAR
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
;Get Start Menu folder from registry
|
||||
;Can be called from the script in the uninstaller
|
||||
|
||||
!ifdef MUI_STARTMENUPAGE_${ID}_REGISTRY_ROOT & MUI_STARTMENUPAGE_${ID}_REGISTRY_KEY & MUI_STARTMENUPAGE_${ID}_REGISTRY_VALUENAME
|
||||
|
||||
ReadRegStr $mui.StartMenuPage.RegistryLocation "${MUI_STARTMENUPAGE_${ID}_REGISTRY_ROOT}" "${MUI_STARTMENUPAGE_${ID}_REGISTRY_KEY}" "${MUI_STARTMENUPAGE_${ID}_REGISTRY_VALUENAME}"
|
||||
|
||||
${if} $mui.StartMenuPage.RegistryLocation != ""
|
||||
StrCpy "${VAR}" $mui.StartMenuPage.RegistryLocation
|
||||
${else}
|
||||
StrCpy "${VAR}" "${MUI_STARTMENUPAGE_${ID}_DEFAULTFOLDER}"
|
||||
${endif}
|
||||
|
||||
!else
|
||||
|
||||
StrCpy "${VAR}" "${MUI_STARTMENUPAGE_${ID}_DEFAULTFOLDER}"
|
||||
|
||||
!endif
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_STARTMENU_WRITE_BEGIN ID
|
||||
|
||||
;The code in the script to write the shortcuts should be put between the
|
||||
;MUI_STARTMENU_WRITE_BEGIN and MUI_STARTMENU_WRITE_END macros
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!define MUI_STARTMENUPAGE_CURRENT_ID "${ID}"
|
||||
|
||||
StrCpy $mui.StartMenuPage.Temp "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_VARIABLE}" 1
|
||||
|
||||
;If the folder start with >, the user has chosen not to create a shortcut
|
||||
${if} $mui.StartMenuPage.Temp != ">"
|
||||
|
||||
${if} "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_VARIABLE}" == ""
|
||||
;Get folder from registry if the variable doesn't contain anything
|
||||
!insertmacro MUI_STARTMENU_GETFOLDER "${MUI_STARTMENUPAGE_CURRENT_ID}" "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_VARIABLE}"
|
||||
${endif}
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_STARTMENU_WRITE_END
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!ifdef MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_ROOT & MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_KEY & MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_VALUENAME
|
||||
;Write folder to registry
|
||||
WriteRegStr "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_ROOT}" "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_KEY}" "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_VALUENAME}" "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_VARIABLE}"
|
||||
!endif
|
||||
|
||||
${endif}
|
||||
|
||||
!undef MUI_STARTMENUPAGE_CURRENT_ID
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
@ -0,0 +1,100 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
Uninstall confirmation page
|
||||
|
||||
*/
|
||||
|
||||
;--------------------------------
|
||||
;Page interface settings and variables
|
||||
|
||||
!macro MUI_UNCONFIRMPAGE_INTERFACE
|
||||
|
||||
!ifndef MUI_UNCONFIRMPAGE_INTERFACE
|
||||
!define MUI_UNCONFIRMPAGE_INTERFACE
|
||||
Var mui.UnConfirmPage
|
||||
|
||||
Var mui.UnConfirmPage.Text
|
||||
Var mui.UnConfirmPage.DirectoryText
|
||||
Var mui.UnConfirmPage.Directory
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page declaration
|
||||
|
||||
!macro MUI_PAGEDECLARATION_CONFIRM
|
||||
|
||||
!insertmacro MUI_SET MUI_UNCONFIRMPAGE ""
|
||||
!insertmacro MUI_UNCONFIRMPAGE_INTERFACE
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_UNCONFIRMPAGE_TEXT_TOP ""
|
||||
!insertmacro MUI_DEFAULT MUI_UNCONFIRMPAGE_TEXT_LOCATION ""
|
||||
|
||||
PageEx un.uninstConfirm
|
||||
|
||||
PageCallbacks un.mui.ConfirmPre_${MUI_UNIQUEID} un.mui.ConfirmShow_${MUI_UNIQUEID} un.mui.ConfirmLeave_${MUI_UNIQUEID}
|
||||
|
||||
Caption " "
|
||||
|
||||
UninstallText "${MUI_UNCONFIRMPAGE_TEXT_TOP}" "${MUI_UNCONFIRMPAGE_TEXT_LOCATION}"
|
||||
|
||||
!ifdef MUI_UNCONFIRMPAGE_VARIABLE
|
||||
DirVar "${MUI_UNCONFIRMPAGE_VARIABLE}"
|
||||
!endif
|
||||
|
||||
PageExEnd
|
||||
|
||||
!insertmacro MUI_UNFUNCTION_CONFIRMPAGE un.mui.ConfirmPre_${MUI_UNIQUEID} un.mui.ConfirmShow_${MUI_UNIQUEID} un.mui.ConfirmLeave_${MUI_UNIQUEID}
|
||||
|
||||
!insertmacro MUI_UNSET MUI_UNCONFIRMPAGE_TEXT_TOP
|
||||
!insertmacro MUI_UNSET MUI_UNCONFIRMPAGE_TEXT_LOCATION
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNPAGE_CONFIRM
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_UNPAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_CONFIRM
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page functions
|
||||
|
||||
!macro MUI_UNFUNCTION_CONFIRMPAGE PRE SHOW LEAVE
|
||||
|
||||
Function "${PRE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
|
||||
!insertmacro MUI_HEADER_TEXT_PAGE $(MUI_UNTEXT_CONFIRM_TITLE) $(MUI_UNTEXT_CONFIRM_SUBTITLE)
|
||||
|
||||
FunctionEnd
|
||||
|
||||
Function "${SHOW}"
|
||||
|
||||
;Get controls handles
|
||||
FindWindow $mui.UnConfirmPage "#32770" "" $HWNDPARENT
|
||||
GetDlgItem $mui.UnConfirmPage.Text $mui.UnConfirmPage 1006
|
||||
GetDlgItem $mui.UnConfirmPage.DirectoryText $mui.UnConfirmPage 1029
|
||||
GetDlgItem $mui.UnConfirmPage.Directory $mui.UnConfirmPage 1000
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
|
||||
|
||||
FunctionEnd
|
||||
|
||||
Function "${LEAVE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
180
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/Welcome.nsh
Normal file
180
KattekerCreator/nsis/Contrib/Modern UI 2/Pages/Welcome.nsh
Normal file
@ -0,0 +1,180 @@
|
||||
/*
|
||||
|
||||
NSIS Modern User Interface
|
||||
Welcome page (implemented using nsDialogs)
|
||||
|
||||
*/
|
||||
|
||||
;--------------------------------
|
||||
;Page interface settings and variables
|
||||
|
||||
!macro MUI_WELCOMEPAGE_INTERFACE
|
||||
|
||||
!ifndef MUI_WELCOMEPAGE_INTERFACE
|
||||
!define MUI_WELCOMEPAGE_INTERFACE
|
||||
Var mui.WelcomePage
|
||||
|
||||
Var mui.WelcomePage.Image
|
||||
Var mui.WelcomePage.Image.Bitmap
|
||||
|
||||
Var mui.WelcomePage.Title
|
||||
Var mui.WelcomePage.Title.Font
|
||||
|
||||
Var mui.WelcomePage.Text
|
||||
!endif
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\win.bmp"
|
||||
!if "${MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEFINISHPAGE_BITMAP}" == ""
|
||||
!error "Invalid MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEFINISHPAGE_BITMAP"
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Interface initialization
|
||||
|
||||
!macro MUI_WELCOMEPAGE_GUIINIT
|
||||
|
||||
!ifndef MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEWELCOMEPAGE_GUINIT
|
||||
!define MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEWELCOMEPAGE_GUINIT
|
||||
|
||||
Function ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.WelcomePage.GUIInit
|
||||
|
||||
InitPluginsDir
|
||||
File "/oname=$PLUGINSDIR\modern-wizard.bmp" "${MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEFINISHPAGE_BITMAP}"
|
||||
|
||||
!ifdef MUI_${MUI_PAGE_UNINSTALLER_PREFIX}PAGE_FUNCTION_GUIINIT
|
||||
Call "${MUI_${MUI_PAGE_UNINSTALLER_PREFIX}PAGE_FUNCTION_GUIINIT}"
|
||||
!endif
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}PAGE_FUNCTION_GUIINIT ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.WelcomePage.GUIInit
|
||||
|
||||
!endif
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page declaration
|
||||
|
||||
!macro MUI_PAGEDECLARATION_WELCOME
|
||||
|
||||
!insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEPAGE ""
|
||||
!insertmacro MUI_WELCOMEPAGE_INTERFACE
|
||||
|
||||
!insertmacro MUI_WELCOMEPAGE_GUIINIT
|
||||
|
||||
!insertmacro MUI_DEFAULT MUI_WELCOMEPAGE_TITLE "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_WELCOME_INFO_TITLE)"
|
||||
!insertmacro MUI_DEFAULT MUI_WELCOMEPAGE_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_WELCOME_INFO_TEXT)"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_FULLWINDOW
|
||||
|
||||
PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}custom
|
||||
|
||||
PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.WelcomePre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.WelcomeLeave_${MUI_UNIQUEID}
|
||||
|
||||
PageExEnd
|
||||
|
||||
!insertmacro MUI_FUNCTION_WELCOMEPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.WelcomePre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.WelcomeLeave_${MUI_UNIQUEID}
|
||||
|
||||
!insertmacro MUI_UNSET MUI_WELCOMEPAGE_TITLE
|
||||
!insertmacro MUI_UNSET MUI_WELCOMEPAGE_TITLE_3LINES
|
||||
!insertmacro MUI_UNSET MUI_WELCOMEPAGE_TEXT
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_PAGE_WELCOME
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_PAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_WELCOME
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
!macro MUI_UNPAGE_WELCOME
|
||||
|
||||
!verbose push
|
||||
!verbose ${MUI_VERBOSE}
|
||||
|
||||
!insertmacro MUI_UNPAGE_INIT
|
||||
!insertmacro MUI_PAGEDECLARATION_WELCOME
|
||||
|
||||
!verbose pop
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
;--------------------------------
|
||||
;Page functions
|
||||
|
||||
!macro MUI_FUNCTION_WELCOMEPAGE PRE LEAVE
|
||||
|
||||
Function "${PRE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
|
||||
|
||||
;Create dialog
|
||||
nsDialogs::Create 1044
|
||||
Pop $mui.WelcomePage
|
||||
nsDialogs::SetRTL $(^RTL)
|
||||
SetCtlColors $mui.WelcomePage "" "${MUI_BGCOLOR}"
|
||||
|
||||
;Image control
|
||||
${NSD_CreateBitmap} 0u 0u 109u 193u ""
|
||||
Pop $mui.WelcomePage.Image
|
||||
!insertmacro MUI_INTERNAL_FULLWINDOW_LOADWIZARDIMAGE "${MUI_PAGE_UNINSTALLER_PREFIX}" $mui.WelcomePage.Image $PLUGINSDIR\modern-wizard.bmp $mui.WelcomePage.Image.Bitmap
|
||||
|
||||
;Positiong of controls
|
||||
|
||||
;Title
|
||||
!ifndef MUI_WELCOMEPAGE_TITLE_3LINES
|
||||
!define MUI_WELCOMEPAGE_TITLE_HEIGHT 28
|
||||
!else
|
||||
!define MUI_WELCOMEPAGE_TITLE_HEIGHT 38
|
||||
!endif
|
||||
|
||||
;Text
|
||||
;17 = 10 (top margin) + 7 (distance between texts)
|
||||
!define /math MUI_WELCOMEPAGE_TEXT_TOP 17 + ${MUI_WELCOMEPAGE_TITLE_HEIGHT}
|
||||
|
||||
;Title
|
||||
${NSD_CreateLabel} 120u 10u 195u ${MUI_WELCOMEPAGE_TITLE_HEIGHT}u "${MUI_WELCOMEPAGE_TITLE}"
|
||||
Pop $mui.WelcomePage.Title
|
||||
SetCtlColors $mui.WelcomePage.Title "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
CreateFont $mui.WelcomePage.Title.Font "$(^Font)" "12" "700"
|
||||
SendMessage $mui.WelcomePage.Title ${WM_SETFONT} $mui.WelcomePage.Title.Font 0
|
||||
|
||||
;Welcome text
|
||||
${NSD_CreateLabel} 120u ${MUI_WELCOMEPAGE_TEXT_TOP}u 195u 130u "${MUI_WELCOMEPAGE_TEXT}"
|
||||
Pop $mui.WelcomePage.Text
|
||||
SetCtlColors $mui.WelcomePage.Text "${MUI_TEXTCOLOR}" "${MUI_BGCOLOR}"
|
||||
|
||||
;Show page
|
||||
Call ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}muiPageLoadFullWindow
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
|
||||
nsDialogs::Show
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM DESTROYED
|
||||
Call ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}muiPageUnloadFullWindow
|
||||
|
||||
;Delete image from memory
|
||||
${NSD_FreeImage} $mui.WelcomePage.Image.Bitmap
|
||||
|
||||
!insertmacro MUI_UNSET MUI_WELCOMEPAGE_TITLE_HEIGHT
|
||||
!insertmacro MUI_UNSET MUI_WELCOMEPAGE_TEXT_TOP
|
||||
|
||||
FunctionEnd
|
||||
|
||||
Function "${LEAVE}"
|
||||
|
||||
!insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!macroend
|
Reference in New Issue
Block a user