[jsword-devel] Flexible layout

DM Smith dmsmith at crosswire.org
Tue Mar 3 11:52:47 MST 2009


There are a bunch of SWORD/JSword applications. Until very recently, The 
SWORD Project for Windows and Bible Desktop (BD) were the only ones 
available for Windows. Mac OS had BD and MacSword. On Linux, there was 
BibleTime, GnomeSword (now renamed Xiphos) and BD. (This is not to 
minimize AlKitab as it like BD runs on the same platforms.)

This is changing. Xiphos now runs on Windows. Soon BibleTime will run on 
Windows and Macs.

In discussions on the sword-devel mailing list, we have noted that these 
apps do pretty much the same thing, with some significant feature 
differences. No one app has run away with the prize. There are a variety 
of reasons, but I think the most common reason is that a user's favorite 
app works the way that they want to approach scripture reading and/or study.

The current layout of BD assumes that the primary use is that of reading 
the Bible. Our goal for Bible Desktop is to have a simple, uncluttered 
interface, where the user can show/hide/adapt it to suit their desires.  
This is not quite full reality. We have had requests to show/hide the 
right hand panel and to show/hide the built-in daily reading plan.

We have also had requests to make it a premier study tool complete with 
deep linguistic analysis.

I think to make BD the killer application, we need to address both of 
these ends of the spectrum.

Here is where my head is at regarding this:
1) The user should be able to show/hide components of BD.
2) The user should be able to organize those components as they see fit: 
side-by-side, tabbed, separate windows, ....
3) They shouldn't have to do it each time they start the application.

Today, for the Bible view, you either get a Multiple Document Interface, 
aka MDI or a Tabbed Document Interface, TDI. I don't like that 
dichotomy. And there is no Separate Document Interface, SDI, where each 
BibleView gets its own top-level window. Sometimes I want the tabs, but 
other times I want to see two tabs (out of several more), side-by-side. 
There are times that I'd like to tear off a tab and make it a separate 
standalone window. (And I imagine, I might want to put it back.)

The other thing is the notion of plugins. The idea here is that a plugin 
would be independent from the main application and could be 
added/removed and shown/hidden at will. Once added and shown, it could 
be place as above. This probably will satisfy 1).

It was noted that the NetBeans and Eclipse look and feel get in the way. 
Largely, I agree. But, they provide these capabilities for free.

This and solving the rendering problems that Peter noted are the two 
strategic implementations I have for a 2.0 release.

I'd like feedback.

In Him,
    DM




More information about the jsword-devel mailing list