2002-11-08 21:08:27 +00:00
|
|
|
;NSIS Modern User Interface version 1.5
|
2002-11-03 00:01:40 +00:00
|
|
|
;Install Options Example Script
|
2002-09-20 23:02:38 +00:00
|
|
|
;Written by Joost Verburg
|
|
|
|
|
2002-11-04 11:19:21 +00:00
|
|
|
!define MUI_PRODUCT "Test Software" ;Define your own software name here
|
|
|
|
!define MUI_VERSION "1.0" ;Define your own software version here
|
|
|
|
|
2002-10-26 21:51:39 +00:00
|
|
|
!include "${NSISDIR}\Contrib\Modern UI\System.nsh"
|
2002-09-20 23:02:38 +00:00
|
|
|
|
|
|
|
;--------------------------------
|
2002-09-22 13:33:53 +00:00
|
|
|
;Configuration
|
2002-10-26 22:09:54 +00:00
|
|
|
|
2002-10-08 09:29:03 +00:00
|
|
|
!define MUI_LICENSEPAGE
|
2002-11-01 20:45:53 +00:00
|
|
|
!define MUI_COMPONENTSPAGE
|
|
|
|
!define MUI_DIRECTORYPAGE
|
2002-10-13 18:28:38 +00:00
|
|
|
!define MUI_ABORTWARNING
|
2002-10-08 09:29:03 +00:00
|
|
|
!define MUI_UNINSTALLER
|
2002-11-09 17:58:22 +00:00
|
|
|
|
|
|
|
!define MUI_WINDOWTITLE
|
2002-11-04 11:19:21 +00:00
|
|
|
|
2002-10-26 22:09:54 +00:00
|
|
|
!define TEMP1 $R0
|
2002-11-04 11:19:21 +00:00
|
|
|
!define TEMP2 $R1
|
|
|
|
|
2002-10-07 19:59:01 +00:00
|
|
|
;Language
|
2002-11-04 16:40:35 +00:00
|
|
|
!insertmacro MUI_LANGUAGE "English"
|
2002-10-07 19:59:01 +00:00
|
|
|
|
2002-09-20 23:02:38 +00:00
|
|
|
;General
|
|
|
|
OutFile "InstallOptions.exe"
|
2002-11-01 20:45:53 +00:00
|
|
|
|
2002-11-02 23:06:46 +00:00
|
|
|
;Page order
|
2002-11-08 21:08:27 +00:00
|
|
|
!define MUI_CUSTOMPAGECOMMANDS ;Use customized pages
|
|
|
|
|
2002-11-03 00:01:40 +00:00
|
|
|
!insertmacro MUI_PAGECOMMAND_LICENSE
|
2002-11-01 20:45:53 +00:00
|
|
|
Page custom SetCustomA
|
|
|
|
Page custom SetCustomB
|
2002-11-03 00:01:40 +00:00
|
|
|
!insertmacro MUI_PAGECOMMAND_COMPONENTS
|
|
|
|
!insertmacro MUI_PAGECOMMAND_DIRECTORY
|
2002-11-01 20:45:53 +00:00
|
|
|
Page custom SetCustomC
|
2002-11-03 00:01:40 +00:00
|
|
|
!insertmacro MUI_PAGECOMMAND_INSTFILES
|
2002-11-01 20:45:53 +00:00
|
|
|
|
2002-10-26 17:39:56 +00:00
|
|
|
;License page
|
2002-10-12 16:16:46 +00:00
|
|
|
LicenseData "${NSISDIR}\Contrib\Modern UI\License.txt"
|
2002-09-20 23:02:38 +00:00
|
|
|
|
2002-10-26 17:39:56 +00:00
|
|
|
;Component-selection page
|
2002-10-07 19:59:01 +00:00
|
|
|
;Descriptions
|
|
|
|
LangString DESC_SecCopyUI ${LANG_ENGLISH} "Copy the modern.exe file to the application folder."
|
2002-09-20 23:02:38 +00:00
|
|
|
|
2002-10-26 17:39:56 +00:00
|
|
|
;Folder-selection page
|
2002-11-04 11:19:21 +00:00
|
|
|
InstallDir "$PROGRAMFILES\${MUI_PRODUCT}"
|
2002-10-07 19:59:01 +00:00
|
|
|
|
2002-10-26 17:39:56 +00:00
|
|
|
;Install Options pages
|
2002-11-01 20:45:53 +00:00
|
|
|
LangString TEXT_IO_TITLE ${LANG_ENGLISH} "Install Options Page"
|
|
|
|
LangString TEXT_IO_SUBTITLE ${LANG_ENGLISH} "Create your own dialog!"
|
|
|
|
|
2002-11-04 11:19:21 +00:00
|
|
|
LangString TEXT_IO_PAGETITLE_A ${LANG_ENGLISH} "Custom Page A"
|
|
|
|
LangString TEXT_IO_PAGETITLE_B ${LANG_ENGLISH} "Custom Page B"
|
|
|
|
LangString TEXT_IO_PAGETITLE_C ${LANG_ENGLISH} "Custom Page C"
|
|
|
|
|
2002-09-22 13:33:53 +00:00
|
|
|
;Things that need to be extracted on startup (keep these lines before any File command!)
|
2002-11-08 21:08:27 +00:00
|
|
|
;Only useful for BZIP2 compression
|
2002-09-22 13:33:53 +00:00
|
|
|
;Use ReserveFile for your own Install Options ini files too!
|
|
|
|
ReserveFile "${NSISDIR}\Plugins\InstallOptions.dll"
|
2002-10-07 19:59:01 +00:00
|
|
|
ReserveFile "ioA.ini"
|
|
|
|
ReserveFile "ioB.ini"
|
|
|
|
ReserveFile "ioC.ini"
|
2002-09-22 13:33:53 +00:00
|
|
|
|
2002-11-04 11:25:19 +00:00
|
|
|
;--------------------------------
|
|
|
|
;Modern UI System
|
|
|
|
|
|
|
|
!insertmacro MUI_SYSTEM
|
|
|
|
|
2002-09-20 23:02:38 +00:00
|
|
|
;--------------------------------
|
|
|
|
;Installer Sections
|
|
|
|
|
2002-10-07 19:59:01 +00:00
|
|
|
Section "modern.exe" SecCopyUI
|
2002-09-20 23:02:38 +00:00
|
|
|
|
|
|
|
;Add your stuff here
|
|
|
|
|
|
|
|
SetOutPath "$INSTDIR"
|
|
|
|
File "${NSISDIR}\Contrib\UIs\modern.exe"
|
2002-10-26 22:09:54 +00:00
|
|
|
|
|
|
|
;Read a value from an Install Options INI File
|
|
|
|
!insertmacro MUI_INSTALLOPTIONS_READ ${TEMP1} "ioC.ini" "Field 2" "State"
|
|
|
|
StrCmp ${TEMP1} "1" "" +2
|
|
|
|
;Checked
|
|
|
|
MessageBox MB_OK "A MessageBox..."
|
2002-11-03 00:01:40 +00:00
|
|
|
|
|
|
|
;Create uninstaller
|
2002-09-20 23:02:38 +00:00
|
|
|
WriteUninstaller "$INSTDIR\Uninstall.exe"
|
|
|
|
|
|
|
|
SectionEnd
|
|
|
|
|
2002-11-04 11:19:21 +00:00
|
|
|
!insertmacro MUI_SECTIONS_FINISHHEADER ;Insert this macro after the sections
|
2002-09-20 23:02:38 +00:00
|
|
|
|
2002-11-08 21:08:27 +00:00
|
|
|
;--------------------------------
|
|
|
|
;Descriptions
|
|
|
|
|
|
|
|
!insertmacro MUI_FUNCTIONS_DESCRIPTION_BEGIN
|
|
|
|
!insertmacro MUI_DESCRIPTION_TEXT ${SecCopyUI} $(DESC_SecCopyUI)
|
|
|
|
!insertmacro MUI_FUNCTIONS_DESCRIPTION_END
|
|
|
|
|
2002-09-20 23:02:38 +00:00
|
|
|
;--------------------------------
|
|
|
|
;Installer Functions
|
|
|
|
|
2002-11-04 14:13:24 +00:00
|
|
|
Function .onInit
|
|
|
|
|
|
|
|
;Extract Install Options INI Files
|
|
|
|
!insertmacro MUI_INSTALLOPTIONS_EXTRACT "ioA.ini"
|
|
|
|
!insertmacro MUI_INSTALLOPTIONS_EXTRACT "ioB.ini"
|
|
|
|
!insertmacro MUI_INSTALLOPTIONS_EXTRACT "ioC.ini"
|
|
|
|
|
|
|
|
;Titles for Install Options dialogs
|
|
|
|
!insertmacro MUI_INSTALLOPTIONS_WRITETITLE "ioA.ini" "$(TEXT_IO_PAGETITLE_A)"
|
|
|
|
!insertmacro MUI_INSTALLOPTIONS_WRITETITLE "ioB.ini" "$(TEXT_IO_PAGETITLE_B)"
|
|
|
|
!insertmacro MUI_INSTALLOPTIONS_WRITETITLE "ioC.ini" "$(TEXT_IO_PAGETITLE_C)"
|
|
|
|
|
|
|
|
FunctionEnd
|
|
|
|
|
2002-11-01 20:45:53 +00:00
|
|
|
Function SetCustomA
|
2002-11-09 17:58:22 +00:00
|
|
|
!insertmacro MUI_HEADER_TEXT "$(TEXT_IO_TITLE)" "$(TEXT_IO_SUBTITLE)"
|
2002-11-08 21:08:27 +00:00
|
|
|
!insertmacro MUI_INSTALLOPTIONS_DISPLAY "ioA.ini"
|
2002-09-20 23:02:38 +00:00
|
|
|
FunctionEnd
|
|
|
|
|
2002-11-01 20:45:53 +00:00
|
|
|
Function SetCustomB
|
2002-11-09 17:58:22 +00:00
|
|
|
!insertmacro MUI_HEADER_TEXT "$(TEXT_IO_TITLE)" "$(TEXT_IO_SUBTITLE)"
|
2002-11-08 21:08:27 +00:00
|
|
|
!insertmacro MUI_INSTALLOPTIONS_DISPLAY "ioB.ini"
|
2002-11-01 20:45:53 +00:00
|
|
|
FunctionEnd
|
|
|
|
|
|
|
|
Function SetCustomC
|
2002-11-09 17:58:22 +00:00
|
|
|
!insertmacro MUI_HEADER_TEXT "$(TEXT_IO_TITLE)" "$(TEXT_IO_SUBTITLE)"
|
2002-11-08 21:08:27 +00:00
|
|
|
!insertmacro MUI_INSTALLOPTIONS_DISPLAY "ioC.ini"
|
|
|
|
|
2002-09-20 23:02:38 +00:00
|
|
|
FunctionEnd
|
|
|
|
|
|
|
|
;--------------------------------
|
2002-11-03 13:21:09 +00:00
|
|
|
;Uninstaller Section
|
2002-09-20 23:02:38 +00:00
|
|
|
|
|
|
|
Section "Uninstall"
|
|
|
|
|
|
|
|
;Add your stuff here
|
|
|
|
|
|
|
|
Delete "$INSTDIR\modern.exe"
|
|
|
|
Delete "$INSTDIR\Uninstall.exe"
|
|
|
|
|
|
|
|
RMDir "$INSTDIR"
|
|
|
|
|
2002-10-26 12:25:02 +00:00
|
|
|
!insertmacro MUI_UNFINISHHEADER
|
2002-09-20 23:02:38 +00:00
|
|
|
|
|
|
|
SectionEnd
|
|
|
|
|
2002-10-07 19:59:01 +00:00
|
|
|
;eof
|