00001 // -*- c++ -*- 00002 // Generated by gtkmmproc -- DO NOT MODIFY! 00003 #ifndef _LIBGNOMECANVASMM_SHAPE_H 00004 #define _LIBGNOMECANVASMM_SHAPE_H 00005 00006 00007 #include <glibmm.h> 00008 00009 // -*- C++ -*- 00010 /* $Id: shape.hg,v 1.8 2002/08/08 22:28:16 cactus Exp $ */ 00011 00012 /* shape.h 00013 * 00014 * 00015 * Copyright (C) 2002 The libgnomecanvasmm Development Team 00016 * 00017 * This library is free software; you can redistribute it and/or 00018 * modify it under the terms of the GNU Library General Public 00019 * License as published by the Free Software Foundation; either 00020 * version 2 of the License, or (at your option) any later version. 00021 * 00022 * This library is distributed in the hope that it will be useful, 00023 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00024 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00025 * Library General Public License for more details. 00026 * 00027 * You should have received a copy of the GNU Library General Public 00028 * License along with this library; if not, write to the Free 00029 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00030 */ 00031 00032 #include <libgnomecanvasmm/item.h> 00033 #include <libgnomecanvas/gnome-canvas-shape.h> 00034 #include <libart_lgpl/art_vpath_dash.h> //For ArtVpathDash 00035 00036 00037 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00038 typedef struct _GnomeCanvasShape GnomeCanvasShape; 00039 typedef struct _GnomeCanvasShapeClass GnomeCanvasShapeClass; 00040 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 00041 00042 00043 namespace Gnome 00044 { 00045 00046 namespace Canvas 00047 { class Shape_Class; } // namespace Canvas 00048 00049 } // namespace Gnome 00050 namespace Gnome 00051 { 00052 00053 namespace Canvas 00054 { 00055 00056 00057 class Shape : public Item 00058 { 00059 public: 00060 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00061 typedef Shape CppObjectType; 00062 typedef Shape_Class CppClassType; 00063 typedef GnomeCanvasShape BaseObjectType; 00064 typedef GnomeCanvasShapeClass BaseClassType; 00065 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 00066 00067 virtual ~Shape(); 00068 00069 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00070 00071 private: 00072 friend class Shape_Class; 00073 static CppClassType shape_class_; 00074 00075 // noncopyable 00076 Shape(const Shape&); 00077 Shape& operator=(const Shape&); 00078 00079 protected: 00080 explicit Shape(const Glib::ConstructParams& construct_params); 00081 explicit Shape(GnomeCanvasShape* castitem); 00082 00083 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 00084 00085 public: 00086 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00087 static GType get_type() G_GNUC_CONST; 00088 static GType get_base_type() G_GNUC_CONST; 00089 #endif 00090 00092 GnomeCanvasShape* gobj() { return reinterpret_cast<GnomeCanvasShape*>(gobject_); } 00093 00095 const GnomeCanvasShape* gobj() const { return reinterpret_cast<GnomeCanvasShape*>(gobject_); } 00096 00097 00098 public: 00099 //C++ methods used to invoke GTK+ virtual functions: 00100 00101 protected: 00102 //GTK+ Virtual Functions (override these to change behaviour): 00103 00104 //Default Signal Handlers:: 00105 00106 00107 private: 00108 00109 00110 public: 00111 00118 Glib::PropertyProxy_WriteOnly<Glib::ustring> property_fill_color() ; 00119 00120 00127 Glib::PropertyProxy<Gdk::Color> property_fill_color_gdk() ; 00128 00135 Glib::PropertyProxy_ReadOnly<Gdk::Color> property_fill_color_gdk() const; 00136 00143 Glib::PropertyProxy<guint> property_fill_color_rgba() ; 00144 00151 Glib::PropertyProxy_ReadOnly<guint> property_fill_color_rgba() const; 00152 00159 Glib::PropertyProxy_WriteOnly<Glib::ustring> property_outline_color() ; 00160 00161 00168 Glib::PropertyProxy<Gdk::Color> property_outline_color_gdk() ; 00169 00176 Glib::PropertyProxy_ReadOnly<Gdk::Color> property_outline_color_gdk() const; 00177 00184 Glib::PropertyProxy<guint> property_outline_color_rgba() ; 00185 00192 Glib::PropertyProxy_ReadOnly<guint> property_outline_color_rgba() const; 00193 00200 Glib::PropertyProxy< Glib::RefPtr<Gdk::Bitmap> > property_fill_stipple() ; 00201 00208 Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gdk::Bitmap> > property_fill_stipple() const; 00209 00216 Glib::PropertyProxy< Glib::RefPtr<Gdk::Bitmap> > property_outline_stipple() ; 00217 00224 Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gdk::Bitmap> > property_outline_stipple() const; 00225 00232 Glib::PropertyProxy<guint> property_width_pixels() ; 00233 00240 Glib::PropertyProxy_ReadOnly<guint> property_width_pixels() const; 00241 00248 Glib::PropertyProxy<double> property_width_units() ; 00249 00256 Glib::PropertyProxy_ReadOnly<double> property_width_units() const; 00257 00264 Glib::PropertyProxy<Gdk::CapStyle> property_cap_style() ; 00265 00272 Glib::PropertyProxy_ReadOnly<Gdk::CapStyle> property_cap_style() const; 00273 00280 Glib::PropertyProxy<Gdk::JoinStyle> property_join_style() ; 00281 00288 Glib::PropertyProxy_ReadOnly<Gdk::JoinStyle> property_join_style() const; 00289 00296 Glib::PropertyProxy<guint> property_wind() ; 00297 00304 Glib::PropertyProxy_ReadOnly<guint> property_wind() const; 00305 00312 Glib::PropertyProxy<double> property_miterlimit() ; 00313 00320 Glib::PropertyProxy_ReadOnly<double> property_miterlimit() const; 00321 00328 Glib::PropertyProxy<ArtVpathDash*> property_dash() ; 00329 00336 Glib::PropertyProxy_ReadOnly<ArtVpathDash*> property_dash() const; 00337 //TODO: Look at ArtVpathDash to see if it should be wrapped. 00338 00339 00340 }; 00341 00342 } /* namespace Canvas */ 00343 } /* namespace Gnome */ 00344 00345 00346 namespace Glib 00347 { 00353 Gnome::Canvas::Shape* wrap(GnomeCanvasShape* object, bool take_copy = false); 00354 } //namespace Glib 00355 00356 00357 #endif /* _LIBGNOMECANVASMM_SHAPE_H */ 00358