Glen Mazza [Wed, 20 Aug 2003 22:04:51 +0000 (22:04 +0000)]
Examples 8-11 added to check:
1) implementation of border properties (border-color,
border-width, border-style, etc.) at the fo:table-row and fo:table-column level.
2) border property conflict resolutions as defined in CSS2 standard at
http://www.w3.org/TR/REC-CSS2/tables.html#border-conflict-resolution
move startup of laying out a PageSequence from PageSequence.format() and Document.foPageSequenceComplete to the LayoutStrategy implementation (layoutmgr/LayoutManagerLS)
Glen Mazza [Tue, 19 Aug 2003 22:17:57 +0000 (22:17 +0000)]
Deprecated (since mid-2001) setRenderer(rendererClassName, version) method removed.
Fix to Bug 22561: Driver.run() incorrectly setting output type to PDF for the structure (MIF and RTF) types.
Submitted by: Michael Cosby (michael at cosby dot dhs dot org).
1. Remove fo/FOTreeExternal and layoutmgr/LMFOTreeExternal (in favor of Visitor concept, see item 2)
2. Add fo/FOTreeVisitor and layoutmgr/AddLMVisitor
3. Remove all occurrences of addLayoutManager in fo/FObj subclasses, replacing them with equivalent methods in AddLMVisitor
1. tie Document to fo.FOTreeBuilder and fo.pagination.Root
2. add getDocument() method to FONode (using this.parent for all nodes except Root)
3. start using getDocument() to gain access to font collections stored in Document
Glen Mazza [Fri, 15 Aug 2003 20:37:51 +0000 (20:37 +0000)]
Removed error message when logger not explicitly set; Driver will continue to use ConsoleLogger as default in such circumstances. (Allows for coding simple command-line processes without needing to explicitly code in Avalon ConsoleLoggers)
Glen Mazza [Tue, 12 Aug 2003 22:40:49 +0000 (22:40 +0000)]
1.) CommandLineStarter removed, its functionality placed directly into Fop.main().
Fop.main() now responsible for taking command-line input as provided from
CommandLineOptions, and activating a Driver instance with that data.
2.) Minor cleanup of error messages in CommandLineOptions.
Glen Mazza [Tue, 12 Aug 2003 21:36:43 +0000 (21:36 +0000)]
1. FOPTaskStarter separated from Starter class (was not using latter's InputHandler).
2. CommandLineStarter made a top-level class, and abstract Starter class removed.
(only one starter being used for command line, regardless of renderer.)
1. convert fo.FOTreeHandler to fire events when it completes a PageSequence or document object
2. move logic that starts layout from fo.FOTreeHandler to apps.Driver.
3. add logic to apps.Driver to handle the events fired from fo.FOTreeHandler
4. end result is that FOTreeHandler now allows other objects to handle page-sequence and document objects in a manner similar to the way SAX allows them to handle XML elements.
1. convert fo.FOTreeHandler to fire events when it completes a PageSequence or document object
2. move logic that starts layout from fo.FOTreeHandler to apps.Driver.
3. add logic to apps.Driver to handle the events fired from fo.FOTreeHandler
4. end result is that FOTreeHandler now allows other objects to handle page-sequence and document objects in a manner similar to the way SAX allows them to handle XML elements.
Glen Mazza [Mon, 11 Aug 2003 23:47:22 +0000 (23:47 +0000)]
1. AWT PreviewDialog creation shifted from AWTStarter to AWTRenderer.
2. New AWTRenderer constructor -- takes an InputHandler object which
is used for the document refreshing/reloading.
3. PreviewDialog's reload() functionality now handled via Driver instead of
AWTStarter.
4. Class AWTStarter removed: AWT generation now activated via CommandLineStarter.
1. add documentation of fox:destination
2. break explanation of fox: namespace into a separate section so that it is clear that it applies to all of the fox: extensions
3. some other minor cleanup
Glen Mazza [Sun, 10 Aug 2003 15:43:13 +0000 (15:43 +0000)]
Moved the Translator (resource bundle) creation from AWTStarter to AWTRenderer.
Gave the AWTRenderer access to the PrintViewer frame that displays the document.
Moved rendering status messages from AWTStarter to AWTRenderer and PrintDialog.
Glen Mazza [Thu, 7 Aug 2003 23:38:17 +0000 (23:38 +0000)]
1. To facilitate comprehension of the Renderer classes, added the remaining three methods in the Renderer interface to AbstractRenderer: startRenderer(), stopRenderer(), and setupFontInfo(). SetupFontInfo() remains abstract, the other two have blank definitions.
2. Removed the blank definitions of startRenderer() and stopRenderer() from PrintRenderer, these are now defined in AbstractRenderer.
3. Member string variables "producer" and "creator" were added to AbstractRenderer and are now populated by its setProducer() and setCreator() methods; removed these functions from the several subclasses that were handling these strings equivalently.
Glen Mazza [Tue, 5 Aug 2003 22:39:51 +0000 (22:39 +0000)]
Safer handling of treebuilder variable within Driver.reset(), also Driver.setRenderer(renderer) will now set the rendererType variable when given an AWTRenderer.
Glen Mazza [Mon, 4 Aug 2003 18:53:17 +0000 (18:53 +0000)]
1) Command-line option -l now sets default locale for entire instance, not just that of AWTRenderer.
2) (minor) CommandLineOptions.getInputHandler() returns error if input mode not properly set.
Glen Mazza [Mon, 4 Aug 2003 00:52:16 +0000 (00:52 +0000)]
1.) only partly implemented Run() function removed from InputHandler and its subclasses; Driver.Run(InputHandler) can be used instead; now all processing centralized in Driver class.
2.) getParserClassName() moved from Driver to (to be renamed) FOInputHandler; now the same class that provides the parser provides its description.
Glen Mazza [Sat, 2 Aug 2003 21:26:53 +0000 (21:26 +0000)]
PrinterJob setup and construction moved from Driver to AWTPrintRenderer class. AWTPrintRenderer now be instantiated without a PrinterJob object. (Pending: for embedded programming, may still wish to have a PrinterJob-based constructor for AWTPrintRenderer, or otherwise provide an accessor method to its PrinterJob object.)
Glen Mazza [Sat, 2 Aug 2003 01:15:20 +0000 (01:15 +0000)]
1. Moved the XMLReader createParser() functionality from abstract class InputHandler to FOInputHandler.
2. Added the setting of the "namespace-prefix" SAX option directly into createParser(), and removed function setParserFeatures (where it was previously being set).
3. Removed the duplicate XMLReader creation code in Driver.run(), it now uses FOTreeBuilder.createParser().
XSLTInputHandler reimplemented using TraxInputHandler code. TraxInputHandler removed. (Retaining XSLTInputHandler because of its technology-independent name, also probably the more used class of the two.)
1.) Moved the business logic for determining which starter to create from apps.CommandLineOptions to apps.Fop; CLO is now Starter-free.
2.) Made the input and output type constants in CLO public, to make the CLO.getOutputMode() and CLO.getInputMode() accessor functions meaningful. (Should probably make uniform with the very similar constants in the Driver class in the future.)
move layoutmgr/LayoutHandler to fo/FOTreeHandler:
1. It has nothing to do with layout (its name was presumably chosen to reflect that it is used for formats where layout will be needed).
2. It is used for building FO trees. Part of the purpose here is to make the FO tree building process as self-contained as possible within the fo package.
Created a new overloaded method Driver.render(InputHandler), simplifies internal calls to the Driver class by centralizing parser initialization and InputSource extraction.
Forrest/Cocoon appears to be intercepting the HTML at an XML level, so instead, we'll try putting the character entity in. We can infer from some other documents that they must be converting such characters to HTML entities.
Recast "Understanding FOP's Compliance" into a more general discussion of limitations in general. Add a "When will feature X be implemented" FAQ to point to the discussion of limitations.