<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 07/04/2013 08:45 PM, Greg Hellings
wrote:<br>
</div>
<blockquote
cite="mid:CAHxvOV+CsWBQs5P4rfFEK-AWGizd1aW6nP_CT0RGH8wQQgCzCg@mail.gmail.com"
type="cite">
<div dir="ltr"><br>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Thu, Jul 4, 2013 at 1:28 PM, Troy
A. Griffitts <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:scribe@crosswire.org" target="_blank">scribe@crosswire.org</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">Not to
insult anyone-- please don't feel insulted...<br>
<br>
But what exactly does basing code off of Bibletime instead
of SWORD give you? Are any of these things worth having
in the engine itself?<br>
</blockquote>
<div><br>
</div>
<div style="">Primarily:</div>
<div style="">1) Translation between char*/SWBuf and
QString, plus adding QObject and additional helpers that
Qt offers. This is quite possibly worth having in the
engine, but every time I've asked the BibleTime guys if
they want a minimal Qt-Sword binding in the engine they
have decided that it is unnecessary for BT's specific
purposes. I'd still be happy to help get this much
functionality into the engine if we're going to have now 3
frontends leveraging Qt.</div>
</div>
</div>
</div>
</blockquote>
<br>
I'm happy to ifdef QT some stuff like:<br>
<br>
SWKey::SWKey(const QString &other) : SWKey((const char
*)other.toUtf8()) {}<br>
SWBuf::SWBuf(const QString &other) : SWBuf((const char
*)other.toUtf8()) {}<br>
<br>
These two should make things flow mostly transparently Qt and the
SWORD engine, since SWBuf and SWKey can already cast themselves to a
const char * and QString can be constructed from a const char *. It
was simply the const temporaries we count on which would have needed
these casts, for example:<br>
<br>
QString key = "John.3.16";<br>
<br>
kjv->setText(key);<br>
<br>
This last line would not have worked because setKey takes a const
SWKey &. It works seamlessly with a const char * because a
temporary can be constructed because of the SWKey(const char *)
c-tor, but there is not currently a SWKey(const QString &) to
allow a temporary to be constructed from a QString.<br>
<br>
<blockquote
cite="mid:CAHxvOV+CsWBQs5P4rfFEK-AWGizd1aW6nP_CT0RGH8wQQgCzCg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote"><br>
<div style="">2) An improved CLucene search has long been
something that BibleTime touts - the index covers more
fields and metadata than Sword's CLucene index.</div>
</div>
</div>
</div>
</blockquote>
<br>
Yes, I've seen the ability to search on 'footnotes' and 'headings',
but didn't feel those were worth adding right now, but tried to
convince the BT developers to help me modularize the search
framework to allow a 'search field' plugin mechanism-- probably
simply a new filter type, and set of filters which could pull the
desired field data from the buffer, then they could add plugins for
their footnotes and headings and anything else they wanted and
frontend could choose which fields they wanted to include when
building indexes. There was no success in that, but they simply
wanted to re-write basically the exact same code we have for
building CLucene indexes, but including their additional fields.<br>
<br>
<br>
<blockquote
cite="mid:CAHxvOV+CsWBQs5P4rfFEK-AWGizd1aW6nP_CT0RGH8wQQgCzCg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div style=""> This is probably worth having, but has been
summarily rejected by you in the past because there would
be no way of detecting Old Index vs New Index as current
indexes are unversioned (why that itself couldn't serve as
the flag for old vs new following the addition of an index
version field, I'm not sure).</div>
</div>
</div>
</div>
</blockquote>
<br>
You are mistaken.<br>
<br>
<br>
<blockquote
cite="mid:CAHxvOV+CsWBQs5P4rfFEK-AWGizd1aW6nP_CT0RGH8wQQgCzCg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div style=""> You've also given the impression that the
CLucene indexes are not a high priority for you since you
have the brute force search available.</div>
</div>
</div>
</div>
</blockquote>
<br>
I use the CLucene indexes all the time. They are great for some
things. I have tried to convince people that they aren't necessary
for 90% of searches because our unindexed search of an entire Bible
is optimized to return results in under a few seconds on most
hardware (probably including most mobile handsets these days).<br>
<br>
<br>
<blockquote
cite="mid:CAHxvOV+CsWBQs5P4rfFEK-AWGizd1aW6nP_CT0RGH8wQQgCzCg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div style=""><br>
</div>
<div style="">3) An entirely rewritten set of OSIS filters,
at the very least. Whether these are better or not, I have
no opinion of, although I have found BibleTime's filters
more understandable.</div>
</div>
</div>
</div>
</blockquote>
<br>
Yes, but re-written isn't necessarily a feature. We add support for
new things all the time in our filters. Are the Bibletime filters
updated as well? Again, this is important to me: I would love for
all the projects which render to HTML to agree on what they would
like to see as the HTML output from the filters and work together on
the new XHTML filter set in the engine so we can all share in each
other's improvements.<br>
<br>
<blockquote type="cite">
<div style="">4) Potentially reusable widgets in some places, for
common functionality like the Install Manager, where a redesign
may or may not be necessary for some of it.</div>
<div style=""><br>
</div>
</blockquote>
<br>
Yes, resusable GUI components are useful but not something I think
we would put into the engine. Maybe a 'contrib/qt folder?<br>
<br>
<br>
On 07/04/2013 09:35 PM, Gary Holmlund wrote:<br>
<br>
<blockquote type="cite">I am definitely leveraging BibleTime backend
code to install works</blockquote>
<br>
So, a Qt UI using the SWORD InstallMgr facility? This is good but
falls under #4 from Greg, above.<br>
<br>
<blockquote type="cite"> and the config system for dealing with user
preferences.</blockquote>
<br>
Is this different than SWConfig? Probably using a QSettings? How
is this different than just using stock SWConfig or QSettings? Does
it remember common things the user might store for SWORD, like which
option filters are turned on? and then reset them when the app
starts back up? This could possibly be useful in the engine, though
I would guess most frontend developers would want to micromanage
this and also have more than what we might decide to track in the
engine. Not sure we could come to some consensus for a useful
implementation projects would adopt.<br>
<br>
<br>
<blockquote type="cite"> The filters also provide parallel viewing
of passages in a single window.</blockquote>
<br>
This would be nice to have: a display class which could produce
parallel HTML for multiple modules.<br>
<br>
<br>
<blockquote type="cite"> The fact that the BibleTime backend
converts to QString, etc. is a big savings for a Qt app.<br>
</blockquote>
<br>
Greg also mentioned this above. Would the additions I mention help?<br>
<br>
<br>
Thanks for the comments Greg and Gary!<br>
<br>
<br>
Troy<br>
<br>
Troy<br>
<br>
<br>
<blockquote
cite="mid:CAHxvOV+CsWBQs5P4rfFEK-AWGizd1aW6nP_CT0RGH8wQQgCzCg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote"><br>
<div style="">
Those are just some of the things I know of that could be
leveraged, in addition to having the differences of
opinion and strategy you talk about below.</div>
<div style=""><br>
</div>
<div style="">--Greg</div>
<div style=""><br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
I have looked at the backend 'wrappers' in Bibletime
around SWORD a few years back and I was disappointed for a
number of reasons-- and so as not to insult anyone--
primarily because they didn't add any value at all, but
only 'shielded' developers from using the engine directly.<br>
<br>
I have no idea if this is still the case. I get the
impression that Bibletime, itself, has been re-written a
number of times and I'm guessing this includes the
'backend' wrappers as well.<br>
<br>
My hope is that if there are any features that are usable
by multiple frontend, then we should add these into the
engine, if it makes sense. Again, in an attempt to stop
this thread from becoming a defense of the Bibletime code
or a defense of a 'methodology for an API interface (e.g.,
stateful vs. stateless container classes) and from
degrading into insulting each other, I have not commented
on the quality of the Bibletime code. I am simply stating
that I don't know what<br>
<br>
* solid, additional features *<br>
<br>
are gained from using the Bibletime base for starting a
new frontend instead of the SWORD code directly, and if
there are any, can we add these into the engine?<span
class="HOEnZb"><font color="#888888"><br>
<br>
<br>
Troy</font></span>
<div class="HOEnZb">
<div class="h5"><br>
<br>
<br>
<br>
On 07/04/2013 08:17 PM, Israel wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
Great!! I will post the git page (to the uBible
Developers) if you want me too, or you can head over
to<br>
<a moz-do-not-send="true"
href="https://github.com/uBible/uBible/issues/1"
target="_blank">https://github.com/uBible/uBible/issues/1</a><br>
and post the info yourself if you want.<br>
We have been discussing using Bible Time's backend
because @Mark Trompell suggested it.<br>
You can e-mail me off list if you'd like, or post on
the Github page...<br>
<br>
<br>
On Thu, 04 Jul 2013 09:22:17 -0700<br>
Gary Holmlund <<a moz-do-not-send="true"
href="mailto:gary.holmlund@gmail.com"
target="_blank">gary.holmlund@gmail.com</a>>
wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
I am currently working on a second frontend for
BibleTime that uses QML.<br>
It is a work in progress and I have some basic
features up and working.<br>
Bibles, Commentaries, and Books can be read in
multiple windows. The<br>
windows can be tabbed or split views of the
screen. The install process<br>
for bibles, etc. is working.<br>
<br>
It requires Qt 5.1 and compiles on linux (ubuntu,
fedora, etc.). I am<br>
looking into cross compiling onto android right
now. Qt is not making<br>
this easy because they don't support cmake builds
for android.<br>
<br>
I have it in a private git repository right now,
but expect to put it<br>
into the main BibleTime git repository soon. Help
with this would be<br>
welcome.<br>
<br>
Gary Holmlund<br>
<a moz-do-not-send="true"
href="mailto:gary.holmlund@gmail.com"
target="_blank">gary.holmlund@gmail.com</a><br>
<br>
<br>
On 07/04/2013 06:25 AM, Israel wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0
0 .8ex;border-left:1px #ccc
solid;padding-left:1ex">
It uses QML, so it is part of Qt. I will bring
this up to the others<br>
and see what they think about it all.<br>
It may be a good idea. Anyhow we are designing
an interface at the<br>
moment to get the features we want, using what
capabilities QML has,<br>
and designing it to be fully integrated with the
Ubuntu Touch<br>
ecosystem. There are some things about using
Bible Time that may make<br>
this<br>
hard, but there very well may be some things we
might be able to utilize.<br>
Thanks!<br>
<br>
On 07/04/2013 12:15 AM, Mark Trompell wrote:<br>
<blockquote class="gmail_quote" style="margin:0
0 0 .8ex;border-left:1px #ccc
solid;padding-left:1ex">
On Thu, Jul 4, 2013 at 2:04 AM, Israel <<a
moz-do-not-send="true"
href="mailto:israeldahl@gmail.com"
target="_blank">israeldahl@gmail.com</a>>
wrote:<br>
<blockquote class="gmail_quote"
style="margin:0 0 0 .8ex;border-left:1px
#ccc solid;padding-left:1ex">
Hi everyone,<br>
There are a few of us who have banded
together to start work on a<br>
Ubuntu<br>
Touch SWORD app. Is anyone else working on
one?<br>
</blockquote>
AFAIK Ubuntu touch uses qt, so maybe just
another UI Frontent to<br>
bibletime would do fine,<br>
with the advantage of being easily portable to
mer/nemo/sailfish(jolla).<br>
<br>
<blockquote class="gmail_quote"
style="margin:0 0 0 .8ex;border-left:1px
#ccc solid;padding-left:1ex">
If anyone is interested please join us on
github.<br>
<a moz-do-not-send="true"
href="https://github.com/uBible"
target="_blank">https://github.com/uBible</a><br>
We are currently in the process of working
out the beginning<br>
details, such<br>
as UI setup, features, etc....<br>
May the Lord Jesus bless you all!<br>
<br>
-- <br>
Regards<br>
<br>
<br>
_______________________________________________<br>
sword-devel mailing list: <a
moz-do-not-send="true"
href="mailto:sword-devel@crosswire.org"
target="_blank">sword-devel@crosswire.org</a><br>
<a moz-do-not-send="true"
href="http://www.crosswire.org/mailman/listinfo/sword-devel"
target="_blank">http://www.crosswire.org/mailman/listinfo/sword-devel</a><br>
Instructions to unsubscribe/change your
settings at above page<br>
</blockquote>
<br>
</blockquote>
<br>
</blockquote>
<br>
_______________________________________________<br>
sword-devel mailing list: <a
moz-do-not-send="true"
href="mailto:sword-devel@crosswire.org"
target="_blank">sword-devel@crosswire.org</a><br>
<a moz-do-not-send="true"
href="http://www.crosswire.org/mailman/listinfo/sword-devel"
target="_blank">http://www.crosswire.org/mailman/listinfo/sword-devel</a><br>
Instructions to unsubscribe/change your settings
at above page<br>
</blockquote>
<br>
</blockquote>
<br>
<br>
_______________________________________________<br>
sword-devel mailing list: <a moz-do-not-send="true"
href="mailto:sword-devel@crosswire.org"
target="_blank">sword-devel@crosswire.org</a><br>
<a moz-do-not-send="true"
href="http://www.crosswire.org/mailman/listinfo/sword-devel"
target="_blank">http://www.crosswire.org/mailman/listinfo/sword-devel</a><br>
Instructions to unsubscribe/change your settings at
above page<br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
sword-devel mailing list: <a class="moz-txt-link-abbreviated" href="mailto:sword-devel@crosswire.org">sword-devel@crosswire.org</a>
<a class="moz-txt-link-freetext" href="http://www.crosswire.org/mailman/listinfo/sword-devel">http://www.crosswire.org/mailman/listinfo/sword-devel</a>
Instructions to unsubscribe/change your settings at above page</pre>
</blockquote>
<br>
</body>
</html>