#ifndef __POINT_H
#define __POINT_H

#include "graphic.h"
#include "circle.h"

class Point: public GObject
{
  public:
    Point( Screen* );
    Point( Screen*, int x0, int y0 );
    Point( Point& p );
    virtual ~Point( void );

    // from class GObject
    void saveBackground( void );
    void restoreBackground( void );
    void draw( void );
    void highlight( int radius = 2 );
    int  isOver( int x0, int y0 );
    virtual int North( void ) { return getY(); };
    virtual int South( void ) { return getY(); };
    virtual int East( void )  { return getX(); };
    virtual int West( void )  { return getX(); };

  private:
    Circle*  circle;
    Color background;
};
#endif //__POINT_H
