[jsword-devel] New Developer

Aleksander Rozman - Andy jsword-devel@crosswire.org
Tue, 23 Dec 2003 21:10:16 +0100


At 12/23/2003, you wrote:
>Aleksander Rozman - Andy wrote:
>...
>>>>>>- Status bar, text is resizing whole status bar. Status bar elements 
>>>>>>are not the same size (borders)
>>>>>
>>>>>I'm not seeing this - I do get the status bar adjusting the space it 
>>>>>gives to elements within itself, but then whole thing stays the same size.
>>>>
>>>>Reallly? Try going to different items (which should print some text in 
>>>>status) now this resizes everything...
>>>
>>>Not here. Tried on XP and 2K. What are you on?
>>XP on Java 1.4.1
>
>I'm on jdk 1.4.2 which might make a difference.
>I've tried changing XP themes, but that makes no difference.
>
>Just to be clear are you talking about the height of the status bar 
>changing, or just the width of the items within the status bar.

Will try on 1.4.2...
No I am talking about width of items within status bar...


>>>>>>Nifty things to be done:
>>>>>>- i18n
>...
>>I am sending you how I have done it before.... I have changed two classes 
>>for now... I18nControl is file that accesses one file for language (just 
>>one), this singelton instance, which means that is only initialized once, 
>>and only one instance is present through running of whole program...
>>I am sending 4 files. JSword_EN.properties (put into ./resource), 
>>I18nControl.java (into common/org/crosswire/common/resource) and two 
>>samples (into jsword/org/crosswire/jsword/view/swing/desktop) 
>>AboutPane.java, BlurAction.java
>
>Thanks for the code.
>The issue that I have with it is:
>- it doesn't make things any more i18n-able

Why not? You have a language file for each language that your users have 
translated. Your job is only that developer are using language file for the 
strings and I18N Control class...

>- it make life harder for English developers

Why? They should implement application with view to using I18nControl 
library and language file. If they don't won't they can leave it un-i18n-ed 
and it will be fixed later. I had your classes rewriten within minutes. 
It's easier if developer makes this by himself, but it doesn't have to be 
that way.


>Take a look in org.crosswire.common.util.MsgBase - you'll see that before 
>we actually display the text of any message we check to see if we should 
>i18n it.

Every class you want to have i18ned needs two instances of classes, MsgBase 
and Msg, and one open file. If you go calculate you will see that you have 
quite a lot of rendunand classes loaded (which needs memory) plus you have 
quite a few files loaded.

If you use my sollution, you have only one class instantiated and one file 
open (current language file). Your way will be good for modules that are 
independ entities, but for application that will be put together by 
developer, is my way better.


>The approach is there because developers are lazy, and will often not 
>bother with i18n becuase it is not immediately apparent to them why. So 
>Msg is there to make it as easy as possible for the majority, whilst 
>allowing i18n work later.
>
>...
>
>>Here is the code to activate SkinLF.
>>
>>com.l2fprod.gui.plaf.skin.SkinLookAndFeel.setSkin(com.l2fprod.gui.plaf.skin.SkinLookAndFeel.loadThemePack("./aquathemepack.zip")); 
>>com.l2fprod.gui.plaf.skin.SkinLookAndFeel.enable();
>
>Ugh.
>That doesn't work very well with the PLAF system as designed by Sun. The 
>idea is that you can use a new PLAF without needing to hardcode your app.
>Are you sure there is no better way to use it?

Sorry no. We could just put one option in skin preferences to either load a 
class specified by uesr (it would be best if there would be fixed option 
with LFs installed in rt.jar+one custom option so that user can write it by 
hand) and second option to use skinlf with external LF file. For skinLF you 
can add L&F from many platform, you just need to suply them in zip file...



>>>>>>- Help (this could be done with JavaHelp)
>>>>>
>>>>>Or even a Book! I think the core job of displaying and searching Bible 
>>>>>data is very similar to JavaHelp's job.
>>>>
>>>>Yes it is. We could probably use JavaHelp to display bible (with some 
>>>>modifications)
>>>
>>>I think HTML is a much more broadly understood standard, and it allows 
>>>us to output to the web rather than a Swing JEditorPane too.
>>To Web? I am sorry I didn't understand this...
>
>There are servlets that use the jsword engine to produce a website.
>HTML output is very helpful for this.
>
> > Will you use JavaHelp or not?
>
>I'm not sure there is a benefit to it at the moment.

I mean for Help, not for displaying the bible... For standalone version of 
JSword I think it's quite OK to use JEditorPane, so that you don't need any 
external dependencies...

Andy



**************************************************************************
*  Aleksander Rozman - Andy  * Fandoms:  E2:EA, SAABer, Trekkie, Earthie *
*     andy@kksonline.com     * Sentinel, BH 90210, True's Trooper,       *
*    andy@atechnet.dhs.org   * Heller's Angel, Questie, Legacy, PO5,     *
* Maribor, Slovenia (Europe) * Profiler, Buffy (Slayerete), Pretender    *
*     ICQ-UIC: 4911125       *********************************************
*     PGP key available      *    http://www.atechnet.dhs.org/~andy/     *
**************************************************************************