Fixed a number of bugs in the applet (old version):
Fixed the bug with disappearing input box on applet reload.
1. Partially reimplemented input box as a JComboBox editor. Created custom ListModel for the input box(using LinkedList), custom UI for the enclosing combo box and done a lot of artwork to make it all work together.. It should now be possible to use HistoryTextField both as separate component and inside of enclosing HistoryInputBox.
2. Telnet codes and ASCII control symbols are filtered out now ;)
3. Low-level parser, which was embedded inside of MUDReaderThread, is now a nested class. However, some implementation issues with all the I/O part still remain, more planning required..
4. Starting from version 0.2.5, NFMCA comes without debugging info, which makes the archive smaller by almost 20KB.
Finally removed most of the hardcoded settings. Now they are distributed between HTML parameters and resource bundles. Added parameters and usage instructions to NFMCA.html.
1. Tracked and fixed one more bug from 12/06 optimization (colors sometimes haven't been behaving as they should have). If I hate something, it's changing someone else's code.
2. Minor optimization in MUDApplet: Runs and Styles are now created statically. Runs are maintained in an array, Styles - in HashMap, both storages virtually never change. Thus numerous temporary objects creation is avoided at runtime.
1. Web site update - now it looks like a development project page ;)
2. From now on, all error messages go to the main JTextPane. Previously, they were showing in dialogs, which in some situations brought to browser GUI locking. The only exception is the case of internal error - it would still appear in its own dialog, because it is only generated, when BadLocationException is caught on text insertion.
Eliminated last(hopefully) bug in MUDDocument, caused by the recent optimization.
The optimization applies especially for those, who use GNU/Linux(there Java graphics perfomance is much worse than in Windows) and like to play fast, causing large amounts of data from MUD to be received and... painted.
Improved GUI responsiveness through customization of the text representation engine backend.
1. MUDQueueThread has been completely rewritten to implement asynchronous operations processing.
2. MUDQueueThread is fully documented now.
3. MUDApplet has been updated to implement asynchronous user input processing.
©Copyright Kirill Khazan, 2002.