CollapsedBorderValue.h [plain text]
#ifndef CollapsedBorderValue_h
#define CollapsedBorderValue_h
#include "BorderValue.h"
namespace WebCore {
class CollapsedBorderValue {
public:
CollapsedBorderValue()
: m_precedence(BOFF)
{
}
CollapsedBorderValue(const CollapsedBorderValue& other)
: m_border(other.m_border)
, m_borderColor(other.m_borderColor)
, m_precedence(other.m_precedence)
{
}
CollapsedBorderValue(const BorderValue& b, Color c, EBorderPrecedence p)
: m_border(b)
, m_borderColor(c)
, m_precedence(p)
{
}
int width() const { return m_border.nonZero() ? m_border.width() : 0; }
EBorderStyle style() const { return m_border.style(); }
bool exists() const { return m_precedence != BOFF; }
const Color& color() const { return m_borderColor; }
bool isTransparent() const { return m_border.isTransparent(); }
EBorderPrecedence precedence() const { return m_precedence; }
bool isSameIgnoringColor(const CollapsedBorderValue& o) const
{
return m_border.width() == o.m_border.width() && m_border.style() == o.m_border.style() && m_precedence == o.m_precedence;
}
private:
BorderValue m_border;
Color m_borderColor;
EBorderPrecedence m_precedence;
};
}
#endif // CollapsedBorderValue_h