#ifndef RenderTableCol_h
#define RenderTableCol_h
#include "RenderBox.h"
namespace WebCore {
class RenderTable;
class RenderTableCol : public RenderBox {
public:
explicit RenderTableCol(Node*);
const RenderObjectChildList* children() const { return &m_children; }
RenderObjectChildList* children() { return &m_children; }
virtual void computePreferredLogicalWidths();
int span() const { return m_span; }
void setSpan(int span) { m_span = span; }
private:
virtual RenderObjectChildList* virtualChildren() { return children(); }
virtual const RenderObjectChildList* virtualChildren() const { return children(); }
virtual const char* renderName() const { return "RenderTableCol"; }
virtual bool isTableCol() const { return true; }
virtual void updateFromElement();
virtual bool isChildAllowed(RenderObject*, RenderStyle*) const;
virtual bool canHaveChildren() const;
virtual bool requiresLayer() const { return false; }
virtual IntRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer);
virtual void imageChanged(WrappedImagePtr, const IntRect* = 0);
RenderTable* table() const;
RenderObjectChildList m_children;
int m_span;
};
inline RenderTableCol* toRenderTableCol(RenderObject* object)
{
ASSERT(!object || object->isTableCol());
return static_cast<RenderTableCol*>(object);
}
inline const RenderTableCol* toRenderTableCol(const RenderObject* object)
{
ASSERT(!object || object->isTableCol());
return static_cast<const RenderTableCol*>(object);
}
void toRenderTableCol(const RenderTableCol*);
}
#endif