#ifndef TileGridTile_h
#define TileGridTile_h
#include "IntRect.h"
#include <wtf/RefCounted.h>
#include <wtf/RefPtr.h>
#include <wtf/RetainPtr.h>
@class TileLayer;
namespace WebCore {
class TileGrid;
class TileGridTile : public RefCounted<TileGridTile> {
public:
static PassRefPtr<TileGridTile> create(TileGrid* grid, const IntRect& rect) { return adoptRef<TileGridTile>(new TileGridTile(grid, rect)); }
~TileGridTile();
TileLayer* tileLayer() const { return m_tileLayer.get(); }
void invalidateRect(const IntRect& rectInSurface);
IntRect rect() const { return m_rect; }
void setRect(const IntRect& tileRect);
void showBorder(bool);
private:
TileGridTile(TileGrid*, const IntRect&);
TileGrid* m_tileGrid;
RetainPtr<TileLayer> m_tileLayer;
IntRect m_rect;
};
}
#endif