<\/HEAD>
Zoals ik in mijn vorige bericht een manier heb gepresenteerd om je eigen widget te maken<\/A> voor de Web Appbuilder, wil ik graag de opties voor meertalige ondersteuning in je widget uitleggen.<\/P>
NLS<\/H4>De strings voor onze laatste widgets zijn op dit moment min of meer hardcoded in het Setting.html en Widget.html bestand. Als je deze strings wilt vervangen door de taal die is ingesteld in de browser of portal, moet je de strings labelen en een bibliotheek van strings aanmaken. Dit wordt gedaan voor het Setting.html en voor het Widget.html op verschillende plaatsen binnen de widgetstructuur.<\/P>Setting.html<\/H4>De map setting bevat een map genaamd nls. Daarbinnen maak je een map aan voor elke taal die je wilt ondersteunen en een initiëel strings.js bestand met de strings die standaard in de instellingen van de widget gebruikt moeten worden. Het strings.js bestand bestaat uit de daadwerkelijke standaardstrings en een indicator of een enkele taal (we ondersteunen alleen "de" in ons voorbeeld) wordt ondersteund:<\/P><SPAN class="token function">define<\/SPAN><SPAN class="punctuation token">(<\/SPAN><SPAN class="punctuation token">{<\/SPAN>
root<SPAN class="punctuation token">:<\/SPAN> <SPAN class="punctuation token">(<\/SPAN><SPAN class="punctuation token">{<\/SPAN>
ZoomSetCheckboxText<SPAN class="punctuation token">:<\/SPAN> <SPAN class="string token">"Toon Zoomniveau"<\/SPAN><SPAN class="punctuation token">,<\/SPAN>
ScaleSetCheckboxText<SPAN class="punctuation token">:<\/SPAN> <SPAN class="string token">"Toon Schaal"<\/SPAN><SPAN class="punctuation token">,<\/SPAN>
configText<SPAN class="punctuation token">:<\/SPAN> <SPAN class="string token">"Stel Configuratie in:"<\/SPAN>
<SPAN class="punctuation token">}<\/SPAN><SPAN class="punctuation token">)<\/SPAN><SPAN class="punctuation token">,<\/SPAN>
<SPAN class="string token">"de"<\/SPAN><SPAN class="punctuation token">:<\/SPAN> <SPAN class="number token">1<\/SPAN><SPAN class="punctuation token">,<\/SPAN>
<SPAN class="string token">"es"<\/SPAN><SPAN class="punctuation token">:<\/SPAN> <SPAN class="number token">0<\/SPAN>
<SPAN class="punctuation token">}<\/SPAN><SPAN class="punctuation token">)<\/SPAN><SPAN class="punctuation token">;<\/SPAN><SPAN class="line-numbers-rows"><SPAN><\/SPAN><SPAN><\/SPAN><SPAN><\/SPAN><SPAN><\/SPAN><SPAN><\/SPAN><SPAN><\/SPAN><SPAN><\/SPAN><SPAN><\/SPAN><SPAN><\/SPAN><\/span><\/CODE><\/PRE><P>Je hebt misschien gemerkt dat we een variabele gebruiken genaamd "ZoomSetCheckboxText" en "ScaleSetCheckboxText" en de inhoud van de variabele definiëren met enkele basisstrings. Deze strings moeten worden gebruikt waar de variabelen ook worden gebruikt. We plaatsen de variabelen binnen het Setting.html bestand. Dit ziet er nu iets anders uit omdat de nomenclatuur wat vreemd lijkt:<\/P><PRE class="lia-code-sample line-numbers language-none"><CODE> <span class="token tag"><span class="token tag"><span class="punctuation token"><<\/span>div<\/span><span class="punctuation token">><\/span><\/span>
<span class="token tag"><span class="token tag"><span class="punctuation token"><<\/span>div<\/span> <span class="attr-name token">class<\/span><span class="attr-value token"><span class="punctuation token">=<\/span><span class="punctuation token">"<\/ class="punctuation token">,</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>Let op het verschillende gebruik van stringindicatoren vergeleken met het standaard strings.js-bestand in de bovenliggende map.De Widget.html
De widget zelf werkt vergelijkbaar. Binnen de Widget-map maak je een nls-map aan met submappen voor de gewenste talen die je wilt ondersteunen. Een lijst van ondersteunde talen is hier te zien:

We vervangen opnieuw de strings die in het originele bestand worden gebruikt door het "${nls.xyz}" schema:
<div class="ZoomLeveLInfo">