arved 01/07/23 17:57:57 Modified: src/org/apache/fop/fo/flow ListItem.java Log: AHS: adding support for 'returned-by' Revision Changes Path 1.13 +27 -60 xml-fop/src/org/apache/fop/fo/flow/ListItem.java Index: ListItem.java =================================================================== RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/flow/ListItem.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- ListItem.java 2001/03/04 21:34:51 1.12 +++ ListItem.java 2001/07/24 00:57:57 1.13 @@ -1,52 +1,7 @@ -/*-- $Id: ListItem.java,v 1.12 2001/03/04 21:34:51 klease Exp $ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - [EMAIL PROTECTED] - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber <[EMAIL PROTECTED]>. For more information on the Apache - Software Foundation, please see <http://www.apache.org/>. - +/*-- $Id: ListItem.java,v 1.13 2001/07/24 00:57:57 arved Exp $ + * Copyright (C) 2001 The Apache Software Foundation. All rights reserved. + * For details on use and redistribution please refer to the + * LICENSE file included with these sources. */ package org.apache.fop.fo.flow; @@ -125,15 +80,26 @@ new BlockArea(propMgr.getFontState(area.getFontInfo()), area.getAllocationWidth(), area.spaceLeft(), 0, 0, 0, align, alignLast, lineHeight); + this.blockArea.generatedBy = this; + this.areasGenerated++; + if (this.areasGenerated == 1) + this.blockArea.isFirst = true; + // for normal areas this should be the only pair + this.blockArea.addLineagePair(this, this.areasGenerated); + + // markers + if (this.hasMarkers()) + this.blockArea.addMarkers(this.getMarkers()); + blockArea.setPage(area.getPage()); blockArea.start(); - blockArea.setAbsoluteHeight(area.getAbsoluteHeight()); - blockArea.setIDReferences(area.getIDReferences()); + blockArea.setAbsoluteHeight(area.getAbsoluteHeight()); + blockArea.setIDReferences(area.getIDReferences()); int numChildren = this.children.size(); if (numChildren != 2) { - throw new FOPException("list-item must have exactly two children"); + throw new FOPException("list-item must have exactly two children"); } ListItemLabel label = (ListItemLabel) children.elementAt(0); ListItemBody body = (ListItemBody) children.elementAt(1); @@ -144,13 +110,13 @@ // body failed completely or only got some text in if (this.marker == 0) { - // configure id - area.getIDReferences().configureID(id,area); + // configure id + area.getIDReferences().configureID(id,area); - status = label.layout(blockArea); - if (status.isIncomplete()) { - return status; - } + status = label.layout(blockArea); + if (status.isIncomplete()) { + return status; + } } status = body.layout(blockArea); @@ -158,7 +124,7 @@ blockArea.end(); area.addChild(blockArea); area.increaseHeight(blockArea.getHeight()); - area.setAbsoluteHeight(blockArea.getAbsoluteHeight()); + area.setAbsoluteHeight(blockArea.getAbsoluteHeight()); this.marker = 1; return status; } @@ -166,7 +132,7 @@ blockArea.end(); area.addChild(blockArea); area.increaseHeight(blockArea.getHeight()); - area.setAbsoluteHeight(blockArea.getAbsoluteHeight()); + area.setAbsoluteHeight(blockArea.getAbsoluteHeight()); if (spaceAfter != 0) { area.addDisplaySpace(spaceAfter); @@ -176,6 +142,7 @@ if (area instanceof BlockArea) { area.start(); } + this.blockArea.isLast = true; return new Status(Status.OK); } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]