diff --git a/Contrib/Modern UI/Readme.html b/Contrib/Modern UI/Readme.html index af4ae366..f98fcd59 100644 --- a/Contrib/Modern UI/Readme.html +++ b/Contrib/Modern UI/Readme.html @@ -98,134 +98,178 @@ a:hover
![]() |
+ ![]() |
- Introduction -NSIS 2 makes it is possible to create installers - with a custom user interface. -I made this interface with a modern wizard style, - like the wizards of recent Windows versions. This new interface - also features new graphics and a description area on the - component-selection page. -To use this new interface for for installer, you need - to add some code to your NSIS script. Read this document for more info! -Requirements - -Screenshot -How to use -The Modern UI has a macro system, so most of the code - has already been written for you! -Basic Macro System Advanced Macro System, Install Options Multilanguage installers The interface -Modern.exe and modern2.exe Change interface settings Customize the dialogs Version history -
Credits -Made by Joost Verburg. Help -Please post questions at the NSIS - Forum. -License -Copyright © 2002 Joost Verburg -This software is provided 'as-is', without any - express or implied warranty. In no event will the authors be - held liable for any damages arising from the use of this software. -Permission is granted to anyone to use this software for any - purpose, including commercial applications, and to alter it - and redistribute it freely, subject to the following restrictions: - 1. The origin of this software must not be misrepresented;
- you must not claim that you wrote the original software. If
- you use this software in a product, an acknowledgment in the
- product documentation would be appreciated but is not required. |
+|
+ Introduction +NSIS 2 makes it is possible to create installers +with a custom user interface. +I made this interface with a modern wizard style, + like the wizards of recent Windows versions. This new interface + also features new graphics and a description area on the + component-selection page. +To use this new interface for for installer, you need + to add some code to your NSIS script. Read this document for more info! +Requirements + +Screenshot +How to use +The Modern UI has a macro system, so most of the code
+ has already been written for you! 1. Insert the header files !include "${NSISDIR}\Contrib\Modern UI\System.nsh"+ 2. Define the name and version of your software !define NAME "Test Software" ;Define your own software name here +!define VERSION "1.0" ;Define your own software version here+ 3. Define which elements you are using !define MUI_LICENSEPAGE ;License page +!define MUI_COMPONENTSPAGE ;Component-selection page +!define MUI_DIRECTORYPAGE ;Directory-selection page +!define MUI_LICENSEPAGE ;License page +!define MUI_UNINSTALL ;Uninstaller +!define MUI_ABORTWARNING ;Abort warning messabox+ 4. Insert language files !include "${NSISDIR}\Contrib\Modern UI\Language files\English.nsh"+ 5. Interface settings (optional) !define MUI_UI "${NSISDIR}\Contrib\UIs\modern2.exe"+ If you don't define a setting, the default will be used. 6. Insert the MUI_SYSTEM macro !insertmacro MUI_SYSTEM+ 7. Set the descriptions for the sections +LangString DESC_SectionName1 ${LANG_ENGLISH} "Description of section 1." +LangString DESC_SectionName2 ${LANG_ENGLISH} "Description of section 2." + +!insertmacro MUI_FUNCTIONS_DESCRIPTION_START + !insertmacro MUI_DESCRIPTION_TEXT ${SectionName1} $(DESC_SectionName1) + !insertmacro MUI_DESCRIPTION_TEXT ${SectionName2} $(DESC_SectionName2) +!insertmacro MUI_FUNCTIONS_DESCRIPTION_END ++ Note: Always set a name for a section: +Section "Section Name 1" SectionName1 + ... +SectionEnd + +Section "Section Name 2" SectionName2 + ... +SectionEnd ++ Custom pages +!define MUI_CUSTOMPAGECOMMANDS ;Use customized pages + +!insertmacro MUI_PAGECOMMAND_LICENSE +Page custom [function name] +Page custom [function name] +!insertmacro MUI_PAGECOMMAND_COMPONENTS +!insertmacro MUI_PAGECOMMAND_DIRECTORY +Page custom [function name] +!insertmacro MUI_PAGECOMMAND_INSTFILES ++ You can call Install Options in [function name]: ++LangString TEXT_IO_TITLE ${LANG_ENGLISH} "Install Options Page" +LangString TEXT_IO_SUBTITLE ${LANG_ENGLISH} "Create your own dialog!" + +Function [function name] + !insertmacro MUI_HEADER_TEXT $(TEXT_IO_TITLE) $(TEXT_IO_SUBTITLE) + !insertmacro MUI_INSTALLOPTIONS_SHOW "iniFile.ini" +FunctionEnd ++ Examples The interface +Modern.exe and modern2.exe Customize the dialogs Version history +
Credits +Made by Joost Verburg. Help +Please post questions at the NSIS + Forum. +License +Copyright © 2002 Joost Verburg + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it +and redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; + you must not claim that you wrote the original software. If + you use this software in a product, an acknowledgment in the + product documentation would be appreciated but is not required. +2. Altered versions must be plainly marked as such, and + must not be misrepresented as being the original software. +3. This notice may not be removed or altered from any distribution. ++ |
|
diff --git a/Examples/Modern UI/Basic.nsi b/Examples/Modern UI/Basic.nsi index 5e59f88b..9569f5b5 100644 --- a/Examples/Modern UI/Basic.nsi +++ b/Examples/Modern UI/Basic.nsi @@ -65,7 +65,6 @@ SectionEnd !insertmacro MUI_DESCRIPTION_TEXT ${SecCopyUI} $(DESC_SecCopyUI) !insertmacro MUI_FUNCTIONS_DESCRIPTION_END - ;-------------------------------- ;Uninstaller Section diff --git a/Examples/Modern UI/InstallOptions.nsi b/Examples/Modern UI/InstallOptions.nsi index d65ecbc9..6ea7028e 100644 --- a/Examples/Modern UI/InstallOptions.nsi +++ b/Examples/Modern UI/InstallOptions.nsi @@ -30,7 +30,8 @@ Name "${NAME} ${VERSION}" ;Page order - !define MUI_CUSTOMPAGECOMMANDS + !define MUI_CUSTOMPAGECOMMANDS ;Use customized pages + !insertmacro MUI_PAGECOMMAND_LICENSE Page custom SetCustomA Page custom SetCustomB |