[updates] 6 for 3.3a

Dan Ingalls Dan at SqueakLand.org
Tue Feb 5 17:03:05 UTC 2002


Folks -

We have just posted 6 more updates for 3.3a to the servers.  The first 5 are mostly fixes.  The last is a major release of XML and YAX, with SAX and DOM, which is a SPW any way you slice it.

Enjoy
	- Dan

PS:  Thanks to Scott Wallace for taking over updates over the weekend (including these).  He's really better at it than I.
------------------------
4739UUIDFixes-ar -- Andreas Raab -- 3 February 2002
Fixes a horrible problem in UUIDPlugin (which could easily break your system if you called the primitive on, e.g., UUID basicNew initialize) and changes the header file declaration to use sqUUID rather than a Mac-specific definition."

4740JPEGRW2Fixes-ar -- Andreas Raab -- 3 February 2002
Change includes to use 'libjpeg/jinclude.h' etc. so that libjpeg can reside in its own directory (just ln-s it to the location of the plugin). Also includes the extra files in the translation process."

4741TranslateUpdate-ar -- Andreas Raab -- 3 February 2002
Update plugins generated."

4742textEditMenus-sw -- Scott Wallace -- 3 February 2002
Text-editing menus in morphic, whether invoked via yellow-button, via clicking on a halo handle, or by clicking on the menu icon the scroll bar, now do *not* allow keyboard-menu-control, so that the text selection to which the menu items apply will remain visible as the menu is being used."

4743appendRevisited-sw -- Scott Wallace -- 3 February 2002
Some adjustments to the choices of which 'append' variants are available in etoy viewers in which situations.  All users will see 'include', which is generic; the other two choices, 'append' and 'prepend', are shown as well when *not* in eToyFriendly mode.  The balloon help for these commands is improved."

4744YAXO -- Duane Maxwell, Andres Valloud, Michael Rueger -- 25 January 2002
YAX is yet another XML parser. 
This version is an effort to further integrate the original yax version with the Exobox implementation. The original yax version already was based on some ideas in the Comanche tokenizer and the Exobox parser.
The YAX homepage is at http://www.squeaklet.com/Yax/index.html.
This change set includes a XMLParser with SAX and DOM support and a XMLWriter.
The SAXDriver/Handler implements the revised SAX2 API.
The parser is what somebody dubbed semi-verifying. It handles internal entity declaration and expands them but does no verification against any DTD declarations.
What's missing/buggy:
- inline expansion of external references/files
- 16 bit character support
- XMLWriter character escapes
The parser passes a lot of the standalone SUnit tests, but also fails (too) many for (none) well formedness.
There are several ways to use this implementation to parse XML files:
- use the DOM parser. It returns a hierarchical data structure containing the XML elements.
- subclass SAXHandler (XMLDOMParser does that too) and override the callbacks. This avoids the overhead associated with building a complete DOM structure in memory.
- subclass XMLTokenizer and overwrite the handle callbacks. Not really recommended although for compatibilty reasons the Exobox XMLParser does this.
You can do incremental parsing by repeatedly calling nextEntity on the parser.
Examples:
XMLDOMParser addressBookXMLWithDTD
parses the same example into a DOM structure using the SAXDriver and the DOMParser being an implementation of a SAXHandler.
Parsing from a file:
XMLDOMParser parseDocumentFromFileNamed: 'examples\dream.xml'.
Parsing from a stream:
XMLDOMParser parseDocumentFrom: XMLTokenizer addressBookXMLWithDTD readStream.





More information about the Squeak-dev mailing list