diff options
author | Adrian Cumiskey <acumiskey@apache.org> | 2008-06-30 14:11:56 +0000 |
---|---|---|
committer | Adrian Cumiskey <acumiskey@apache.org> | 2008-06-30 14:11:56 +0000 |
commit | 81a04fe6cbbac40d08297f49fc2801ac58b36640 (patch) | |
tree | 3435c80aee45b4cadfe429225e7c6dcf29dcf765 | |
parent | b0cd543ff8311a4b1f61bbc43371f85fd6120883 (diff) | |
download | xmlgraphics-fop-81a04fe6cbbac40d08297f49fc2801ac58b36640.tar.gz xmlgraphics-fop-81a04fe6cbbac40d08297f49fc2801ac58b36640.zip |
Merged revisions 672495-672496,672499,672537,672539,672564-672565,672617-672618,672670 via svnmerge from
https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk
........
r672495 | adelmelle | 2008-06-28 12:22:58 +0100 (Sat, 28 Jun 2008) | 1 line
Removed unnecessary override
........
r672496 | adelmelle | 2008-06-28 12:24:20 +0100 (Sat, 28 Jun 2008) | 1 line
Added testcase for r672010
........
r672499 | adelmelle | 2008-06-28 13:11:40 +0100 (Sat, 28 Jun 2008) | 3 lines
Added basic-checks.xml: file currently only contains one default check.
Modified testcase2checks.xsl: the added basic-checks.xml will be inserted before the checks particular to the testcase.
........
r672537 | acumiskey | 2008-06-28 17:05:08 +0100 (Sat, 28 Jun 2008) | 1 line
Corrected minor spelling mistake in javadoc
........
r672539 | acumiskey | 2008-06-28 17:08:13 +0100 (Sat, 28 Jun 2008) | 1 line
Corrected minor spelling mistake in javadoc
........
r672564 | adelmelle | 2008-06-28 19:39:39 +0100 (Sat, 28 Jun 2008) | 1 line
Corrected basic checks: check for empty document, as well as empty areaTree...
........
r672565 | adelmelle | 2008-06-28 19:45:16 +0100 (Sat, 28 Jun 2008) | 1 line
Removed instream-foreign-object in marker; still threw a NPE
........
r672617 | adelmelle | 2008-06-29 11:52:30 +0100 (Sun, 29 Jun 2008) | 1 line
Added disabled testcase for instream-foreign-object in a marker
........
r672618 | adelmelle | 2008-06-29 11:58:31 +0100 (Sun, 29 Jun 2008) | 2 lines
Correct svn props
........
r672670 | adelmelle | 2008-06-29 20:53:17 +0100 (Sun, 29 Jun 2008) | 1 line
Cleanup/re-ordering, and addition of XSL 1.1 FO_ and PR_ constants
........
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_AFPGOCAResources@672777 13f79535-47bb-0310-9956-ffa450edef68
9 files changed, 573 insertions, 284 deletions
diff --git a/src/java/org/apache/fop/events/EventExceptionManager.java b/src/java/org/apache/fop/events/EventExceptionManager.java index 093ae7010..44b1ef7b1 100644 --- a/src/java/org/apache/fop/events/EventExceptionManager.java +++ b/src/java/org/apache/fop/events/EventExceptionManager.java @@ -25,7 +25,7 @@ import java.util.Map; import org.apache.xmlgraphics.util.Service; /** - * This class is reponsible for converting events into exceptions. + * This class is responsible for converting events into exceptions. */ public class EventExceptionManager { diff --git a/src/java/org/apache/fop/events/EventListener.java b/src/java/org/apache/fop/events/EventListener.java index f8293aed9..cb2d8b965 100644 --- a/src/java/org/apache/fop/events/EventListener.java +++ b/src/java/org/apache/fop/events/EventListener.java @@ -28,7 +28,7 @@ public interface EventListener extends java.util.EventListener { * This method is called for each event that is generated. With the event's ID it is possible * to react to certain events. Events can also simply be recorded and presented to a user. * It is possible to throw an (unchecked) exception if the processing needs to be aborted - * because some special event occured. This way the client can configure the behaviour of + * because some special event occurred. This way the client can configure the behaviour of * the observed application. * @param event the event */ diff --git a/src/java/org/apache/fop/fo/Constants.java b/src/java/org/apache/fop/fo/Constants.java index 2a7f7e0c9..ae4c11229 100644 --- a/src/java/org/apache/fop/fo/Constants.java +++ b/src/java/org/apache/fop/fo/Constants.java @@ -24,9 +24,9 @@ package org.apache.fop.fo; * There are sets of constants describing: * <ul> * <li>Input and output formats</li> - * <li>Formatting objects</li> - * <li>Formatting properties</li> - * <li>Enumerated values used in formatting properties</li> + * <li>Formatting objects (<em>FO_XXX</em>)</li> + * <li>Formatting properties (<em>PR_XXX</em>)</li> + * <li>Enumerated values used in formatting properties (<em>EN_XXX</em>)</li> * </ul> */ public interface Constants { @@ -45,124 +45,162 @@ public interface Constants { int FO_BLOCK = 3; /** FO element constant */ int FO_BLOCK_CONTAINER = 4; + /** FO element constant - XSL 1.1 */ + int FO_BOOKMARK_TREE = 5; + /** FO element constant - XSL 1.1 */ + int FO_BOOKMARK = 6; + /** FO element constant - XSL 1.1 */ + int FO_BOOKMARK_TITLE = 7; + /** FO element constant - XSL 1.1 */ + int FO_CHANGE_BAR_BEGIN = 8; + /** FO element constant - XSL 1.1 */ + int FO_CHANGE_BAR_END = 9; /** FO element constant */ - int FO_CHARACTER = 5; + int FO_CHARACTER = 10; /** FO element constant */ - int FO_COLOR_PROFILE = 6; + int FO_COLOR_PROFILE = 11; /** FO element constant */ - int FO_CONDITIONAL_PAGE_MASTER_REFERENCE = 7; + int FO_CONDITIONAL_PAGE_MASTER_REFERENCE = 12; /** FO element constant */ - int FO_DECLARATIONS = 8; + int FO_DECLARATIONS = 13; /** FO element constant */ - int FO_EXTERNAL_GRAPHIC = 9; + int FO_EXTERNAL_GRAPHIC = 14; /** FO element constant */ - int FO_FLOAT = 10; + int FO_FLOAT = 15; /** FO element constant */ - int FO_FLOW = 11; + int FO_FLOW = 16; + /** FO element constant - XSL 1.1 */ + int FO_FLOW_ASSIGNMENT = 17; + /** FO element constant - XSL 1.1 */ + int FO_FLOW_MAP = 18; + /** FO element constant - XSL 1.1 */ + int FO_FLOW_NAME_SPECIFIER = 19; + /** FO element constant - XSL 1.1 */ + int FO_FLOW_SOURCE_LIST = 20; + /** FO element constant - XSL 1.1 */ + int FO_FLOW_TARGET_LIST = 21; + /** FO element constant - XSL 1.1 */ + int FO_FOLIO_PREFIX = 22; + /** FO element constant - XSL 1.1 */ + int FO_FOLIO_SUFFIX = 23; /** FO element constant */ - int FO_FOOTNOTE = 12; + int FO_FOOTNOTE = 24; /** FO element constant */ - int FO_FOOTNOTE_BODY = 13; + int FO_FOOTNOTE_BODY = 25; + /** FO element constant - XSL 1.1 */ + int FO_INDEX_KEY_REFERENCE = 26; + /** FO element constant - XSL 1.1 */ + int FO_INDEX_PAGE_NUMBER_PREFIX = 27; + /** FO element constant - XSL 1.1 */ + int FO_INDEX_PAGE_NUMBER_SUFFIX = 28; + /** FO element constant - XSL 1.1 */ + int FO_INDEX_PAGE_CITATION_LIST = 29; + /** FO element constant - XSL 1.1 */ + int FO_INDEX_PAGE_CITATION_LIST_SEPARATOR = 30; + /** FO element constant - XSL 1.1 */ + int FO_INDEX_PAGE_CITATION_RANGE_SEPARATOR = 31; + /** FO element constant - XSL 1.1 */ + int FO_INDEX_RANGE_BEGIN = 32; + /** FO element constant - XSL 1.1 */ + int FO_INDEX_RANGE_END = 33; /** FO element constant */ - int FO_INITIAL_PROPERTY_SET = 14; + int FO_INITIAL_PROPERTY_SET = 34; /** FO element constant */ - int FO_INLINE = 15; + int FO_INLINE = 35; /** FO element constant */ - int FO_INLINE_CONTAINER = 16; + int FO_INLINE_CONTAINER = 36; /** FO element constant */ - int FO_INSTREAM_FOREIGN_OBJECT = 17; + int FO_INSTREAM_FOREIGN_OBJECT = 37; /** FO element constant */ - int FO_LAYOUT_MASTER_SET = 18; + int FO_LAYOUT_MASTER_SET = 38; /** FO element constant */ - int FO_LEADER = 19; + int FO_LEADER = 39; /** FO element constant */ - int FO_LIST_BLOCK = 20; + int FO_LIST_BLOCK = 40; /** FO element constant */ - int FO_LIST_ITEM = 21; + int FO_LIST_ITEM = 41; /** FO element constant */ - int FO_LIST_ITEM_BODY = 22; + int FO_LIST_ITEM_BODY = 42; /** FO element constant */ - int FO_LIST_ITEM_LABEL = 23; + int FO_LIST_ITEM_LABEL = 43; /** FO element constant */ - int FO_MARKER = 24; + int FO_MARKER = 44; /** FO element constant */ - int FO_MULTI_CASE = 25; + int FO_MULTI_CASE = 45; /** FO element constant */ - int FO_MULTI_PROPERTIES = 26; + int FO_MULTI_PROPERTIES = 46; /** FO element constant */ - int FO_MULTI_PROPERTY_SET = 27; + int FO_MULTI_PROPERTY_SET = 47; /** FO element constant */ - int FO_MULTI_SWITCH = 28; + int FO_MULTI_SWITCH = 48; /** FO element constant */ - int FO_MULTI_TOGGLE = 29; + int FO_MULTI_TOGGLE = 49; /** FO element constant */ - int FO_PAGE_NUMBER = 30; + int FO_PAGE_NUMBER = 50; /** FO element constant */ - int FO_PAGE_NUMBER_CITATION = 31; + int FO_PAGE_NUMBER_CITATION = 51; + /** FO element constant - XSL 1.1 */ + int FO_PAGE_NUMBER_CITATION_LAST = 52; /** FO element constant */ - int FO_PAGE_SEQUENCE = 32; + int FO_PAGE_SEQUENCE = 53; /** FO element constant */ - int FO_PAGE_SEQUENCE_MASTER = 33; + int FO_PAGE_SEQUENCE_MASTER = 54; + /** FO element constant - XSL 1.1 */ + int FO_PAGE_SEQUENCE_WRAPPER = 55; /** FO element constant */ - int FO_REGION_AFTER = 34; + int FO_REGION_AFTER = 56; /** FO element constant */ - int FO_REGION_BEFORE = 35; + int FO_REGION_BEFORE = 57; /** FO element constant */ - int FO_REGION_BODY = 36; + int FO_REGION_BODY = 58; /** FO element constant */ - int FO_REGION_END = 37; + int FO_REGION_END = 59; + /** FO element constant - XSL 1.1 */ + int FO_REGION_NAME_SPECIFIER = 60; /** FO element constant */ - int FO_REGION_START = 38; + int FO_REGION_START = 61; /** FO element constant */ - int FO_REPEATABLE_PAGE_MASTER_ALTERNATIVES = 39; + int FO_REPEATABLE_PAGE_MASTER_ALTERNATIVES = 62; /** FO element constant */ - int FO_REPEATABLE_PAGE_MASTER_REFERENCE = 40; + int FO_REPEATABLE_PAGE_MASTER_REFERENCE = 63; /** FO element constant */ - int FO_RETRIEVE_MARKER = 41; + int FO_RETRIEVE_MARKER = 64; + /** FO element constant - XSL 1.1 */ + int FO_RETRIEVE_TABLE_MARKER = 65; /** FO element constant */ - int FO_ROOT = 42; + int FO_ROOT = 66; + /** FO element constant - XSL 1.1 */ + int FO_SCALING_VALUE_CITATION = 67; /** FO element constant */ - int FO_SIMPLE_PAGE_MASTER = 43; + int FO_SIMPLE_PAGE_MASTER = 68; /** FO element constant */ - int FO_SINGLE_PAGE_MASTER_REFERENCE = 44; + int FO_SINGLE_PAGE_MASTER_REFERENCE = 69; /** FO element constant */ - int FO_STATIC_CONTENT = 45; + int FO_STATIC_CONTENT = 70; /** FO element constant */ - int FO_TABLE = 46; + int FO_TABLE = 71; /** FO element constant */ - int FO_TABLE_AND_CAPTION = 47; + int FO_TABLE_AND_CAPTION = 72; /** FO element constant */ - int FO_TABLE_BODY = 48; + int FO_TABLE_BODY = 73; /** FO element constant */ - int FO_TABLE_CAPTION = 49; + int FO_TABLE_CAPTION = 74; /** FO element constant */ - int FO_TABLE_CELL = 50; + int FO_TABLE_CELL = 75; /** FO element constant */ - int FO_TABLE_COLUMN = 51; + int FO_TABLE_COLUMN = 76; /** FO element constant */ - int FO_TABLE_FOOTER = 52; + int FO_TABLE_FOOTER = 77; /** FO element constant */ - int FO_TABLE_HEADER = 53; + int FO_TABLE_HEADER = 78; /** FO element constant */ - int FO_TABLE_ROW = 54; + int FO_TABLE_ROW = 79; /** FO element constant */ - int FO_TITLE = 55; + int FO_TITLE = 80; /** FO element constant */ - int FO_WRAPPER = 56; - /** FO element constant - XSL 1.1 */ - int FO_BOOKMARK_TREE = 57; - /** FO element constant - XSL 1.1 */ - int FO_BOOKMARK = 58; - /** FO element constant - XSL 1.1 */ - int FO_BOOKMARK_TITLE = 59; - /** FO element constant - XSL 1.1 */ - int FO_PAGE_SEQUENCE_WRAPPER = 60; - /** FO element constant - XSL 1.1 */ - int FO_PAGE_NUMBER_CITATION_LAST = 61; - /** FO element constant - XSL 1.1 */ - int FO_RETRIEVE_TABLE_MARKER = 62; + int FO_WRAPPER = 81; /** Number of FO element constants defined */ - int FRM_OBJ_COUNT = 62; + int FRM_OBJ_COUNT = 81; // Masks /** @@ -308,394 +346,428 @@ public interface Constants { int PR_CASE_NAME = 61; /** Property constant */ int PR_CASE_TITLE = 62; + /** Property constant - XSL 1.1 */ + int PR_CHANGE_BAR_CLASS = 63; + /** Property constant - XSL 1.1 */ + int PR_CHANGE_BAR_COLOR = 64; + /** Property constant - XSL 1.1 */ + int PR_CHANGE_BAR_OFFSET = 65; + /** Property constant - XSL 1.1 */ + int PR_CHANGE_BAR_PLACEMENT = 66; + /** Property constant - XSL 1.1 */ + int PR_CHANGE_BAR_STYLE = 67; + /** Property constant - XSL 1.1 */ + int PR_CHANGE_BAR_WIDTH = 68; /** Property constant */ - int PR_CHARACTER = 63; + int PR_CHARACTER = 69; /** Property constant */ - int PR_CLEAR = 64; + int PR_CLEAR = 70; /** Property constant */ - int PR_CLIP = 65; + int PR_CLIP = 71; /** Property constant */ - int PR_COLOR = 66; + int PR_COLOR = 72; /** Property constant */ - int PR_COLOR_PROFILE_NAME = 67; + int PR_COLOR_PROFILE_NAME = 73; /** Property constant */ - int PR_COLUMN_COUNT = 68; + int PR_COLUMN_COUNT = 74; /** Property constant */ - int PR_COLUMN_GAP = 69; + int PR_COLUMN_GAP = 75; /** Property constant */ - int PR_COLUMN_NUMBER = 70; + int PR_COLUMN_NUMBER = 76; /** Property constant */ - int PR_COLUMN_WIDTH = 71; + int PR_COLUMN_WIDTH = 77; /** Property constant */ - int PR_CONTENT_HEIGHT = 72; + int PR_CONTENT_HEIGHT = 78; /** Property constant */ - int PR_CONTENT_TYPE = 73; + int PR_CONTENT_TYPE = 79; /** Property constant */ - int PR_CONTENT_WIDTH = 74; + int PR_CONTENT_WIDTH = 80; /** Property constant */ - int PR_COUNTRY = 75; + int PR_COUNTRY = 81; /** Property constant */ - int PR_CUE = 76; + int PR_CUE = 82; /** Property constant */ - int PR_CUE_AFTER = 77; + int PR_CUE_AFTER = 83; /** Property constant */ - int PR_CUE_BEFORE = 78; + int PR_CUE_BEFORE = 84; /** Property constant */ - int PR_DESTINATION_PLACEMENT_OFFSET = 79; + int PR_DESTINATION_PLACEMENT_OFFSET = 85; /** Property constant */ - int PR_DIRECTION = 80; + int PR_DIRECTION = 86; /** Property constant */ - int PR_DISPLAY_ALIGN = 81; + int PR_DISPLAY_ALIGN = 87; /** Property constant */ - int PR_DOMINANT_BASELINE = 82; + int PR_DOMINANT_BASELINE = 88; /** Property constant */ - int PR_ELEVATION = 83; + int PR_ELEVATION = 89; /** Property constant */ - int PR_EMPTY_CELLS = 84; + int PR_EMPTY_CELLS = 90; /** Property constant */ - int PR_END_INDENT = 85; + int PR_END_INDENT = 91; /** Property constant */ - int PR_ENDS_ROW = 86; + int PR_ENDS_ROW = 92; /** Property constant */ - int PR_EXTENT = 87; + int PR_EXTENT = 93; /** Property constant */ - int PR_EXTERNAL_DESTINATION = 88; + int PR_EXTERNAL_DESTINATION = 94; /** Property constant */ - int PR_FLOAT = 89; + int PR_FLOAT = 95; + /** Property constant -- XSL 1.1 */ + int PR_FLOW_MAP_NAME = 96; + /** Property constant -- XSL 1.1 */ + int PR_FLOW_MAP_REFERENCE = 97; /** Property constant */ - int PR_FLOW_NAME = 90; + int PR_FLOW_NAME = 98; + /** Property constant -- XSL 1.1 */ + int PR_FLOW_NAME_REFERENCE = 99; /** Property constant */ - int PR_FONT = 91; + int PR_FONT = 100; /** Property constant */ - int PR_FONT_FAMILY = 92; + int PR_FONT_FAMILY = 101; /** Property constant */ - int PR_FONT_SELECTION_STRATEGY = 93; + int PR_FONT_SELECTION_STRATEGY = 102; /** Property constant */ - int PR_FONT_SIZE = 94; + int PR_FONT_SIZE = 103; /** Property constant */ - int PR_FONT_SIZE_ADJUST = 95; + int PR_FONT_SIZE_ADJUST = 104; /** Property constant */ - int PR_FONT_STRETCH = 96; + int PR_FONT_STRETCH = 105; /** Property constant */ - int PR_FONT_STYLE = 97; + int PR_FONT_STYLE = 106; /** Property constant */ - int PR_FONT_VARIANT = 98; + int PR_FONT_VARIANT = 107; /** Property constant */ - int PR_FONT_WEIGHT = 99; + int PR_FONT_WEIGHT = 108; /** Property constant */ - int PR_FORCE_PAGE_COUNT = 100; + int PR_FORCE_PAGE_COUNT = 109; /** Property constant */ - int PR_FORMAT = 101; + int PR_FORMAT = 110; /** Property constant */ - int PR_GLYPH_ORIENTATION_HORIZONTAL = 102; + int PR_GLYPH_ORIENTATION_HORIZONTAL = 111; /** Property constant */ - int PR_GLYPH_ORIENTATION_VERTICAL = 103; + int PR_GLYPH_ORIENTATION_VERTICAL = 112; /** Property constant */ - int PR_GROUPING_SEPARATOR = 104; + int PR_GROUPING_SEPARATOR = 113; /** Property constant */ - int PR_GROUPING_SIZE = 105; + int PR_GROUPING_SIZE = 114; /** Property constant */ - int PR_HEIGHT = 106; + int PR_HEIGHT = 115; /** Property constant */ - int PR_HYPHENATE = 107; + int PR_HYPHENATE = 116; /** Property constant */ - int PR_HYPHENATION_CHARACTER = 108; + int PR_HYPHENATION_CHARACTER = 117; /** Property constant */ - int PR_HYPHENATION_KEEP = 109; + int PR_HYPHENATION_KEEP = 118; /** Property constant */ - int PR_HYPHENATION_LADDER_COUNT = 110; + int PR_HYPHENATION_LADDER_COUNT = 119; /** Property constant */ - int PR_HYPHENATION_PUSH_CHARACTER_COUNT = 111; + int PR_HYPHENATION_PUSH_CHARACTER_COUNT = 120; /** Property constant */ - int PR_HYPHENATION_REMAIN_CHARACTER_COUNT = 112; + int PR_HYPHENATION_REMAIN_CHARACTER_COUNT = 121; /** Property constant */ - int PR_ID = 113; + int PR_ID = 122; /** Property constant */ - int PR_INDICATE_DESTINATION = 114; + int PR_INDICATE_DESTINATION = 123; + /** Property constant - XSL 1.1 */ + int PR_INDEX_CLASS = 124; + /** Property constant - XSL 1.1 */ + int PR_INDEX_KEY = 125; /** Property constant */ - int PR_INITIAL_PAGE_NUMBER = 115; + int PR_INITIAL_PAGE_NUMBER = 126; /** Property constant */ - int PR_INLINE_PROGRESSION_DIMENSION = 116; + int PR_INLINE_PROGRESSION_DIMENSION = 127; /** Property constant */ - int PR_INTERNAL_DESTINATION = 117; + int PR_INTERNAL_DESTINATION = 128; + /** Property constant - XSL 1.1 */ + int PR_INTRINSIC_SCALE_VALUE = 129; /** Property constant */ - int PR_KEEP_TOGETHER = 118; + int PR_INTRUSION_DISPLACE = 130; /** Property constant */ - int PR_KEEP_WITH_NEXT = 119; + int PR_KEEP_TOGETHER = 131; /** Property constant */ - int PR_KEEP_WITH_PREVIOUS = 120; + int PR_KEEP_WITH_NEXT = 132; /** Property constant */ - int PR_LANGUAGE = 121; + int PR_KEEP_WITH_PREVIOUS = 133; /** Property constant */ - int PR_LAST_LINE_END_INDENT = 122; + int PR_LANGUAGE = 134; /** Property constant */ - int PR_LEADER_ALIGNMENT = 123; + int PR_LAST_LINE_END_INDENT = 135; /** Property constant */ - int PR_LEADER_LENGTH = 124; + int PR_LEADER_ALIGNMENT = 136; /** Property constant */ - int PR_LEADER_PATTERN = 125; + int PR_LEADER_LENGTH = 137; /** Property constant */ - int PR_LEADER_PATTERN_WIDTH = 126; + int PR_LEADER_PATTERN = 138; /** Property constant */ - int PR_LEFT = 127; + int PR_LEADER_PATTERN_WIDTH = 139; /** Property constant */ - int PR_LETTER_SPACING = 128; + int PR_LEFT = 140; /** Property constant */ - int PR_LETTER_VALUE = 129; + int PR_LETTER_SPACING = 141; /** Property constant */ - int PR_LINEFEED_TREATMENT = 130; + int PR_LETTER_VALUE = 142; /** Property constant */ - int PR_LINE_HEIGHT = 131; + int PR_LINEFEED_TREATMENT = 143; /** Property constant */ - int PR_LINE_HEIGHT_SHIFT_ADJUSTMENT = 132; + int PR_LINE_HEIGHT = 144; /** Property constant */ - int PR_LINE_STACKING_STRATEGY = 133; + int PR_LINE_HEIGHT_SHIFT_ADJUSTMENT = 145; /** Property constant */ - int PR_MARGIN = 134; + int PR_LINE_STACKING_STRATEGY = 146; /** Property constant */ - int PR_MARGIN_BOTTOM = 135; + int PR_MARGIN = 147; /** Property constant */ - int PR_MARGIN_LEFT = 136; + int PR_MARGIN_BOTTOM = 148; /** Property constant */ - int PR_MARGIN_RIGHT = 137; + int PR_MARGIN_LEFT = 149; /** Property constant */ - int PR_MARGIN_TOP = 138; + int PR_MARGIN_RIGHT = 150; /** Property constant */ - int PR_MARKER_CLASS_NAME = 139; + int PR_MARGIN_TOP = 151; /** Property constant */ - int PR_MASTER_NAME = 140; + int PR_MARKER_CLASS_NAME = 152; /** Property constant */ - int PR_MASTER_REFERENCE = 141; + int PR_MASTER_NAME = 153; /** Property constant */ - int PR_MAX_HEIGHT = 142; + int PR_MASTER_REFERENCE = 154; /** Property constant */ - int PR_MAXIMUM_REPEATS = 143; + int PR_MAX_HEIGHT = 155; /** Property constant */ - int PR_MAX_WIDTH = 144; + int PR_MAXIMUM_REPEATS = 156; /** Property constant */ - int PR_MEDIA_USAGE = 145; + int PR_MAX_WIDTH = 157; + /** Property constant - XSL 1.1 */ + int PR_MERGE_PAGES_ACROSS_INDEX_KEY_REFERENCES = 158; + /** Property constant - XSL 1.1 */ + int PR_MERGE_RANGES_ACROSS_INDEX_KEY_REFERENCES = 159; + /** Property constant - XSL 1.1 */ + int PR_MERGE_SEQUENTIAL_PAGE_NUMBERS = 160; /** Property constant */ - int PR_MIN_HEIGHT = 146; + int PR_MEDIA_USAGE = 161; /** Property constant */ - int PR_MIN_WIDTH = 147; + int PR_MIN_HEIGHT = 162; /** Property constant */ - int PR_NUMBER_COLUMNS_REPEATED = 148; + int PR_MIN_WIDTH = 163; /** Property constant */ - int PR_NUMBER_COLUMNS_SPANNED = 149; + int PR_NUMBER_COLUMNS_REPEATED = 164; /** Property constant */ - int PR_NUMBER_ROWS_SPANNED = 150; + int PR_NUMBER_COLUMNS_SPANNED = 165; /** Property constant */ - int PR_ODD_OR_EVEN = 151; + int PR_NUMBER_ROWS_SPANNED = 166; /** Property constant */ - int PR_ORPHANS = 152; + int PR_ODD_OR_EVEN = 167; /** Property constant */ - int PR_OVERFLOW = 153; + int PR_ORPHANS = 168; /** Property constant */ - int PR_PADDING = 154; + int PR_OVERFLOW = 169; /** Property constant */ - int PR_PADDING_AFTER = 155; + int PR_PADDING = 170; /** Property constant */ - int PR_PADDING_BEFORE = 156; + int PR_PADDING_AFTER = 171; /** Property constant */ - int PR_PADDING_BOTTOM = 157; + int PR_PADDING_BEFORE = 172; /** Property constant */ - int PR_PADDING_END = 158; + int PR_PADDING_BOTTOM = 173; /** Property constant */ - int PR_PADDING_LEFT = 159; + int PR_PADDING_END = 174; /** Property constant */ - int PR_PADDING_RIGHT = 160; + int PR_PADDING_LEFT = 175; /** Property constant */ - int PR_PADDING_START = 161; + int PR_PADDING_RIGHT = 176; /** Property constant */ - int PR_PADDING_TOP = 162; + int PR_PADDING_START = 177; /** Property constant */ - int PR_PAGE_BREAK_AFTER = 163; + int PR_PADDING_TOP = 178; /** Property constant */ - int PR_PAGE_BREAK_BEFORE = 164; + int PR_PAGE_BREAK_AFTER = 179; /** Property constant */ - int PR_PAGE_BREAK_INSIDE = 165; + int PR_PAGE_BREAK_BEFORE = 180; /** Property constant */ - int PR_PAGE_HEIGHT = 166; + int PR_PAGE_BREAK_INSIDE = 181; + /** Property constant - XSL 1.1 */ + int PR_PAGE_CITATION_STRATEGY = 182; /** Property constant */ - int PR_PAGE_POSITION = 167; + int PR_PAGE_HEIGHT = 183; + /** Property constant - XSL 1.1 */ + int PR_PAGE_NUMBER_TREATMENT = 184; /** Property constant */ - int PR_PAGE_WIDTH = 168; + int PR_PAGE_POSITION = 185; /** Property constant */ - int PR_PAUSE = 169; + int PR_PAGE_WIDTH = 186; /** Property constant */ - int PR_PAUSE_AFTER = 170; + int PR_PAUSE = 187; /** Property constant */ - int PR_PAUSE_BEFORE = 171; + int PR_PAUSE_AFTER = 188; /** Property constant */ - int PR_PITCH = 172; + int PR_PAUSE_BEFORE = 189; /** Property constant */ - int PR_PITCH_RANGE = 173; + int PR_PITCH = 190; /** Property constant */ - int PR_PLAY_DURING = 174; + int PR_PITCH_RANGE = 191; /** Property constant */ - int PR_POSITION = 175; + int PR_PLAY_DURING = 192; /** Property constant */ - int PR_PRECEDENCE = 176; + int PR_POSITION = 193; /** Property constant */ - int PR_PROVISIONAL_DISTANCE_BETWEEN_STARTS = 177; + int PR_PRECEDENCE = 194; /** Property constant */ - int PR_PROVISIONAL_LABEL_SEPARATION = 178; + int PR_PROVISIONAL_DISTANCE_BETWEEN_STARTS = 195; /** Property constant */ - int PR_REFERENCE_ORIENTATION = 179; + int PR_PROVISIONAL_LABEL_SEPARATION = 196; /** Property constant */ - int PR_REF_ID = 180; + int PR_REFERENCE_ORIENTATION = 197; /** Property constant */ - int PR_REGION_NAME = 181; + int PR_REF_ID = 198; /** Property constant */ - int PR_RELATIVE_ALIGN = 182; + int PR_REGION_NAME = 199; + /** Property constant - XSL 1.1 */ + int PR_REGION_NAME_REFERENCE = 200; + /** Property constant - XSL 1.1 */ + int PR_REF_INDEX_KEY = 201; /** Property constant */ - int PR_RELATIVE_POSITION = 183; + int PR_RELATIVE_ALIGN = 202; /** Property constant */ - int PR_RENDERING_INTENT = 184; + int PR_RELATIVE_POSITION = 203; /** Property constant */ - int PR_RETRIEVE_BOUNDARY = 185; + int PR_RENDERING_INTENT = 204; /** Property constant */ - int PR_RETRIEVE_CLASS_NAME = 186; + int PR_RETRIEVE_BOUNDARY = 205; + /** Property constant - XSL 1.1 */ + int PR_RETRIEVE_BOUNDARY_WITHIN_TABLE = 206; /** Property constant */ - int PR_RETRIEVE_POSITION = 187; + int PR_RETRIEVE_CLASS_NAME = 207; /** Property constant */ - int PR_RICHNESS = 188; + int PR_RETRIEVE_POSITION = 208; + /** Property constant - XSL 1.1 */ + int PR_RETRIEVE_POSITION_WITHIN_TABLE = 209; /** Property constant */ - int PR_RIGHT = 189; + int PR_RICHNESS = 210; /** Property constant */ - int PR_ROLE = 190; + int PR_RIGHT = 211; /** Property constant */ - int PR_RULE_STYLE = 191; + int PR_ROLE = 212; /** Property constant */ - int PR_RULE_THICKNESS = 192; + int PR_RULE_STYLE = 213; /** Property constant */ - int PR_SCALING = 193; + int PR_RULE_THICKNESS = 214; /** Property constant */ - int PR_SCALING_METHOD = 194; + int PR_SCALING = 215; /** Property constant */ - int PR_SCORE_SPACES = 195; + int PR_SCALING_METHOD = 216; /** Property constant */ - int PR_SCRIPT = 196; + int PR_SCORE_SPACES = 217; /** Property constant */ - int PR_SHOW_DESTINATION = 197; + int PR_SCRIPT = 218; /** Property constant */ - int PR_SIZE = 198; + int PR_SHOW_DESTINATION = 219; /** Property constant */ - int PR_SOURCE_DOCUMENT = 199; + int PR_SIZE = 220; /** Property constant */ - int PR_SPACE_AFTER = 200; + int PR_SOURCE_DOCUMENT = 221; /** Property constant */ - int PR_SPACE_BEFORE = 201; + int PR_SPACE_AFTER = 222; /** Property constant */ - int PR_SPACE_END = 202; + int PR_SPACE_BEFORE = 223; /** Property constant */ - int PR_SPACE_START = 203; + int PR_SPACE_END = 224; /** Property constant */ - int PR_SPAN = 204; + int PR_SPACE_START = 225; /** Property constant */ - int PR_SPEAK = 205; + int PR_SPAN = 226; /** Property constant */ - int PR_SPEAK_HEADER = 206; + int PR_SPEAK = 227; /** Property constant */ - int PR_SPEAK_NUMERAL = 207; + int PR_SPEAK_HEADER = 228; /** Property constant */ - int PR_SPEAK_PUNCTUATION = 208; + int PR_SPEAK_NUMERAL = 229; /** Property constant */ - int PR_SPEECH_RATE = 209; + int PR_SPEAK_PUNCTUATION = 230; /** Property constant */ - int PR_SRC = 210; + int PR_SPEECH_RATE = 231; /** Property constant */ - int PR_START_INDENT = 211; + int PR_SRC = 232; /** Property constant */ - int PR_STARTING_STATE = 212; + int PR_START_INDENT = 233; /** Property constant */ - int PR_STARTS_ROW = 213; + int PR_STARTING_STATE = 234; /** Property constant */ - int PR_STRESS = 214; + int PR_STARTS_ROW = 235; /** Property constant */ - int PR_SUPPRESS_AT_LINE_BREAK = 215; + int PR_STRESS = 236; /** Property constant */ - int PR_SWITCH_TO = 216; + int PR_SUPPRESS_AT_LINE_BREAK = 237; /** Property constant */ - int PR_TABLE_LAYOUT = 217; + int PR_SWITCH_TO = 238; /** Property constant */ - int PR_TABLE_OMIT_FOOTER_AT_BREAK = 218; + int PR_TABLE_LAYOUT = 239; /** Property constant */ - int PR_TABLE_OMIT_HEADER_AT_BREAK = 219; + int PR_TABLE_OMIT_FOOTER_AT_BREAK = 240; /** Property constant */ - int PR_TARGET_PRESENTATION_CONTEXT = 220; + int PR_TABLE_OMIT_HEADER_AT_BREAK = 241; /** Property constant */ - int PR_TARGET_PROCESSING_CONTEXT = 221; + int PR_TARGET_PRESENTATION_CONTEXT = 242; /** Property constant */ - int PR_TARGET_STYLESHEET = 222; + int PR_TARGET_PROCESSING_CONTEXT = 243; /** Property constant */ - int PR_TEXT_ALIGN = 223; + int PR_TARGET_STYLESHEET = 244; /** Property constant */ - int PR_TEXT_ALIGN_LAST = 224; + int PR_TEXT_ALIGN = 245; /** Property constant */ - int PR_TEXT_ALTITUDE = 225; + int PR_TEXT_ALIGN_LAST = 246; /** Property constant */ - int PR_TEXT_DECORATION = 226; + int PR_TEXT_ALTITUDE = 247; /** Property constant */ - int PR_TEXT_DEPTH = 227; + int PR_TEXT_DECORATION = 248; /** Property constant */ - int PR_TEXT_INDENT = 228; + int PR_TEXT_DEPTH = 249; /** Property constant */ - int PR_TEXT_SHADOW = 229; + int PR_TEXT_INDENT = 250; /** Property constant */ - int PR_TEXT_TRANSFORM = 230; + int PR_TEXT_SHADOW = 251; /** Property constant */ - int PR_TOP = 231; + int PR_TEXT_TRANSFORM = 252; /** Property constant */ - int PR_TREAT_AS_WORD_SPACE = 232; + int PR_TOP = 253; /** Property constant */ - int PR_UNICODE_BIDI = 233; + int PR_TREAT_AS_WORD_SPACE = 254; /** Property constant */ - int PR_VERTICAL_ALIGN = 234; + int PR_UNICODE_BIDI = 255; /** Property constant */ - int PR_VISIBILITY = 235; + int PR_VERTICAL_ALIGN = 256; /** Property constant */ - int PR_VOICE_FAMILY = 236; + int PR_VISIBILITY = 257; /** Property constant */ - int PR_VOLUME = 237; + int PR_VOICE_FAMILY = 258; /** Property constant */ - int PR_WHITE_SPACE = 238; + int PR_VOLUME = 259; /** Property constant */ - int PR_WHITE_SPACE_COLLAPSE = 239; + int PR_WHITE_SPACE = 260; /** Property constant */ - int PR_WHITE_SPACE_TREATMENT = 240; + int PR_WHITE_SPACE_COLLAPSE = 261; /** Property constant */ - int PR_WIDOWS = 241; + int PR_WHITE_SPACE_TREATMENT = 262; /** Property constant */ - int PR_WIDTH = 242; + int PR_WIDOWS = 263; /** Property constant */ - int PR_WORD_SPACING = 243; + int PR_WIDTH = 264; /** Property constant */ - int PR_WRAP_OPTION = 244; + int PR_WORD_SPACING = 265; /** Property constant */ - int PR_WRITING_MODE = 245; + int PR_WRAP_OPTION = 266; /** Property constant */ - int PR_XML_LANG = 246; + int PR_WRITING_MODE = 267; /** Property constant */ - int PR_Z_INDEX = 247; + int PR_XML_LANG = 268; /** Property constant */ - int PR_INTRUSION_DISPLACE = 248; - /** Property constant - XSL 1.1 */ - int PR_INDEX_CLASS = 249; - /** Property constant - XSL 1.1 */ - int PR_INDEX_KEY = 250; + int PR_Z_INDEX = 269; /** Property constant - FOP proprietary: Custom extension for line alignment */ - int PR_X_BLOCK_PROGRESSION_UNIT = 251; + int PR_X_BLOCK_PROGRESSION_UNIT = 270; /** Property constant - FOP proprietary: limit for widow content in lists and tables */ - int PR_X_WIDOW_CONTENT_LIMIT = 252; + int PR_X_WIDOW_CONTENT_LIMIT = 271; /** Property constant - FOP proprietary: limit for orphan content in lists and tables */ - int PR_X_ORPHAN_CONTENT_LIMIT = 253; - /** Property constant */ - int PR_RETRIEVE_POSITION_WITHIN_TABLE = 254; - /** Property constant */ - int PR_RETRIEVE_BOUNDARY_WITHIN_TABLE = 255; + int PR_X_ORPHAN_CONTENT_LIMIT = 272; /** Number of property constants defined */ - int PROPERTY_COUNT = 255; + int PROPERTY_COUNT = 272; // compound property constants @@ -1113,6 +1185,16 @@ public interface Constants { int EN_TABLE = 194; /** Enumeration constant -- for fo:retrieve-table-marker */ int EN_TABLE_FRAGMENT = 195; + /** Enumeration constant -- XSL 1.1 */ + int EN_MERGE = 196; + /** Enumeration constant -- XSL 1.1 */ + int EN_LEAVE_SEPARATE = 197; + /** Enumeration constant -- XSL 1.1 */ + int EN_LINK = 198; + /** Enumeration constant -- XSL 1.1 */ + int EN_NO_LINK = 199; + /** Enumeration constant -- XSL 1.1 */ + int EN_ALTERNATE = 200; /** Number of enumeration constants defined */ - int ENUM_COUNT = 195; + int ENUM_COUNT = 200; } diff --git a/src/java/org/apache/fop/fo/flow/AbstractPageNumberCitation.java b/src/java/org/apache/fop/fo/flow/AbstractPageNumberCitation.java index 58c0f4547..8849d4d1c 100644 --- a/src/java/org/apache/fop/fo/flow/AbstractPageNumberCitation.java +++ b/src/java/org/apache/fop/fo/flow/AbstractPageNumberCitation.java @@ -112,11 +112,6 @@ public abstract class AbstractPageNumberCitation extends FObj { } } - /** {@inheritDoc} */ - protected void startOfNode() throws FOPException { - super.startOfNode(); - } - /** * {@inheritDoc} * <br>XSL Content Model: empty diff --git a/test/layoutengine/basic-checks.xml b/test/layoutengine/basic-checks.xml new file mode 100644 index 000000000..529a53cf7 --- /dev/null +++ b/test/layoutengine/basic-checks.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You 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$ --> +<!-- + This file contains basic checks that are performed for every tescase +--> +<checks> + <true xpath="boolean(/areaTree)" /> + <true xpath="boolean(/areaTree/*)" /> +</checks> diff --git a/test/layoutengine/disabled-testcases.xml b/test/layoutengine/disabled-testcases.xml index ca05b156b..7bf441d5b 100644 --- a/test/layoutengine/disabled-testcases.xml +++ b/test/layoutengine/disabled-testcases.xml @@ -223,4 +223,9 @@ relaxed validation must be switched on, otherwise there is a validation exception.</description> </testcase> + <testcase> + <name>Instream foreign objects in markers</name> + <file>marker_instream-foreign-object.xml</file> + <description>Foreign objects in markers do not work.</description> + </testcase> </disabled-testcases> diff --git a/test/layoutengine/standard-testcases/marker_instream-foreign-object.xml b/test/layoutengine/standard-testcases/marker_instream-foreign-object.xml new file mode 100644 index 000000000..796f2d72a --- /dev/null +++ b/test/layoutengine/standard-testcases/marker_instream-foreign-object.xml @@ -0,0 +1,83 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You 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$ --> +<testcase> + <info> + <p> + This test checks for fo:instream-foreign-object in fo:markers. + </p> + </info> + <fo> + <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="first" + margin-right="1.5cm" + margin-left="1.5cm" + margin-bottom="2cm" + margin-top="1cm" + page-width="21cm" + page-height="29.7cm"> + <fo:region-body margin-top="1cm"/> + <fo:region-before extent="1cm"/> + <fo:region-after extent="1.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="first" initial-page-number="1"> + <fo:static-content flow-name="xsl-region-before"> + <fo:block-container height="1cm" width="15cm" top="0cm" left="0cm" position="absolute"> + <fo:block font-size="0pt"> + <fo:retrieve-marker retrieve-class-name="mark" + retrieve-boundary="page" + retrieve-position="last-ending-within-page"/> + </fo:block> + </fo:block-container> + </fo:static-content> + <fo:static-content flow-name="xsl-region-after"> + <fo:block text-align="start" font-size="10pt" font-family="serif" line-height="1em + 2pt"> + Page (<fo:page-number/> / <fo:page-number-citation ref-id="end-of-document"/>) + </fo:block> + </fo:static-content> + <fo:flow flow-name="xsl-region-body"> + <fo:block text-align="start" font-size="12pt" font-family="sans-serif"> + Some text. + </fo:block> + <fo:block id="end-of-document"> + <fo:marker marker-class-name="mark"> + <fo:instream-foreign-object width="15cm" height="1cm" id="ifo1"> + <svg xmlns="http://www.w3.org/2000/svg" width="15cm" height="1cm" xml:space="preserve"> + <rect style="fill:red;stroke:red" x="0" y="0" width="15cm" height="1cm"/> + </svg> + </fo:instream-foreign-object> + </fo:marker> + </fo:block> + </fo:flow> + </fo:page-sequence> + </fo:root> + </fo> + <checks> + <!-- check whether the i-f-o viewport exists --> + <true xpath="boolean(//viewport[@prod-id='ifo1'])" fail-msg="foreign object viewport not found" /> + <!-- check whether the i-f-o viewport has any content --> + <true xpath="boolean(//viewport[@prod-id='ifo1']/*)" fail-msg="foreign object not rendered" /> + <!-- check whether the foreign object itself survives marker-cloning --> + <eval expected="1" xpath="count(//foreignObject[@prod-id='ifo1'][1]/*)" /> + <eval expected="svg" xpath="local-name(//foreignObject[@prod-id='ifo1'][1]/*[1])" /> + <eval expected="1" xpath="count(//foreignObject[@prod-id='ifo1'][1]/*/*)" /> + <eval expected="rect" xpath="local-name(//foreignObject[@prod-id='ifo1'][1]/*[1]/*[1])" /> + </checks> +</testcase> diff --git a/test/layoutengine/standard-testcases/marker_page-number-citation_bugzilla45295.xml b/test/layoutengine/standard-testcases/marker_page-number-citation_bugzilla45295.xml new file mode 100644 index 000000000..28d684127 --- /dev/null +++ b/test/layoutengine/standard-testcases/marker_page-number-citation_bugzilla45295.xml @@ -0,0 +1,95 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You 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$ --> +<testcase> + <info> + <p> + This test checks for resolution of forward references in + fo:markers, as reported in Bugzilla 45295. + </p> + </info> + <fo> + <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="first" + margin-right="1.5cm" + margin-left="1.5cm" + margin-bottom="2cm" + margin-top="1cm" + page-width="21cm" + page-height="29.7cm"> + <fo:region-body margin-top="1cm"/> + <fo:region-before extent="1cm"/> + <fo:region-after extent="1.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="first" initial-page-number="1"> + <fo:static-content flow-name="xsl-region-before"> + <fo:block-container height="1cm" width="15cm" top="0cm" left="0cm" position="absolute"> + <fo:block> + <fo:retrieve-marker retrieve-class-name="message" + retrieve-boundary="page" + retrieve-position="first-starting-within-page"/> + </fo:block> + </fo:block-container> + <fo:block-container height="1cm" width="15cm" top="0cm" left="0cm" position="absolute"> + <fo:block> + <fo:retrieve-marker retrieve-class-name="term" + retrieve-boundary="page" + retrieve-position="last-ending-within-page"/> + </fo:block> + </fo:block-container> + </fo:static-content> + <fo:static-content flow-name="xsl-region-after"> + <fo:block text-align="start" font-size="10pt" font-family="serif" line-height="1em + 2pt"> + Page (<fo:page-number/> / <fo:page-number-citation ref-id="end-of-document"/>) + </fo:block> + </fo:static-content> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + <fo:marker marker-class-name="message"> + <fo:block> + WARNING: Page sequence contains: <fo:page-number-citation id="pnc1" ref-id="end-of-document"/> pages. + </fo:block> + </fo:marker> + </fo:block> + <fo:block text-align="start" font-size="12pt" font-family="sans-serif"> + This page sequence has more than one page so you will see the message only at the top of the first page. + </fo:block> + <fo:block break-before="page" text-align="start" font-size="12pt" font-family="sans-serif"> + Some text. + </fo:block> + <fo:block break-before="page" text-align="start" font-size="12pt" font-family="sans-serif"> + Some text. + </fo:block> + <fo:block break-before="page" text-align="start" font-size="12pt" font-family="sans-serif"> + Some more text on last page. + </fo:block> + <fo:block id="end-of-document"> + <fo:marker marker-class-name="term"> + [marker content] + </fo:marker> + </fo:block> + </fo:flow> + </fo:page-sequence> + </fo:root> + </fo> + <checks> + <true xpath="//text[@prod-id='pnc1'][1]/word = '4'" /> + </checks> +</testcase> diff --git a/test/layoutengine/testcase2checks.xsl b/test/layoutengine/testcase2checks.xsl index 00fc9d47b..cb31d583a 100644 --- a/test/layoutengine/testcase2checks.xsl +++ b/test/layoutengine/testcase2checks.xsl @@ -19,15 +19,19 @@ <!-- This stylesheet extracts the checks from the testcase so the list of checks can be built in Java code. --> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:template match="testcase"> - <checks> - <xsl:apply-templates select="checks/*" mode="copy"/> - </checks> - </xsl:template> +<xsl:variable name="basic-checks" select="document('basic-checks.xml')/checks/*" /> + +<xsl:template match="testcase"> + <xsl:apply-templates select="checks" /> +</xsl:template> + +<xsl:template match="checks"> + <checks> + <xsl:copy-of select="$basic-checks" /> + <xsl:copy-of select="*" /> + </checks> +</xsl:template> + +<xsl:template match="text()" /> - <xsl:template match="node()|@*" mode="copy"> - <xsl:copy> - <xsl:apply-templates select="@*|node()" mode="copy"/> - </xsl:copy> - </xsl:template> </xsl:stylesheet> |