#define RenderedDocumentMarker_h
#include "core/dom/DocumentMarker.h"
+#include "platform/geometry/LayoutRect.h"
-namespace WebCore {
+namespace blink {
-class RenderedDocumentMarker : public DocumentMarker {
+class RenderedDocumentMarker FINAL : public DocumentMarker {
public:
-
- explicit RenderedDocumentMarker(const DocumentMarker& marker)
- : DocumentMarker(marker), m_renderedRect(invalidMarkerRect())
+ static PassOwnPtrWillBeRawPtr<RenderedDocumentMarker> create(const DocumentMarker& marker)
{
+ return adoptPtrWillBeNoop(new RenderedDocumentMarker(marker));
}
bool isRendered() const { return invalidMarkerRect() != m_renderedRect; }
void invalidate() { m_renderedRect = invalidMarkerRect(); }
private:
+ explicit RenderedDocumentMarker(const DocumentMarker& marker)
+ : DocumentMarker(marker)
+ , m_renderedRect(invalidMarkerRect())
+ {
+ }
+
static const LayoutRect& invalidMarkerRect()
{
static const LayoutRect rect = LayoutRect(-1, -1, -1, -1);
DEFINE_TYPE_CASTS(RenderedDocumentMarker, DocumentMarker, marker, true, true);
-} // namespace
-
-namespace WTF {
-
-template<>
-struct VectorTraits<WebCore::RenderedDocumentMarker> : SimpleClassVectorTraits<WebCore::RenderedDocumentMarker> { };
+} // namespace blink
-} // namespace WTF
+WTF_ALLOW_MOVE_INIT_AND_COMPARE_WITH_MEM_FUNCTIONS(blink::RenderedDocumentMarker);
#endif