Implement CSS `display: flow-root` (modern clearfix)
[WebKit-https.git] / Source / WebCore / rendering / style / StyleMultiColData.cpp
index 66e584c..5ffa6a9 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 1999 Antti Koivisto (koivisto@kde.org)
- * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved.
+ * Copyright (C) 2004-2013 Apple Inc. All rights reserved.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
 namespace WebCore {
 
 StyleMultiColData::StyleMultiColData()
-    : m_width(0)
-    , m_count(RenderStyle::initialColumnCount())
-    , m_gap(0)
-    , m_autoWidth(true)
-    , m_autoCount(true)
-    , m_normalGap(true)
-    , m_columnSpan(false)
-    , m_breakBefore(RenderStyle::initialPageBreak())
-    , m_breakAfter(RenderStyle::initialPageBreak())
-    , m_breakInside(RenderStyle::initialPageBreak())
+    : count(RenderStyle::initialColumnCount())
+    , autoWidth(true)
+    , autoCount(true)
+    , fill(static_cast<unsigned>(RenderStyle::initialColumnFill()))
+    , columnSpan(false)
+    , axis(static_cast<unsigned>(RenderStyle::initialColumnAxis()))
+    , progression(static_cast<unsigned>(RenderStyle::initialColumnProgression()))
 {
 }
 
-StyleMultiColData::StyleMultiColData(const StyleMultiColData& o)
+inline StyleMultiColData::StyleMultiColData(const StyleMultiColData& other)
     : RefCounted<StyleMultiColData>()
-    , m_width(o.m_width)
-    , m_count(o.m_count)
-    , m_gap(o.m_gap)
-    , m_rule(o.m_rule)
-    , m_visitedLinkColumnRuleColor(o.m_visitedLinkColumnRuleColor)
-    , m_autoWidth(o.m_autoWidth)
-    , m_autoCount(o.m_autoCount)
-    , m_normalGap(o.m_normalGap)
-    , m_columnSpan(o.m_columnSpan)
-    , m_breakBefore(o.m_breakBefore)
-    , m_breakAfter(o.m_breakAfter)
-    , m_breakInside(o.m_breakInside)
+    , width(other.width)
+    , count(other.count)
+    , rule(other.rule)
+    , visitedLinkColumnRuleColor(other.visitedLinkColumnRuleColor)
+    , autoWidth(other.autoWidth)
+    , autoCount(other.autoCount)
+    , fill(other.fill)
+    , columnSpan(other.columnSpan)
+    , axis(other.axis)
+    , progression(other.progression)
 {
 }
 
-bool StyleMultiColData::operator==(const StyleMultiColData& o) const
+Ref<StyleMultiColData> StyleMultiColData::copy() const
 {
-    return m_width == o.m_width && m_count == o.m_count && m_gap == o.m_gap
-           && m_rule == o.m_rule && m_visitedLinkColumnRuleColor == o.m_visitedLinkColumnRuleColor && m_breakBefore == o.m_breakBefore
-           && m_autoWidth == o.m_autoWidth && m_autoCount == o.m_autoCount && m_normalGap == o.m_normalGap
-           && m_columnSpan == o.m_columnSpan && m_breakAfter == o.m_breakAfter && m_breakInside == o.m_breakInside;
+    return adoptRef(*new StyleMultiColData(*this));
+}
+
+bool StyleMultiColData::operator==(const StyleMultiColData& other) const
+{
+    return width == other.width && count == other.count
+        && rule == other.rule && visitedLinkColumnRuleColor == other.visitedLinkColumnRuleColor
+        && autoWidth == other.autoWidth && autoCount == other.autoCount
+        && fill == other.fill && columnSpan == other.columnSpan
+        && axis == other.axis && progression == other.progression;
 }
 
 } // namespace WebCore