<?xml version="1.0"?>
   <!--

        Copyright AllSeen Alliance. All rights reserved.

           Permission to use, copy, modify, and/or distribute this software for any
           purpose with or without fee is hereby granted, provided that the above
           copyright notice and this permission notice appear in all copies.

           THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
           WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
           MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
           ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
           WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
           ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
           OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

  -->
<controlPanelDevice xmlns="http://www.alljoyn.org/controlpanel/gen">
    <name>MyDevice</name>
    <headerCode>#include "ControlPanelProvided.h"</headerCode>
    <languageSet name="myLanguages">
        <language>en</language>
        <language>de-AT</language> 
        <language>zh-Hans-CN</language>
    </languageSet>
    <controlPanels>
        <controlPanel languageSet="myLanguages">
            <rootContainer>
                <name>rootContainer</name>
                <secured>false</secured>
                <enabled>true</enabled>
                <bgcolor>0x200</bgcolor>
                <label>
                    <value type="literal" language="en">My Label of my container</value>
                    <value type="literal" language="de-AT">Container Etikett</value>
                    <value type="constant" language="zh-Hans-CN">UNICODE_MY_LABEL_CONTAINER</value>
                </label>
                <hints>
                    <hint>vertical_linear</hint>
                    <hint>horizontal_linear</hint>
                </hints>
                <elements>
                    <labelProperty>
                        <name>CurrentTemp</name>
                        <enabled>true</enabled>
                        <label>
                            <value type="literal" language="en">Current Temperature:</value>
                            <value type="literal" language="de-AT">Aktuelle Temperatur:</value>
                            <value type="constant" language="zh-Hans-CN">UNICODE_CURENT_TEMPERATURE</value>
                        </label>
                        <bgcolor>0x98765</bgcolor>
                        <hints>
                            <hint>textlabel</hint>
                        </hints>            
                    </labelProperty>
                    <scalarProperty dataType="UINT16">
                        <name>heatProperty</name>
                        <getCode>getuint16Var</getCode>
                        <setCode>setuint16Var(%s)</setCode>
                        <secured>false</secured>
                        <enabled>true</enabled>
                        <writable>true</writable>
                        <label>
                            <value type="literal" language="en">Oven Temperature</value>
                            <value type="literal" language="de-AT">Ofentemperatur</value>
                            <value type="constant" language="zh-Hans-CN">UNICODE_OVEN_TEMPERATURE</value>
                        </label>
                        <bgcolor>0x500</bgcolor>
                        <hints>
                            <hint>spinner</hint>
                        </hints>
                        <constraintDefs>
                            <constraintVals>
                                <constraint>
                                    <display>
                                        <value type="literal" language="en">Regular</value>
                                        <value type="literal" language="de-AT">Normal</value>
                                        <value type="constant" language="zh-Hans-CN">UNICODE_REGULAR</value>
                                    </display>
                                    <value>175</value>
                                </constraint>
                                <constraint>
                                    <display>
                                        <value type="literal" language="en">Hot</value>
                                        <value type="literal" language="de-AT">Heiss</value>
                                        <value type="constant" language="zh-Hans-CN">UNICODE_HOT</value>
                                    </display>
                                    <value>200</value>
                                </constraint>
                                <constraint>
                                    <display>
                                        <value type="literal" language="en">Very Hot</value>
                                        <value type="literal" language="de-AT">Sehr Heiss</value>
                                        <value type="constant" language="zh-Hans-CN">UNICODE_VERY_HOT</value>
                                    </display>
                                    <value>225</value>
                                </constraint>
                            </constraintVals>
                        </constraintDefs>
                        <unitMeasure>
                          <value type="literal" language="en">Degrees</value>
                          <value type="literal" language="de-AT">Grad</value>
                          <value type="constant" language="zh-Hans-CN">UNICODE_DEGREES</value>
                        </unitMeasure>
                    </scalarProperty>
                    <action>
                        <name>ovenAction</name>
                        <onAction>
                            <executeCode>AJ_Printf("Starting the Oven. Execute was called\n");</executeCode>
                        </onAction>
                        <secured>false</secured>
                        <enabled>true</enabled>
                        <label>
                            <value type="literal" language="en">Start Oven</value>
                            <value type="literal" language="de-AT">Ofen started</value>
                            <value type="constant" language="zh-Hans-CN">UNICODE_START_OVEN</value>
                        </label>
                        <bgcolor>0x400</bgcolor>
                        <hints>
                            <hint>actionButton</hint>
                        </hints>
                    </action>
                    <action>
                        <name>lightAction</name>
                        <onAction>
                            <dialog>
                                <name>LightConfirm</name>
                                <secured>false</secured>
                                <enabled>true</enabled>
                                <message>
                                    <value type="literal" language="en">Are you sure you want to turn on the light</value>
                                    <value type="literal" language="de-AT">Are you sure you want to turn on the light</value>
                                    <value type="constant" language="zh-Hans-CN">UNICODE_ARE_YOU_SURE_YOU_WANT_TO_TURN_OFF_THE_LIGHT</value>
                                </message>
                                <label>
                                    <value type="literal" language="en">Are you sure?</value>
                                    <value type="literal" language="de-AT">Sind sie sicher?</value>
                                    <value type="constant" language="zh-Hans-CN">UNICODE_ARE_YOU_SURE</value>
                                </label>
                                <bgcolor>0x789</bgcolor>
                                <hints>
                                    <hint>alertdialog</hint>
                                </hints>                 
                                <button>
                                    <label>
                                        <value type="literal" language="en">Yes</value>
                                        <value type="literal" language="de-AT">Ja</value>
                                        <value type="constant" language="zh-Hans-CN">UNICODE_YES</value>
                                    </label>
                                    <executeCode>AJ_Printf("Execute Action1 was called\n");</executeCode>
                                </button>
                                <button>
                                    <label>
                                        <value type="literal" language="en">No</value>
                                        <value type="literal" language="de-AT">Nein</value>
                                        <value type="constant" language="zh-Hans-CN">UNICODE_NO</value>
                                    </label>
                                    <executeCode>AJ_Printf("Execute Action2 was called\n");</executeCode>
                                </button>
                                <button>
                                    <label>
                                        <value type="literal" language="en">Cancel</value>
                                        <value type="literal" language="de-AT">Abrechen</value>
                                        <value type="constant" language="zh-Hans-CN">UNICODE_CANCEL</value>
                                    </label>
                                    <executeCode>AJ_Printf("Execute Action3 was called\n");</executeCode>
                                </button>
                            </dialog>
                        </onAction>
                        <secured>false</secured>
                        <enabled>true</enabled>
                        <label>
                            <value type="literal" language="en">Turn on oven light</value>
                            <value type="literal" language="de-AT">Ofenlicht anschalten</value>
                            <value type="constant" language="zh-Hans-CN">UNICODE_TURN_ON_OVEN_LIGHT</value>
                        </label>
                        <bgcolor>0x400</bgcolor>
                        <hints>
                            <hint>actionButton</hint>
                        </hints>
                    </action>
                </elements>
            </rootContainer>
        </controlPanel>
    </controlPanels>
    <notificationActions>
        <dialog languageSet="myLanguages">
            <name>areYouSure</name>
            <secured>false</secured>
            <enabled>true</enabled>
            <message>
                <value type="literal" language="en">Are you sure?</value>
                <value type="literal" language="de-AT">Sind sie sicher?</value>
                <value type="constant" language="zh-Hans-CN">UNICODE_ARE_YOU_SURE</value>
            </message>
            <label>
                <value type="literal" language="en">Are you sure?</value>
                <value type="literal" language="de-AT">Sind sie sicher?</value>
                <value type="constant" language="zh-Hans-CN">UNICODE_ARE_YOU_SURE</value>
            </label>
            <bgcolor>0x789</bgcolor>
            <button>
                <label>
                    <value type="literal" language="en">Yes</value>
                    <value type="literal" language="de-AT">Ja</value>
                    <value type="constant" language="zh-Hans-CN">UNICODE_YES</value>
                </label>
                <executeCode>AJ_Printf("Execute Action1 was called\n");</executeCode>
            </button>
        </dialog>
    </notificationActions>
</controlPanelDevice>

