Raymond Martin wrote:
Hi Pavel,
On 6 March 2008 07:25:59 Pavel Sanda wrote:
Would a Java port of LyX ever be a consideration?
i guess this would be very difficult task to accomplish and don't see the
benefit of it.
I agree it would be difficult. The major benefit from my perspective is that it
would be immediately cross-platform.
Well, Qt (and LyX) is of course cross-platform already; but that's not
what you meant ;-)
My first choice for GUI implementation
is QtJambi which gives provides almost all of Qt to Java. Java also does have
some benefits over C++ in terms of simplicity and other features.
One that comes to mind is multiple threads, which LyX does not have from what
I can see (LyX blocks every time you go to view an output format). Java would
not
have an issue like this, but Qt 4.4 is going to have multi-threading. Hopefully
LyX will move to that version quickly.
This particular problem has nothing to do with Qt and multi-threading.
It'd be very easy to have non blocking export and we already had some
patches for that. It's just that they never were fully finished. But I
agree it's annoying. And Qt has easy multi-treading support and it's
usable at least since Qt4.0 (called QThread).
FWIW, the only area where we can use multi-threading is the autosaving
feature. This is implemented using fork on Unix but is blocking on
Windows. But as saving is very fast, this is not a major problem anyway.
The blocking export is much more annoying indeed.
I am also wondering why LyX does not have dockable widgets planned for 1.6.
Human resources is the key point here... FYI, we did a lot of source
code cleanup in 1.6 so that UI programming is now much more enjoyable
and easy.
The split pane idea is okay, but detachable widgets are more useful;
You mean editing work areas? That'd be easy to do but I don't quite see
the benefit. As for other dialogs, some already are dockable (outline,
view source). More is of course possible.
Abdel.