summaryrefslogtreecommitdiffstats
path: root/WebCore/rendering/style/ContentData.h
diff options
context:
space:
mode:
authorKristian Monsen <kristianm@google.com>2010-09-08 12:18:00 +0100
committerKristian Monsen <kristianm@google.com>2010-09-11 12:08:58 +0100
commit5ddde30071f639962dd557c453f2ad01f8f0fd00 (patch)
tree775803c4ab35af50aa5f5472cd1fb95fe9d5152d /WebCore/rendering/style/ContentData.h
parent3e63d9b33b753ca86d0765d1b3d711114ba9e34f (diff)
downloadexternal_webkit-5ddde30071f639962dd557c453f2ad01f8f0fd00.zip
external_webkit-5ddde30071f639962dd557c453f2ad01f8f0fd00.tar.gz
external_webkit-5ddde30071f639962dd557c453f2ad01f8f0fd00.tar.bz2
Merge WebKit at r66666 : Initial merge by git.
Change-Id: I57dedeb49859adc9c539e760f0e749768c66626f
Diffstat (limited to 'WebCore/rendering/style/ContentData.h')
-rw-r--r--WebCore/rendering/style/ContentData.h46
1 files changed, 26 insertions, 20 deletions
diff --git a/WebCore/rendering/style/ContentData.h b/WebCore/rendering/style/ContentData.h
index 5c3565e..4f964a2 100644
--- a/WebCore/rendering/style/ContentData.h
+++ b/WebCore/rendering/style/ContentData.h
@@ -2,7 +2,7 @@
* Copyright (C) 2000 Lars Knoll (knoll@kde.org)
* (C) 2000 Antti Koivisto (koivisto@kde.org)
* (C) 2000 Dirk Mueller (mueller@kde.org)
- * Copyright (C) 2003, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved.
+ * Copyright (C) 2003, 2005, 2006, 2007, 2008, 2010 Apple Inc. All rights reserved.
* Copyright (C) 2006 Graham Dennis (graham.dennis@gmail.com)
*
* This library is free software; you can redistribute it and/or
@@ -25,21 +25,18 @@
#ifndef ContentData_h
#define ContentData_h
-#include "RenderStyleConstants.h"
-#include <wtf/Forward.h>
-#include <wtf/Noncopyable.h>
-#include <wtf/PassRefPtr.h>
+#include "CounterContent.h"
+#include <wtf/OwnPtr.h>
+#include <wtf/PassOwnPtr.h>
namespace WebCore {
-class CounterContent;
class StyleImage;
struct ContentData : Noncopyable {
public:
ContentData()
: m_type(CONTENT_NONE)
- , m_next(0)
{
}
@@ -59,35 +56,44 @@ public:
bool dataEquivalent(const ContentData&) const;
- StyleImage* image() const { return m_content.m_image; }
+ StyleImage* image() const
+ {
+ ASSERT(isImage());
+ return m_content.m_image;
+ }
void setImage(PassRefPtr<StyleImage> image)
{
deleteContent();
m_type = CONTENT_OBJECT;
- m_content.m_image = image.releaseRef();
+ m_content.m_image = image.leakRef();
}
- StringImpl* text() const { return m_content.m_text; }
+ StringImpl* text() const
+ {
+ ASSERT(isText());
+ return m_content.m_text;
+ }
void setText(PassRefPtr<StringImpl> text)
{
deleteContent();
m_type = CONTENT_TEXT;
- m_content.m_text = text.releaseRef();
+ m_content.m_text = text.leakRef();
}
- CounterContent* counter() const { return m_content.m_counter; }
- void setCounter(CounterContent* counter)
+ CounterContent* counter() const
+ {
+ ASSERT(isCounter());
+ return m_content.m_counter;
+ }
+ void setCounter(PassOwnPtr<CounterContent> counter)
{
deleteContent();
m_type = CONTENT_COUNTER;
- m_content.m_counter = counter;
+ m_content.m_counter = counter.leakPtr();
}
- ContentData* next() const { return m_next; }
- void setNext(ContentData* next)
- {
- m_next = next;
- }
+ ContentData* next() const { return m_next.get(); }
+ void setNext(PassOwnPtr<ContentData> next) { m_next = next; }
private:
void deleteContent();
@@ -98,7 +104,7 @@ private:
StringImpl* m_text;
CounterContent* m_counter;
} m_content;
- ContentData* m_next;
+ OwnPtr<ContentData> m_next;
};
} // namespace WebCore