Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Side by Side Diff: third_party/WebKit/Source/modules/canvas2d/HitRegion.h

Issue 1686483002: Oilpan: Remove most WillBe types from the code base (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef HitRegion_h 5 #ifndef HitRegion_h
6 #define HitRegion_h 6 #define HitRegion_h
7 7
8 #include "core/dom/Element.h" 8 #include "core/dom/Element.h"
9 #include "modules/canvas2d/HitRegionOptions.h" 9 #include "modules/canvas2d/HitRegionOptions.h"
10 #include "platform/graphics/Path.h" 10 #include "platform/graphics/Path.h"
11 #include "platform/heap/Handle.h" 11 #include "platform/heap/Handle.h"
12 #include "wtf/Noncopyable.h" 12 #include "wtf/Noncopyable.h"
13 #include "wtf/OwnPtr.h" 13 #include "wtf/OwnPtr.h"
14 #include "wtf/PassOwnPtr.h" 14 #include "wtf/PassOwnPtr.h"
15 #include "wtf/PassRefPtr.h" 15 #include "wtf/PassRefPtr.h"
16 #include "wtf/RefPtr.h" 16 #include "wtf/RefPtr.h"
17 17
18 namespace blink { 18 namespace blink {
19 19
20 class HitRegion final : public RefCountedWillBeGarbageCollectedFinalized<HitRegi on> { 20 class HitRegion final : public GarbageCollectedFinalized<HitRegion> {
21 public: 21 public:
22 static PassRefPtrWillBeRawPtr<HitRegion> create(const Path& path, const HitR egionOptions& options) 22 static RawPtr<HitRegion> create(const Path& path, const HitRegionOptions& op tions)
23 { 23 {
24 return adoptRefWillBeNoop(new HitRegion(path, options)); 24 return new HitRegion(path, options);
25 } 25 }
26 26
27 virtual ~HitRegion() { } 27 virtual ~HitRegion() { }
28 28
29 void removePixels(const Path&); 29 void removePixels(const Path&);
30 30
31 bool contains(const FloatPoint&) const; 31 bool contains(const FloatPoint&) const;
32 32
33 const String& id() const { return m_id; } 33 const String& id() const { return m_id; }
34 const Path& path() const { return m_path; } 34 const Path& path() const { return m_path; }
35 Element* control() const { return m_control.get(); } 35 Element* control() const { return m_control.get(); }
36 36
37 DECLARE_TRACE(); 37 DECLARE_TRACE();
38 38
39 private: 39 private:
40 HitRegion(const Path&, const HitRegionOptions&); 40 HitRegion(const Path&, const HitRegionOptions&);
41 41
42 String m_id; 42 String m_id;
43 RefPtrWillBeMember<Element> m_control; 43 Member<Element> m_control;
44 Path m_path; 44 Path m_path;
45 WindRule m_fillRule; 45 WindRule m_fillRule;
46 }; 46 };
47 47
48 class HitRegionManager final : public GarbageCollectedFinalized<HitRegionManager > { 48 class HitRegionManager final : public GarbageCollectedFinalized<HitRegionManager > {
49 WTF_MAKE_NONCOPYABLE(HitRegionManager); 49 WTF_MAKE_NONCOPYABLE(HitRegionManager);
50 public: 50 public:
51 static HitRegionManager* create() { return new HitRegionManager; } 51 static HitRegionManager* create() { return new HitRegionManager; }
52 ~HitRegionManager() { } 52 ~HitRegionManager() { }
53 53
54 void addHitRegion(PassRefPtrWillBeRawPtr<HitRegion>); 54 void addHitRegion(RawPtr<HitRegion>);
55 55
56 void removeHitRegion(HitRegion*); 56 void removeHitRegion(HitRegion*);
57 void removeHitRegionById(const String& id); 57 void removeHitRegionById(const String& id);
58 void removeHitRegionByControl(Element*); 58 void removeHitRegionByControl(Element*);
59 void removeHitRegionsInRect(const FloatRect&, const AffineTransform&); 59 void removeHitRegionsInRect(const FloatRect&, const AffineTransform&);
60 void removeAllHitRegions(); 60 void removeAllHitRegions();
61 61
62 HitRegion* getHitRegionById(const String& id) const; 62 HitRegion* getHitRegionById(const String& id) const;
63 HitRegion* getHitRegionByControl(Element*) const; 63 HitRegion* getHitRegionByControl(Element*) const;
64 HitRegion* getHitRegionAtPoint(const FloatPoint&) const; 64 HitRegion* getHitRegionAtPoint(const FloatPoint&) const;
65 65
66 unsigned getHitRegionsCount() const; 66 unsigned getHitRegionsCount() const;
67 67
68 DECLARE_TRACE(); 68 DECLARE_TRACE();
69 69
70 private: 70 private:
71 HitRegionManager() { } 71 HitRegionManager() { }
72 72
73 typedef WillBeHeapListHashSet<RefPtrWillBeMember<HitRegion>> HitRegionList; 73 typedef HeapListHashSet<Member<HitRegion>> HitRegionList;
74 typedef HitRegionList::const_reverse_iterator HitRegionIterator; 74 typedef HitRegionList::const_reverse_iterator HitRegionIterator;
75 typedef WillBeHeapHashMap<String, RefPtrWillBeMember<HitRegion>> HitRegionId Map; 75 typedef HeapHashMap<String, Member<HitRegion>> HitRegionIdMap;
76 typedef WillBeHeapHashMap<RefPtrWillBeMember<Element>, RefPtrWillBeMember<Hi tRegion>> HitRegionControlMap; 76 typedef HeapHashMap<Member<Element>, Member<HitRegion>> HitRegionControlMap;
77 77
78 HitRegionList m_hitRegionList; 78 HitRegionList m_hitRegionList;
79 HitRegionIdMap m_hitRegionIdMap; 79 HitRegionIdMap m_hitRegionIdMap;
80 HitRegionControlMap m_hitRegionControlMap; 80 HitRegionControlMap m_hitRegionControlMap;
81 }; 81 };
82 82
83 } // namespace blink 83 } // namespace blink
84 84
85 #endif 85 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698