Commit graph

238 commits

Author SHA1 Message Date
dchandler
ecf61bc892 A DuffPane is now a TibetanPane. A TibetanPane is much more lightweight
but does line breaks correctly.  I.e., I refactored DuffPane into two classes.

I did this trying to track down a subtle bug in line breaking: 'gye ' breaks
after 'gy' sometimes, with the dreng bo on the next line, but only when you
resize the window certain ways, and only in Savant (and maybe QD and the
translation tool, I don't know) but not in Jskad.

I was not successful in finding the bug, but it still exists when I use
TibetanPanes instead of DuffPanes in org.thdl.savant.tib.*.
2002-11-08 04:11:42 +00:00
dchandler
04da61688d A DuffPane is now a TibetanPane. A TibetanPane is much more lightweight
but does line breaks correctly.  I.e., I refactored DuffPane into two classes.

I did this trying to track down a subtle bug in line breaking: 'gye ' breaks
after 'gy' sometimes, with the dreng bo on the next line, but only when you
resize the window certain ways, and only in Savant (and maybe QD and the
translation tool, I don't know) but not in Jskad.

I was not successful in finding the bug, but it still exists when I use
TibetanPanes instead of DuffPanes in org.thdl.savant.tib.*.
2002-11-08 04:05:06 +00:00
dchandler
86e384352b Jskad's "Do you want to save your changes before you quit?" dialog is now
optional.
2002-11-08 03:58:35 +00:00
amontano
947ac5537a Updated on comments and made it a bit more consistent. 2002-11-03 17:42:11 +00:00
dchandler
d462f4e41c Fixes all known bugs with the ACIP keyboard except for one:
ACIP's 'WA' represents Wylie's 'wa', but ACIP's 'ZHVA' represents Wylie's
'zhwa'.  The key for wasur is the same as the key for the twentieth
consonant in extended Wylie, but not in ACIP.
2002-11-03 17:34:33 +00:00
dchandler
22141248e7 Terribly minor cleanup. 2002-11-03 17:05:44 +00:00
dchandler
7adfddfb43 Fixed my fix to the "Jskad freezes on impossible input" bug.
Typing 'lKU' in Extended Wylie is now equivalent to 'lU'.  I'm not sure if
this is a change or not.
2002-11-03 17:05:05 +00:00
amontano
37b29c8d33 Added comments to all class headers. Comments to individual methods will
be added as needed.
2002-11-03 08:56:11 +00:00
eg3p
b4e4decc2e Updates, including support for
internationalized strings.
2002-11-02 22:11:02 +00:00
eg3p
fab76cb82e no message 2002-11-02 22:10:12 +00:00
eg3p
1e6ab8eeec Made sure that MessageBundle files are copied over
to Savant binary directories, now that Savant is using
these internationalization files.
2002-11-02 20:22:42 +00:00
eg3p
392b2b180a These files have been updated for use with
Savant. That is, org.thdl.savant.SoundPanel
has been eliminated in favour of these classes,
which are shared between QD and Savant.

The main change is that SmartMoviePanels
can now communicate with the outside world,
for example to send messages to a Savant
text window telling it to update highlights.
2002-11-02 20:20:30 +00:00
eg3p
da9a576e02 New strings added. 2002-11-02 20:13:16 +00:00
eg3p
5bfaccded7 This class provides static methods for dealing
with THDL's internationalization issues.
2002-11-02 20:11:42 +00:00
eg3p
59d65bedc3 Change scrolling policy w/in Savant. Now highlighted text stays in the middle of the window instead of at the bottom. 2002-11-02 20:10:05 +00:00
dchandler
e8dacead31 You can use these two files to use Eclipse 2.0 with Jskad. Though you'll
have to edit .classpath appropriately for your installation.  And though there
may be further snags if you try it, since I haven't.
2002-11-02 19:07:45 +00:00
dchandler
de6ae79959 Fixes bug 624133, "Input freezes after impossible character". Try 'shsM' in
ACIP or 'ShSm' in Extended Wylie to see the new behavior.

We use a trie to store valid input sequences.  In the future, we could use
the same trie as a replacement for the more inefficient HashSets we use to
store characters, vowels, and punctuation.  For example, we'd use
'validInputSequences.put("K", new Pair("consonant", "k"))' when reading
in the ACIP keyboard's description of the first consonant of the Tibetan
alphabet in 'TibetanKeyboard.java'.

Note that the current trie implementation is only useful for 7- or 8-bit
transcription systems, and works best for tries with low average depth, which
describes a transcription system's trie very well.  If you used arbitrary
Unicode in your keyboard, you'd need a different trie implementation.

Improved the optional keyboard input mode status messages.
2002-11-02 18:44:24 +00:00
dchandler
92fd1bf0b6 Added AcipToWylie to the tt-standalone build. 2002-11-02 17:09:36 +00:00
dchandler
a6cc4a7ff3 Removed/commented out/tagged some unused local variables.
Added a JUnit test for the new Trie that fails at present since the Trie is
case-insensitive.  Running JUnit tests is not something our build system
knows about at present, but Eclipse 2.0 makes it very easy.

Fixed a few compiler errors due to imports I'd forgotten.
2002-11-02 16:01:40 +00:00
dchandler
b8391e923d Borrowed a trie implementation from Apache's Xalan 2.4.0. 2002-11-02 13:39:29 +00:00
dchandler
29042638e2 In the ACIP keyboard, 'KEE' and 'KOO', which are equivalent to Wylie's
'kai' and 'kau', now work.

The optional status messages have been improved.
2002-11-02 05:21:12 +00:00
dchandler
aa580e0bea Undoing my erroneous commit of buggy code. 2002-11-02 03:46:44 +00:00
dchandler
abcf8f19b3 Factored TibetanDocument into two classes, one that is a
DefaultStyledDocument, and another consisting entirely of static utility
methods for processing Tibetan text.  Moved TibetanDocument.DuffData
into its own class.

I think this makes things a bit more transparent, and gets us a little closer to
making clean use of Swing.
2002-11-02 03:38:59 +00:00
dchandler
5249c48807 Factored TibetanDocument into two classes, one that is a
DefaultStyledDocument, and another consisting entirely of static utility
methods for processing Tibetan text.  Moved TibetanDocument.DuffData
into its own class.

I think this makes things a bit more transparent, and gets us a little closer to
making clean use of Swing.
2002-11-02 03:33:09 +00:00
eg3p
d070e470ef Updated these files to use DuffPane instead of JTextPane and so take advantage of DLC's new line wrapping code. 2002-10-31 19:06:47 +00:00
dchandler
97c530e974 GHA and KR'i now work. 2002-10-28 05:31:19 +00:00
dchandler
1ecbfe6a7c Fixed some Javadoc comments in preparation for putting up new Javadocs
on http://thdltools.sf.net/.
2002-10-28 04:49:24 +00:00
dchandler
fd1b4dd468 Now breaks the line after the last whitespace, not the first.
I cleaned things up a bit, and I've made logging optional since I don't yet
trust the code fully.

A Wylie underscore at the end of a line is worth looking into further, at the
very least.
2002-10-28 04:12:49 +00:00
dchandler
8433369d60 Now with slightly better error handling. 2002-10-28 03:17:28 +00:00
dchandler
0ad135f8f1 This may well be a fix to the "Improper line wrapping" bug. The fix
is basically that we use our own special ViewFactory, with a new
subclass of LabelView (the view RTFEditorKit uses for the nitty
gritty) that is aware of Tibetan.

There are a couple of nasty hacks still here, and Swing's
documentation for doing what I did was quite poor.  I searched the web
for hours, read the Javadocs and the tutorials, and consulted a Swing
reference book, but I still don't have tremendous confidence in this
solution.  If it fundamentally doesn't work, though, we have to define
our own first-class Document, Element hierarchy, ViewFactory, Views,
and EditorKit.  So let's hope it *does* work fundamentally.

I can't say for sure if this even works, as I have yet to run this
code on a machine where Jskad works properly.  I had major trouble
installing the TMW fonts on Linux, and have yet to resolve it, even
after verifying via xlsfonts that the fonts were installed and then
changing TibetanMachineWeb.java to look for them.  Because I haven't
tested this yet, a lot of nasty code is tagged 'DLC' and commented
out.
2002-10-28 03:08:04 +00:00
dchandler
f26dd53da3 Changed the build so that Savant and QuillDriver's builds include
Smart*Player.java, which are accessed via reflection.  Cleaned up the
code a bit so that it would compile in so doing.

Changed the 'options.txt' preferences file to reflect the new method
of selecting media players.
2002-10-27 19:12:13 +00:00
amontano
e4aa52a6eb re-arranged the display. Now the buttons are closer to the text input. 2002-10-27 18:48:48 +00:00
amontano
8391f19a8d copy and paste features are fixed. 2002-10-27 18:48:03 +00:00
amontano
7336d27a33 fixing the copy-paste issue for the translation tool. 2002-10-26 18:15:34 +00:00
dchandler
b6b8cd73ff Moved JskadKeyboard-related code into separate files; made many things public. 2002-10-26 17:40:51 +00:00
dchandler
3ee1fbd3fa Removed backup copies of .java files. 2002-10-26 15:57:06 +00:00
amontano
d35048a067 fixing copy and paste. works, except if pasted from a TextArea through the windows pop-up menu. 2002-10-26 15:49:55 +00:00
dchandler
627b35cd33 CVS now ignores the third-party JARs. 2002-10-26 15:38:50 +00:00
eg3p
34b660b8f9 Moved all media related stuff to new package.
This makes more sense, since all this stuff is
accessed by both Savant and QuillDriver.
2002-10-25 20:19:56 +00:00
eg3p
7f3f0eb8e1 Various changes related to Quicktime and JMF
support, as well as keyboard modularization. Not
quite done yet, though, so may not compile.
2002-10-25 20:18:22 +00:00
eg3p
3f17daab67 no message 2002-10-25 19:48:23 +00:00
eg3p
27dfa66b02 Ongoing work with Andres to change paste so that
isRomanEnabled = false implies auto conversion
of Wylie to Tibetan. Doesn't work yet.
2002-10-25 19:47:14 +00:00
eg3p
91b8fd3cd9 Edited JskadKeyboard code slightly so that it is
easier to use these keyboards outside of Jskad
(for example from QuillDriver).
2002-10-25 19:41:43 +00:00
eg3p
8fbb971628 Removed proposed JSpinner reflection code which
I moved to SimpleSpinner instead.
2002-10-25 19:39:32 +00:00
eg3p
107b4424b4 This is a class that uses reflection to manifest as
JSpinner if JRE 1.4 is installed, otherwise as
a numeric JTextField.
2002-10-25 19:36:40 +00:00
amontano
a2e8acca39 almost working but not quite 2002-10-25 17:59:27 +00:00
eg3p
d45a58e1ba Changed paste so that if (isRomanEnabled = false),
it will assume the text is Wylie and convert it to
Tibetan.
2002-10-25 17:34:30 +00:00
dchandler
d211930e68 At Edward's request, the codebase for Java Web Start releases may now
be specified on the command line via
'ant -Djnlp.codebase="http://foo.bar/baz"'.

This means that dist/ no longer contains .jnlp files; they are created by Ant
instead.
2002-10-25 11:56:05 +00:00
dchandler
010d8cb972 At Edward's request, Vamp is no longer required to build our tools. It is still
required by anyone who wishes to cut a Java Web Start release.

This should make it easier for a new developer to get up to speed.
2002-10-25 11:04:24 +00:00
dchandler
86a729ee08 Javadocs are generated using a classpath with all the extras. The included
files list is now foolproof, also.
2002-10-25 10:58:44 +00:00