views:

2761

answers:

3

I am creating a UI for a WiX installer, and I have included WixUI_Common. I have searched around, but I cannot seem to find a comprehensive list of the dialogs that are provided by WiX.

Please list any dialogs you know about and what the dialogs do.

Update: Thanks to CheGueVerra's answer, I was able to find the wxs files defining all of the UI Dialogs in the src\ext\UIExtension\wixlib directory of the WiX Source code.

Also, I found a list of stock dialogs at wixwiki.com

A: 

Have you had a look at the great WiX Tutorial which has a UI page here?

As far as I remember, there UI sample which you can download from there has a bunch of UI dialogs in it. Not sure if it's the "complete" and ultimate list - but certainly quite a nice list, if I recall correctly.

EDIT: really seems awfully hard to find a complete list of those dialogs! Hey Rob - if you read this - this would be a GREAT addition to your WiX Help file and FAQ on wix.sourceforge.net!

I couldn't even find anything in the source at all......

But digging up some code I had, some time, I must have found a "WiXUI......wxi" fragment file, since I tweaked the list of dialogs to remove the "License agreement" dialog. Other than that, my list here should be complete, I think:

<!--
First-time install dialog sequence:      Maintenance dialog sequence:
 - WixUI_WelcomeDlg                     - WixUI_MaintenanceWelcomeDlg
 - WixUI_LicenseAgreementDlg            - WixUI_MaintenanceTypeDlg
 - WixUI_CustomizeDlg                     - WixUI_CustomizeDlg
   - WixUI_VerifyReadyDlg                 - WixUI_VerifyReadyDlg
   - WixUI_DiskCostDlg
-->

<Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi"&gt;
    <Fragment>
       <UI Id="WixUI_NoLicenseAgreement">
     <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" />
     <Property Id="WixUI_Mode" Value="FeatureTree" />

     <DialogRef Id="BrowseDlg" />
     <DialogRef Id="CustomizeDlg" />
     <DialogRef Id="DiskCostDlg" />
     <DialogRef Id="ErrorDlg" />
     <DialogRef Id="ExitDialog" />
     <DialogRef Id="FatalError" />
     <DialogRef Id="FilesInUse" />
     <DialogRef Id="MaintenanceTypeDlg" />
     <DialogRef Id="MaintenanceWelcomeDlg" />
     <DialogRef Id="MsiRMFilesInUse" />
     <DialogRef Id="PrepareDlg" />
     <DialogRef Id="ProgressDlg" />
     <DialogRef Id="ResumeDlg" />
     <DialogRef Id="UserExit" />
     <DialogRef Id="VerifyReadyDlg" />
     <DialogRef Id="WelcomeDlg" />

Of course, the order in which these dialogs appear, is controlled by the "UI sequences" in your install.

Marc

marc_s
You mean like: http://wix.sourceforge.net/manual-wix3/WixUI_dialogs.htm?
Rob Mensching
There it is! Why on earth is it so hard to find :-) Thanks, Rob.
marc_s
Now I understand why I couldn't find it - it's only under "WiX 3.0 docs" - but I kept looking under the 2.0 docs. Any reason you couldn't put the "advanced topics" section under the 2.0 docs, too?
marc_s
We're not updating WiX v2.0, at all.
Rob Mensching
+2  A: 

If you download the latest source for WIX, you'll find the declaration for WixUI_Common, in the Common.wxs file:

