bckfnn 2004/09/07 13:14:51
Modified: src/java/org/apache/fop/fo FOPropertyMapping.java
src/java/org/apache/fop/fo/pagination
RepeatablePageMasterAlternatives.java
RepeatablePageMasterReference.java
Log:
Make maximum-repeats a number property instead of a string. This add
support for expression.
Revision Changes Path
1.22 +3 -2 xml-fop/src/java/org/apache/fop/fo/FOPropertyMapping.java
Index: FOPropertyMapping.java
===================================================================
RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/FOPropertyMapping.java,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- FOPropertyMapping.java 7 Sep 2004 14:33:47 -0000 1.21
+++ FOPropertyMapping.java 7 Sep 2004 20:14:50 -0000 1.22
@@ -2081,8 +2081,9 @@
addPropertyMaker("master-reference", m);
// maximum-repeats
- m = new StringProperty.Maker(PR_MAXIMUM_REPEATS);
+ m = new NumberProperty.Maker(PR_MAXIMUM_REPEATS);
m.setInherited(false);
+ m.addEnum("no-limit", makeEnumProperty(NO_LIMIT, "NO_LIMIT"));
m.setDefault("no-limit");
addPropertyMaker("maximum-repeats", m);
1.17 +9 -12
xml-fop/src/java/org/apache/fop/fo/pagination/RepeatablePageMasterAlternatives.java
Index: RepeatablePageMasterAlternatives.java
===================================================================
RCS file:
/home/cvs/xml-fop/src/java/org/apache/fop/fo/pagination/RepeatablePageMasterAlternatives.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- RepeatablePageMasterAlternatives.java 8 Aug 2004 18:39:25 -0000 1.16
+++ RepeatablePageMasterAlternatives.java 7 Sep 2004 20:14:51 -0000 1.17
@@ -29,6 +29,7 @@
// FOP
import org.apache.fop.fo.FONode;
import org.apache.fop.fo.FObj;
+import org.apache.fop.fo.properties.Property;
/**
* A repeatable-page-master-alternatives formatting object.
@@ -94,20 +95,16 @@
+ parent.getName(), locator);
}
- String mr = getProperty(PR_MAXIMUM_REPEATS).getString();
- if (mr.equals("no-limit")) {
+ Property mr = getProperty(PR_MAXIMUM_REPEATS);
+
+ if (mr.getEnum() == NO_LIMIT) {
this.maximumRepeats = INFINITE;
} else {
- try {
- this.maximumRepeats = Integer.parseInt(mr);
- if (this.maximumRepeats < 0) {
- getLogger().debug("negative maximum-repeats: "
- + this.maximumRepeats);
- this.maximumRepeats = 0;
- }
- } catch (NumberFormatException nfe) {
- throw new SAXParseException("Invalid number for "
- + "'maximum-repeats' property", locator);
+ this.maximumRepeats = mr.getNumber().intValue();
+ if (this.maximumRepeats < 0) {
+ getLogger().debug("negative maximum-repeats: "
+ + this.maximumRepeats);
+ this.maximumRepeats = 0;
}
}
}
1.19 +8 -12
xml-fop/src/java/org/apache/fop/fo/pagination/RepeatablePageMasterReference.java
Index: RepeatablePageMasterReference.java
===================================================================
RCS file:
/home/cvs/xml-fop/src/java/org/apache/fop/fo/pagination/RepeatablePageMasterReference.java,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- RepeatablePageMasterReference.java 5 Sep 2004 04:00:52 -0000 1.18
+++ RepeatablePageMasterReference.java 7 Sep 2004 20:14:51 -0000 1.19
@@ -26,6 +26,7 @@
// FOP
import org.apache.fop.fo.FONode;
import org.apache.fop.fo.FObj;
+import org.apache.fop.fo.properties.Property;
/**
* A repeatable-page-master-reference formatting object.
@@ -62,21 +63,16 @@
pageSequenceMaster.addSubsequenceSpecifier(this);
}
- String mr = getPropString(PR_MAXIMUM_REPEATS);
+ Property mr = getProperty(PR_MAXIMUM_REPEATS);
- if (mr.equals("no-limit")) {
+ if (mr.getEnum() == NO_LIMIT) {
this.maximumRepeats = INFINITE;
} else {
- try {
- this.maximumRepeats = Integer.parseInt(mr);
- if (this.maximumRepeats < 0) {
- getLogger().debug("negative maximum-repeats: "
- + this.maximumRepeats);
- this.maximumRepeats = 0;
- }
- } catch (NumberFormatException nfe) {
- throw new SAXParseException("Invalid number for "
- + "'maximum-repeats' property", locator);
+ this.maximumRepeats = mr.getNumber().intValue();
+ if (this.maximumRepeats < 0) {
+ getLogger().debug("negative maximum-repeats: "
+ + this.maximumRepeats);
+ this.maximumRepeats = 0;
}
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]