As I understand it, a feature can have only one parent.

If you want to use control events, something like this (borrowed from Arun)
should work:

In the <Control id=Next
        Add <Publish Event="Addlocal"
Value="F0,F2"><![CDATA[(PKGTYPE="A")]]></Publish>
            <Publish Event="Addlocal"
Value="F0,F1"><![CDATA[(PKGTYPE="B")]]></Publish>
            <Publish Event="Addlocal"
Value="F1,F2"><![CDATA[(PKGTYPE="C")]]></Publish>
            <Publish Event="Remove"
Value="F1"><![CDATA[(PKGTYPE="A")]]></Publish>
            <Publish Event="Remove"
Value="F2"><![CDATA[(PKGTYPE="B")]]></Publish>
            <Publish Event="Remove"
Value="F0"><![CDATA[(PKGTYPE="C")]]></Publish>

Possibly even better (instead of the above), if you want just the PKGTYPE
property to always control the features (so you can also set the package
type from the command-line and you won't be required to use the UI):

<Feature Id="F0" Level="32767"/>
<Feature Id="F1" Level="32767"/>
<Feature Id="F2" Level="32767"/>
<Property Id="PKGTYPE" Secure="yes"/>

<!-- Package A -->
<SetProperty Id="AddLocalPkgAFeatures" Value="F0,F2" Sequence="both"
Before="SetRemovePkgAFeatures">PKGTYPE="A" AND NOT REMOVE=ALL AND
Preselected!=1</SetProperty>
<SetProperty Id="RemovePkgAFeatures" Value="F1" Sequence="both"
Before="SetAddLocalPkgBFeatures">PKGTYPE="A" AND NOT REMOVE=ALL AND
Preselected!=1</SetProperty>

<!-- Package B -->
<SetProperty Id="AddLocalPkgBFeatures" Value="F0,F1" Sequence="both"
Before="SetRemovePkgBFeatures">PKGTYPE="B" AND NOT REMOVE=ALL AND
Preselected!=1</SetProperty>
<SetProperty Id="RemovePkgBFeatures" Value="F2" Sequence="both"
Before="SetAddLocalPkgCFeatures">PKGTYPE="B" AND NOT REMOVE=ALL AND
Preselected!=1</SetProperty>

<!-- Package C -->
<SetProperty Id="AddLocalPkgCFeatures" Value="F1,F2" Sequence="both"
Before="SetRemovePkgCFeatures">PKGTYPE="C" AND NOT REMOVE=ALL AND
Preselected!=1</SetProperty>
<SetProperty Id="RemovePkgCFeatures" Value="F0" Sequence="both"
Before="SetADDLOCAL">PKGTYPE="C" AND NOT REMOVE=ALL AND
Preselected!=1</SetProperty>

<!-- Actually set the features based on the above table -->
<SetProperty Id="ADDLOCAL"
Value="[AddLocalPkgAFeatures][AddLocalPkgBFeatures][AddLocalPkgCFeatures]"
Sequence="both" Before="SetREMOVE">AddLocalPkgAFeatures OR
AddLocalPkgBFeatures OR AddLocalPkgCFeatures</SetProperty>
<SetProperty Id="REMOVE"
Value="[RemovePkgAFeatures][RemovePkgBFeatures][RemovePkgCFeatures]"
Sequence="both" Before="CostInitialize">RemovePkgAFeatures OR
RemovePkgBFeatures OR RemovePkgCFeatures</SetProperty>

-----Original Message-----
From: akihiro.shib...@jp.yokogawa.com
[mailto:akihiro.shib...@jp.yokogawa.com] 
Sent: Tuesday, November 24, 2009 5:14 PM
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] Select features on UI


Is Conditions   changed to  Features ?

 <Feature Id="A">
    <FeatureRef Id="F0" />
    <FeatureRef Id="F2" />
 </Feature>
 <Feature Id="B">
    <FeatureRef Id="F0" />
    <FeatureRef Id="F1  />
 </Feature>
 <Feature Id="C">
    <FeatureRef Id="F1" />
    <FeatureRef Id="F2  />
 </Feature>
      :

  "F0", "F1", ... have multiple parents feature. Can I construction?
I seems a feature/compornent cannot have multiple parents
features/compornents.
May I tell me good idea ?


thanks,

Akihiro, Shibuta.

