Docs/ExperienceUI/pages/skin.htm
changeset 0 d5ce4c64ef88
equal deleted inserted replaced
-1:000000000000 0:d5ce4c64ef88
       
     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>ExperienceUI Skin Support</h1>
       
    16             <p style="margin-left: 0.20in">
       
    17               <font face=Verdana style=font-size:8pt color=#000000>
       
    18               Of course, the main feature of the ExperienceUI is that is changes your normal, boring-looking setup wizard into a
       
    19               user-friendly, themed environment for installing a program - a functional, fast, and pretty alternative to InstallShieldŽ
       
    20               and WISEŽ Installer.  But, if the ExperienceUI had only one look that gets boring after awhile, who would want to use it,
       
    21               when InstallShieldŽ has tons of free downloadable skins?  That's where the skinning support comes in.  The ExperienceUI
       
    22               allows you to use several preset skins, or even create your own, even if you have little or no scripting knowledge.<br>
       
    23               <br>
       
    24               &nbsp;&nbsp;&nbsp;If you have read the <a href=visual_settings.htm>Global Defines &gt; Basic Settings</a> section, you already know
       
    25               how to use a skin; it only needs <b>one line of code</b>.  But, you can write your own skins, too.  You can integrate
       
    26               the skin file into your script, or create a redistributable skin file that can be downloaded off of the Web and installed
       
    27               just by being clicked on.  See the next section for more information.
       
    28             </p>
       
    29 	  
       
    30 	  <a name=write id=write></a>
       
    31           
       
    32 	  <h1>Writing Skins</h1>
       
    33 	  
       
    34               <p style="margin-left: 0.20in">
       
    35                    <font face=Verdana style=font-size:8pt color=#000000><b>How to write your own custom skins</b></font>
       
    36                    <font face=verdana color=#000000 style="font-family: "Verdana; font-size: 10pt; color: #000000; font-weight: medium> step-by-step</font><br>
       
    37           
       
    38                    <p style="margin-left: 0.25in">
       
    39                    <font face=verdana color=#000000 style="font-family: "Verdana; font-size: 10pt; color: #000000; font-weight: medium>
       
    40           
       
    41                    <b>Tip: </b>To make your skin easily customizable, use <code>!insertmacro XPUI_DEFAULT</code> instead of <code>!define</code>.<br>
       
    42                    <b>Another Tip: </b>If you still need help, look at the example skins.
       
    43                    </font>
       
    44           
       
    45                    <p style="margin-left: 0.30in">
       
    46           
       
    47                      <font face=verdana color=#000000 style="font-family: "Verdana; font-size: 10pt; color: #000000; font-weight: medium>
       
    48           
       
    49                        <b>1. Define XPUI_CUSTOMSKIN</b>
       
    50           
       
    51                          <p style="margin-left: 0.50in">
       
    52                          The first thing you need to do is define XPUI_CUSTOMSKIN. This notifies the XPUI header file that you are using a non-default skin for your installer.<br><br>
       
    53           
       
    54                        <p style="margin-left: 0.30in">
       
    55                        <b>2. Define Colors and BGGradient Options</b>
       
    56                          <p style="margin-left: 0.50in">
       
    57                          Next, you need to <a href="visual_settings.htm#colors">define the custom colors</a> for your skin.<br><br>
       
    58           
       
    59                        <p style="margin-left: 0.30in">
       
    60                        <b>3. Create header/footer images and the Left Logo</b>
       
    61                          <p style="margin-left: 0.50in">
       
    62                          Fire up your favorite image editor and whip up a header image, a Left Logo (the picture on the left of the installer), and a footer image if you want one.  Then, put the images in (NSIS Directory)\Contrib\ExperienceUI\Skins\(Skin name).<br>
       
    63 			 <br>
       
    64 			 <a style="color: #294F75;" href=javascript:void(0) onmouseover="this.style.color='#DA6500'" onmouseout="this.style.color='#294F75'" onclick="alert('ExperienceUI recommended picture dimensions:\n\nLeft Logo: 240x349\nHeader Image: 693x57\nBottom Image: 693x70');">Click here</a> for the recommended dimensions.
       
    65           
       
    66                      <p style="margin-left: 0.30in">
       
    67                      <b>4. Define the Image locations</b>
       
    68           
       
    69                        <p style="margin-left: 0.50in">
       
    70                        Next, you need to tell the ExperienceUI script where to find the pictures you created.  It is recommended that you put the bitmap files in &lt;ExperienceUI Install Dir&gt;\Skins\&lt;skin name&gt;.
       
    71           
       
    72                      <p style="margin-left: 0.30in">
       
    73                      <b>5. Create an XPUI_SET_BG macro</b>
       
    74                        <p style="margin-left: 0.50in">
       
    75 		       <b>NOTE:</b> This step is now optional.<br>
       
    76 		       <br>
       
    77 		       You no longer need to create this macro, but if you want to, you can.  Any code that is used here should be compatible with the NSIS .onGUIInit function.  Use the following code example for your background:</font><br>
       
    78                          <p style="margin-left: 0.50in">
       
    79                          <font face="Courier New" style="color: #008000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">!macro </font><font face="Courier New" style="color: #000000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">XPUI_SET_BG</font><br><br>
       
    80           
       
    81                          <font face="Courier New" style="color: #008000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">  !ifndef </font><font face="Courier New" style="color: #000000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">XPUI_SET_BG_INSERTED</font><br>
       
    82                          <font face="Courier New" style="color: #008000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">    !define </font><font face="Courier New" style="color: #000000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">XPUI_SET_BG_INSERTED</font><br>
       
    83                          <font face="Courier New" style="color: #0000FF; font-family: 'Courier New'; font-decoration: none; font-size=8pt; font-weight: bold">      [your code here...]</font><br>
       
    84                          <font face="Courier New" style="color: #008000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">  !endif<br><br>!macroend</font>
       
    85           
       
    86                      <font face=verdana color=#000000 style="font-family: "Verdana; font-size: 10pt; color: #000000; font-weight: medium>
       
    87                      <p style="margin-left: 0.30in">
       
    88                      <b>6. Create an XPUI_BGFILES_DELETE macro</b>
       
    89                        <p style="margin-left: 0.50in">
       
    90                        You will need to create a macro that deletes any files in the user's TEMP folder and call any finishing plugin calls here.
       
    91                        Use the following code example:</p>
       
    92                        <p style="margin-left: 0.50in">
       
    93                        <font face="Courier New" style="color: #008000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">!macro </font><font face="Courier New" style="color: #000000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">XPUI_BGFILES_DELETE</font><br>
       
    94           
       
    95                        <font face="Courier New" style="color: #0000FF; font-family: 'Courier New'; font-decoration: none; font-size=8pt; font-weight: bold">  [your code here...]</font><br>
       
    96                        <font face="Courier New" style="color: #008000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">!macroend</font>
       
    97                        </p>
       
    98           
       
    99                      <p style="margin-left: 0.30in">
       
   100                      <b>7. Save the File</b>
       
   101                        <p style="margin-left: 0.50in">
       
   102           
       
   103                        Save the file as "${NSISDIR}\Contrib\ExperienceUI\Skins\skin_name.XPUIskin".<br>
       
   104                        Then, to use the skin in your script, simply use the following line:<br>
       
   105                          <p style="margin-left: 0.50in">
       
   106                          <font face="Courier New" style="color: #008000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">!define </font><font face="Courier New" style="color: #000000; font-family: 'Courier New'; font-decoration: none; font-size=8pt">XPUI_SKIN </font><font face="Courier New" style="color: #4A9595; font-family: 'Courier New'; font-decoration: none; font-size=8pt">"skin_name"</font><br>
       
   107                        <font face=Verdana style=font-size:8pt color=#000000>
       
   108                        <p style="margin-left: 0.50in">
       
   109           
       
   110                        Remember <b>not</b> to add the .XPUIskin at the end of the define.  This is done automatically for you.<br>
       
   111           
       
   112                      </font>
       
   113                      <p style="margin-left: 0.30in">
       
   114                      <b>
       
   115                      Congratulations!  You just wrote your own skin for the ExperienceUI!
       
   116                      </b><br>
       
   117           
       
   118           
       
   119         </td>
       
   120         
       
   121       </tr>
       
   122       
       
   123       <tr>
       
   124       
       
   125         <td valign=bottom style=margin:0px;padding:0px>
       
   126     
       
   127           <p class=footer>Copyright &copy; 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>
       
   128   
       
   129         </td>
       
   130         
       
   131       </tr>
       
   132       
       
   133     </table>
       
   134   
       
   135   </body>
       
   136   
       
   137 </html>