| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006, 2007, 2009, 2010, 2011, 2012 Apple Inc. All rights reserv
ed. | 2 * Copyright (C) 2006, 2007, 2009, 2010, 2011, 2012 Apple Inc. All rights reserv
ed. |
| 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 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 13 matching lines...) Expand all Loading... |
| 24 */ | 24 */ |
| 25 | 25 |
| 26 #ifndef CanvasRenderingContext2D_h | 26 #ifndef CanvasRenderingContext2D_h |
| 27 #define CanvasRenderingContext2D_h | 27 #define CanvasRenderingContext2D_h |
| 28 | 28 |
| 29 #include "bindings/v8/ScriptWrappable.h" | 29 #include "bindings/v8/ScriptWrappable.h" |
| 30 #include "core/css/CSSFontSelectorClient.h" | 30 #include "core/css/CSSFontSelectorClient.h" |
| 31 #include "core/html/canvas/Canvas2DContextAttributes.h" | 31 #include "core/html/canvas/Canvas2DContextAttributes.h" |
| 32 #include "core/html/canvas/CanvasPathMethods.h" | 32 #include "core/html/canvas/CanvasPathMethods.h" |
| 33 #include "core/html/canvas/CanvasRenderingContext.h" | 33 #include "core/html/canvas/CanvasRenderingContext.h" |
| 34 #include "core/html/canvas/HitRegion.h" |
| 34 #include "core/svg/SVGMatrixTearOff.h" | 35 #include "core/svg/SVGMatrixTearOff.h" |
| 35 #include "platform/fonts/Font.h" | 36 #include "platform/fonts/Font.h" |
| 36 #include "platform/graphics/Color.h" | 37 #include "platform/graphics/Color.h" |
| 37 #include "platform/geometry/FloatSize.h" | 38 #include "platform/geometry/FloatSize.h" |
| 38 #include "platform/graphics/GraphicsTypes.h" | 39 #include "platform/graphics/GraphicsTypes.h" |
| 39 #include "platform/graphics/ImageBuffer.h" | 40 #include "platform/graphics/ImageBuffer.h" |
| 40 #include "platform/graphics/Path.h" | 41 #include "platform/graphics/Path.h" |
| 41 #include "platform/transforms/AffineTransform.h" | 42 #include "platform/transforms/AffineTransform.h" |
| 42 #include "wtf/HashMap.h" | 43 #include "wtf/HashMap.h" |
| 43 #include "wtf/Vector.h" | 44 #include "wtf/Vector.h" |
| (...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 220 LineJoin getLineJoin() const { return state().m_lineJoin; } | 221 LineJoin getLineJoin() const { return state().m_lineJoin; } |
| 221 | 222 |
| 222 bool imageSmoothingEnabled() const; | 223 bool imageSmoothingEnabled() const; |
| 223 void setImageSmoothingEnabled(bool); | 224 void setImageSmoothingEnabled(bool); |
| 224 | 225 |
| 225 PassRefPtr<Canvas2DContextAttributes> getContextAttributes() const; | 226 PassRefPtr<Canvas2DContextAttributes> getContextAttributes() const; |
| 226 | 227 |
| 227 void drawFocusIfNeeded(Element*); | 228 void drawFocusIfNeeded(Element*); |
| 228 void drawFocusIfNeeded(Path2D*, Element*); | 229 void drawFocusIfNeeded(Path2D*, Element*); |
| 229 | 230 |
| 231 void addHitRegion(ExceptionState&); |
| 232 void addHitRegion(const Dictionary&, ExceptionState&); |
| 233 void removeHitRegion(const String& id); |
| 234 void clearHitRegions(); |
| 235 HitRegion* hitRegionAtPoint(const LayoutPoint&); |
| 236 unsigned hitRegionsCount() const; |
| 237 |
| 230 void loseContext(); | 238 void loseContext(); |
| 231 void restoreContext(); | 239 void restoreContext(); |
| 232 | 240 |
| 233 virtual void trace(Visitor*) OVERRIDE; | 241 virtual void trace(Visitor*) OVERRIDE; |
| 234 | 242 |
| 235 private: | 243 private: |
| 236 class State FINAL : public CSSFontSelectorClient { | 244 class State FINAL : public CSSFontSelectorClient { |
| 237 public: | 245 public: |
| 238 State(); | 246 State(); |
| 239 virtual ~State(); | 247 virtual ~State(); |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 326 void inflateStrokeRect(FloatRect&) const; | 334 void inflateStrokeRect(FloatRect&) const; |
| 327 | 335 |
| 328 template<class T> void fullCanvasCompositedFill(const T&); | 336 template<class T> void fullCanvasCompositedFill(const T&); |
| 329 template<class T> void fullCanvasCompositedStroke(const T&); | 337 template<class T> void fullCanvasCompositedStroke(const T&); |
| 330 template<class T> void fullCanvasCompositedDrawImage(T*, const FloatRect&, c
onst FloatRect&, CompositeOperator); | 338 template<class T> void fullCanvasCompositedDrawImage(T*, const FloatRect&, c
onst FloatRect&, CompositeOperator); |
| 331 | 339 |
| 332 void drawFocusIfNeededInternal(const Path&, Element*); | 340 void drawFocusIfNeededInternal(const Path&, Element*); |
| 333 bool focusRingCallIsValid(const Path&, Element*); | 341 bool focusRingCallIsValid(const Path&, Element*); |
| 334 void drawFocusRing(const Path&); | 342 void drawFocusRing(const Path&); |
| 335 | 343 |
| 344 void addHitRegionInternal(const HitRegionOptions&, ExceptionState&); |
| 345 |
| 336 void validateStateStack(); | 346 void validateStateStack(); |
| 337 | 347 |
| 338 virtual bool is2d() const OVERRIDE { return true; } | 348 virtual bool is2d() const OVERRIDE { return true; } |
| 339 virtual bool isAccelerated() const OVERRIDE; | 349 virtual bool isAccelerated() const OVERRIDE; |
| 340 virtual bool hasAlpha() const OVERRIDE { return m_hasAlpha; } | 350 virtual bool hasAlpha() const OVERRIDE { return m_hasAlpha; } |
| 341 | 351 |
| 342 virtual bool isTransformInvertible() const OVERRIDE { return state().m_inver
tibleCTM; } | 352 virtual bool isTransformInvertible() const OVERRIDE { return state().m_inver
tibleCTM; } |
| 343 | 353 |
| 344 virtual blink::WebLayer* platformLayer() const OVERRIDE; | 354 virtual blink::WebLayer* platformLayer() const OVERRIDE; |
| 345 | 355 |
| 346 WillBeHeapVector<OwnPtrWillBeMember<State> > m_stateStack; | 356 WillBeHeapVector<OwnPtrWillBeMember<State> > m_stateStack; |
| 357 OwnPtrWillBeMember<HitRegionManager> m_hitRegionManager; |
| 347 bool m_usesCSSCompatibilityParseMode; | 358 bool m_usesCSSCompatibilityParseMode; |
| 348 bool m_hasAlpha; | 359 bool m_hasAlpha; |
| 349 bool m_isContextLost; | 360 bool m_isContextLost; |
| 350 bool m_contextRestorable; | 361 bool m_contextRestorable; |
| 351 Canvas2DContextStorage m_storageMode; | 362 Canvas2DContextStorage m_storageMode; |
| 352 MutableStylePropertyMap m_fetchedFonts; | 363 MutableStylePropertyMap m_fetchedFonts; |
| 353 unsigned m_tryRestoreContextAttemptCount; | 364 unsigned m_tryRestoreContextAttemptCount; |
| 354 Timer<CanvasRenderingContext2D> m_dispatchContextLostEventTimer; | 365 Timer<CanvasRenderingContext2D> m_dispatchContextLostEventTimer; |
| 355 Timer<CanvasRenderingContext2D> m_dispatchContextRestoredEventTimer; | 366 Timer<CanvasRenderingContext2D> m_dispatchContextRestoredEventTimer; |
| 356 Timer<CanvasRenderingContext2D> m_tryRestoreContextEventTimer; | 367 Timer<CanvasRenderingContext2D> m_tryRestoreContextEventTimer; |
| 357 }; | 368 }; |
| 358 | 369 |
| 359 DEFINE_TYPE_CASTS(CanvasRenderingContext2D, CanvasRenderingContext, context, con
text->is2d(), context.is2d()); | 370 DEFINE_TYPE_CASTS(CanvasRenderingContext2D, CanvasRenderingContext, context, con
text->is2d(), context.is2d()); |
| 360 | 371 |
| 361 } // namespace WebCore | 372 } // namespace WebCore |
| 362 | 373 |
| 363 #endif | 374 #endif |
| OLD | NEW |