cvs commit: xml-fop/src/java/org/apache/fop/fo FoRoot.java
pbwest 2004/09/11 23:57:12 Modified:src/java/org/apache/fop/fo/flow Tag: FOP_0-20-0_Alt-Design FoPageSequence.java src/java/org/apache/fop/fo Tag: FOP_0-20-0_Alt-Design FoRoot.java Log: Work in progress Revision ChangesPath No revision No revision 1.1.2.19 +90 -30 xml-fop/src/java/org/apache/fop/fo/flow/Attic/FoPageSequence.java Index: FoPageSequence.java === RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/flow/Attic/FoPageSequence.java,v retrieving revision 1.1.2.18 retrieving revision 1.1.2.19 diff -u -r1.1.2.18 -r1.1.2.19 --- FoPageSequence.java 3 Jun 2004 13:28:47 - 1.1.2.18 +++ FoPageSequence.java 12 Sep 2004 06:57:12 - 1.1.2.19 @@ -36,17 +36,19 @@ import org.apache.fop.area.Area; import org.apache.fop.area.Page; import org.apache.fop.area.PageList; -import org.apache.fop.area.PageListElement; -import org.apache.fop.area.PageSet; -import org.apache.fop.area.PageSetElement; import org.apache.fop.datastructs.TreeException; +import org.apache.fop.datatypes.EnumType; +import org.apache.fop.datatypes.IntegerType; +import org.apache.fop.datatypes.Numeric; +import org.apache.fop.datatypes.PropertyValue; import org.apache.fop.fo.FONode; import org.apache.fop.fo.FOPageSeqNode; import org.apache.fop.fo.FOTree; import org.apache.fop.fo.FObjectNames; +import org.apache.fop.fo.FoRoot; import org.apache.fop.fo.PropNames; import org.apache.fop.fo.expr.PropertyException; -import org.apache.fop.fo.pagination.FoLayoutMasterSet; +import org.apache.fop.fo.properties.InitialPageNumber; import org.apache.fop.xml.FoXmlEvent; import org.apache.fop.xml.XmlEvent; import org.apache.fop.xml.XmlEventReader; @@ -129,6 +131,7 @@ private int flowChild = -1; /** The page currently being processed by this page-sequence */ private Page page = null; + /** * Gets the current page of this page-sequence * @return the page @@ -137,22 +140,30 @@ return page; } -/** The PageList for this page-sequence */ -private PageList pagelist = null; -/** The index of the current element in the pagelist */ +/** The PageList containing the flattened + * pageTree for this page-sequence. This PageList contains + * only Page elements. */ +private ArrayList pageArray = new ArrayList(); +/** The index of the current element in the pageList */ private int pgListIndex = -1; +/** The tree of all layout attempts for this page-sequence */ +private PageList pageList = null; +/** An array of indicies mapping the path through the + * pageTree to the current element */ +private ArrayList pageTreeMap = null; + /** - * @return the pagelist + * @return the pageList */ -public PageList getPagelist() { -return pagelist; +public PageList getPageList() { +return pageList; } /** - * @param pagelist to set + * @param pageList to set */ -public void setPagelist(PageList pagelist) { -this.pagelist = pagelist; +public void setPagelist(PageList pageList) { +this.pageList = pageList; } /** * @return the pgListIndex @@ -167,22 +178,69 @@ this.pgListIndex = pgListIndex; } +public Page getCurr1stPage() { +if (pageArray == null) { +return null; +} +return (Page)(pageArray.get(0)); +} + /** - * Gets the current first page - * @return the first page + * The number of the page being laid out */ -public Page getCurr1stPage() { -PageListElement firstPage = pagelist.get(0); -while (firstPage.isPageSet()) { -PageSet pageset = (PageSet)firstPage; -PageSetElement setEl = pageset.get(pageset.getCurrentElement()); -if (setEl.isPageList()) { -firstPage = ((PageList)setEl).get(0); +private int currPageNumber = 0; + +private FoRoot root; + +private void getInitialPageNumber() { +PropertyValue pv; +try { +pv = getPropertyValue(PropNames.INITIAL_PAGE_NUMBER); +} catch (PropertyException e) { +throw new RuntimeException( +"Unable to obtain InitialPageNumber value"); +} +int i = 0; +int lastnum = root.getLastPageNumber(); +switch (pv.getType()) { +case PropertyValue.AUTO: +currPageNumber = lastnum + 1; +break; +case PropertyValue.ENUM: +i = ((EnumType)pv).getEnumValue(); +
cvs commit: xml-fop/src/java/org/apache/fop/fo/properties ForcePageCount.java
pbwest 2004/09/11 23:30:19 Modified:src/java/org/apache/fop/fo/properties Tag: FOP_0-20-0_Alt-Design ForcePageCount.java Log: Added FORCE_AUTO enum Revision ChangesPath No revision No revision 1.1.2.6 +3 -1 xml-fop/src/java/org/apache/fop/fo/properties/Attic/ForcePageCount.java Index: ForcePageCount.java === RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/properties/Attic/ForcePageCount.java,v retrieving revision 1.1.2.5 retrieving revision 1.1.2.6 diff -u -r1.1.2.5 -r1.1.2.6 --- ForcePageCount.java 25 Feb 2004 23:09:09 - 1.1.2.5 +++ ForcePageCount.java 12 Sep 2004 06:30:19 - 1.1.2.6 @@ -49,6 +49,7 @@ public static final int END_ON_EVEN = 3; public static final int END_ON_ODD = 4; public static final int NO_FORCE = 5; +public static final int FORCE_AUTO = 6; public static final int inherited = NO; @@ -64,6 +65,7 @@ ,"end-on-even" ,"end-on-odd" ,"no-force" +,"auto" }; private static final HashMap rwEnumHash; static { - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: xml-fop/src/java/org/apache/fop/apps CommandLineOptions.java Fop.java
jeremias2004/09/11 11:56:20 Modified:src/java/org/apache/fop/fonts/apps TTFReader.java PFMReader.java src/java/org/apache/fop/apps CommandLineOptions.java Fop.java Added: src/java/org/apache/fop/util CommandLineLogger.java Log: Bugzilla patch 31162: Better command-line logging without losing the possibility to fine-tune Commons Logging from outside. Submitted by: Finn Bock plus using the new CommandLineLogger for PFMReader and TTFReader, too. Revision ChangesPath 1.1 xml-fop/src/java/org/apache/fop/util/CommandLineLogger.java Index: CommandLineLogger.java === /* Copyright 2004 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /* $Id: CommandLineLogger.java,v 1.1 2004/09/11 18:56:20 jeremias Exp $ */ package org.apache.fop.util; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; /** * This is a commons-logging logger for command line use. */ public class CommandLineLogger implements Log { /** "Trace" level logging. */ public static final int LOG_LEVEL_TRACE = 1; /** "Debug" level logging. */ public static final int LOG_LEVEL_DEBUG = 2; /** "Info" level logging. */ public static final int LOG_LEVEL_INFO = 3; /** "Warn" level logging. */ public static final int LOG_LEVEL_WARN = 4; /** "Error" level logging. */ public static final int LOG_LEVEL_ERROR = 5; /** "Fatal" level logging. */ public static final int LOG_LEVEL_FATAL = 6; private int logLevel; private String logName; /** * Construct the logger with a default log level taken from the LogFactory * attribute "level". * @param logName the logger name. */ public CommandLineLogger(String logName) { this.logName = logName; setLogLevel((String) LogFactory.getFactory().getAttribute("level")); } /** * Set a log level for the logger. * @param level the log level */ public void setLogLevel(String level) { if ("fatal".equals(level)) { logLevel = LOG_LEVEL_FATAL; } else if ("error".equals(level)) { logLevel = LOG_LEVEL_ERROR; } else if ("warn".equals(level)) { logLevel = LOG_LEVEL_WARN; } else if ("info".equals(level)) { logLevel = LOG_LEVEL_INFO; } else if ("debug".equals(level)) { logLevel = LOG_LEVEL_DEBUG; } else if ("trace".equals(level)) { logLevel = LOG_LEVEL_TRACE; } else { logLevel = LOG_LEVEL_INFO; } } /** * @see org.apache.commons.logging.Log#isTraceEnabled() */ public final boolean isTraceEnabled() { return logLevel <= LOG_LEVEL_TRACE; } /** * @see org.apache.commons.logging.Log#isDebugEnabled() */ public final boolean isDebugEnabled() { return logLevel <= LOG_LEVEL_DEBUG; } /** * @see org.apache.commons.logging.Log#isInfoEnabled() */ public final boolean isInfoEnabled() { return logLevel <= LOG_LEVEL_INFO; } /** * @see org.apache.commons.logging.Log#isWarnEnabled() */ public final boolean isWarnEnabled() { return logLevel <= LOG_LEVEL_WARN; } /** * @see org.apache.commons.logging.Log#isErrorEnabled() */ public final boolean isErrorEnabled() { return logLevel <= LOG_LEVEL_ERROR; } /** * @see org.apache.commons.logging.Log#isFatalEnabled() */ public final boolean isFatalEnabled() { return logLevel <= LOG_LEVEL_FATAL; } /** * @see org.apache.commons.logging.Log#trace(java.lang.Object) */ public final void trace(Object message) { if (isTraceEnabled()) { log(LOG_LEVEL_TRACE, message, null); } } /** * @see org.apache.commons.logging.Log#trace(java.lang.Object, java.lang.Throwable) */ public final void trace(Object message, Throwable t) { if (isTraceEnabled()) {
cvs commit: xml-fop/src/java/org/apache/fop/fo FObjMixed.java FOText.java
jeremias2004/09/11 10:11:59 Modified:src/java/org/apache/fop/fo/flow PageNumber.java BlockContainer.java InlineContainer.java Block.java TableBody.java Footnote.java TableRow.java BidiOverride.java TableCell.java RetrieveMarker.java BasicLink.java Character.java ListItem.java ListBlock.java PageNumberCitation.java src/java/org/apache/fop/fo/pagination Flow.java src/java/org/apache/fop/fo FObjMixed.java FOText.java Log: Removed tab characters. Revision ChangesPath 1.38 +4 -1 xml-fop/src/java/org/apache/fop/fo/flow/PageNumber.java Index: PageNumber.java === RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/flow/PageNumber.java,v retrieving revision 1.37 retrieving revision 1.38 diff -u -r1.37 -r1.38 --- PageNumber.java 6 Sep 2004 18:44:31 - 1.37 +++ PageNumber.java 11 Sep 2004 17:11:58 - 1.38 @@ -93,11 +93,14 @@ /** * @see org.apache.fop.fo.FObj#addLayoutManager(List) */ -public void addLayoutManager(List list) { +public void addLayoutManager(List list) { PageNumberLayoutManager lm = new PageNumberLayoutManager(this); list.add(lm); } +/** + * @see org.apache.fop.fo.FONode#getName() + */ public String getName() { return "fo:page-number"; } 1.23 +1 -1 xml-fop/src/java/org/apache/fop/fo/flow/BlockContainer.java Index: BlockContainer.java === RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/flow/BlockContainer.java,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- BlockContainer.java 30 Aug 2004 12:00:52 - 1.22 +++ BlockContainer.java 11 Sep 2004 17:11:58 - 1.23 @@ -85,7 +85,7 @@ /** * @see org.apache.fop.fo.FObj#addLayoutManager(List) */ -public void addLayoutManager(List list) { +public void addLayoutManager(List list) { BlockContainerLayoutManager blm = new BlockContainerLayoutManager(this); blm.setOverflow(getPropEnum(PR_OVERFLOW)); list.add(blm); 1.19 +4 -1 xml-fop/src/java/org/apache/fop/fo/flow/InlineContainer.java Index: InlineContainer.java === RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/flow/InlineContainer.java,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- InlineContainer.java 25 Aug 2004 05:03:06 - 1.18 +++ InlineContainer.java 11 Sep 2004 17:11:58 - 1.19 @@ -55,13 +55,16 @@ /** * @see org.apache.fop.fo.FObj#addLayoutManager(List) */ -public void addLayoutManager(List list) { +public void addLayoutManager(List list) { ArrayList childList = new ArrayList(); super.addLayoutManager(childList); LayoutManager lm = new ICLayoutManager(this, childList); list.add(lm); } +/** + * @see org.apache.fop.fo.FONode#getName() + */ public String getName() { return "fo:inline-container"; } 1.40 +4 -1 xml-fop/src/java/org/apache/fop/fo/flow/Block.java Index: Block.java === RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/flow/Block.java,v retrieving revision 1.39 retrieving revision 1.40 diff -u -r1.39 -r1.40 --- Block.java6 Sep 2004 18:44:31 - 1.39 +++ Block.java11 Sep 2004 17:11:58 - 1.40 @@ -344,11 +344,14 @@ /** * @see org.apache.fop.fo.FObj#addLayoutManager(List) */ -public void addLayoutManager(List list) { +public void addLayoutManager(List list) { BlockLayoutManager blm = new BlockLayoutManager(this); list.add(blm); } +/** + * @see org.apache.fop.fo.FONode#getName() + */ public String getName() { return "fo:block"; } 1.29 +1 -1 xml-fop/src/java/org/apache/fop/fo/flow/TableBody.java Index: TableBody.java === RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/flow/TableBody.java,v retrieving revision 1.28 retrieving revision 1.29 diff -u -r1.28 -r1.29 --- TableBody.java7 Sep 2004 20:47:10 - 1.28 +++ TableBody.java11 Sep 2004 17:11:58 - 1.29 @@ -67,7 +67,7 @@ /** * @see org.apache.fop.fo.FObj#addLayo
cvs commit: xml-fop/src/java/org/apache/fop/apps FOUserAgent.java
jeremias2004/09/11 10:10:46 Modified:src/java/org/apache/fop/apps FOUserAgent.java Log: Calculating the resolution value instead of writing down the constant is more readable IMO. Revision ChangesPath 1.16 +2 -2 xml-fop/src/java/org/apache/fop/apps/FOUserAgent.java Index: FOUserAgent.java === RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/apps/FOUserAgent.java,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- FOUserAgent.java 16 Jul 2004 05:10:32 - 1.15 +++ FOUserAgent.java 11 Sep 2004 17:10:46 - 1.16 @@ -66,7 +66,7 @@ public Map handlers = new java.util.HashMap(); private String baseURL; private PDFEncryptionParams pdfEncryptionParams; -private float px2mm = 0.3528f; //72dpi (=25.4/dpi) +private float px2mm = (25.4f / 72); //dpi (=25.4/dpi) private HashMap rendererOptions = new java.util.HashMap(); private InputHandler inputHandler = null; private Renderer rendererOverride = null; - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]