nsis64 / Examples / Memento.nsi

!include LogicLib.nsh
!include Memento.nsh

Name Memento
OutFile Memento.exe

XPStyle on

ShowInstDetails show

Page components
Page instfiles

RequestExecutionLevel user

# settings

!define MEMENTO_REGISTRY_KEY "Software\NSIS\Memento Test"

# restore

Function .onInit

  ${If} ${Cmd} `MessageBox MB_YESNO "Would you like to load an example state?" IDYES`
	DeleteRegKey  HKCU "Software\NSIS\Memento Test"

	WriteRegStr   HKCU "Software\NSIS\Memento Test" MementoSectionUsed ""
	WriteRegDWORD HKCU "Software\NSIS\Memento Test" MementoSection_sec_horse   1
	WriteRegDWORD HKCU "Software\NSIS\Memento Test" MementoSection_sec_chicken 1
	WriteRegDWORD HKCU "Software\NSIS\Memento Test" MementoSection_sec_donkey  0
	WriteRegDWORD HKCU "Software\NSIS\Memento Test" MementoSection_sec_croc    0




# sections

${MementoSection} horse sec_horse

${MementoSection} donkey sec_donkey

${MementoSection} chicken sec_chicken

SectionGroup /e group

  SectionGroup /e group

    ${MementoSection} croc sec_croc

    ${MementoSection} cow sec_cow



${MementoUnselectedSection} dinosaur sec_dinosaur

# done...


# save

Function .onInstSuccess


Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.