[bt-devel] Backend Proposal

Gary Holmlund gary.holmlund at gmail.com
Sun Jun 19 14:54:47 MST 2011


On 11-06-19 12:46 PM, Greg Hellings wrote:
> Martin,
>
> On Sun, Jun 19, 2011 at 2:24 PM, Martin Gruner<mg.pub at gmx.net>  wrote:
>> Hi Greg,
>>
>> sounds very interesting. Do you intend to make this new backend a
>> separate library that can be used by BibleTime frontend and other frontends?
> My proposal to Jaak was that BibleTime be separated into three unique
> components each of which could be built relatively separately by CMake
> flags.  Something akin to libbibletimebackend.so, libibletimerender.so
> and the BibleTime executable.  Obviously the BibleTime executable
> would require the other two libraries, but the backend would rely only
> on Qt with SWORD and any other source libraries as options and the
> render would (probably) rely only on Qt and the templating engine Jaak
> has picked out whose name escapes me at the moment.  The renderer
> might also rely on the backend depending on how tightly those two are
> integrated.
>
> The goal is very much twofold - to escape the requirement of
> SWORD-only on the backside and to escape the requirement of
> BibleTime's mouse&  keyboard centered heavy GUI on the other end.
> Various people have recently experimented with BibleTime in places
> including touch interfaces down through mobile phones and we'd like to
> make it easier for those people to write a native GUI that links to
> BibleTime's library instead of feeling the need to dig deeply into
> BibleTime to #ifdef their way to a slightly hacked UI.
>
> Whether these other projects will exist as other UIs within the
> BibleTime project or will be separate projects entirely remains to be
> seen, but the hope is anyone who wants till be able to just build the
> components they want and compile and link against the parts that are
> useful to them.
>
> --Greg
I would be willing to do the structural work of moving files into new 
directories and changing the backend and rendering into libraries. We 
would want to get agreement on the details before any work starts. The 
work should be done so that there is never a commit that does not 
compile and run. It can be broken down into a series of small steps that 
accomplish this.

I wonder if 3 components (backend, render, and BibleTime) are the right 
breakdown. There may be other things we should separate such as the 
config system.

Gary




More information about the bt-devel mailing list