private void createShorthandProperties()

in fop-core/src/main/java/org/apache/fop/fo/FOPropertyMapping.java [2802:3068]


    private void createShorthandProperties() {
        PropertyMaker m;

        // background
        m  = new ToBeImplementedProperty.Maker(PR_BACKGROUND);
        m.setInherited(false);
        m.setDefault("none");
        addPropertyMaker("background", m);

        // background-position
        m  = new BackgroundPositionShorthand.Maker(PR_BACKGROUND_POSITION);
        m.setInherited(false);
        m.addKeyword("left", "0pt 50%");
        m.addKeyword("left center", "0pt 50%");
        m.addKeyword("center left", "0pt 50%");
        m.addKeyword("right", "100% 50%");
        m.addKeyword("right center", "100% 50%");
        m.addKeyword("center right", "100% 50%");
        m.addKeyword("center", "50% 50%");
        m.addKeyword("center center", "50% 50%");
        m.addKeyword("top", "50% 0pt");
        m.addKeyword("top center", "50% 0pt");
        m.addKeyword("center top", "50% 0pt");
        m.addKeyword("bottom", "50% 100%");
        m.addKeyword("bottom center", "50% 100%");
        m.addKeyword("center bottom", "50% 100%");
        m.addKeyword("top left", "0pt 0pt");
        m.addKeyword("left top", "0pt 0pt");
        m.addKeyword("top right", "100% 0pt");
        m.addKeyword("right top", "100% 0pt");
        m.addKeyword("bottom left", "0pt 100%");
        m.addKeyword("left bottom", "0pt 100%");
        m.addKeyword("bottom right", "100% 100%");
        m.addKeyword("right bottom", "100% 100%");
        m.setDefault("0pt 0pt");
        m.setPercentBase(LengthBase.CUSTOM_BASE);
        m.setDatatypeParser(new BackgroundPositionShorthand.Parser());
        addPropertyMaker("background-position", m);

        // border
        m  = new ListProperty.Maker(PR_BORDER);
        m.setInherited(false);
        m.setDefault("");
        m.setDatatypeParser(new GenericShorthandParser());
        addPropertyMaker("border", m);

        // border-bottom
        m  = new ListProperty.Maker(PR_BORDER_BOTTOM);
        m.setInherited(false);
        m.setDefault("");
        m.setDatatypeParser(new BorderShorthandParser(this));
        addPropertyMaker("border-bottom", m);

        // border-color
        m  = new ListProperty.Maker(PR_BORDER_COLOR);
        m.setInherited(false);
        m.setDefault("");
        m.setDatatypeParser(new BoxPropShorthandParser());
        addPropertyMaker("border-color", m);

        // border-left
        m  = new ListProperty.Maker(PR_BORDER_LEFT);
        m.setInherited(false);
        m.setDefault("");
        m.setDatatypeParser(new BorderShorthandParser(this));
        addPropertyMaker("border-left", m);

        // border-right
        m  = new ListProperty.Maker(PR_BORDER_RIGHT);
        m.setInherited(false);
        m.setDefault("");
        m.setDatatypeParser(new BorderShorthandParser(this));
        addPropertyMaker("border-right", m);

        // border-style
        m = new ListProperty.Maker(PR_BORDER_STYLE);
        m.setInherited(false);
        m.setDefault("");
        m.setDatatypeParser(new BoxPropShorthandParser());
        addPropertyMaker("border-style", m);

        // border-spacing
        m   = new ListProperty.Maker(PR_BORDER_SPACING);
        m.setInherited(true);
        m.setDefault("0pt");
        m.setDatatypeParser(new BorderSpacingShorthandParser());
        addPropertyMaker("border-spacing", m);

        // border-top
        m  = new ListProperty.Maker(PR_BORDER_TOP);
        m.setInherited(false);
        m.setDefault("");
        m.setDatatypeParser(new BorderShorthandParser(this));
        addPropertyMaker("border-top", m);

        // border-width
        m  = new ListProperty.Maker(PR_BORDER_WIDTH);
        m.setInherited(false);
        m.setDefault("");
        m.setDatatypeParser(new BoxPropShorthandParser());
        addPropertyMaker("border-width", m);

        // fox:border-radius
        m = new ListProperty.Maker(PR_X_BORDER_RADIUS);
        m.setInherited(false);
        m.setDatatypeParser(new BoxCornerPropShorthandParser());
        m.setPercentBase(LengthBase.CONTAINING_BLOCK_WIDTH);
        addPropertyMaker("fox:border-radius", m);

        // fox:border-before-start-radius
        m = new ListProperty.Maker(PR_X_BORDER_BEFORE_START_RADIUS);
        m.setInherited(false);
        m.setDatatypeParser(new BoxCornerPropShorthandParser());
        m.setPercentBase(LengthBase.CONTAINING_BLOCK_WIDTH);
        addPropertyMaker("fox:border-before-start-radius", m);

        // fox:border-before-end-radius
        m = new ListProperty.Maker(PR_X_BORDER_BEFORE_END_RADIUS);
        m.setInherited(false);
        m.setDatatypeParser(new BoxCornerPropShorthandParser());
        m.setPercentBase(LengthBase.CONTAINING_BLOCK_WIDTH);
        addPropertyMaker("fox:border-before-end-radius", m);

        // fox:border-after-start-radius
        m = new ListProperty.Maker(PR_X_BORDER_AFTER_START_RADIUS);
        m.setInherited(false);
        m.setDatatypeParser(new BoxCornerPropShorthandParser());
        m.setPercentBase(LengthBase.CONTAINING_BLOCK_WIDTH);
        addPropertyMaker("fox:border-after-start-radius", m);

        // fox:border-after-end-radius
        m = new ListProperty.Maker(PR_X_BORDER_AFTER_END_RADIUS);
        m.setInherited(false);
        m.setDatatypeParser(new BoxCornerPropShorthandParser());
        m.setPercentBase(LengthBase.CONTAINING_BLOCK_WIDTH);
        addPropertyMaker("fox:border-after-end-radius", m);

        // cue
        m  = new ToBeImplementedProperty.Maker(PR_CUE);
        m.setInherited(false);
        m.setDefault("");
        addPropertyMaker("cue", m);

        // font
        m  = new FontShorthandProperty.Maker(PR_FONT);
        m.setInherited(true);
        m.addEnum("caption", getEnumProperty(EN_CAPTION, "CAPTION"));
        m.addEnum("icon", getEnumProperty(EN_ICON, "ICON"));
        m.addEnum("message-box", getEnumProperty(EN_MESSAGE_BOX, "MESSAGE_BOX"));
        m.addEnum("menu", getEnumProperty(EN_MENU, "MENU"));
        m.addEnum("small-caption", getEnumProperty(EN_SMALL_CAPTION, "SMALL_CAPTION"));
        m.addEnum("status-bar", getEnumProperty(EN_STATUS_BAR, "STATUS_BAR"));
        m.setDefault("");
        m.setDatatypeParser(new FontShorthandParser());
        addPropertyMaker("font", m);

        // margin
        m  = new ListProperty.Maker(PR_MARGIN);
        m.setInherited(false);
        m.setDefault("");
        m.setDatatypeParser(new BoxPropShorthandParser());
        m.setPercentBase(LengthBase.CONTAINING_BLOCK_WIDTH);
        addPropertyMaker("margin", m);

        // padding
        m  = new ListProperty.Maker(PR_PADDING);
        m.setInherited(false);
        m.setDatatypeParser(new BoxPropShorthandParser());
        m.setPercentBase(LengthBase.CONTAINING_BLOCK_WIDTH);
        addPropertyMaker("padding", m);

        // page-break-after
        m  = new EnumProperty.Maker(PR_PAGE_BREAK_AFTER);
        m.setInherited(false);
        m.addEnum("auto", getEnumProperty(EN_AUTO, "AUTO"));
        m.addEnum("always", getEnumProperty(EN_ALWAYS, "ALWAYS"));
        m.addEnum("avoid", getEnumProperty(EN_AVOID, "AVOID"));
        m.addEnum("left", getEnumProperty(EN_LEFT, "LEFT"));
        m.addEnum("right", getEnumProperty(EN_RIGHT, "RIGHT"));
        m.setDefault("auto");
        m.setDatatypeParser(new PageBreakShorthandParser());
        addPropertyMaker("page-break-after", m);

        // page-break-before
        m  = new EnumProperty.Maker(PR_PAGE_BREAK_BEFORE);
        m.setInherited(false);
        m.addEnum("auto", getEnumProperty(EN_AUTO, "AUTO"));
        m.addEnum("always", getEnumProperty(EN_ALWAYS, "ALWAYS"));
        m.addEnum("avoid", getEnumProperty(EN_AVOID, "AVOID"));
        m.addEnum("left", getEnumProperty(EN_LEFT, "LEFT"));
        m.addEnum("right", getEnumProperty(EN_RIGHT, "RIGHT"));
        m.setDefault("auto");
        m.setDatatypeParser(new PageBreakShorthandParser());
        addPropertyMaker("page-break-before", m);

        // page-break-inside
        m  = new EnumProperty.Maker(PR_PAGE_BREAK_INSIDE);
        m.setInherited(true);
        m.addEnum("auto", getEnumProperty(EN_AUTO, "AUTO"));
        m.addEnum("avoid", getEnumProperty(EN_AVOID, "AVOID"));
        m.setDefault("auto");
        m.setDatatypeParser(new PageBreakShorthandParser());
        addPropertyMaker("page-break-inside", m);

        // pause
        m  = new ToBeImplementedProperty.Maker(PR_PAUSE);
        m.setInherited(false);
        m.setDefault("");
        addPropertyMaker("pause", m);

        // position
        m  = new EnumProperty.Maker(PR_POSITION);
        m.setInherited(false);
        m.addEnum("static", getEnumProperty(EN_STATIC, "STATIC"));
        m.addEnum("relative", getEnumProperty(EN_RELATIVE, "RELATIVE"));
        m.addEnum("absolute", getEnumProperty(EN_ABSOLUTE, "ABSOLUTE"));
        m.addEnum("fixed", getEnumProperty(EN_FIXED, "FIXED"));
        m.setDefault("static");
        m.setDatatypeParser(new PositionShorthandParser());
        addPropertyMaker("position", m);

        // size
        m  = new ToBeImplementedProperty.Maker(PR_SIZE);
        m.setInherited(false);
        m.setDefault("auto");
        addPropertyMaker("size", m);

        // vertical-align
        m  = new LengthProperty.Maker(PR_VERTICAL_ALIGN);
        m.setInherited(false);
        m.addEnum("baseline", getEnumProperty(EN_BASELINE, "BASELINE"));
        m.addEnum("middle", getEnumProperty(EN_MIDDLE, "MIDDLE"));
        m.addEnum("sub", getEnumProperty(EN_SUB, "SUB"));
        m.addEnum("super", getEnumProperty(EN_SUPER, "SUPER"));
        m.addEnum("text-top", getEnumProperty(EN_TEXT_TOP, "TEXT_TOP"));
        m.addEnum("text-bottom", getEnumProperty(EN_TEXT_BOTTOM, "TEXT_BOTTOM"));
        m.addEnum("top", getEnumProperty(EN_TOP, "TOP"));
        m.addEnum("bottom", getEnumProperty(EN_BOTTOM, "BOTTOM"));
        m.setDatatypeParser(new VerticalAlignShorthandParser());
        m.setDefault("baseline");
        m.setPercentBase(LengthBase.ALIGNMENT_ADJUST);
        addPropertyMaker("vertical-align", m);

        // white-space
        m = new EnumProperty.Maker(PR_WHITE_SPACE);
        m.setInherited(true);
        m.addEnum("normal", getEnumProperty(EN_NORMAL, "NORMAL"));
        m.addEnum("pre", getEnumProperty(EN_PRE, "PRE"));
        m.addEnum("nowrap", getEnumProperty(EN_NO_WRAP, "NO_WRAP"));
        m.setDefault("normal");
        m.setDatatypeParser(new WhiteSpaceShorthandParser());
        addPropertyMaker("white-space", m);

        // xml:lang
        m  = new StringProperty.Maker(PR_XML_LANG);
        m.setInherited(true);
        m.setDefault("");
        m.setDatatypeParser(new XMLLangShorthandParser());
        addPropertyMaker("xml:lang", m);

        // xml:base
        m  = new URIProperty.Maker(PR_X_XML_BASE);
        m.setInherited(true);
        m.setDefault("");
        addPropertyMaker("xml:base", m);

       }