Handle Updates a bit better
[shibboleth/cpp-sp.git] / msi / WiX / ShibbolethSP-gui.wxs
index 15dcc9c..fde8f37 100644 (file)
      permissions and limitations under the License.  -->\r
 \r
 <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>\r
+  <!-- This file controls the dispaying of the GUI dialogs (both WiX and custom) -->\r
   <Fragment>\r
 \r
-    <!-- our local copy of the InstallDir Dialog  from the Wix Sources under CPT.txt -->\r
     <WixVariable Id="WixUILicenseRtf" Value="license.rtf" />\r
     <WixVariable Id="WixUIBannerBmp" Value="TopBanner.bmp" />\r
     <WixVariable Id="WixUIDialogBmp" Value="Dialog.bmp" />\r
-\r
-    <UI Id="Shib_InstallDir">\r
-      <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" />\r
-      <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="12" />\r
-      <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" />\r
-\r
-      <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" />\r
-      <Property Id="WixUI_Mode" Value="InstallDir" />\r
-      <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />\r
-\r
-      <DialogRef Id="BrowseDlg" />\r
-      <DialogRef Id="DiskCostDlg" />\r
-      <DialogRef Id="ErrorDlg" />\r
-      <DialogRef Id="FatalError" />\r
-      <DialogRef Id="FilesInUse" />\r
-      <DialogRef Id="MsiRMFilesInUse" />\r
-      <DialogRef Id="PrepareDlg" />\r
-      <DialogRef Id="ProgressDlg" />\r
-      <DialogRef Id="ResumeDlg" />\r
-      <DialogRef Id="UserExit" />\r
-\r
-      <!-- Our dialogs -->\r
-      <DialogRef Id="ShibdDlg" />\r
-      <DialogRef Id="IISDlg" />\r
-\r
-      <Publish Dialog="BrowseDlg" Control="OK" Event="DoAction" Value="WixUIValidatePath" Order="3">1</Publish>\r
-      <Publish Dialog="BrowseDlg" Control="OK" Event="SpawnDialog" Value="InvalidDirDlg" Order="4"><![CDATA[WIXUI_INSTALLDIR_VALID<>"1"]]></Publish>\r
-\r
-      <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish>\r
-\r
-      <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="LicenseAgreementDlg">NOT Installed</Publish>\r
-      <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg">Installed AND PATCH</Publish>\r
-\r
-      <Publish Dialog="LicenseAgreementDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish>\r
-      <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="InstallDirDlg">LicenseAccepted = "1"</Publish>\r
-\r
-      <Publish Dialog="InstallDirDlg" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg">1</Publish>\r
-      <Publish Dialog="InstallDirDlg" Control="Next" Event="SetTargetPath" Value="[WIXUI_INSTALLDIR]" Order="1">1</Publish>\r
-      <Publish Dialog="InstallDirDlg" Control="Next" Event="DoAction" Value="WixUIValidatePath" Order="2">NOT WIXUI_DONTVALIDATEPATH</Publish>\r
-      <Publish Dialog="InstallDirDlg" Control="Next" Event="SpawnDialog" Value="InvalidDirDlg" Order="3"><![CDATA[NOT WIXUI_DONTVALIDATEPATH AND WIXUI_INSTALLDIR_VALID<>"1"]]></Publish>\r
-      <Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" Value="ShibdDlg" Order="4">WIXUI_DONTVALIDATEPATH OR WIXUI_INSTALLDIR_VALID="1"</Publish>\r
-      <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Property="_BrowseProperty" Value="[WIXUI_INSTALLDIR]" Order="1">1</Publish>\r
-      <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Event="SpawnDialog" Value="BrowseDlg" Order="2">1</Publish>\r
-\r
-      <Publish Dialog="ShibdDlg" Control="Back" Event="NewDialog" Value="InstallDirDlg">1</Publish>\r
-      <Publish Dialog="ShibdDlg" Control="Next" Event="NewDialog" Value="IISDlg">1</Publish>\r
-\r
-      <Publish Dialog="IISDlg" Control="Back" Event="NewDialog" Value="ShibdDlg">1</Publish>\r
-      <Publish Dialog="IISDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>\r
-\r
-      <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="IISDlg" Order="1">NOT Installed</Publish>\r
-      <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="2">Installed AND NOT PATCH</Publish>\r
-      <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" Order="2">Installed AND PATCH</Publish>\r
-\r
-      <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>\r
-\r
-      <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>\r
-      <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>\r
-      <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish>\r
+    <WixVariable Id="WixUICostingPopupOptOut" Value="1" />    \r
+\r
+    <!-- GUI For Shibboleth installer.  Uses the Wix packages, but linked in\r
+         blindly by looking at documentation (for sizes and dialog names) \r
+         and the generated.msi -->\r
+\r
+    <!-- Property that Light complained for -->\r
+    <Property Id='DefaultUIFont' Value='WixUI_Font_Normal' />\r
+\r
+    <!-- "You must set a property named WIXUI_INSTALLDIR with a value\r
+         of the ID of the directory you want the user to be able to specify\r
+         the location of." -->\r
+\r
+    <Property Id='WIXUI_INSTALLDIR' Value='INSTALLDIR' />\r
+\r
+    <UI Id='ShibbolethInstallDir' >\r
+\r
+      <!-- "WixUI_InstallDir includes the following dialogs:" -->\r
+      <DialogRef Id='BrowseDlg' />\r
+      <DialogRef Id='DiskCostDlg' />\r
+      <DialogRef Id='InvalidDirDlg' />\r
+      <DialogRef Id='LicenseAgreementDlg' />\r
+      <DialogRef Id='WelcomeDlg' />\r
+\r
+      <!-- "In addition, WixUI_InstallDir includes the following common\r
+           dialogs that appear in all WixUI dialog sets:" -->\r
+      <DialogRef Id='CancelDlg' />\r
+      <DialogRef Id='ErrorDlg' />\r
+      <DialogRef Id='ExitDialog' />\r
+      <DialogRef Id='FatalError' />\r
+      <DialogRef Id='FilesInUse' />\r
+      <DialogRef Id='MaintenanceTypeDlg' />\r
+      <DialogRef Id='MaintenanceWelcomeDlg' />\r
+      <DialogRef Id='MsiRMFilesInUse' />\r
+      <DialogRef Id='OutOfDiskDlg' />\r
+      <DialogRef Id='OutOfRbDiskDlg' />\r
+      <DialogRef Id='PrepareDlg' />\r
+      <DialogRef Id='ProgressDlg' />\r
+      <DialogRef Id='ResumeDlg' />\r
+      <DialogRef Id='UserExit' />\r
+      <DialogRef Id='VerifyReadyDlg' />\r
+      <DialogRef Id='WaitForCostingDlg' />\r
+\r
+      <!-- We also define two dialogs -->\r
+      <DialogRef Id='UpdateDlgShib' />\r
+      <DialogRef Id='InstallDirDlgShib' />\r
+\r
+      <!-- Text Styles (from Orca) -->\r
+      <TextStyle Id='WixUI_Font_Normal' FaceName='Tahoma' Size='8' />\r
+      <TextStyle Id='WixUI_Font_Bigger' FaceName='Tahoma' Size='12' />\r
+      <TextStyle Id='WixUI_Font_Title' FaceName='Tahoma' Size='9' Bold='yes'/>\r
+\r
+      <!-- Events (from Orca\ControlEvent and from light's complaints) -->\r
+      <Publish Dialog='BrowseDlg' Control='OK' Event='DoAction' Value='WixUIValidatePath' Order='3'>1</Publish>\r
+      <Publish Dialog='BrowseDlg' Control='OK' Event='SpawnDialog' Value='InvalidDirDlg' Order='4'>\r
+       WIXUI_INSTALLDIR_VALID&lt;&gt;"1"\r
+      </Publish>\r
+\r
+      <Publish Dialog='LicenseAgreementDlg' Control='Next' Event='NewDialog' Value='InstallDirDlgShib'>\r
+       LicenseAccepted = "1"\r
+      </Publish>\r
+\r
+      <Publish Dialog='MaintenanceTypeDlg' Control='RepairButton' Event='NewDialog' Value='VerifyReadyDlg'>1</Publish>\r
+      <Publish Dialog='MaintenanceTypeDlg' Control='RemoveButton' Event='NewDialog' Value='VerifyReadyDlg'>1</Publish>\r
+\r
+\r
+      <Publish Dialog='MaintenanceWelcomeDlg' Control='Next' Event='NewDialog' Value='MaintenanceTypeDlg'>1</Publish>\r
+\r
+      <Publish Dialog='WelcomeDlg' Control='Next' Event='NewDialog' Value='LicenseAgreementDlg'>\r
+        (NOT Installed) AND (NOT ALREADYINSTALLED)\r
+      </Publish>\r
+      <Publish Dialog='WelcomeDlg' Control='Next' Event='NewDialog' Value='UpdateDlgShib'>\r
+        (NOT Installed) AND ALREADYINSTALLED\r
+      </Publish>\r
+      <Publish Dialog='WelcomeDlg' Control='Next' Event='NewDialog' Value='VerifyReadyDlg'>\r
+        Installed AND PATCH\r
+      </Publish>\r
+\r
+      <Publish Dialog='ExitDialog' Control='Finish' Event='EndDialog' Value='Return'>1</Publish>\r
+      <Publish Dialog='LicenseAgreementDlg' Control='Back' Event='NewDialog' Value='WelcomeDlg'>1</Publish>\r
+      <Publish Dialog='MaintenanceTypeDlg' Control='Back' Event='NewDialog' Value='MaintenanceWelcomeDlg'>1</Publish>\r
+      <Publish Dialog='VerifyReadyDlg' Control='Back' Event='NewDialog' Value='WelcomeDlg'>\r
+        Installed AND PATCH\r
+      </Publish>\r
+      <Publish Dialog='VerifyReadyDlg' Control='Back' Event='NewDialog' Value='InstallDirDlgShib'>\r
+        (NOT Installed) AND (NOT ALREADYINSTALLED)\r
+      </Publish>\r
+      <Publish Dialog='VerifyReadyDlg' Control='Back' Event='NewDialog' Value='UpdateDlgShib'>\r
+        (NOT Installed) AND ALREADYINSTALLED\r
+      </Publish>\r
+      <Publish Dialog='VerifyReadyDlg' Control='Back' Event='NewDialog' Value='MaintenanceTypeDlg'>\r
+        Installed AND NOT PATCH\r
+      </Publish>\r
 \r
     </UI>\r
-\r
-    <UIRef Id="WixUI_Common" />\r
-\r
   </Fragment>\r
 </Wix>\r