Hi,
I'm new to NSIS and I'm trying to find som info on how to use installoptions properly.
My situation is that I hvae a custom page with three radiobuttons and
depending of choice I want to display another page. i haven't found a way to just show the page I want, it seems that all three pages are displayed and I'm not allowed to call the page command in a section...
Grateful for any tips on how it should work.
/Stefan
installoptions - how to choose pages
5 posts
You can read the state of the buttons from the INI file. For details, see the InstallOptions / Modern UI documentation. There have are also several topics in the forum about this subject.
Hi again,
Yes I've seen the documentation about how to read the button state.
What I haven't found is what actually displays the pages?
As I understand it every page to be displayed must be in the "page" section. That is also the order for how the pages are displayed.
Could any one show me a small example of how to display a page only if a certain radiobutton is checked.
Thanks!
Yes I've seen the documentation about how to read the button state.
What I haven't found is what actually displays the pages?
As I understand it every page to be displayed must be in the "page" section. That is also the order for how the pages are displayed.
Could any one show me a small example of how to display a page only if a certain radiobutton is checked.
Thanks!
Just add another custom page and read the value of the previous page before calling InstallOptions. You can use Abort to skip the page.
I think that this is more or less what you want:
Page Custom General "" ": User Options"
Page Custom General2 "" ": User2 Options"
Function General
File /oname=$PLUGINSDIR\\1.ini "1.ini"
InstallOptions::dialog "$PLUGINSDIR\\1.ini"
FunctionEnd
Function General2
ReadINIStr $R5 "$PLUGINSDIR\\1.ini" "Field 4" "State"
StrCmp $R5 1 "" "Cont"
Abort
Cont:
File /oname=$PLUGINSDIR\\2.ini "2.ini"
InstallOptions::dialog "$PLUGINSDIR\\2.ini"
FunctionEnd When the checkmark in field 4 from 1.ini is checked the second page won't be shown.