Re: selectively changing properties of graph of objects in a batch
...
lbrtchx@gmail.com wrote:
>>> Basically I have a graph of objects I would like to programmatically
>>> change in a flexible way at once (say you need to change all text
>>> descriptors of a menu-based GUI to a different language with just a
>>> user's click)
>>> As I intuitively think about it, I will have to use java's reflection
>>> API and some sort of xml (or xml-ish) description file
This is what properties and resource bundles already provide.
<http://download.oracle.com/javase/6/docs/api/java/util/ResourceBundle.html>
<http://download.oracle.com/javase/6/docs/api/java/util/Properties.html>
(Attribution restored. Please acknowledge citations.)
Arne Vajh??j wrote:
>> Swing supports iterating/recursing through components out of the box.
lbrtchx@gmail.com wrote:
I should have more clearly stated that those "objects" are not
Java objects proper but objects modelling some logic. I mentioned
the GUI as an example
How are these not "Java objects proper"? Seems like they are in the same
equivalence class, no?
There are a number of idioms to do what you broadly describe. ResourceBundle
is quite apt for the GUI use case, or quite a few other l10n tasks.
Statically loaded Maps, resource injection, portals, skins, themes,
database-based customization, humdehum - lots of idioms available. The choice
of which depends on somewhat lower-level details, such as whether changing
prompt text language is actually a requirement.
There's a simple example at:
<http://www.irian.biz/tobago-example-demo/faces/overview/basic.jsp>
once you've tediously worked your "Next" chain through to "Locale" (also
"Themes").
(It's fun to watch Chrome keep offering to translate back into English as I
change the language selection in the demo.)
--
Lew
Anyone who responds to one of my public posts, e.g., on a Usenet forum, via a
private email directly to me acknowledges that I intend to republish such
communication back to the public forum or forums from which the message arose,
and by dint of so responding to a public communication grants me the
non-revocable and non-transferable license to reproduce their communication at
my discretion, in full or in part, without further restriction and without
remuneration or compensation to the copyright owner, in perpetuity.