> -----Original Message-----
> From: Arun Perregatturv [mailto:aperregatt...@napcosecurity.com] 
> Sent: Tuesday, November 24, 2009 11:40 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Select features on UI
> 
> You are missing the publish event for the value
> 
> Something like this
> 
> In the <Control id=Next
>         Add <Publish Event="Addlocal" 
> Value="A"><![CDATA[(PKGTYPE="A")]]></Publish>
>             <Publish Event="Remove" 
> Value="A"><![CDATA[NOT(PKGTYPE="A")]]></Publish>
> 
> Add this for each value type.
> 
> I do this exactly the same with 4 radiobuttons for the user 
> selection and based on the selection I set the features.
> 
> 
> Arun Perregattur
> 
> 
> -----Original Message-----
> From: akihiro.shib...@jp.yokogawa.com 
> [mailto:akihiro.shib...@jp.yokogawa.com]
> Sent: Tuesday, November 24, 2009 7:01 AM
> To: wix-users@lists.sourceforge.net
> Subject: [WiX-users] Select features on UI
> 
> 
>  Hi,
> 
> I want to modify features by radio buttons on dialog.
> When PKGTYPE is selected "A", features are "F0" and "F2".
> When PKGTYPE is selected "B", features are "F0" and "F1".
> When PKGTYPE is selected "C", features are "F1" and "F2".
> 
>  The content selected on the UI is not reflected. Where has 
> made a mistake?
> 
>  1) Set Initialize Property "PKGTYPE"
>  2) Select package type on radio button. and change value of 
> "PKGTYPE".
>  3) modify Feature Condition Levels .
>  4) Show feature tree. but the content selected on the UI is 
> not reflected
> 
> 
> 
>    <Property Id="PKGTYPE" Value="A" />
> 
> 
> 
>    <Feature Id="F0" Level="1001">
>       <Condition Level="101">PKGTYPE="A"</Condition>
>       <Condition Level="102">PKGTYPE="B"</Condition>
>    </Feature>
>    <Feature Id="F1" Level="1001">
>       <Condition Level="102">PKGTYPE="B"</Condition>
>       <Condition Level="103">PKGTYPE="C"</Condition>
>    </Feature>
>    <Feature Id="F2" Level="1001">
>       <Condition Level="101">PKGTYPE="A"</Condition>
>       <Condition Level="103">PKGTYPE="C"</Condition>
>    </Feature>
>       : ( these are many features. )
> 
> 
>       :
> 
>   <Fragment>
>      <UI>
>        <Dialog Id="PkgTypeDlg" Width="370" Height="270" 
> Title="[ProductName] Setup">
>          <Control Id="Control_Select_PackageType" 
> Type="RadioButtonGroup" X="18" Y="59" Width="329" 
> Height="119" Property="PKGTYPE">
>            <RadioButtonGroup Property="PKGTYPE">
>              <RadioButton Text="PackageA" Value="A" X="6" 
> Y="10" Width="65" Height="17"/>
>              <RadioButton Text="PackageB" Value="B" X="6" 
> Y="30" Width="65" Height="17"/>
>              <RadioButton Text="PackageC" Value="C" X="6" 
> Y="50" Width="65" Height="17"/>
>            </RadioButtonGroup>
>          </Control>
>          <Control Id="Next" Type="PushButton" X="236" Y="243" 
> Width="56" Height="17" Default="yes" Text="!(loc.UIButtonNext)">
>             <Publish Event="NewDialog" 
> Value="CustomizeDlg">1</Publish>
>          </Control>
>                 :
>        </Dialog>
>      </UI>
>     </Fragment>
> 
> Thanks,
> 
> Akihiro, Shibuta.
> 
> 
> 
> --------------------------------------------------------------
> ----------------
> Let Crystal Reports handle the reporting - Free Crystal 
> Reports 2008 30-Day trial. Simplify your report design, 
> integration and deployment - and focus on what you do best, 
> core application coding. Discover what's new with Crystal 
> Reports now.  http://p.sf.net/sfu/bobj-july 
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
> 
> --------------------------------------------------------------
> ----------------
> Let Crystal Reports handle the reporting - Free Crystal 
> Reports 2008 30-Day trial. Simplify your report design, 
> integration and deployment - and focus on what you do best, 
> core application coding. Discover what's new with Crystal 
> Reports now.  http://p.sf.net/sfu/bobj-july 
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
> 
----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to