uidesigner/com.nokia.sdt.series60.componentlibrary/components/controls/CAknPopupFieldText.component
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). -->
<!-- All rights reserved. -->
<!-- This component and the accompanying materials are made available -->
<!-- under the terms of the License "Eclipse Public License v1.0" -->
<!-- which accompanies this distribution, and is available -->
<!-- at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<componentDefinition xmlns="http://www.nokia.com/sdt/emf/component"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<component friendlyName="%friendlyName"
qualifiedName="com.nokia.sdt.series60.CAknPopupFieldText"
baseComponent="com.nokia.sdt.series60.CCoeControlBase"
category="Controls"
instanceNameRoot="popupFieldText" version="1.0">
<documentation>
<information>%information</information>
<helpTopic></helpTopic>
<wizardDescription></wizardDescription>
</documentation>
<symbian minSDKVersion="2.0" sdkName="com.nokia.series60"
resourceType="POPUP_FIELD_TEXT" className="CAknPopupFieldText" />
<designerImages
smallIconFile="CAknPopupFieldText_sm.png"
largeIconFile="CAknPopupFieldText.png"/>
<attributes>
<attribute key="cpp-class-name">CAknPopupFieldText</attribute>
<attribute key="is-dialog-content">true</attribute>
<attribute key="is-form-content">true</attribute>
<attribute key="rss-control-type-enum">EAknCtPopupFieldText</attribute>
<attribute key="editable-array-property">items</attribute>
</attributes>
<properties>
<property name="maxLength" category="Data" type="integer"
default="8"
descriptionKey="maxLengthDescription"
/>
<property name="otherText" category="Data" type="localizedString"
descriptionKey="otherTextDescription"
/>
<!-- S60 panics if a popup field text list is empty, so this will never be activated...
<property name="emptyText" category="Data" type="localizedString"/>
<componentReferenceProperty category="Data" scope="model" constraint="com.nokia.sdt.series60.StandardNote" name="emptyNote"/>
-->
<property name="invalidText" category="Data" type="localizedString"
descriptionKey="invalidTextDescription"
/>
<enumProperty name="font" category="Appearance"
type="com.nokia.sdt.series60.CEikonEnv.SystemFont"
descriptionKey="fontDescription"
/>
<!-- breaks if turned off
<property name="showIndicators" category="Appearance"
type="boolean" default="true"
descriptionKey="showIndicatorsDescription"
/>
-->
<arrayProperty name="items" category="Data"
type="localizedString"
editorClass="com.nokia.sdt.symbian.ui.editors.StringListEditorFactory"
descriptionKey="itemsDescription"
/>
<property name="active" category="Data" type="integer"
descriptionKey="activeDescription"
/>
</properties>
<implementations>
<implementation>
<interface id="com.nokia.sdt.datamodel.adapter.IVisualAppearance"/>
<interface id="com.nokia.sdt.datamodel.adapter.IDirectLabelEdit"/>
<interface id="com.nokia.sdt.datamodel.adapter.IComponentValidator"/>
<interface id="com.nokia.sdt.datamodel.adapter.IInitializer"/>
<!-- for form -->
<interface id="com.nokia.sdt.datamodel.adapter.IDirectImageEdit"/>
<interface id="com.nokia.sdt.datamodel.adapter.IImagePropertyRenderingInfo"/>
<script file="CAknPopupFieldText.js" prototype="CAknPopupFieldText"/>
</implementation>
</implementations>
<sourceMapping>
<mapResource struct="POPUP_FIELD_TEXT" headers="avkon.rh avkon.hrh">
<mapResourceMember struct="POPUP_FIELD" property="." member="popupfield">
<mapSimpleMember property="maxLength" member="width"/>
<mapSimpleMember property="otherText" member="other"/>
<!-- S60 panics if a popup field text list is empty, so this will never be activated...
<mapReferenceMember property="emptyNote" member="emptynote"/>
<mapSimpleMember property="emptyText" member="empty"/>
-->
<mapSimpleMember property="invalidText" member="invalid"/>
</mapResourceMember>
<select property="items">
<choice value="0">
<!-- don't emit for 0 items: this causes a panic -->
</choice>
<choice>
<mapResourceMember struct="ARRAY" property="." member="textarray" headers="badef.rh">
<mapArrayMember property="items" member="items">
<mapResourceElement struct="LBUF">
<mapSimpleMember property="." member="txt"/>
</mapResourceElement>
</mapArrayMember>
</mapResourceMember>
</choice>
</select>
<mapSimpleMember property="active" member="active"/>
</mapResource>
</sourceMapping>
<sourceGen forms="Dialog Container">
<useTemplate ids="INIT_FROM_CONTAINER" />
<useTemplate ids="INIT_FROM_DIALOG" />
<useTemplateGroup ids="CLASS_CONTRIBS" />
<useTemplate ids="LAYOUT_CONTROLS" />
<inline>
this.getCppSystemIncludes(contribs, [ "barsread.h", "stringloader.h",
"aknpopupfieldtext.h", "eikenv.h" ]);
</inline>
<template phase="Initialize"><![CDATA[
${instanceMemberName}->SetFont( iEikonEnv->${properties.font}() );
]]> </template>
<template phase="Initialize" form="Container">
${instanceMemberName}->SetFormFieldRect( TRect( ${properties.location.x}, ${properties.location.y}, ${properties.size.width}, ${properties.size.height} ) );
</template>
<useTemplateGroup ids="GenerateCommonControlEvents GenerateStateChangedEvent"/>
<useTemplateGroup ids="GenerateRequestingFocusEvent GenerateRequestingExitEvent"/>
<useTemplateGroup ids="GenerateRequestingCancelEvent GenerateInteractionRefusedEvent"/>
<useTemplateGroup ids="GeneratePrepareFocusTransitionEvent"/>
</sourceGen>
</component>
</componentDefinition>