hom_point_drawer.h

00001
00002 /***************************************************************************
00003  *  hom_point_drawer.h - Drawer for the HomPoint class
00004  *
00005  *  Created: Thu Oct 09 14:31:45 2008
00006  *  Copyright  2008  Daniel Beck
00007  *
00008  ****************************************************************************/
00009
00010 /*  This program is free software; you can redistribute it and/or modify
00011  *  it under the terms of the GNU General Public License as published by
00012  *  the Free Software Foundation; either version 2 of the License, or
00013  *  (at your option) any later version. A runtime exception applies to
00014  *  this software (see LICENSE.GPL_WRE file mentioned below for details).
00015  *
00016  *  This program is distributed in the hope that it will be useful,
00017  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00018  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00019  *  GNU Library General Public License for more details.
00020  *
00021  *  Read the full text in the LICENSE.GPL_WRE file in the doc directory.
00022  */
00023
00024 #ifndef __GEOMETRY_HOM_POINT_DRAWER_H_
00025 #define __GEOMETRY_HOM_POINT_DRAWER_H_
00026 
00027 #include <geometry/gtk/geom_drawer.h>
00028
00029 namespace fawkes {
00030
00031 class HomPoint;
00032
00033 class HomPointDrawer : public GeomDrawer
00034 {
00035  public:
00036   HomPointDrawer(HomPoint& p);
00037   HomPointDrawer(const HomPoint& p);
00038   virtual ~HomPointDrawer();
00039
00040   void set_point_size(float s);
00041
00042   virtual void draw(Cairo::RefPtr<Cairo::Context>& context);
00043
00044  protected:
00045   float m_point_size;
00046
00047  private:
00048   fawkes::HomPoint* m_hom_point;
00049   bool m_own_point;
00050 };
00051
00052 } // end namespace fawkes
00053
00054 #endif /* __GEOMETRY_HOM_POINT_DRAWER_H_ */