|
106 | 106 | Arguments='/k "[APPLICATIONROOTDIRECTORY]nodejsvars.bat"' |
107 | 107 | Show="normal" |
108 | 108 | WorkingDirectory="APPLICATIONROOTDIRECTORY"/> |
| 109 | + <Shortcut Id="UninstallProduct" |
| 110 | + Name="Uninstall Node.js" |
| 111 | + Target="[SystemFolder]msiexec.exe" |
| 112 | + Arguments="/x [ProductCode]" |
| 113 | + Description="Uninstalls $(var.ProductName)" /> |
| 114 | + <RemoveFolder Id="ApplicationProgramsFolder" On="uninstall"/> |
| 115 | + <RegistryValue Root="HKCU" Key="Software\Joyent\$(var.ProductName)" Name="installed" Type="integer" Value="1" KeyPath="yes"/> |
| 116 | + </Component> |
| 117 | + <Component Id="InternetShortcuts" Guid="3351B877-49BA-4BC0-BF5E-21BA623FD07C"> |
109 | 118 | <util:InternetShortcut Id="OnlineWebsiteShortcut" |
110 | 119 | Name="Node.js website" |
111 | 120 | Target="http://nodejs.org" |
|
114 | 123 | Name="Node.js documentation" |
115 | 124 | Target="http://nodejs.org/dist/v$(var.ProductVersion)/docs/api/" |
116 | 125 | Type="url"/> |
117 | | - <Shortcut Id="UninstallProduct" |
118 | | - Name="Uninstall Node.js" |
119 | | - Target="[SystemFolder]msiexec.exe" |
120 | | - Arguments="/x [ProductCode]" |
121 | | - Description="Uninstalls $(var.ProductName)" /> |
122 | | - <RemoveFolder Id="ApplicationProgramsFolder" On="uninstall"/> |
123 | 126 | <RegistryValue Root="HKCU" Key="Software\Joyent\$(var.ProductName)" Name="installed" Type="integer" Value="1" KeyPath="yes"/> |
124 | 127 | </Component> |
125 | 128 | </DirectoryRef> |
|
135 | 138 | <?if $(var.Configuration) = Debug ?> |
136 | 139 | <ComponentRef Id="nodepdb"/> |
137 | 140 | <?endif?> |
138 | | - <ComponentRef Id="ApplicationShortcut" /> |
139 | 141 | <ComponentRef Id="nodejsvars" /> |
140 | 142 | </ComponentGroup> |
141 | 143 |
|
142 | | - <Feature Id="nodejs" Title="node.js engine" Level="1" Description="$(var.ProductDescription)"> |
| 144 | + <ComponentGroup Id="application.shortcuts"> |
| 145 | + <ComponentRef Id="ApplicationShortcut" /> |
| 146 | + </ComponentGroup> |
| 147 | + |
| 148 | + <ComponentGroup Id="internet.shortcuts"> |
| 149 | + <ComponentRef Id="InternetShortcuts"/> |
| 150 | + </ComponentGroup> |
| 151 | + |
| 152 | + <Feature Id="nodejs" Title="node.js engine" Level="1" Description="$(var.ProductDescription)" Absent="disallow"> |
143 | 153 | <ComponentGroupRef Id="allfiles" /> |
144 | 154 | <ComponentGroupRef Id="Product.Generated" /> |
145 | 155 | </Feature> |
146 | 156 |
|
| 157 | + <Feature Id="nodejs.shortcuts" Title="node.js shortcuts" Description="$(var.ProductDescription) Shortcuts"> |
| 158 | + <Feature Id="feature.application.shortcuts" Title="Application Shortcuts" Level="1" Description="$(var.ProductDescription) standard application shortcuts"> |
| 159 | + <ComponentGroupRef Id="application.shortcuts"/> |
| 160 | + </Feature> |
| 161 | + <Feature Id="feature.internet.shortcuts" Title="Internet Shortcuts" Level="1" Description="$(var.ProductDescription) internet shortcuts to the project's website and online documentation for this version"> |
| 162 | + <ComponentGroupRef Id="internet.shortcuts"/> |
| 163 | + </Feature> |
| 164 | + </Feature> |
| 165 | + |
147 | 166 | <UI Id="NodeInstallUI"> |
148 | 167 | <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" /> |
149 | 168 | <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="12" /> |
150 | 169 | <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" /> |
151 | 170 |
|
152 | 171 | <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" /> |
153 | | - <Property Id="WixUI_Mode" Value="Minimal" /> |
| 172 | + <Property Id="WixUI_Mode" Value="FeatureTree" /> |
154 | 173 |
|
155 | 174 | <DialogRef Id="ErrorDlg" /> |
156 | 175 | <DialogRef Id="FatalError" /> |
|
163 | 182 | <DialogRef Id="WelcomeDlg" /> |
164 | 183 | <DialogRef Id="LicenseAgreementDlg"/> |
165 | 184 |
|
166 | | - <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="LicenseAgreementDlg">1</Publish> |
| 185 | + <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="LicenseAgreementDlg">NOT Installed</Publish> |
| 186 | + <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg">Installed AND PATCH</Publish> |
167 | 187 | <Publish Dialog="LicenseAgreementDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish> |
168 | | - <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="PrepareDlg">1</Publish> |
| 188 | + <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="CustomizeDlg">LicenseAccepted = "1"</Publish> |
169 | 189 | <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish> |
170 | | - <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish> |
| 190 | + <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="CustomizeDlg" Order="1">NOT Installed OR WixUI_InstallMode = "Change"</Publish> |
| 191 | + <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="2">Installed AND NOT PATCH</Publish> |
| 192 | + <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" Order="3">Installed AND PATCH</Publish> |
| 193 | + <Publish Dialog="MaintenanceTypeDlg" Control="ChangeButton" Event="NewDialog" Value="CustomizeDlg">1</Publish> |
171 | 194 | <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish> |
172 | 195 | <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish> |
173 | 196 | <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish> |
174 | 197 | <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish> |
| 198 | + <Publish Dialog="CustomizeDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="1">Installed</Publish> |
| 199 | + <Publish Dialog="CustomizeDlg" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg" Order="2">NOT Installed</Publish> |
| 200 | + <Publish Dialog="CustomizeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg">1</Publish> |
175 | 201 |
|
176 | 202 | <Property Id="ARPNOMODIFY" Value="1" /> |
177 | 203 | <Property Id="WIXUI_EXITDIALOGOPTIONALTEXT" Value="Node.js has been succesfully installed. To run Node.js open command prompt (cmd.exe), and run 'node'." /> |
|
0 commit comments