Displays alternate panels depending on key values.
Category
Extension Library
Syntax
<xe:switchFacet attributes>content</xe:switchFacet>
Table 1. Essential properties
| Property |
Description |
| id |
Defaults to switchFacet1, switchFacet2,
and so on. |
| selectedFacet |
Specifies the key of the display panel. |
| defaultFacet |
Specifies the key of the display panel
if no display panel matches selectedFacet. |
Usage
Define each alternative display as a
panel that is content to the Switch control. Specify the key property
for each panel. Use the selectedFacet and defaultFacet properties
of the Switch control to determine which panel to display.
Examples
This tooltip dialog contains text
that is displayed for a button when the button activates the dialog.
The tooltip dialog displays alert boxes for the
show and
hide events.
What do you want to buy?>
<xp:comboBox id="comboBox1">
<xp:selectItem itemLabel="Select an item..." itemValue=""></xp:selectItem>
<xp:selectItem itemLabel="A Car" itemValue="car"></xp:selectItem>
<xp:selectItem itemLabel="A Motorbike" itemValue="moto"></xp:selectItem>
<xp:selectItem itemLabel="A Moped" itemValue="moped"></xp:selectItem>
<xp:selectItem itemLabel="I don't know!" itemValue="dunno"></xp:selectItem>
<xp:eventHandler event="onchange" submit="true" refreshMode="partial" refreshId="panel1"> </xp:eventHandler>
</xp:comboBox><xp:br></xp:br>
<xp:panel id="panel1">
<xe:switchFacet id="switchFacet1" defaultFacet="else">
<xe:this.selectedFacet>
<![CDATA[#{javascript:return getComponent("comboBox1").getValue()}]]>
</xe:this.selectedFacet>
<xp:this.facets>
<xp:panel xp:key="car">What about a Ford?></xp:panel>
<xp:panel xp:key="moto">Hum, a nice <u>Harley</u> or a Japanese sports one?></xp:panel>
<xp:panel xp:key="moped">Do you prefer <u>Peugeot</u> or <u>Piaggio</u>?</xp:panel>
<xp:panel xp:key="else">
<xp:label id="label1">
<xp:this.value>
<![CDATA[#{javascript:var v = getComponent("comboBox1").getValue();
if(v) {
return "Please select another option"
} else {
return ""
}}]]>
</xp:this.value>
</xp:label>
</xp:panel>
</xp:this.facets>
</xe:switchFacet>
</xp:panel>