new Install Options read/write ini macro's
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@1480 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
593a511516
commit
b78169763c
5 changed files with 65 additions and 36 deletions
|
@ -478,6 +478,18 @@
|
||||||
|
|
||||||
!macroend
|
!macroend
|
||||||
|
|
||||||
|
!macro MUI_INSTALLOPTIONS_READ VAR FILE SECTION KEY
|
||||||
|
|
||||||
|
ReadIniStr ${VAR} "$PLUGINSDIR\${FILE}" "${SECTION}" "${KEY}"
|
||||||
|
|
||||||
|
!macroend
|
||||||
|
|
||||||
|
!macro MUI_INSTALLOPTIONS_WRITE FILE SECTION KEY VALUE
|
||||||
|
|
||||||
|
WriteIniStr "$PLUGINSDIR\${FILE}" "${SECTION}" "${KEY}" "${VALUE}"
|
||||||
|
|
||||||
|
!macroend
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;BASIC FUNCTIONS
|
;BASIC FUNCTIONS
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Configuration
|
;Configuration
|
||||||
|
|
||||||
!define MUI_INSTALLOPTIONS
|
!define MUI_INSTALLOPTIONS
|
||||||
|
|
||||||
!define MUI_LICENSEPAGE
|
!define MUI_LICENSEPAGE
|
||||||
|
@ -21,6 +21,8 @@
|
||||||
|
|
||||||
!define MUI_SETPAGE_FUNCTIONNAME "SetPage"
|
!define MUI_SETPAGE_FUNCTIONNAME "SetPage"
|
||||||
!define MUI_UNSETPAGE_FUNCTIONNAME "un.SetPage"
|
!define MUI_UNSETPAGE_FUNCTIONNAME "un.SetPage"
|
||||||
|
|
||||||
|
!define TEMP1 $R0
|
||||||
|
|
||||||
;Language
|
;Language
|
||||||
;English
|
;English
|
||||||
|
@ -74,6 +76,12 @@ Section "modern.exe" SecCopyUI
|
||||||
|
|
||||||
SetOutPath "$INSTDIR"
|
SetOutPath "$INSTDIR"
|
||||||
File "${NSISDIR}\Contrib\UIs\modern.exe"
|
File "${NSISDIR}\Contrib\UIs\modern.exe"
|
||||||
|
|
||||||
|
;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..."
|
||||||
|
|
||||||
SectionEnd
|
SectionEnd
|
||||||
|
|
||||||
|
@ -140,23 +148,23 @@ Function SetPage
|
||||||
|
|
||||||
!insertmacro MUI_PAGE_START 2
|
!insertmacro MUI_PAGE_START 2
|
||||||
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_IO_TITLE) $(MUI_TEXT_IO_SUBTITLE)
|
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_IO_TITLE) $(MUI_TEXT_IO_SUBTITLE)
|
||||||
WriteIniStr "$PLUGINSDIR\ioA.ini" "Settings" "Title" "${NAME} ${VERSION} Setup: Install Options A"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioA.ini" "Settings" "Title" "${NAME} ${VERSION} Setup: Install Options A"
|
||||||
WriteIniStr "$PLUGINSDIR\ioA.ini" "Settings" "CancelConfirm" "Are you sure you want to quit ${NAME} Setup?"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioA.ini" "Settings" "CancelConfirm" "Are you sure you want to quit ${NAME} Setup?"
|
||||||
WriteIniStr "$PLUGINSDIR\ioA.ini" "Settings" "CancelConfirmCaption" "${NAME} ${VERSION} Setup"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioA.ini" "Settings" "CancelConfirmCaption" "${NAME} ${VERSION} Setup"
|
||||||
WriteIniStr "$PLUGINSDIR\ioA.ini" "Settings" "CancelConfirmFlags" "MB_ICONEXCLAMATION"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioA.ini" "Settings" "CancelConfirmFlags" "MB_ICONEXCLAMATION"
|
||||||
WriteIniStr "$PLUGINSDIR\ioA.ini" "Settings" "BackButtonText" $(MUI_BUTTONTEXT_BACK)
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioA.ini" "Settings" "BackButtonText" $(MUI_BUTTONTEXT_BACK)
|
||||||
WriteIniStr "$PLUGINSDIR\ioA.ini" "Settings" "NextButtonText" $(MUI_BUTTONTEXT_NEXT)
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioA.ini" "Settings" "NextButtonText" $(MUI_BUTTONTEXT_NEXT)
|
||||||
!insertmacro MUI_INSTALLOPTIONS_SHOW 2 "ioA.ini" "" "IO" ;Next page is an IO page
|
!insertmacro MUI_INSTALLOPTIONS_SHOW 2 "ioA.ini" "" "IO" ;Next page is an IO page
|
||||||
!insertmacro MUI_PAGE_STOP 2
|
!insertmacro MUI_PAGE_STOP 2
|
||||||
|
|
||||||
!insertmacro MUI_PAGE_START 3
|
!insertmacro MUI_PAGE_START 3
|
||||||
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_IO_TITLE) $(MUI_TEXT_IO_SUBTITLE)
|
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_IO_TITLE) $(MUI_TEXT_IO_SUBTITLE)
|
||||||
WriteIniStr "$PLUGINSDIR\ioB.ini" "Settings" "Title" "${NAME} ${VERSION} Setup: Install Options B"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioB.ini" "Settings" "Title" "${NAME} ${VERSION} Setup: Install Options B"
|
||||||
WriteIniStr "$PLUGINSDIR\ioB.ini" "Settings" "CancelConfirm" "Are you sure you want to quit ${NAME} Setup?"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioB.ini" "Settings" "CancelConfirm" "Are you sure you want to quit ${NAME} Setup?"
|
||||||
WriteIniStr "$PLUGINSDIR\ioB.ini" "Settings" "CancelConfirmCaption" "${NAME} ${VERSION} Setup"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioB.ini" "Settings" "CancelConfirmCaption" "${NAME} ${VERSION} Setup"
|
||||||
WriteIniStr "$PLUGINSDIR\ioB.ini" "Settings" "CancelConfirmFlags" "MB_ICONEXCLAMATION"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioB.ini" "Settings" "CancelConfirmFlags" "MB_ICONEXCLAMATION"
|
||||||
WriteIniStr "$PLUGINSDIR\ioB.ini" "Settings" "BackButtonText" $(MUI_BUTTONTEXT_BACK)
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioB.ini" "Settings" "BackButtonText" $(MUI_BUTTONTEXT_BACK)
|
||||||
WriteIniStr "$PLUGINSDIR\ioB.ini" "Settings" "NextButtonText" $(MUI_BUTTONTEXT_NEXT)
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioB.ini" "Settings" "NextButtonText" $(MUI_BUTTONTEXT_NEXT)
|
||||||
!insertmacro MUI_INSTALLOPTIONS_SHOW 3 "ioB.ini" "IO" "" ;Previous page is an IO page
|
!insertmacro MUI_INSTALLOPTIONS_SHOW 3 "ioB.ini" "IO" "" ;Previous page is an IO page
|
||||||
!insertmacro MUI_PAGE_STOP 3
|
!insertmacro MUI_PAGE_STOP 3
|
||||||
|
|
||||||
|
@ -170,13 +178,13 @@ Function SetPage
|
||||||
|
|
||||||
!insertmacro MUI_PAGE_START 6
|
!insertmacro MUI_PAGE_START 6
|
||||||
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_IO_TITLE) $(MUI_TEXT_IO_SUBTITLE)
|
!insertmacro MUI_HEADER_TEXT $(MUI_TEXT_IO_TITLE) $(MUI_TEXT_IO_SUBTITLE)
|
||||||
WriteIniStr "$PLUGINSDIR\ioC.ini" "Settings" "Title" "${NAME} ${VERSION} Setup: Install Options C"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioC.ini" "Settings" "Title" "${NAME} ${VERSION} Setup: Install Options C"
|
||||||
WriteIniStr "$PLUGINSDIR\ioC.ini" "Settings" "CancelConfirm" "Are you sure you want to quit ${NAME} Setup?"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioC.ini" "Settings" "CancelConfirm" "Are you sure you want to quit ${NAME} Setup?"
|
||||||
WriteIniStr "$PLUGINSDIR\ioC.ini" "Settings" "CancelConfirmCaption" "${NAME} ${VERSION} Setup"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioC.ini" "Settings" "CancelConfirmCaption" "${NAME} ${VERSION} Setup"
|
||||||
WriteIniStr "$PLUGINSDIR\ioC.ini" "Settings" "CancelConfirmFlags" "MB_ICONEXCLAMATION"
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioC.ini" "Settings" "CancelConfirmFlags" "MB_ICONEXCLAMATION"
|
||||||
WriteIniStr "$PLUGINSDIR\ioC.ini" "Settings" "BackButtonText" $(MUI_BUTTONTEXT_BACK)
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioC.ini" "Settings" "BackButtonText" $(MUI_BUTTONTEXT_BACK)
|
||||||
WriteIniStr "$PLUGINSDIR\ioC.ini" "Settings" "NextButtonText" $(MUI_BUTTONTEXT_INSTALL)
|
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioC.ini" "Settings" "NextButtonText" $(MUI_BUTTONTEXT_INSTALL)
|
||||||
!insertmacro MUI_INSTALLOPTIONS_SHOW 6 "ioC.ini" "" "" ;Next/previous pages are NO IO pages
|
!insertmacro MUI_INSTALLOPTIONS_SHOW 6 "ioC.ini" "" "" ;Next/previous pages are no IO pages
|
||||||
!insertmacro MUI_PAGE_STOP 6
|
!insertmacro MUI_PAGE_STOP 6
|
||||||
|
|
||||||
!insertmacro MUI_PAGE_START 7
|
!insertmacro MUI_PAGE_START 7
|
||||||
|
|
|
@ -4,8 +4,8 @@ BackEnabled=1
|
||||||
|
|
||||||
[Field 1]
|
[Field 1]
|
||||||
Type=label
|
Type=label
|
||||||
text=Install Options Page A
|
Text=Install Options Page A
|
||||||
left=0
|
Left=0
|
||||||
right=350
|
Right=110
|
||||||
top=0
|
Top=0
|
||||||
bottom=25
|
Bottom=15
|
|
@ -4,8 +4,8 @@ BackEnabled=1
|
||||||
|
|
||||||
[Field 1]
|
[Field 1]
|
||||||
Type=label
|
Type=label
|
||||||
text=Install Options Page B
|
Text=Install Options Page B
|
||||||
left=0
|
Left=0
|
||||||
right=350
|
Right=110
|
||||||
top=0
|
Top=0
|
||||||
bottom=25
|
Bottom=15
|
|
@ -1,11 +1,20 @@
|
||||||
[Settings]
|
[Settings]
|
||||||
NumFields=1
|
NumFields=2
|
||||||
BackEnabled=1
|
BackEnabled=1
|
||||||
|
|
||||||
[Field 1]
|
[Field 1]
|
||||||
Type=label
|
Type=label
|
||||||
text=Instal Options Page C
|
Text=Instal Options Page C
|
||||||
left=0
|
Left=0
|
||||||
right=350
|
Right=110
|
||||||
top=0
|
Top=0
|
||||||
bottom=25
|
Bottom=15
|
||||||
|
|
||||||
|
[Field 2]
|
||||||
|
Type=checkbox
|
||||||
|
Text=Display a MessageBox
|
||||||
|
Left=0
|
||||||
|
Right=125
|
||||||
|
Top=40
|
||||||
|
Bottom=55
|
||||||
|
State=1
|
Loading…
Add table
Add a link
Reference in a new issue