Revision History
Version 1.01
Resolved Issues
- Documentation for EarthStones' class library is now complete.
- SplashPanel has been rewritten to eliminate flicker and repaint screen if panel is
hidden, obscured, etc.
- Multi-line hyperlinks now work.
- Unwrapped bullets (i.e., "outside rendering") are now implemented in bulleted
lists.
- Scaling of fonts for the viewer's screen resolution has been improved.
- The gutter attribute has been implemented in the Table class.
Version 1.10
Enhancements
- Website loading and document rendering now occurs much faster due
to extensive use of Java's mutithreading capacities:
- The Data object which is responsible for processing a data stream (e.g., an HTML
document source) is now a subclass of the Thread class. Furthermore, three specialized
Data subclass hand the sequence of reading the raw data stream and parsing it into
"extended" HTML tags (using an Html or Txt object), translating these tags into
DocElement objects (using an instance of HtmlTag), and rendering these objects to the
user-interface (in a Doc object). Each of these three processes runs in a separate thread
of execution.
- The time needed to render of long tables is futher reduced by giving each table its own
instance of HtmlTag and therefore its own thread.
- The updating of each of the major user-interface panels also occurs in its own thread of
execution.
- A general approach to handling the z-order problem (depending upon
browser and computing platform, either the first or the last of two overlapping components
will appear on top) has been implemented. As a result:
- The splash panel optionally displayed on program start-up or website loading now floats
on top of the screen and provides the user with additional visual feedback about loading
progress as nonoverlapped portions of the display are shown.
- The display of hints upon mouse-over of user-interface elements has been streamlined and
combined with a dialog panel that can be used at any time to display an arbitrary message
to the user.
- Registration-checking has been built into the Web class and
implemented using a splash panel deployed at program start-up, permitting developers to
produce evaluation copies of their software which must be registered and can be granted a
time-limited, temporary license.
- Implementation of JSite's user-interface has been streamlined by
replacing the graphic/altDoc panels combination with simply another instance of
DocumentPanel which may be deployed in either graphic or document modes.
Demonstrates how HTML DocElement objects can be programatically created and rendered by a
JDoc panel without having to create and read an HTML source document.
- The class library has been generalized to allow the same
lower-level classes to be used in developing either applets or applications. As part of
this development:
- Two parallel, top-level classes, WebApplet and WebFrame, now handle the major tasks of
getting an applet or application, respectively, up-and-running, including: setting up the
splash and dialog panels for the user's z-order; deploying the splash panel and
registration checking, if desired; creating instances of Web and Site for managing the
user-interface and its underlying data structure, respectively.
- An example application, JDocViewerApp is now included. This Java console application can
be run on the user's local computer and works like a mini-browser for viewer HTML
documents, whether local files or those anyware on the Internet.
Resolved Issues
- Documents ending with <table>...</table>
tags (i.e., no additional tags/text before the </body>
and </html> tags) now resets the wait cursor
when the document is finished loading.
- Documents are no longer truncated when the first text string of a paragraph is
unwrappable (i.e., a string with no embedded blanks) but fails to fit within the allowed
column width. Instead, TextPanel.wrapText() now prints what it can fit on the line and
wraps the remaining characters to the next line.
- Hand cursor display upon mouse-over is now more reliable.
- When <img> tag does not specify image
dimensions, actual image size is used rather EarthStones' default image dimensions.