As a heads up for other committers/developers, here's where I will be 
concentrating my efforts:

1. Completely implementing fo:marker/fo:retrieve-marker. I have attached a 
file that is based on the spec, and shows all FOs that may have markers as 
children (and those that explicitly may not, even as descendants, or there 
are special conditions). This attachment also indicates what areas are 
returned-by or generated by these FOs.

This is important because fo:marker attaches to each _normal_ area returned 
by the parent FO (parent of the fo:marker), _and_ each non-normal area 
generated by the parent FO. So, in order to make fo:marker work in FOP, I 
intend to focus my attention on that list of FOs that are referenced in the 
attachment, and ensure that 'returned-by' is implemented. You can see the 
start of this in Block.java, ListBlock.java and ListItem.java.

I am also implementing area traits 'generated-by', 'is-first' and 'is-last' 
as I go. For all of this, if you're interested, take a look at Area.java to 
see how things stand at present.

This will all take a while, probably 2-4 weeks. It should be no/low impact on 
the work that anyone else is doing on the same FOs.

With help from Karen we should see very useable marker support within a week. 
If it wasn't for the property thing it would be sort of OK now, at least for 
markers under fo:block. As more FOs in the list are supported then markers 
will just get more and more comprehensive

2. I'll be lending a hand to Peter West if and as required. I think his Tree 
class will definitely help all round, possibly with markers and I think 
definitely with keeps and space-specifier resolution.

3. Testing: I've spewed out code (and will continue, as indicated above) that 
deals with improvements on fo:page-sequence, and implementation of 
fo:marker/fo:retrieve-marker. Any time I pry free from the above will go to 
using Keiron's stuff and other scripts to provide tests for all of this, plus 
examples.

Any questions, please ask.

Regards,
Arved

-- 
Fairly Senior Software Type
e-plicity (http://www.e-plicity.com)
Halifax, Nova Scotia
Wireless * B2B * J2EE * XML
Formatting Objects that may have markers, or may not

May Have Markers:
1. fo:flow
The fo:flow formatting object does not generate any areas. The fo:flow
formatting object returns a sequence of areas created by concatenating the
sequences of areas returned by each of the children of the fo:flow. The
order of concatenation is the same order as the children are ordered
under the fo:flow.

Children are %block;

2. fo:block (%block;)
The fo:block formatting object generates one or more normal block-areas. The
fo:block returns these areas, any page-level-out-of-line areas, and any
reference-level-out-of-line areas returned by the children of the fo:block.
The fo:block also generates zero or more line-areas as children of the normal
block-areas it returns.
STATUS - 'returned-by' on normal block-areas implemented. 'is-first' and
'is-last'.

3. fo:block-container (not absolutely positioned) (%block;)
The fo:block-container formatting object generates one or more
viewport/reference pairs. The fo:block-container returns these areas and
any page-level-out-of-line areas returned by the children of the
fo:block-container.

4. fo:bidi-override
The fo:bidi-override formatting object generates one or more normal
inline-areas. The fo:bidi-override returns these areas, any
page-level-out-of-line areas, and any reference-level-out-of-line areas
returned by the children of the fo:bidi-override.

5. fo:inline
The fo:inline formatting object generates one or more normal inline-areas.
The fo:inline returns these areas, any page-level-out-of-line areas, and
any reference-level-out-of-line areas returned by the children of the fo:inline.

6. fo:inline-container
The fo:inline-container formatting object generates one or more
viewport/reference pairs. The viewport-areas generated by the
fo:inline-container are normal inline-level areas that use the
large-allocation-rectangle. The fo:inline-container returns these areas and
any page-level-out-of-line areas returned by the children of the
fo:inline-container.

7. fo:table-and-caption (%block;)
The fo:table-and-caption formatting object generates one or more normal
block-areas. The fo:table-and-caption returns these areas, any
page-level-out-of-line areas, and any reference-level-out-of-line areas
returned by the children of the fo:table-and-caption.

8. fo:table (%block;)
The fo:table formatting object generates and returns one or more normal
block-areas. In addition the fo:table returns any page-level-out-of-line areas,
and any reference-level-out-of-line areas returned by the children of the
fo:table.

9. fo:table-caption
The fo:table-caption formatting object generates one or more normal
reference-areas. The fo:table-caption returns these reference-areas and any
page-level-out-of-line areas returned by the children of the fo:table-caption.

10. fo:table-header
The fo:table-header formatting object does not generate any areas. The
fo:table-header formatting object returns the sequence of areas created by
concatenating the sequences of areas returned by each of the children of the
fo:table-header.

11. fo:table-footer
The fo:table-footer formatting object does not generate any areas. The
fo:table-footer formatting object returns the sequence of areas created by
concatenating the sequences of areas returned by each of the children of the
fo:table-footer.

12. fo:table-body
The fo:table-body formatting object does not generate any areas. The
fo:table-body formatting object returns the sequence of areas created by
concatenating the sequences of areas returned by each of the children of the
fo:table-body.

13. fo:table-cell
The fo:table-cell formatting object generates one or more normal
reference-areas. The fo:table-cell returns these reference-areas and any
page-level-out-of-line areas returned by the children of the fo:table-cell.

14. fo:list-block (%block;)
The fo:list-block formatting object generates one or more normal block-areas.
The fo:list-block returns these areas, any page-level-out-of-line areas, and
any reference-level-out-of-line areas returned by the children of the
fo:list-block.
STATUS - 'returned-by' on normal block-areas implemented. 'is-first' and
'is-last'.

15. fo:list-item
The fo:list-item formatting object generates one or more normal block-areas.
The fo:list-item returns these areas, any page-level-out-of-line areas, and
any reference-level-out-of-line areas returned by the children of the
fo:list-item.
STATUS - 'returned-by' on normal block-areas implemented. 'is-first' and
'is-last'.

16. fo:list-item-label
The fo:list-item-label formatting object does not generate any areas. The
fo:list-item-label formatting object returns the sequence of areas created by
concatenating the sequences of areas returned by each of the children of the
fo:list-item-label.

17. fo:list-item-body
The fo:list-item-body formatting object does not generate any areas. The
fo:list-item-body formatting object returns the sequence of areas created by
concatenating the sequences of areas returned by each of the children of the
fo:list-item-body.

18. fo:basic-link
The fo:basic-link formatting object generates one or more normal inline-areas.
The fo:basic-link returns these areas, any page-level-out-of-line areas, and
any reference-level-out-of-line areas returned by the children of the
fo:basic-link.

19. fo:wrapper
The fo:wrapper formatting object does not generate any areas. The fo:wrapper
formatting object returns the sequence of areas created by concatenating the
sequences of areas returned by each of the children of the fo:wrapper.

May Not Contain Markers:
1. fo:title - not as descendant
2. fo:leader
3. fo:multi-case
4. fo:float
5. fo:footnote


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to