| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. | 2 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * | 7 * |
| 8 * 1. Redistributions of source code must retain the above | 8 * 1. Redistributions of source code must retain the above |
| 9 * copyright notice, this list of conditions and the following | 9 * copyright notice, this list of conditions and the following |
| 10 * disclaimer. | 10 * disclaimer. |
| (...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 171 float radiusX = floatValueForLength(ellipse->radiusX(), boxWidth); | 171 float radiusX = floatValueForLength(ellipse->radiusX(), boxWidth); |
| 172 float radiusY = floatValueForLength(ellipse->radiusY(), boxHeight); | 172 float radiusY = floatValueForLength(ellipse->radiusY(), boxHeight); |
| 173 FloatPoint logicalCenter = physicalPointToLogical(FloatPoint(centerX, ce
nterY), logicalBoxSize.height(), writingMode); | 173 FloatPoint logicalCenter = physicalPointToLogical(FloatPoint(centerX, ce
nterY), logicalBoxSize.height(), writingMode); |
| 174 FloatSize logicalRadii = physicalSizeToLogical(FloatSize(radiusX, radius
Y), writingMode); | 174 FloatSize logicalRadii = physicalSizeToLogical(FloatSize(radiusX, radius
Y), writingMode); |
| 175 | 175 |
| 176 shape = createEllipseShape(logicalCenter, logicalRadii); | 176 shape = createEllipseShape(logicalCenter, logicalRadii); |
| 177 break; | 177 break; |
| 178 } | 178 } |
| 179 | 179 |
| 180 case BasicShape::BasicShapeEllipseType: { | 180 case BasicShape::BasicShapeEllipseType: { |
| 181 // FIXME implement layout. | 181 const BasicShapeEllipse* ellipse = static_cast<const BasicShapeEllipse*>
(basicShape); |
| 182 shape = createRectangleShape(FloatRect(0, 0, boxWidth, boxHeight), Float
Size(0, 0)); | 182 FloatPoint center = floatPointForCenterCoordinate(ellipse->centerX(), el
lipse->centerY(), FloatSize(boxWidth, boxHeight)); |
| 183 float radiusX = ellipse->floatValueForRadiusInBox(ellipse->radiusX(), ce
nter.x(), boxWidth); |
| 184 float radiusY = ellipse->floatValueForRadiusInBox(ellipse->radiusY(), ce
nter.y(), boxHeight); |
| 185 FloatPoint logicalCenter = physicalPointToLogical(center, logicalBoxSize
.height(), writingMode); |
| 186 |
| 187 shape = createEllipseShape(logicalCenter, FloatSize(radiusX, radiusY)); |
| 183 break; | 188 break; |
| 184 } | 189 } |
| 185 | 190 |
| 186 case BasicShape::BasicShapePolygonType: { | 191 case BasicShape::BasicShapePolygonType: { |
| 187 const BasicShapePolygon* polygon = static_cast<const BasicShapePolygon*>
(basicShape); | 192 const BasicShapePolygon* polygon = static_cast<const BasicShapePolygon*>
(basicShape); |
| 188 const Vector<Length>& values = polygon->values(); | 193 const Vector<Length>& values = polygon->values(); |
| 189 size_t valuesSize = values.size(); | 194 size_t valuesSize = values.size(); |
| 190 ASSERT(!(valuesSize % 2)); | 195 ASSERT(!(valuesSize % 2)); |
| 191 OwnPtr<Vector<FloatPoint> > vertices = adoptPtr(new Vector<FloatPoint>(v
aluesSize / 2)); | 196 OwnPtr<Vector<FloatPoint> > vertices = adoptPtr(new Vector<FloatPoint>(v
aluesSize / 2)); |
| 192 for (unsigned i = 0; i < valuesSize; i += 2) { | 197 for (unsigned i = 0; i < valuesSize; i += 2) { |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 275 FloatRoundedRect bounds(rect, roundedRect.radii()); | 280 FloatRoundedRect bounds(rect, roundedRect.radii()); |
| 276 OwnPtr<Shape> shape = createBoxShape(bounds); | 281 OwnPtr<Shape> shape = createBoxShape(bounds); |
| 277 shape->m_writingMode = writingMode; | 282 shape->m_writingMode = writingMode; |
| 278 shape->m_margin = floatValueForLength(margin, 0); | 283 shape->m_margin = floatValueForLength(margin, 0); |
| 279 shape->m_padding = floatValueForLength(padding, 0); | 284 shape->m_padding = floatValueForLength(padding, 0); |
| 280 | 285 |
| 281 return shape.release(); | 286 return shape.release(); |
| 282 } | 287 } |
| 283 | 288 |
| 284 } // namespace WebCore | 289 } // namespace WebCore |
| OLD | NEW |