Browse Source

CPack: WIX Product Icon, UI Banner, UI Dialog support (#13789)

Eric LaFranchi 13 years ago
parent
commit
3793dca08a
3 changed files with 42 additions and 0 deletions
  1. 26 0
      Modules/CPackWIX.cmake
  2. 13 0
      Modules/WIX.template.in
  3. 3 0
      Source/CPack/WiX/cmCPackWIXGenerator.cxx

+ 26 - 0
Modules/CPackWIX.cmake

@@ -49,6 +49,32 @@
 # by the WiX Generator in case CPACK_RESOURCE_FILE_LICENSE
 # is in an unsupported format or the .txt -> .rtf
 # conversion does not work as expected.
+#
+##end
+#
+##variable
+# CPACK_WIX_PRODUCT_ICON - The Icon shown next to the program name in Add/Remove programs.
+#
+# If set, this icon is used in place of the default icon.
+#
+##end
+#
+##variable
+# CPACK_WIX_UI_BANNER - The bitmap will appear at the top of all installer pages other than the welcome and completion dialogs.
+#
+# If set, this image will replace the default banner image.
+#
+# This image must be 493 by 58 pixels.
+#
+##end
+#
+##variable
+# CPACK_WIX_UI_DIALOG - Background bitmap used on the welcome and completion dialogs.
+#
+# If this variable is set, the installer will replace the default dialog image.
+#
+# This image must be 493 by 312 pixels.
+#
 ##end
 
 #=============================================================================

+ 13 - 0
Modules/WIX.template.in

@@ -24,6 +24,19 @@
         <WixVariable Id="WixUILicenseRtf" Value="$(var.CPACK_WIX_LICENSE_RTF)"/>
         <Property Id="WIXUI_INSTALLDIR" Value="INSTALL_ROOT"/>
 
+        <?ifdef CPACK_WIX_PRODUCT_ICON?>
+        <Property Id="ARPPRODUCTICON">ProductIcon.ico</Property>
+        <Icon Id="ProductIcon.ico" SourceFile="$(var.CPACK_WIX_PRODUCT_ICON)"/>
+        <?endif?>
+
+        <?ifdef CPACK_WIX_UI_BANNER?>
+        <WixVariable Id="WixUIBannerBmp" Value="$(var.CPACK_WIX_UI_BANNER)"/>
+        <?endif?>
+
+        <?ifdef CPACK_WIX_UI_DIALOG?>
+        <WixVariable Id="WixUIDialogBmp" Value="$(var.CPACK_WIX_UI_DIALOG)"/>
+        <?endif?>
+
         <FeatureRef Id="ProductFeature"/>
 
         <UIRef Id="WixUI_InstallDir" />

+ 3 - 0
Source/CPack/WiX/cmCPackWIXGenerator.cxx

@@ -221,6 +221,9 @@ bool cmCPackWIXGenerator::CreateWiXVariablesIncludeFile()
   CopyDefinition(includeFile, "CPACK_PACKAGE_NAME");
   CopyDefinition(includeFile, "CPACK_PACKAGE_VERSION");
   CopyDefinition(includeFile, "CPACK_WIX_LICENSE_RTF");
+  CopyDefinition(includeFile, "CPACK_WIX_PRODUCT_ICON");
+  CopyDefinition(includeFile, "CPACK_WIX_UI_BANNER");
+  CopyDefinition(includeFile, "CPACK_WIX_UI_DIALOG");
 
   return true;
 }