[quote=Eliezer Reis]Acho que você não entendeu o que eu quis dizer! Olha só, o JavaHelp vem com internacionalização somente para os seguintes Locales (Linguas): en (default), ar, cs, de, es, fr, he, ja, pl, ru, sk e zh. Infelizmente não tem como aumentar mais línguas porém você consegue substituir o suporte para estas linguas. Mas como?
Crie no seu projeto o pacote(package) javax.help.resources e dentro deste pacote crie a classe Constants.java ou Constants_<algum dos locales citados acima> (Constants_pl).
Agora traduza a classe http://www.koders.com/java/fidF95BF2B283469F5B6CFA4D8C479FD5568434DEF3.aspx?s=javax.help.resources#L21.
Em algum momento do seu código você terá algo semelhante como abaixo para criar sua interface de ajuda. Observe a linha 3 e perceba que estou mudando os Labels do JavaHelp para francês. Agora basta usar este mesmo recurso para apontar para sua nova classe traduzida e mantendo ainda suporte as demais línguas. Se você usar a classe Constants.java o locale correto deverá ser “en”.
ClassLoader cl = this.getClass().getClassLoader();
try {
Locale.setDefault(new Locale("fr"));
URL hsURL = HelpSet.findHelpSet(cl, helpHS);
hs = new HelpSet(null, hsURL);
} catch (Exception e) {
return;
}
hb = hs.createHelpBroker();
Dimension ds = Toolkit.getDefaultToolkit().getScreenSize();
hb.setSize(ds);
hb.setDisplayed(true);
Isso resolve? Se você precisar internacionalizar mais que 12 línguas dai complicou. Embora não tenha testado (falta de tempo mesmo) o segundo passo que citei acima deverá funcionar.
Melhorou em algo? Abraço![/quote]
FUNCIONOU!
Eliezer, eu tava fazendo tudo isso que vc falou… quer dizer, quase tudo!
Faz 2 meses já que eu tô trocando idéia com o povo do forum da SUN, os nego que desenvolveram o tal do JavaHelp (imagina minha cara qdo abri o fonte do JavaHelp e vi na assinatura do autor do fonte o msm nome do kra que tá me mandando e-mail no forum…rs…)
Eles me falaram pra fazer um projeto separado, com uma pkg javax.help.resources, pra colocar ali dentro minha Constants_pt.java, compilar, etc, etc… como vc falou.
Eu já tava cansada de fazer isso, já tentei de tudo alias, muitas coisas. Mas um detalhe que vc falou clareou qual era o problema e pq não funcionava daquela forma, vc disse:
“Crie no seu projeto o pacote(package) javax.help.resources e dentro deste pacote crie a classe Constants.java ou Constants_<algum dos locales citados acima> (Constants_pl).”
E depois:
“Se você precisar internacionalizar mais que 12 línguas dai complicou.”
Ai que eu me toquei!!!
Eu já tava fazendo isso, mas eu tava criando um Constants_pt.java. Como não existe Constants_pt.java o desgraçado do JavaHelp não reconhecia minha classe! Agora eu simplesmente, depois de ler o que vc escreveu e me tocar da “babada” que eu tava cometendo, eu apenas fui lá, renomeei minha Constants_pt.java pra Constants.java, rodei o projeto e TUDO FUNCIONOU!
Ah, e não precisa se preocupar em internacionalizar “apenas” 12 idiomas…rs… Eu peguei e internacionalizei minha classe Constants.java, desta forma qq idioma que for colocado no meu sistema, funcionará nela tb. Lindo né? rs
MUITO obrigada! Fazia tempo que eu tava apanhando disso ai… Vlw msm!!! :lol: