vmote       2003/07/13 17:41:35

  Modified:    src/java/org/apache/fop/fo/flow InstreamForeignObject.java
  Log:
  extract methods computeXOffset() and computeYOffset() from getInlineArea()
  
  Revision  Changes    Path
  1.2       +50 -40    
xml-fop/src/java/org/apache/fop/fo/flow/InstreamForeignObject.java
  
  Index: InstreamForeignObject.java
  ===================================================================
  RCS file: 
/home/cvs/xml-fop/src/java/org/apache/fop/fo/flow/InstreamForeignObject.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- InstreamForeignObject.java        11 Mar 2003 13:05:16 -0000      1.1
  +++ InstreamForeignObject.java        14 Jul 2003 00:41:35 -0000      1.2
  @@ -3,34 +3,34 @@
    * ============================================================================
    *                    The Apache Software License, Version 1.1
    * ============================================================================
  - * 
  + *
    * Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
  - * 
  + *
    * Redistribution and use in source and binary forms, with or without modifica-
    * tion, are permitted provided that the following conditions are met:
  - * 
  + *
    * 1. Redistributions of source code must retain the above copyright notice,
    *    this list of conditions and the following disclaimer.
  - * 
  + *
    * 2. Redistributions in binary form must reproduce the above copyright notice,
    *    this list of conditions and the following disclaimer in the documentation
    *    and/or other materials provided with the distribution.
  - * 
  + *
    * 3. The end-user documentation included with the redistribution, if any, must
    *    include the following acknowledgment: "This product includes software
    *    developed by the Apache Software Foundation (http://www.apache.org/)."
    *    Alternately, this acknowledgment may appear in the software itself, if
    *    and wherever such third-party acknowledgments normally appear.
  - * 
  + *
    * 4. The names "FOP" and "Apache Software Foundation" must not be used to
    *    endorse or promote products derived from this software without prior
    *    written permission. For written permission, please contact
    *    [EMAIL PROTECTED]
  - * 
  + *
    * 5. Products derived from this software may not be called "Apache", nor may
    *    "Apache" appear in their name, without prior written permission of the
    *    Apache Software Foundation.
  - * 
  + *
    * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
    * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
    * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
  @@ -42,12 +42,12 @@
    * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
    * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    * ============================================================================
  - * 
  + *
    * This software consists of voluntary contributions made by many individuals
    * on behalf of the Apache Software Foundation and was originally created by
    * James Tauber <[EMAIL PROTECTED]>. For more information on the Apache
    * Software Foundation, please see <http://www.apache.org/>.
  - */ 
  + */
   package org.apache.fop.fo.flow;
   
   // FOP
  @@ -254,37 +254,9 @@
               }
           }
   
  -        int xoffset = 0;
  -        int yoffset = 0;
  -        int da = properties.get("display-align").getEnum();
  -        switch (da) {
  -            case DisplayAlign.BEFORE:
  -                break;
  -            case DisplayAlign.AFTER:
  -                yoffset = bpd - cheight;
  -                break;
  -            case DisplayAlign.CENTER:
  -                yoffset = (bpd - cheight) / 2;
  -                break;
  -            case DisplayAlign.AUTO:
  -            default:
  -                break;
  -        }
  +        int xoffset = computeXOffset(ipd, cwidth);
  +        int yoffset = computeYOffset(bpd, cheight);
   
  -        int ta = properties.get("text-align").getEnum();
  -        switch (ta) {
  -            case TextAlign.CENTER:
  -                xoffset = (ipd - cwidth) / 2;
  -                break;
  -            case TextAlign.END:
  -                xoffset = ipd - cwidth;
  -                break;
  -            case TextAlign.START:
  -                break;
  -            case TextAlign.JUSTIFY:
  -            default:
  -                break;
  -        }
           Rectangle2D placement = new Rectangle2D.Float(xoffset, yoffset, cwidth, 
cheight);
   
           Document doc = child.getDocument();
  @@ -301,6 +273,44 @@
           areaCurrent.setOffset(0);
   
           return areaCurrent;
  +    }
  +
  +    private int computeXOffset (int ipd, int cwidth) {
  +        int xoffset = 0;
  +        int ta = properties.get("text-align").getEnum();
  +        switch (ta) {
  +            case TextAlign.CENTER:
  +                xoffset = (ipd - cwidth) / 2;
  +                break;
  +            case TextAlign.END:
  +                xoffset = ipd - cwidth;
  +                break;
  +            case TextAlign.START:
  +                break;
  +            case TextAlign.JUSTIFY:
  +            default:
  +                break;
  +        }
  +        return xoffset;
  +    }
  +
  +    private int computeYOffset(int bpd, int cheight) {
  +        int yoffset = 0;
  +        int da = properties.get("display-align").getEnum();
  +        switch (da) {
  +            case DisplayAlign.BEFORE:
  +                break;
  +            case DisplayAlign.AFTER:
  +                yoffset = bpd - cheight;
  +                break;
  +            case DisplayAlign.CENTER:
  +                yoffset = (bpd - cheight) / 2;
  +                break;
  +            case DisplayAlign.AUTO:
  +            default:
  +                break;
  +        }
  +        return yoffset;
       }
   
       /**
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to