Skip to content
⌘ NSIS Forum Archive

Changing the form

7 posts

KaGeRo#

Changing the form

In my installation it`s 2 licenses, and in second one, you may agree or disagree. So I want to make a form, with four buttons("Back", "I Accept", "I Decline" and "Cancel").

I`m a new in using NSIS, but I want to know, how can I change form, so that it includes 4 buttons (instead of 3 buttons) in my own form?

Thanks in advance...
Afrow UK#
You can't add extra buttons to the bottom without writing a plugin.
I could add support for this in my ScrollLicense plugin, but of course only if you want to use the main feature of the plugin also.

-Stu
Animaether#
You could also create the buttons in an InstallOptionsEX dialog, and move them down to the same height at the Back/Next/Cancel buttons using window positioning;



(SetWindowPos can be called on controls as well)

One note: The InstallOptionsEX binary includes GPL code. I never looked into how that may affect distributions using it and it doesn't appear to specifically say.
deguix#
One note: The InstallOptionsEX binary includes GPL code. I never looked into how that may affect distributions using it and it doesn't appear to specifically say.
Good point. I'll launch a version without GPL until the end of the week, so nobody will need to worry about any GPL issues. I'll talk about that more in the IOEx thread.
Animaether#
I'll toss my reply there as well. Back on topic for this thread: I forgot to mention - you need InstallOptionsEx so that you can display a text/rtf file for the license 🙂 Regular InstallOptions doesn't have a richtext control.
KaGeRo#
I was using InnoSetup, but I haven`t found how to solve that problem. So I`m looking for NSIS.
So one question more! Can I make so, that both buttons("I Accept" and "I Decline") do the same (going to next page), with only difference: in case "I Decline" boolean variable will be FALSE, otherwise it`ll be TRUE?
And if this variable == false, then don`t copy/run file?
Afrow UK#
If you can do what they said with InstallOptionsEx, then the next bit is easy. You can probably use the GotoPage function from the Wiki to go back to a previous page.

-Stu