|
1 <html> |
|
2 <head> |
|
3 <title>ExperienceUI Documentation Content Frame</title> |
|
4 <link rel=stylesheet href=style.css type=text/css> |
|
5 </head> |
|
6 |
|
7 <body bgcolor="#FFFFFF" style="background-color:#FFFFFF;margin:0px;padding:0px"> |
|
8 |
|
9 <table border=0 width=100% height=100%> |
|
10 |
|
11 <tr> |
|
12 |
|
13 <td valign=top style=margin:10px;padding:10px> |
|
14 |
|
15 <h1>Page Mode Support</h1> |
|
16 |
|
17 <p style=margin-left:0.2in> |
|
18 |
|
19 <font face=Verdana style=font-size:8pt color=#000000> |
|
20 Since version 1.04, the ExperienceUI supports page modes. This term may be new to you, but it's XPUI-jargon for using identical |
|
21 pages in both the installer and the uninstaller. The Modern UI also supports this, but it is very difficult to use. The |
|
22 ExperienceUI allows you to insert any page you want into just the installer, just the uninstaller, or both. How does it work? |
|
23 When you insert an XPUI_PAGEMODE macro, three defines are assigned values: XPUI_UN, XPUI_UNFUNC, and XPUI_UNINST. In the |
|
24 Install page mode, these three are blank values. In the Uninstall page mode, however, they are assigned the values "UN", "un.", |
|
25 and "UNINST", respectively. Then, to add a page to the uninstaller, all I have to do is:<br> |
|
26 <br> |
|
27 <code>PageEx ${XPUI_UNFUNC}components<br> |
|
28 ...<br> |
|
29 PageExEnd</code><br> |
|
30 <br> |
|
31 Of course, there is also the little detail about strings. You don't want the uninstaller to confuse you by saying something |
|
32 about installing the program, so I also used this technique with the strings. The language files have string tables |
|
33 for all 21 pages (10 installer, 11 uninstaller, including the NSIS uninstConfirm page) and the language strings have the |
|
34 ${XPUI_UN} symbol in them. This allows for completely different install/uninstall strings. The code is basically like this:<br> |
|
35 <code> |
|
36 !insertmacro XPUI_HEADER_TEXT "$(XPUI_${XPUI_UN}COMPONENTSPAGE_TITLE)" "$(XPUI_${XPUI_UN}COMPONENTSPAGE_SUBTITLE)" |
|
37 </code> |
|
38 </font> |
|
39 |
|
40 </p> |
|
41 |
|
42 <a name=using id=using></a> |
|
43 <h1>Using Page Modes</h1> |
|
44 |
|
45 <p style=margin-left:0.2in> |
|
46 |
|
47 <font face=Verdana style=font-size:8pt color=#000000> |
|
48 Using the page mode system is very simple. Simply insert the page-mode macro and then your pages. An example of this can be |
|
49 found in the Setup.NSI file in the XPUI installation directory. For more information, please see the <a href=page_macros.htm>Page Macros</a> section of |
|
50 this document.<br> |
|
51 <br> |
|
52 If you created your scripts for XPUI versions 1.03 or earlier, you may have to change them for versions >1.04. |
|
53 </font> |
|
54 |
|
55 </p> |
|
56 |
|
57 </td> |
|
58 |
|
59 </tr> |
|
60 |
|
61 <tr> |
|
62 |
|
63 <td valign=bottom style=margin:0px;padding:0px> |
|
64 |
|
65 <p class=footer>Copyright © 2004-2006 Dan Fuhry. All rights except those explicitly given in the <a href=license_agreement.htm style=color:#A0A0D0 onmouseover="this.style.color='#A0A0A0'" onmouseout="this.style.color='#A0A0D0'">license agreement</a> reserved.</p> |
|
66 |
|
67 </td> |
|
68 |
|
69 </tr> |
|
70 |
|
71 </table> |
|
72 |
|
73 </body> |
|
74 |
|
75 </html> |