aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/org/apache/fop/fo/FONode.java
Commit message (Collapse)AuthorAgeFilesLines
* findbugs-reported bug squashing; 959 bugs left (findbugs 1.3.9)Simon Pepping2010-11-171-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@1036179 13f79535-47bb-0310-9956-ffa450edef68
* Bugzilla #49733:Jeremias Maerki2010-08-141-3/+5
| | | | | | | | | | | | | | Resolved compilation (safe one), Checkstyle and many Javadoc warnings. Submitted by: Glenn Adams <glenn.at.skynav.com> Changes to patch: - Restored the deprecated Graphics2DAdapter method (to be removed after Barcode4J 2.1 is released). - Restored Renderer.startPageSequence(LineArea) pending discussion about removal. - build.xml: set max VM to 1024MB instead of 2048MB to allow for 32-bit JVMs. - build.xml: restored longer taskdef names. - Restored Checkstyle 4 file for people running older IDEs. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@985537 13f79535-47bb-0310-9956-ffa450edef68
* Merged changes from Trunk up to revision 824832Vincent Hennebert2009-10-131-3/+4
|\ | | | | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_Accessibility@824839 13f79535-47bb-0310-9956-ffa450edef68
| * Some javadoc fixes: @code -> @linkJeremias Maerki2009-10-011-3/+4
| | | | | | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@820672 13f79535-47bb-0310-9956-ffa450edef68
* | Merged changes from Trunk up to revision 816269Vincent Hennebert2009-09-181-18/+13
|\| | | | | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_Accessibility@816718 13f79535-47bb-0310-9956-ffa450edef68
| * Bugzilla #47101: The cells of a table inside a marker were duplicated at ↵Vincent Hennebert2009-05-131-18/+13
| | | | | | | | | | | | every marker retrieval. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@774280 13f79535-47bb-0310-9956-ffa450edef68
* | Bugzilla #46705:Jeremias Maerki2009-02-191-0/+3
|/ | | | | | | | | | | | | | | Accessibility and Tagged PDF Support Submitted by: Jost Klopfstein <jost.klopfstein.at.gmail.com> Changes to patch by jeremias: - Some style fixes - Various simplifications - Removal of dead code - Addressed some issues raised in Bugzilla (work in progress) - Fixed a couple of bugs on leader handling detected while testing (an NPE remains in leader_leader-pattern_use-content.xml) git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_Accessibility@745949 13f79535-47bb-0310-9956-ffa450edef68
* Reverted revision 670341 and replaced it with a different solution as discussed:Jeremias Maerki2008-07-281-2/+21
| | | | | | | | addCharacters() is now deprecated and called by the new characters() method which uses start/length instead of start/end. Fixed bugs in the AFP and PS extensions (ArrayIndexOutOfBoundsExceptions). They were not properly changed when the interface changed. Discussion: http://markmail.org/message/pdgzf6odxrnhflby git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@680378 13f79535-47bb-0310-9956-ffa450edef68
* Fed up with all those trailing whitespaces. Let's remove them all (once... ↵Vincent Hennebert2008-07-241-4/+4
| | | | | | and for all?) git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@679326 13f79535-47bb-0310-9956-ffa450edef68
* Partial fix of FOEventHandler call sequence (see also Bugzilla #45237):Andreas L. Delmelle2008-06-221-1/+20
| | | | | | | | | | call startOfNode() after addChildNode() moved initialization for tableFOs to processNode() moved finishing code to a finalizeNode() method (which is now also used by AbstractRetrieveMarker) restored protected status of startOfNode()/endOfNode() in fo.flow.table package git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@670412 13f79535-47bb-0310-9956-ffa450edef68
* Changed FONode.addCharacters() signature to match the characters() event ↵Andreas L. Delmelle2008-06-221-2/+2
| | | | | | (use 'length' as a parameter instead of 'end') git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@670341 13f79535-47bb-0310-9956-ffa450edef68
* Separation of concerns:Jeremias Maerki2008-06-191-2/+9
| | | | | | Split FOEventHandler into FOEventHandler and FOTreeBuilderContext. The latter contains stuff only used at tree-building stage. FOEventHandler is oriented towards output. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@669436 13f79535-47bb-0310-9956-ffa450edef68
* Javadoc updates: attempt at improving interactivity and consistencyAndreas L. Delmelle2008-04-261-112/+175
| | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@651866 13f79535-47bb-0310-9956-ffa450edef68
* Merged branchJeremias Maerki2008-04-141-46/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_ProcessingFeedback into Trunk. Changes on branch: ........ r615153 | jeremias | 2008-01-25 10:07:21 +0100 (Fr, 25 Jan 2008) | 1 line Created temporary branch for processing feedback. ........ r615155 | jeremias | 2008-01-25 10:11:59 +0100 (Fr, 25 Jan 2008) | 1 line Initial commit of what I've built already for those who prefer code to minimalistic design docs. ........ r615278 | jeremias | 2008-01-25 18:25:00 +0100 (Fr, 25 Jan 2008) | 1 line EventProducer interfaces now operational. ........ r615773 | jeremias | 2008-01-28 10:06:16 +0100 (Mo, 28 Jan 2008) | 1 line No casting in client code when creating EventProducer instances. ........ r616242 | vhennebert | 2008-01-29 11:34:45 +0100 (Di, 29 Jan 2008) | 3 lines Trick to avoid hard-coding the class name of EventProducer in the source file. Feel free to revert if it's not ok. ........ r616900 | jeremias | 2008-01-30 21:59:31 +0100 (Mi, 30 Jan 2008) | 1 line Generate event model XMLs in to the build directory: build/gensrc and build/test-gensrc (the latter is new and needs to be setup as source folder in your IDE!) ........ r616907 | jeremias | 2008-01-30 22:12:59 +0100 (Mi, 30 Jan 2008) | 1 line Added an XMLResourceBundle that uses an XML file instead of a properties file to load the translations. The XML format is the same as for Cocoon's XMLResourceBundle. ........ r617097 | vhennebert | 2008-01-31 11:53:21 +0100 (Do, 31 Jan 2008) | 2 lines Minor typo + slight improvement of Javadoc ........ r617176 | jeremias | 2008-01-31 19:14:19 +0100 (Do, 31 Jan 2008) | 5 lines Renamed FopEvent to Event as suggested by Simon. EventProducerCollectorTask.java now reads the EventSeverity from a doclet tag. Added generation of EventProducer translations (including simple merging, no validation, yet) EventFormatter introduced (only basic functionality, yet). Added a simple EventListener implementation that uses EventFormatter to convert the events to human-readable, localized messages that are sent to the log via Commons Logging. ........ r617362 | jeremias | 2008-02-01 08:18:07 +0100 (Fr, 01 Feb 2008) | 1 line Some remaining rename operations based on an earlier discussion. ........ r617413 | jeremias | 2008-02-01 10:46:26 +0100 (Fr, 01 Feb 2008) | 2 lines Extracted formatting functionality into utility class AdvancedMessageFormat.java. AdvancedMessageFormat.java now supports conditional sub-groups (delimited by []). ........ r618682 | jeremias | 2008-02-05 17:07:08 +0100 (Di, 05 Feb 2008) | 1 line Add support for special object formatters (where toString() isn't good enough). ATM, it's hard-coded but could later be hooked into dynamic discovery if we have multiple such formatters. The SAX Locator is the only example for now. ........ r618686 | jeremias | 2008-02-05 17:12:56 +0100 (Di, 05 Feb 2008) | 3 lines Hooked most of FONode into the new event mechanism. The FOUserAgent provides a DefaultEventBroadcaster instance. If a producer method declares throwing an exception, the event is automatically marked FATAL and the dynamic proxy throws an exception right after notifying the listeners. The exceptions are created through the EventExceptionManager. It currently contains only one exception factory for ValidationException. If we need more such factories it's better to register them dynamically. Right now, they're hard-coded. ........ r619313 | jeremias | 2008-02-07 10:14:15 +0100 (Do, 07 Feb 2008) | 1 line Make sure no events are now just silently swallowed because after upgrading a user doesn't know about the event system. ........ r619314 | jeremias | 2008-02-07 10:14:46 +0100 (Do, 07 Feb 2008) | 1 line Log what translation file is being written. ........ r619320 | jeremias | 2008-02-07 10:31:00 +0100 (Do, 07 Feb 2008) | 2 lines FObj hooked into the event system. Code reduction using a protected method on FONode to acquire a FOValidationEventProducer. ........ r619359 | jeremias | 2008-02-07 11:59:19 +0100 (Do, 07 Feb 2008) | 2 lines Fop's QName now extends XGCommons' QName to initiate a transition. Hooked PropertyList into the event mechanism. ........ r631252 | jeremias | 2008-02-26 16:24:33 +0100 (Di, 26 Feb 2008) | 1 line Removed superfluous warning. ........ r631268 | jeremias | 2008-02-26 17:08:11 +0100 (Di, 26 Feb 2008) | 1 line Deprecated two methods which are a problem for localization. Also helps finding additional spots to switch over to the event mechanism. ........ r633852 | jeremias | 2008-03-05 15:20:24 +0100 (Mi, 05 Mrz 2008) | 1 line Add severity to formatting parameters. ........ r633855 | jeremias | 2008-03-05 15:21:57 +0100 (Mi, 05 Mrz 2008) | 4 lines Added support for additional field styles: {<fieldname>,if,<true-text>,<false-text>} {<fieldname>,equals,<test-string>,<true-text>,<false-text>} ........ r633856 | jeremias | 2008-03-05 15:24:04 +0100 (Mi, 05 Mrz 2008) | 2 lines Javadocs and TODOs. EventListeners can change the event severity. ........ r633857 | jeremias | 2008-03-05 15:27:08 +0100 (Mi, 05 Mrz 2008) | 4 lines Javadocs. Moved out event listener registration into a CompositeEventListener. Event broadcaster uses the events effective severity, not the initial value (for the case where listeners override the initial value). Set up a special EventBroadCaster in the FOUserAgent that filters events through a class (FOValidationEventListenerProxy) that adjusts the event severity for relaxed validation. ........ r633858 | jeremias | 2008-03-05 15:32:07 +0100 (Mi, 05 Mrz 2008) | 2 lines Instead of always decentrally checking whether strict validation is enabled or not, this is now done in a special event listener. The event producer method caller simply indicates whether it can recover from the error condition and continue. Started switching to event production in table FOs. ........ r634027 | jeremias | 2008-03-05 21:58:35 +0100 (Mi, 05 Mrz 2008) | 7 lines Moved AdvancedMessageFormat into its own package. AdvancedMessageFormat got the following added functionality: - Alternative conditional regions [ bla {field}] -> [ bla {field1}| even more bla {field2}] - Functions: functions get access to the parameters and they can produce an object that is then formatted ({#gatherContextInfo}) - "if" and "equals" format moved to top-level classes and added by dynamic registration. EventFormatter now supports includes in the form {{includeName}} so you can include other entries from the resource bundle for better reuse. Some more events in table code. ........ r634031 | jeremias | 2008-03-05 22:05:22 +0100 (Mi, 05 Mrz 2008) | 1 line SVN Props ........ r634208 | jeremias | 2008-03-06 11:26:52 +0100 (Do, 06 Mrz 2008) | 2 lines Improved context gathering. Moved GatherContextInfoFunction to an inner class of FONode to reduce visibilities. ........ r634209 | jeremias | 2008-03-06 11:28:14 +0100 (Do, 06 Mrz 2008) | 1 line Made FOPException localizable. ........ r634280 | jeremias | 2008-03-06 15:38:30 +0100 (Do, 06 Mrz 2008) | 2 lines ExceptionFactory is now dynamically registered. More table warnings and errors switch to events. ........ r634326 | jeremias | 2008-03-06 17:08:16 +0100 (Do, 06 Mrz 2008) | 1 line Remaining table FOs switched to events. ........ r634328 | jeremias | 2008-03-06 17:09:21 +0100 (Do, 06 Mrz 2008) | 1 line Deprecated FOP's QName. Mixing with Commons' variant only produces problems. ........ r634381 | jeremias | 2008-03-06 20:12:57 +0100 (Do, 06 Mrz 2008) | 2 lines Made the "invalidChild" event fully localizable by adding a "lookup" field for the optional rule to be displayed. And a few switches to the event system. ........ r634692 | jeremias | 2008-03-07 15:31:43 +0100 (Fr, 07 Mrz 2008) | 1 line More FO tree stuff switched to events. ........ r634712 | jeremias | 2008-03-07 16:19:21 +0100 (Fr, 07 Mrz 2008) | 1 line Avoid an NPE that says nothing (ex. could happen if the message template is wrong). ........ r634738 | jeremias | 2008-03-07 17:38:21 +0100 (Fr, 07 Mrz 2008) | 2 lines Non-FO children were not properly run through validation by FOTreeBuilder. Unified the way that non-FO elements are validated. Some FOs were already fixed. I now fixed the rest, so foreign elements can occur everywhere. ........ r637833 | jeremias | 2008-03-17 12:01:41 +0100 (Mo, 17 Mrz 2008) | 1 line Exception while cloning for RetrieveMarker to be handled by user as suggested by Andreas. ........ r637835 | jeremias | 2008-03-17 12:03:31 +0100 (Mo, 17 Mrz 2008) | 1 line Throw a RuntimeException of no other Exception class is specified for an event as a fallback if someone just sets the event severity to FATAL. ........ r637838 | jeremias | 2008-03-17 12:06:10 +0100 (Mo, 17 Mrz 2008) | 1 line Throw a meaningful exception when the property name is wrong. Otherwise, there will be an ArrayIndexOutOfBoundsException. ........ r637859 | jeremias | 2008-03-17 13:35:26 +0100 (Mo, 17 Mrz 2008) | 1 line Throw a meaningful exception when the property name is wrong. Otherwise, there will be an ArrayIndexOutOfBoundsException. ........ r637938 | jeremias | 2008-03-17 16:19:51 +0100 (Mo, 17 Mrz 2008) | 1 line Switched pagination package to events. ........ r637947 | jeremias | 2008-03-17 16:45:16 +0100 (Mo, 17 Mrz 2008) | 1 line Removed unlocalizable validation helper methods. ........ r637952 | jeremias | 2008-03-17 16:59:02 +0100 (Mo, 17 Mrz 2008) | 1 line Events on FOTreeBuilder. ........ r638299 | jeremias | 2008-03-18 11:09:30 +0100 (Di, 18 Mrz 2008) | 2 lines Added support for java.util.text's ChoiceFormat to AdvancedMessageFormat. Reuse the regexes as constants. ........ r638302 | jeremias | 2008-03-18 11:17:06 +0100 (Di, 18 Mrz 2008) | 1 line Events for inline-level layout managers. ........ r638774 | jeremias | 2008-03-19 11:17:36 +0100 (Mi, 19 Mrz 2008) | 1 line Added DEBUG level. ........ r638777 | jeremias | 2008-03-19 11:23:40 +0100 (Mi, 19 Mrz 2008) | 3 lines Generalized FOValidationEventListenerProxy into FOPEventListenerProxy, the main proxy for FOP's own event manipulation proxy. Done because of support for overflow="hidden" vs. overflow="error-if-overflow". Switched block-level layout managers to events. Some cleanup along the way. ........ r639222 | jeremias | 2008-03-20 10:27:34 +0100 (Do, 20 Mrz 2008) | 2 lines Some initial work for event forwarding from Batik. Missing errors/exceptions converted to events in PageSequenceMaster. ........ r639270 | jeremias | 2008-03-20 13:50:35 +0100 (Do, 20 Mrz 2008) | 1 line Removed DEBUG event severity again. Promoted constrained geometry adjustment event to INFO level as per discussion. ........ r640395 | jeremias | 2008-03-24 13:39:13 +0100 (Mo, 24 Mrz 2008) | 3 lines Moved the creation of the fallback LoggingEventListener to FOUserAgent so event before the startDocument() SAX event arrive in the log. Dynamic discovery of event models. Renderers and extensions can register renderer-specific event models. Switched the most important parts of the renderers to events (maybe not everything is converted). ........ r640397 | jeremias | 2008-03-24 13:43:04 +0100 (Mo, 24 Mrz 2008) | 1 line Remaining fixcrlfs. Xalan likes to mix CRLF and LF on Windows. ........ r640398 | jeremias | 2008-03-24 13:43:54 +0100 (Mo, 24 Mrz 2008) | 1 line Ignore namespace declarations for property handling. ........ r640463 | jeremias | 2008-03-24 17:59:52 +0100 (Mo, 24 Mrz 2008) | 2 lines Event in area package. Exposed getUserAgent() in Renderer interface (was already public in AbstractRenderer). ........ r642972 | jeremias | 2008-03-31 14:18:39 +0200 (Mo, 31 Mrz 2008) | 1 line Code restructured a bit. ........ r642975 | jeremias | 2008-03-31 14:24:07 +0200 (Mo, 31 Mrz 2008) | 2 lines Plugged fonts package into the event subsystem. Note: I did not follow the same pattern as for the rest as the font package is to be considered FOP-external, so I just added a manual adapter for the FontEventListener. This demonstrates how an external library can be integrated with the event system. Missing warning for unknown formatting objects added. Warning is not issued by the ElementMappingRegistry anymore but by FOTreeBuilder which has access to more context information. ........ r642997 | jeremias | 2008-03-31 16:10:08 +0200 (Mo, 31 Mrz 2008) | 1 line Added an example to demonstrate how to write your own event listener and how to deal with the exceptions thrown in the process. ........ r642998 | jeremias | 2008-03-31 16:13:40 +0200 (Mo, 31 Mrz 2008) | 1 line Removed unused method. Event formatting should not be part of the Event class. Use EventFormatter.format(Event) instead. ........ r643066 | jeremias | 2008-03-31 19:18:54 +0200 (Mo, 31 Mrz 2008) | 1 line First part of the event subsystem documentation (DRAFT). ........ r643784 | jeremias | 2008-04-02 10:05:33 +0200 (Mi, 02 Apr 2008) | 1 line More documentation. ........ r643785 | jeremias | 2008-04-02 10:06:38 +0200 (Mi, 02 Apr 2008) | 1 line Some nits. ........ r643787 | jeremias | 2008-04-02 10:24:41 +0200 (Mi, 02 Apr 2008) | 1 line Completed javadocs ........ r643824 | jeremias | 2008-04-02 12:00:30 +0200 (Mi, 02 Apr 2008) | 1 line Javadocs. ........ r645847 | vhennebert | 2008-04-08 12:54:16 +0200 (Di, 08 Apr 2008) | 2 lines Minor typo fixes ........ r645848 | vhennebert | 2008-04-08 12:58:30 +0200 (Di, 08 Apr 2008) | 2 lines Another small typo fix ........ r647678 | jeremias | 2008-04-14 09:20:26 +0200 (Mo, 14 Apr 2008) | 1 line Renamed *EventProducer.Factory.create() to *EventProducer.Provider.get() to better reflect what the method does (instances may be cached and reused). ........ git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@647742 13f79535-47bb-0310-9956-ffa450edef68
* Moved to the FO tree stage the check for break-before/after on table-row ↵Vincent Hennebert2008-02-131-1/+1
| | | | | | while spanning in progress, and fixed bug #44321 as well git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@627576 13f79535-47bb-0310-9956-ffa450edef68
* Streamlining/Correction of the changes made in r603926Andreas L. Delmelle2007-12-161-6/+38
| | | | | | | | | | | | - delegate validation of the fo:wrapper's children to the parent: added static FONode.validateChildNode() - narrow the condition for processing text-childnodes: this is not only constrained to fo:flow and fo:static-content, but the same goes for a fo:wrapper that is a direct descendant of a fo:block-container or fo:inline-container, which only allow block-level content (interpretation) - minor javadoc fixups/improvements git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@604678 13f79535-47bb-0310-9956-ffa450edef68
* Fix javadoc errorVincent Hennebert2007-07-211-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@558279 13f79535-47bb-0310-9956-ffa450edef68
* * Javadoc update: use {@inheritDoc} instead of @see where applicable, ↵Andreas L. Delmelle2007-07-181-1/+15
| | | | | | | | | | removal of some @author tags * Additional code cleanup: removal of unused imports (mainly in the fo.flow package) git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@557337 13f79535-47bb-0310-9956-ffa450edef68
* Bugzilla 41656:Andreas L. Delmelle2007-07-071-4/+66
| | | | | | | | | | | | | Refactoring in the fo package: -> removal of the childNodes instance member in fop.fo.FObj -> addition of a firstChild instance member in fop.fo.FObj -> addition of a siblings instance member in fop.fo.FONode -> addition of a FONodeIterator interface in FONode + corresponding implementation in FObj -> changed implementations of FObj.addChildNode(), .removeChild() and .getChildNodes() git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@554104 13f79535-47bb-0310-9956-ffa450edef68
* changes to support named destinationJay Bryant2007-04-011-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@524601 13f79535-47bb-0310-9956-ffa450edef68
* Rework of the marker/retrieve-marker implementation to cater for correct ↵Andreas L. Delmelle2006-08-061-2/+35
| | | | | | evaluation of percentages and relative font-sizes, as well as more correct white-space handling. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@429168 13f79535-47bb-0310-9956-ffa450edef68
* Changed license headers and updated NOTICE file according to: ↵Jeremias Maerki2006-07-281-5/+6
| | | | | | http://www.apache.org/legal/src-headers.html git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@426576 13f79535-47bb-0310-9956-ffa450edef68
* Initial support for XMP metadata (PDF 1.4) under fo:declarations. Both ↵Jeremias Maerki2006-02-171-1/+12
| | | | | | | | | | | | | | | | xmpmeta and RDF elements can be used as root elements for XMP metadata. Extracted DOM2SAX functionality from XMLXMLHandler into utility class since it is now reused elsewhere. New DOMBuilderContentHandlerFactory is used to create ContentHandlers that build generic DOMs. New DelegatingContentHandler is a convenience base class modelled after XMLFilterImpl but as passive SAX receiver. It is used by DOMBuilderContentHandlerFactory. Refactored FOTreeBuilder. FO tree building is now in a special ContentHandler which can be replaced temporarily when handling foreign XML like SVG or XMP. Extension Elements wanting the set their own ContentHandlers (instead of using the standard FO tree building mechanism) return a non-null value in getContentHandlerFactory(). The old mechanism is still supported (MathML, Plan and Barcode4J still use that). However, SVG support is changed to use a ContentHandlerFactory. Extension elements for xmpmeta and RDF elements making use of the new DOM build-up using ContentHandlerFactory. XMP metadata is passed to the renderer as ExtensionAttachment to the document. Only PDFRenderer uses the XMP extension attachment at this time. The PDFRenderer automatically builds XMP metadata based on the basic metadata information in the PDFInfo object if no explicit XMP metadata has been added to the XSL-FO document. XMP metadata merging is not implemented because this would involve a more sophisticated XMP infrastructure. That also means that XMP metadata is not validated. It's passed into the PDF as is. The PDF library now provides the PDFMetadata class to embed XMP metadata in PDFs version >=1.4. stream contents use a special filter list which is initially empty, so non-PDF-aware XMP readers can extract (and optionally modify) the XMP metadata. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@378482 13f79535-47bb-0310-9956-ffa450edef68
* Attempt at providing context information about the element causing an ↵Jeremias Maerki2005-12-151-3/+7
| | | | | | endless loop because of an area overflow in b-p-direction. This should make the error message more helpful. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@357002 13f79535-47bb-0310-9956-ffa450edef68
* New method: FONode.decorateWithContextInfo() adds context information to an ↵Jeremias Maerki2005-12-131-0/+51
| | | | | | | | | | | error or log message by either providing the locator information or by gathering context information from the context FOs. Improved log and error messages in a number of places by adding additional context information that should make it easier to find the location in the source files. Added a check to detect inline overflows (LineLayoutManager). Added a check to detect in-page overflows (PageBreakingAlgorithm). git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@356592 13f79535-47bb-0310-9956-ffa450edef68
* The result of some practice with CheckstyleSimon Pepping2005-12-091-8/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@355471 13f79535-47bb-0310-9956-ffa450edef68
* Made the locator variable on FONode protected.Jeremias Maerki2005-12-091-4/+7
| | | | | | | Locator information is duplicated using SAX's LocatorImpl. Otherwise, the info returned by the Locator information is only valid during FO tree building and validation. If desired code could be added to disable storing locator information even if it is available to use less memory (one LocatorImpl instance per FO tree node) in FOTreeBuilder. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@355428 13f79535-47bb-0310-9956-ffa450edef68
* Made the FO tree a little more consistent by renaming getName() to ↵Jeremias Maerki2005-11-111-3/+32
| | | | | | getLocalName() and adding additional methods like: getNamespaceURI() and getNormalNamespacePrefix(). getName() now returns the fully qualified name combined from getLocalName() and getNormalNamespacePrefix(). For special cases you can call getName(String) to return a different namespace prefix. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@332545 13f79535-47bb-0310-9956-ffa450edef68
* Merged work on Temp_SpaceResolution branch into trunk (-r 320826:327988).Jeremias Maerki2005-10-241-2/+2
| | | | | | Source: http://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_SpaceResolution/ git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@328010 13f79535-47bb-0310-9956-ffa450edef68
* Initial work on enhancing the extension facilities to register special ↵Jeremias Maerki2005-09-021-49/+101
| | | | | | | | | | | | | | extensions which create so-called ExtensionAttachment objects which are attached to the formatting object they are attached to. These objects can be evaluated by standard or custom layout managers or simply passed through to the area tree (the latter is NYI). The AreaTreeHandler currently takes ExtensionAttachment objects from fo:root and fo:declarations and wraps them in OffDocumentItems that Renderers can react on to provide additional functionality on document-level (like PDF metadata or PostScript media dictionaries). Since the simple-page-master is available directly from the PageViewport the renderer can take ExtensionAttachment objects directly from there (see PSRenderer.renderPage()). Extension Elements that provide ExtensionAttachments are not added as such to the child element list of a formatting object since they work a little differently and should free memory as soon as possible. The PostScript extension described in http://wiki.apache.org/xmlgraphics-fop/ExtensionsForPostScript are now fully implemented but under the namespace URI "http://xmlgraphics.apache.org/fop/postscript", not "http://xml.apache.org/fop/extensions". I'll need to look at namespaces again separately, later. The new PSExtensionElementMapping is currently hard-coded into FOTreeBuilder as are the other ElementMapping classes. OffDocumentItem is now an interface, AbstractOffDocumentItem now providing the base functionality of the former OffDocumentItem class. Lots of clean-up and javadocs while working through this, for example: FObj.childNodes is not public anymore. Instead a special method on fo.flow.InstreamForeignObject provides the child in the one case childNodes was directly accessed. PropertyMaker access in FObj is also done through a method now, propertyListTable is now private. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@267209 13f79535-47bb-0310-9956-ffa450edef68
* Squashed some JavaDoc warnings.Joerg Pietschmann2005-08-141-8/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@232563 13f79535-47bb-0310-9956-ffa450edef68
* Validation added for master-name and master-reference properties.Glen Mazza2005-03-101-0/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198475 13f79535-47bb-0310-9956-ffa450edef68
* Validation added for five more FO's.Glen Mazza2005-03-051-1/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198470 13f79535-47bb-0310-9956-ffa450edef68
* Validation for fo:table and fo:table-header added, some minor ↵Glen Mazza2005-03-051-4/+5
| | | | | | simplifications in other places. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198466 13f79535-47bb-0310-9956-ffa450edef68
* An empty table-body is illegal but we'll allow it to make things easier for ↵Jeremias Maerki2005-02-231-0/+10
| | | | | | | | | stylesheet writers. Empty table-body elements are removed from their parent so they can't cause any nasty effects in the LMs. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198457 13f79535-47bb-0310-9956-ffa450edef68
* Name of parameter was wrong.Jeremias Maerki2005-02-011-8/+9
| | | | | | | Some style updates while at it. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198359 13f79535-47bb-0310-9956-ffa450edef68
* PR:Glen Mazza2005-01-091-4/+27
| | | | | | | | | | | | Obtained from: Submitted by: Reviewed by: 1.) New attributeWarning() method added to FONode (needs to be renamed somehow because can this method can also be used for formatting object warnings as well--e.g., unimplemented FO's) 2.) Switch from processNode() -> bind() method for fo:bookmark. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198249 13f79535-47bb-0310-9956-ffa450edef68
* This patch implements a pluggable LayoutManagers system, accordingSimon Pepping2004-12-241-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | to the ideas of Finn Bock and his patch in bug 30500. Created a LayoutManagerMaker interface, with method makeLayoutManagers(FONode, List), and two convenience methods on top of it. Created an implementation: LayoutManagerMapping. This is along the pattern of FOElementMapping. It creates a Map from FObj class to Maker objects. There are many static inner classes which are subclasses of Maker. Each subclass implements its own version of the make method. FOUserAgent has a setter and getter for LayoutManagerMakerOverride. AreaTreeHandler creates a LayoutManagerMaker, taking the user's override into account, using LayoutManagerMapping as the default. It has a get method for it. The LayoutManager interface has a get method for the AreaTreeHandler object, a reference to which is held in PageSequenceLM, the top of the LM tree. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198208 13f79535-47bb-0310-9956-ffa450edef68
* Implemented cloning and reparenting of the subtree under a marker toSimon Pepping2004-12-211-1/+29
| | | | | | | | | | | | | | | | | | | | | | | | the retrieving retrieve-marker. The FO nodes are cloned. The new subtree is attached to the RetrieveMarker object. The property lists are not cloned. The subtree of property lists is attached to the property list of the RetrieveMarker object. This is only needed for the binding of the FO nodes. After that a subsequent retrieve-marker may reparent the property lists. Removed Marker's reference to its property list. In Marker.endOfNode() the parent of the property lists of the direct children of marker is reset to null. FOText nodes are not mapped to the Marker's property list in Marker. This allows the Marker's property list and its ancestors to be GC'ed. FOText nodes use the parent FO node's property list or the RetrieveMarker's property list for binding. TODO: Block.handleWhiteSpace is not applied to text in retrieve-marker. TODO: White space treatment around retrieve-marker is incorrect. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198204 13f79535-47bb-0310-9956-ffa450edef68
* New exception hierarchy rooted in SAXException and throw clauses onFinn Bock2004-10-281-30/+29
| | | | | | | | | property parsing and retrieval. PR: 31899 git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198106 13f79535-47bb-0310-9956-ffa450edef68
* Second phase of performance improvement. Pass the propertyList intoFinn Bock2004-10-191-1/+3
| | | | | | | | | processNode(..) and addCharacters(..). PR: 31699 git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198056 13f79535-47bb-0310-9956-ffa450edef68
* First phase of performance improvement.Finn Bock2004-10-181-0/+19
| | | | | | | PR: 31699 git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198050 13f79535-47bb-0310-9956-ffa450edef68
* PR:Glen Mazza2004-10-121-7/+9
| | | | | | | | | | | | | | | | | | | | Obtained from: Submitted by: Reviewed by: Start of work to move FOText from extending FObj to extending FONode instead. All work is done except for changing FObj's parent from FObj to FONode. The RTF library works fine with the switch, but simple.fo and franklin_alt.fo (among others I guess) will not work properly when FOText's parent is switched. (Layout problems occur--lines don't break properly with the switch.) Switch to super() constructor (instead of super(fobj) one) within within TextLayoutManager, as it is not needed for this subclass, also to facilitate the change above. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198040 13f79535-47bb-0310-9956-ffa450edef68
* 1.) Returned to recursion for FOEventHandler.Glen Mazza2004-09-131-15/+1
| | | | | | | | 2.) InstreamForeignObject validation changed to accomodate Finn's validation changes. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@197945 13f79535-47bb-0310-9956-ffa450edef68
* Renamed FOInputHandler to somewhat more intuitive FOEventHandler.Glen Mazza2004-09-061-11/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@197911 13f79535-47bb-0310-9956-ffa450edef68
* PR:Glen Mazza2004-09-061-1/+15
| | | | | | | | | | Obtained from: Submitted by: Reviewed by: Switched to a static FOInputHandler object for the FOTree instead of relying on recursion to get to the FOInputHandler object stored at pagination.Root. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@197910 13f79535-47bb-0310-9956-ffa450edef68
* PR:Glen Mazza2004-09-051-3/+3
| | | | | | | | | | | | | | | Obtained from: Submitted by: Reviewed by: 1.) AddChildNode(), characters() modified to throw SAXParseException to allow AddChildNode() to do validation of its own. 2.) Better child validation added to PageSequence.java. 3.) Various other code cleanups. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@197903 13f79535-47bb-0310-9956-ffa450edef68
* 1.) Validation for fo:multi-toggle added.Glen Mazza2004-09-041-17/+17
| | | | | | | 2.) Switch to faster int's for findAncestor(). git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@197902 13f79535-47bb-0310-9956-ffa450edef68
* 1. Implemented validateChildNode() for fo:simple-page-master. This may ↵Glen Mazza2004-08-251-1/+12
| | | | | | | | | | | | | | | cause some stress with the user community--as any declared fo:region-xxxx children must follow a specific ordering. 2. Modified several of our sample and test FO files to be compliant with the XSL spec with respect to the change above. 3. @todo's added to FO's still missing validateChildNode() 4. New FONode missingPropertyError() method created, for the major cases where missing properties should halt processing. 5. Various cleanup in our layout-master-set and region classes, including the removal of error checks that are no longer needed due to validateChildNode() being implemented. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@197889 13f79535-47bb-0310-9956-ffa450edef68
* 1. Moved getNameId() from FObj to FONode.Glen Mazza2004-08-181-2/+11
| | | | | | | | | | | 2. Centralized determination of generatesInlineAreas() from multiple FObj subclasses into fo.PropertySets BitSet object. 3. validateChildNode() implemented for fo:list-item. 4. fo:initial-property-set now extending FObj instead of ToBeImplementedElement; burden of implementation on individual FOInputHandler subclasses. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@197882 13f79535-47bb-0310-9956-ffa450edef68