<\/HEAD>
Como apresentei uma forma de criar seu próprio widget<\/A> para o Web Appbuilder na minha última postagem, gostaria de explicar as opções para suporte multilíngue no seu widget.<\/P>
NLS<\/H4>As strings dos nossos últimos widgets estão mais ou menos codificadas diretamente nos arquivos Setting.html e Widget.html no momento. Se você quiser substituir essas strings pelo idioma definido dentro do navegador ou portal, você precisa rotular as strings e criar uma biblioteca de strings. Isso é feito para o Setting.html e para o Widget.html em diferentes locais dentro da estrutura do widget.<\/P>Setting.html<\/H4>A pasta setting contém uma pasta chamada nls. Dentro dela, você cria uma pasta para cada idioma que gostaria de suportar e um arquivo inicial strings.js com as strings que devem ser usadas nas configurações do widget por padrão. O arquivo strings.js consiste nas strings padrão reais e um indicador se um único idioma (nós só suportamos "de" no nosso exemplo) é suportado:<\/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">"Mostrar Nível de Zoom"<\/SPAN><SPAN class="punctuation token">,<\/SPAN>
ScaleSetCheckboxText<SPAN class="punctuation token">:<\/SPAN> <SPAN class="string token">"Mostrar Escala"<\/SPAN><SPAN class="punctuation token">,<\/SPAN>
configText<SPAN class="punctuation token">:<\/SPAN> <SPAN class="string token">"Definir Configuração:"<\/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><\/>\n<P>Você pode ter notado que usamos uma variável chamada "ZoomSetCheckboxText" e "ScaleSetCheckboxText" e definimos o conteúdo da variável com algumas strings básicas. Essas strings devem ser usadas onde quer que as variáveis sejam usadas. Colocamos as variáveis dentro do arquivo Setting.html. Isso agora parece um pouco diferente, pois a nomenclatura parece um pouco estranha:<\/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></span>><br> <span class= 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>Por favor, note o uso diferente dos indicadores de string comparado ao arquivo padrão strings.js na pasta pai.O Widget.html
O widget em si funciona de forma similar. Dentro da pasta Widget você cria uma pasta nls com subpastas referentes aos idiomas desejados que você gostaria de suportar. Uma lista de idiomas que são suportados pode ser vista aqui:

Mais uma vez substituímos as strings usadas no arquivo original pelo esquema "${nls.xyz}":
<div class="ZoomLeveLInfo">