00001
00002
00003 #ifndef _LIBGNOMECANVASMM_POLYGON_H
00004 #define _LIBGNOMECANVASMM_POLYGON_H
00005
00006
00007 #include <glibmm.h>
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #include <libgnomecanvasmm/shape.h>
00032 #include <libgnomecanvasmm/line.h>
00033 #include <libgnomecanvas/gnome-canvas-polygon.h>
00034
00035
00036 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00037 typedef struct _GnomeCanvasPolygon GnomeCanvasPolygon;
00038 typedef struct _GnomeCanvasPolygonClass GnomeCanvasPolygonClass;
00039 #endif
00040
00041
00042 namespace Gnome
00043 {
00044
00045 namespace Canvas
00046 { class Polygon_Class; }
00047
00048 }
00049 namespace Gnome
00050 {
00051
00052 namespace Canvas
00053 {
00054
00055
00056 class Polygon : public Shape
00057 {
00058 public:
00059 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00060 typedef Polygon CppObjectType;
00061 typedef Polygon_Class CppClassType;
00062 typedef GnomeCanvasPolygon BaseObjectType;
00063 typedef GnomeCanvasPolygonClass BaseClassType;
00064 #endif
00065
00066 virtual ~Polygon();
00067
00068 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00069
00070 private:
00071 friend class Polygon_Class;
00072 static CppClassType polygon_class_;
00073
00074
00075 Polygon(const Polygon&);
00076 Polygon& operator=(const Polygon&);
00077
00078 protected:
00079 explicit Polygon(const Glib::ConstructParams& construct_params);
00080 explicit Polygon(GnomeCanvasPolygon* castitem);
00081
00082 #endif
00083
00084 public:
00085 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00086 static GType get_type() G_GNUC_CONST;
00087 static GType get_base_type() G_GNUC_CONST;
00088 #endif
00089
00091 GnomeCanvasPolygon* gobj() { return reinterpret_cast<GnomeCanvasPolygon*>(gobject_); }
00092
00094 const GnomeCanvasPolygon* gobj() const { return reinterpret_cast<GnomeCanvasPolygon*>(gobject_); }
00095
00096
00097 public:
00098
00099
00100 protected:
00101
00102
00103
00104
00105
00106 private:
00107
00108 public:
00109 Polygon(Group& parent, const Points& points);
00110 explicit Polygon(Group& parent);
00111
00118 Glib::PropertyProxy<Points> property_points() ;
00119
00126 Glib::PropertyProxy_ReadOnly<Points> property_points() const;
00127
00128
00129 };
00130
00131 }
00132 }
00133
00134
00135 namespace Glib
00136 {
00142 Gnome::Canvas::Polygon* wrap(GnomeCanvasPolygon* object, bool take_copy = false);
00143 }
00144
00145
00146 #endif
00147