diff -r 000000000000 -r d5ce4c64ef88 Docs/ExperienceUI/pages/using.htm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Docs/ExperienceUI/pages/using.htm Tue Oct 16 00:07:41 2007 -0400 @@ -0,0 +1,149 @@ + + + ExperienceUI Documentation Content Frame + + + + + + + + + + + + + + + + + + + + +
+ +

Using the ExperienceUI

+ + +Implementing the ExperienceUI into your NSIS script is very easy. Many people that use the ExperienceUI will be creating new script files, +but for those who are upgrading a Modern UI, UltraModernUI, or InstallSpider UI script to the ExperienceUI, all you'll need to do is change +the include to the ExperienceUI header file.
+
+The ExperienceUI uses a define/macro system. This allows you to define custom colors, bitmaps, and user interface files, but the defaults +will be used if you don't define anything. You don't need to know that much about NSIS to use the ExperienceUI, because all of the code +that controls the user interface has been written for you. +You shouldn't use settings like Icon, CheckBitmap, or ChangeUI, because the ExperienceUI uses its own GUI settings.
+
+If you haven't done so, I recommend that you read the syntax page before diving into this. +
+

+ If you are creating a new script or upgrading a script from the standard UI
+
+

    +
  • Include the header file.
    +
    + Include the header file with:

    + !include XPUI.nsh.

    + This notifies NSIS that you want to use the ExperienceUI. The XPUI.nsh file is in <NSIS Folder>\Include, so you don't need + to specify a path.
    +
  • +
  • GUI Settings
    +
    + Next, define any settings that apply to the entire installer, like XPUI_ICON, XPUI_TEXT_COLOR and such. Actually, while this is the best + place to define visual settings, you can really define settings like these anywhere before you insert the first language file.
    +
  • +
  • Installer Pages
    +
    + Insert pages into the script. + Read about page settings...
    +
  • + +
  • Your own sections and functions
    +
    + Now, insert your own code into the script. This is usually your own sections, functions, and such. For more information about + sections and functions, please refer to the NSIS users manual.
    +
  • +
  • Custom code for ExperienceUI pages
    +
    + You can add your own code to the ExperienceUI page macros. For each page in the installer, you can insert three functions, one + before the page is initialized, one when the page is about to be shown, and one after the page is finished. More about custom functions...
    +
  • +
  • Your own pages
    +
    + NSIS 2 features a plugin system that allows you to insert your own pages. Refer to the NSIS users' guide for information on how + to use InstallOptions to create custom pages.
    +
    + To insert a custom page, use the Page command between ExperienceUI page macros at the point where you want your page to appear. + Then, use the ExperienceUI's InstallOptions Macros to display the page.
    +
    + Here is an example custom page:
    +
    + + !insertmacro XPUI_PAGE_WELCOME
    + !insertmacro XPUI_PAGE_COMPONENTS
    + ; this page will be in between the Components and Install Confirm pages
    + Page custom CstmPage "" " - Custom Page!"
    + !insertmacro XPUI_PAGE_INSTCONFIRM
    +
    + Function CstmPage
    +   !insertmacro XPUI_INSTALLOPTIONS_EXTRACT MyPage.ini
    +   !insertmacro XPUI_INSTALLOPTIONS_SHOW "MyPage.ini"
    + FunctionEnd +
    + +
    +
  • +
  • Section Descriptions
    +
    + Now, you can insert section descriptions. If you are using a components page, you can set a description of each component to appear when the + user positions the mouse over an item in the list. Read more...
    +
  • + +
  • Language Files
    +
    + Insert languages into your installer. + The languages included with the ExperienceUI are English, French, German, PortugueseBR (Brazilian Portuguese), and Spanish.
    +
    + You must insert at least one language into your installer in order for the ExperienceUI to work properly.
    +
    + !insertmacro XPUI_LANGUAGE "English"
    + !insertmacro XPUI_LANGUAGE "PortugueseBR"

    +
    + You don't need to insert XPUI_FUNCTION_GUIINIT anymore, because it is now inserted the first time you insert a language.
    +
  • +
+

+

Converting a Modern UI, UltraModern UI, or InstallSpider UI script

+

+ You can use an existing script that uses the Modern UI, UltraModern UI, or InstallSpider UI with the ExperienceUI. The ExperienceUI + includes special code that converts all known Modern UI defines to ExperienceUI-compatible settings. This is much like WINE for Linux. + WINE is not Windows, it just can look that way because of special code. The ExperienceUI works the same way. While the ExperienceUI + can understand Modern UI-compatible scripts, its underlying architecture is completely different.
+
+ I can do this using a feature known as dummy macros. If you insert, for example, MUI_PAGE_WELCOME, the ExperienceUI will automatically + substitute XPUI_PAGE_WELCOME (or XPUI_PAGE_WELCOME2 if UMUI_USE_ALTERNATE_PAGE is defined)
+
+ To use the ExperienceUI in a Modern UI, UltraModern UI, or InstallSpider UI script, just change the include. Example:
+
+ Old:
+ !include "MUI.nsh" ; or UMUI.nsh or ISUI.nsh... +
+
+ New:
+ !include "XPUI.nsh" +
+
+

+
+ + +
+ + + +
+ + + +