]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
adds a warning for regions in flows which don't exist in the layout
authorfotis <fotis@unknown>
Fri, 17 Nov 2000 10:18:28 +0000 (10:18 +0000)
committerfotis <fotis@unknown>
Fri, 17 Nov 2000 10:18:28 +0000 (10:18 +0000)
master set [Kelly Campbell]

git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@193826 13f79535-47bb-0310-9956-ffa450edef68

src/org/apache/fop/fo/pagination/LayoutMasterSet.java
src/org/apache/fop/fo/pagination/PageSequence.java
src/org/apache/fop/fo/pagination/SimplePageMaster.java

index 89d32c8c53e8f854ce21c4097772a8c575985836..a0bba54a68e23eb2b8cd38e4e72e150d9eb25fe0 100644 (file)
@@ -164,7 +164,21 @@ public class LayoutMasterSet extends FObj {
        }
     }
        
-
+    /**
+     * Checks whether or not a region name exists in this master set
+     * @returns true when the region name specified has a region in this LayoutMasterSet
+     */
+    protected boolean regionNameExists(String regionName)
+    {
+       boolean result = false;
+       for (Enumeration e = simplePageMasters.elements(); e.hasMoreElements() ;) {
+           result = ((SimplePageMaster)e.nextElement()).regionNameExists(regionName);
+           if (result) {
+               return result;
+           }
+       }
+       return result;
+    }
 
 
 }
index aac9a1ed963f4bda5a86a0609b87b802ac5ca23a..ee7f0deeb685e9f2beade25c3bb522cb54a869f0 100644 (file)
@@ -210,6 +210,9 @@ public class PageSequence extends FObj
        if (_flowMap.containsKey(flow.getFlowName())) {
            throw new FOPException("flow-names must be unique within an fo:page-sequence");
        }
+       if (!this.layoutMasterSet.regionNameExists(flow.getFlowName())) {
+           MessageHandler.errorln("WARNING: region-name '"+flow.getFlowName()+"' doesn't exist in the layout-master-set.");
+       }
        _flowMap.put(flow.getFlowName(), flow);
 
     }
index a4bfeacde6dd77ee6107bf8a0b6c3b1f45ca3912..71745c96237bdc113d6d1c35f2f4a4939dd76637 100644 (file)
@@ -57,8 +57,7 @@ import org.apache.fop.fo.properties.*;
 import org.apache.fop.layout.PageMaster;
 import org.apache.fop.apps.FOPException;                                  
 
-import java.util.Hashtable;
-
+import java.util.*;
 
 public class SimplePageMaster extends FObj {
        
@@ -171,6 +170,16 @@ public class SimplePageMaster extends FObj {
        return _regions;
     }
     
-
+    protected boolean regionNameExists(String regionName) 
+    {
+       for (Enumeration regenum = _regions.elements(); regenum.hasMoreElements() ;) {
+           Region r = (Region)regenum.nextElement();
+           if (r.getRegionName().equals(regionName)) {
+               return true;
+           }
+       }
+       return false;
+       
+    }
     
 }