Ignore:
Timestamp:
2013-06-11T01:01:28+02:00 (11 years ago)
Author:
Don-vip
Message:

fix #8742 - update svgsalamander to release 0.1.18+patch (fix bug SVGSALAMANDER-26) -> allow to open more SVG files

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/com/kitfox/svg/Circle.java

    r4256 r6002  
    11/*
    2  * Rect.java
     2 * SVG Salamander
     3 * Copyright (c) 2004, Mark McKay
     4 * All rights reserved.
    35 *
     6 * Redistribution and use in source and binary forms, with or
     7 * without modification, are permitted provided that the following
     8 * conditions are met:
    49 *
    5  *  The Salamander Project - 2D and 3D graphics libraries in Java
    6  *  Copyright (C) 2004 Mark McKay
     10 *   - Redistributions of source code must retain the above
     11 *     copyright notice, this list of conditions and the following
     12 *     disclaimer.
     13 *   - Redistributions in binary form must reproduce the above
     14 *     copyright notice, this list of conditions and the following
     15 *     disclaimer in the documentation and/or other materials
     16 *     provided with the distribution.
    717 *
    8  *  This library is free software; you can redistribute it and/or
    9  *  modify it under the terms of the GNU Lesser General Public
    10  *  License as published by the Free Software Foundation; either
    11  *  version 2.1 of the License, or (at your option) any later version.
    12  *
    13  *  This library is distributed in the hope that it will be useful,
    14  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
    15  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    16  *  Lesser General Public License for more details.
    17  *
    18  *  You should have received a copy of the GNU Lesser General Public
    19  *  License along with this library; if not, write to the Free Software
    20  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
    21  *
    22  *  Mark McKay can be contacted at mark@kitfox.com.  Salamander and other
    23  *  projects can be found at http://www.kitfox.com
     18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     19 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     20 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
     21 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
     22 * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
     23 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
     24 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
     25 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     26 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
     27 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     28 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
     29 * OF THE POSSIBILITY OF SUCH DAMAGE.
     30 *
     31 * Mark McKay can be contacted at mark@kitfox.com.  Salamander and other
     32 * projects can be found at http://www.kitfox.com
    2433 *
    2534 * Created on January 26, 2004, 5:25 PM
    2635 */
    27 
    2836package com.kitfox.svg;
    2937
     
    3846 * @author <a href="mailto:mark@kitfox.com">Mark McKay</a>
    3947 */
    40 public class Circle extends ShapeElement 
     48public class Circle extends ShapeElement
    4149{
    4250
     51    public static final String TAG_NAME = "circle";
    4352    float cx = 0f;
    4453    float cy = 0f;
    4554    float r = 0f;
    46 
    47 
    4855    Ellipse2D.Float circle = new Ellipse2D.Float();
    4956
    50     /** Creates a new instance of Rect */
    51     public Circle() {
     57    /**
     58     * Creates a new instance of Rect
     59     */
     60    public Circle()
     61    {
    5262    }
    53 /*
    54     public void loaderStartElement(SVGLoaderHelper helper, Attributes attrs, SVGElement parent)
     63
     64    public String getTagName()
    5565    {
    56                 //Load style string
    57         super.loaderStartElement(helper, attrs, parent);
     66        return TAG_NAME;
     67    }
    5868
    59         String cx = attrs.getValue("cx");
    60         String cy = attrs.getValue("cy");
    61         String r = attrs.getValue("r");
    62 
    63         this.cx = XMLParseUtil.parseFloat(cx);
    64         this.cy = XMLParseUtil.parseFloat(cy);
    65         this.r = XMLParseUtil.parseFloat(r);
    66 
    67         build();
    68        
    69         //setBounds(this.cx - this.r, this.cy - this.r, this.r * 2.0, this.r * 2.0);
    70     }
    71 */
    72     /*
    73     public void loaderEndElement(SVGLoaderHelper helper)
    74     {
    75 //        super.loaderEndElement(helper);
    76 
    77 //        build();
    78     }
    79      */
    80    
    8169    protected void build() throws SVGException
    8270    {
    8371        super.build();
    84        
     72
    8573        StyleAttribute sty = new StyleAttribute();
    86        
    87         if (getPres(sty.setName("cx"))) cx = sty.getFloatValueWithUnits();
    88        
    89         if (getPres(sty.setName("cy"))) cy = sty.getFloatValueWithUnits();
    90        
    91         if (getPres(sty.setName("r"))) r = sty.getFloatValueWithUnits();
    92        
     74
     75        if (getPres(sty.setName("cx")))
     76        {
     77            cx = sty.getFloatValueWithUnits();
     78        }
     79
     80        if (getPres(sty.setName("cy")))
     81        {
     82            cy = sty.getFloatValueWithUnits();
     83        }
     84
     85        if (getPres(sty.setName("r")))
     86        {
     87            r = sty.getFloatValueWithUnits();
     88        }
     89
    9390        circle.setFrame(cx - r, cy - r, r * 2f, r * 2f);
    9491    }
     
    112109
    113110    /**
    114      * Updates all attributes in this diagram associated with a time event.
    115      * Ie, all attributes with track information.
     111     * Updates all attributes in this diagram associated with a time event. Ie,
     112     * all attributes with track information.
     113     *
    116114     * @return - true if this node has changed state as a result of the time
    117115     * update
     
    125123        StyleAttribute sty = new StyleAttribute();
    126124        boolean shapeChange = false;
    127        
     125
    128126        if (getPres(sty.setName("cx")))
    129127        {
     
    135133            }
    136134        }
    137        
     135
    138136        if (getPres(sty.setName("cy")))
    139137        {
     
    145143            }
    146144        }
    147        
     145
    148146        if (getPres(sty.setName("r")))
    149147        {
     
    155153            }
    156154        }
    157        
     155
    158156        if (shapeChange)
    159157        {
     
    162160//            return true;
    163161        }
    164        
     162
    165163        return changeState || shapeChange;
    166164    }
    167    
    168165}
    169 
    170 
    171 
Note: See TracChangeset for help on using the changeset viewer.