<UI Id="WixUI_Common">
    <!-- ui text -->
    <UIText Id="AbsentPath" />
    <UIText Id="bytes">!(loc.UITextbytes)</UIText>
    <UIText Id="GB">!(loc.UITextGB)</UIText>
    <UIText Id="KB">!(loc.UITextKB)</UIText>
    <UIText Id="MB">!(loc.UITextMB)</UIText>
    <UIText Id="MenuAbsent">!(loc.UITextMenuAbsent)</UIText>
    <UIText Id="MenuAdvertise">!(loc.UITextMenuAdvertise)</UIText>
    <UIText Id="MenuAllCD">!(loc.UITextMenuAllCD)</UIText>
    <UIText Id="MenuAllLocal">!(loc.UITextMenuAllLocal)</UIText>
    <UIText Id="MenuAllNetwork">!(loc.UITextMenuAllNetwork)</UIText>
    <UIText Id="MenuCD">!(loc.UITextMenuCD)</UIText>
    <UIText Id="MenuLocal">!(loc.UITextMenuLocal)</UIText>
    <UIText Id="MenuNetwork">!(loc.UITextMenuNetwork)</UIText>
    <UIText Id="NewFolder">!(loc.UITextNewFolder)</UIText>
    <UIText Id="ScriptInProgress">!(loc.UITextScriptInProgress)</UIText>
    <UIText Id="SelAbsentAbsent">!(loc.UITextSelAbsentAbsent)</UIText>
    <UIText Id="SelAbsentAdvertise">!(loc.UITextSelAbsentAdvertise)</UIText>
    <UIText Id="SelAbsentCD">!(loc.UITextSelAbsentCD)</UIText>
    <UIText Id="SelAbsentLocal">!(loc.UITextSelAbsentLocal)</UIText>
    <UIText Id="SelAbsentNetwork">!(loc.UITextSelAbsentNetwork)</UIText>
    <UIText Id="SelAdvertiseAbsent">!(loc.UITextSelAdvertiseAbsent)</UIText>
    <UIText Id="SelAdvertiseAdvertise">!(loc.UITextSelAdvertiseAdvertise)</UIText>
    <UIText Id="SelAdvertiseCD">!(loc.UITextSelAdvertiseCD)</UIText>
    <UIText Id="SelAdvertiseLocal">!(loc.UITextSelAdvertiseLocal)</UIText>
    <UIText Id="SelAdvertiseNetwork">!(loc.UITextSelAdvertiseNetwork)</UIText>
    <UIText Id="SelCDAbsent">!(loc.UITextSelCDAbsent)</UIText>
    <UIText Id="SelCDAdvertise">!(loc.UITextSelCDAdvertise)</UIText>
    <UIText Id="SelCDCD">!(loc.UITextSelCDCD)</UIText>
    <UIText Id="SelCDLocal">!(loc.UITextSelCDLocal)</UIText>
    <UIText Id="SelChildCostNeg">!(loc.UITextSelChildCostNeg)</UIText>
    <UIText Id="SelChildCostPos">!(loc.UITextSelChildCostPos)</UIText>
    <UIText Id="SelCostPending">!(loc.UITextSelCostPending)</UIText>
    <UIText Id="SelLocalAbsent">!(loc.UITextSelLocalAbsent)</UIText>
    <UIText Id="SelLocalAdvertise">!(loc.UITextSelLocalAdvertise)</UIText>
    <UIText Id="SelLocalCD">!(loc.UITextSelLocalCD)</UIText>
    <UIText Id="SelLocalLocal">!(loc.UITextSelLocalLocal)</UIText>
    <UIText Id="SelLocalNetwork">!(loc.UITextSelLocalNetwork)</UIText>
    <UIText Id="SelNetworkAbsent">!(loc.UITextSelNetworkAbsent)</UIText>
    <UIText Id="SelNetworkAdvertise">!(loc.UITextSelNetworkAdvertise)</UIText>
    <UIText Id="SelNetworkLocal">!(loc.UITextSelNetworkLocal)</UIText>
    <UIText Id="SelNetworkNetwork">!(loc.UITextSelNetworkNetwork)</UIText>
    <UIText Id="SelParentCostNegNeg">!(loc.UITextSelParentCostNegNeg)</UIText>
    <UIText Id="SelParentCostNegPos">!(loc.UITextSelParentCostNegPos)</UIText>
    <UIText Id="SelParentCostPosNeg">!(loc.UITextSelParentCostPosNeg)</UIText>
    <UIText Id="SelParentCostPosPos">!(loc.UITextSelParentCostPosPos)</UIText>
    <UIText Id="TimeRemaining">!(loc.UITextTimeRemaining)</UIText>
    <UIText Id="VolumeCostAvailable">!(loc.UITextVolumeCostAvailable)</UIText>
    <UIText Id="VolumeCostDifference">!(loc.UITextVolumeCostDifference)</UIText>
    <UIText Id="VolumeCostRequired">!(loc.UITextVolumeCostRequired)</UIText>
    <UIText Id="VolumeCostSize">!(loc.UITextVolumeCostSize)</UIText>
    <UIText Id="VolumeCostVolume">!(loc.UITextVolumeCostVolume)</UIText>
</UI>

This is from the 3.0.5217.0 source.

CheGueVerra
Thanks. In the same directory as Common.wxs (src\ext\UIExtension\wixlib) I found all of the wxs files for the dialogs.
Friend Of George
+2  A: 

We've recently enhanced the WiX 3.0 docs to include more detail about WixUI. The page that Rob linked to above didn't exist a couple of weeks ago, so that could be why you missed it. I also enhanced the topic at http://wix.sourceforge.net/manual-wix3/WixUI_customizations.htm last night and that info might help you here as well.

Thanks!

Under the heading 'Customizing the ExitDlg' is a link to the built-in WixUI dialog sets. That was exactly what I was looking for.
Friend Of George