calpa.html Java package Changes since Version 2.0 beta Version 2.021 - Verison 2.02 was very short-lived. The system font bug in Java 2 which had been pointed out in the KNOWN PROBLEMS of readme.txt was causing a number of unforseen problems for CalPane users when the tag was used. Regrettably therefore the support of system fonts has once again been disabled within CalPane. The code will be reactivated when JavaSoft have fixed the Java 2 bug. Version 2.02 - New methods in CalHTMLPane to force synchronous loading of documents: setLoadSynchronously(boolean b) isLoadSynchronouslyEnabled() If loadSynchronously is enabled then showHTMLDocument() methods will not return until a document has loaded. In addition documents loading from activated hyperlinks will also load synchronously. Loading synchronously effectively blocks the current AWT thread which will reduce the responsiveness of CalPane, but can be useful for programmers who want to be sure that a document has loaded before proceeding with another operation. Generally it is better to use the callback methods in CalHTMLObserver to determine when a document has finished loading. - New method in CalHTMLPane to allow access to form components: getIDComponents(String targetFrame) This method returns a Hashtable containing all components in the target frame which have the HTML 'id' attribute, as for example: This method allows programmers to get handles to HTML form components after they have been created, either to monitor/ manipulate their state, or programmatically fire a form submission. If the target frame is null then all id components within the CalPane are returned. - Enhancement of form submission to give feedback on custom components. When a custom component is included in a form via the OBJECT tag, the CalPane will call that component's toString() method and include this string in the form submission. This enables users to pass information regarding the state of the component by overriding the toString() method. For example, if you had added a JColorChooser like this: ...you could override toString() to pass the RGB values of the selected color. The form submission would include the text: chooser=[whatever toString() returns] - New methods added to CalHTMLPreferences to allow programmers to handle hyperlink events themselves: setAutomaticallyFollowHyperlinks(boolean) isAutomaticallyFollowHyperlinksEnabled() - New method added to CalHTMLPane for programmers using HTML Strings rather than URLs: scrollToReference(String ref, String targetFrame) - The CalGuide now includes a page containing answers to some common programming questions. - New methods added to CalHTMLPreferences: setDefaultFont(int displaySize, Font font) getDefaultFont(int displaySize) setDefaultButtonFont(int displaySize, Font font) getDefaultButtonFont(int displaySize) setDefaultFormTextFont(int displaySize, Font font) getDefaultFormTextFont(int displaySize) These methods have been incorporated to allow the setting of system fonts under Java 2. They replace the following 1.1 methods which are now deprecated: setDefaultFont(int, int, int) setFormFont(int, int, int, int) - New methods added to CalHTMLPreferences: setShowHyperlinkOnMouseFocus(boolean) isShowHyperlinkOnMouseFocusEnabled() This hyperlink policy is commonly used in help systems where it is obvious that all text is a hyperlink entry, and users only need to know which hyperlink currently has focus. - Bug Fixes: A few changes made to fix problems with borderless frames. In particular the 'frameborder' attribute was incorrectly implemented in FRAMESET tags: frameborder=no and frameborder=yes were working the wrong way round. In addition viewport borders were not being drawn around borderless framesets. Version 2.01b - Bug Fix: An exception was being thrown when loading a document containing over 8000 hyperlinks. - Bug Fix: The DOC_LOADED call from the top level frame was incorrectly being sent twice to the statusUpdate() method of CalHTMLObserver. - Bug Fix: The 'reload' argument sent to the CalPane's showHTMLDocument() method was being ignored.