line.h

Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // Generated by gtkmmproc -- DO NOT MODIFY!
00003 #ifndef _LIBGNOMECANVASMM_LINE_H
00004 #define _LIBGNOMECANVASMM_LINE_H
00005 
00006 
00007 #include <glibmm.h>
00008 
00009 /* $Id: line.hg,v 1.12 2004/05/02 10:32:35 murrayc Exp $ */
00010 
00011 /* line.h
00012  * 
00013  * Copyright (C) 1998 EMC Capital Management Inc.
00014  * Developed by Havoc Pennington <hp@pobox.com>
00015  *
00016  * Copyright (C) 1999 The Gtk-- Development Team
00017  *
00018  * This library is free software; you can redistribute it and/or
00019  * modify it under the terms of the GNU Library General Public
00020  * License as published by the Free Software Foundation; either
00021  * version 2 of the License, or (at your option) any later version.
00022  *
00023  * This library is distributed in the hope that it will be useful,
00024  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00025  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00026  * Library General Public License for more details.
00027  *
00028  * You should have received a copy of the GNU Library General Public
00029  * License along with this library; if not, write to the Free
00030  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00031  */
00032 
00033 #include <libgnomecanvasmm/item.h>
00034 #include <libgnomecanvas/gnome-canvas-line.h>
00035 #include <libgnomecanvas/gnome-canvas-util.h>
00036 #include <libgnomecanvas/libgnomecanvas.h>
00037 #include <vector>
00038 
00039 
00040 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00041 typedef struct _GnomeCanvasLine GnomeCanvasLine;
00042 typedef struct _GnomeCanvasLineClass GnomeCanvasLineClass;
00043 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00044 
00045 
00046 namespace Gnome
00047 {
00048 
00049 namespace Canvas
00050 { class Line_Class; } // namespace Canvas
00051 
00052 } // namespace Gnome
00053 namespace Gnome
00054 {
00055 
00056 namespace Canvas
00057 {
00058 
00059 class GnomeGroup;
00060 
00061 // Sample use of Gnome_CanvasPoints :
00062 
00063 //   Gnome_CanvasPoints points;
00064 //  
00065 //   points.push_back(Art::Point(0, 0));
00066 //   points.push_back(Art::Point(100,0));
00067 //   points.push_back(Art::Point(0,100));
00068 //   points.push_back(Art::Point(100,100));
00069 //
00070 //   line = new Gnome_CanvasLine(&m_canvasgroup,points);
00071 
00072 //using std::vector;
00073 
00078 class Points : public std::vector<Art::Point>
00079 {
00080 public:
00081   Points(size_type nbpoints = 0);
00082   explicit Points(GnomeCanvasPoints* castitem);
00083   ~Points();
00084 
00085 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00086   typedef  GnomeCanvasPoints BaseObjectType;  //So that this works with tempaltes that are intended for normal BoxedTypes.
00087 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00088 
00089   operator bool() const;
00090   bool is_null() const;
00091 
00092   const GnomeCanvasPoints* gobj() const { return _gobj(); }
00093   GnomeCanvasPoints* gobj() { return _gobj(); }
00094   static GType get_type () { return GNOME_TYPE_CANVAS_POINTS; }
00095 
00096 protected:
00097   GnomeCanvasPoints* _gobj() const;
00098   mutable GnomeCanvasPoints* points_;
00099   mutable bool owned_;
00100 };
00101 
00102 
00103 class Line : public Item
00104 {
00105   public:
00106 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00107   typedef Line CppObjectType;
00108   typedef Line_Class CppClassType;
00109   typedef GnomeCanvasLine BaseObjectType;
00110   typedef GnomeCanvasLineClass BaseClassType;
00111 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00112 
00113   virtual ~Line();
00114 
00115 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00116 
00117 private:
00118   friend class Line_Class;
00119   static CppClassType line_class_;
00120 
00121   // noncopyable
00122   Line(const Line&);
00123   Line& operator=(const Line&);
00124 
00125 protected:
00126   explicit Line(const Glib::ConstructParams& construct_params);
00127   explicit Line(GnomeCanvasLine* castitem);
00128 
00129 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00130 
00131 public:
00132 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00133   static GType get_type()      G_GNUC_CONST;
00134   static GType get_base_type() G_GNUC_CONST;
00135 #endif
00136 
00138   GnomeCanvasLine*       gobj()       { return reinterpret_cast<GnomeCanvasLine*>(gobject_); }
00139 
00141   const GnomeCanvasLine* gobj() const { return reinterpret_cast<GnomeCanvasLine*>(gobject_); }
00142 
00143 
00144 public:
00145   //C++ methods used to invoke GTK+ virtual functions:
00146 #ifdef GLIBMM_VFUNCS_ENABLED
00147 #endif //GLIBMM_VFUNCS_ENABLED
00148 
00149 protected:
00150   //GTK+ Virtual Functions (override these to change behaviour):
00151 #ifdef GLIBMM_VFUNCS_ENABLED
00152 #endif //GLIBMM_VFUNCS_ENABLED
00153 
00154   //Default Signal Handlers::
00155 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00156 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00157 
00158 
00159 private:
00160 
00161 public:
00162   explicit Line(Group& parent);
00163   Line(Group& parent, const Points& points);
00164 
00165   #ifdef GLIBMM_PROPERTIES_ENABLED
00166 
00172   Glib::PropertyProxy<Points> property_points() ;
00173 #endif //#GLIBMM_PROPERTIES_ENABLED
00174 
00175 #ifdef GLIBMM_PROPERTIES_ENABLED
00176 
00182   Glib::PropertyProxy_ReadOnly<Points> property_points() const;
00183 #endif //#GLIBMM_PROPERTIES_ENABLED
00184 
00185   #ifdef GLIBMM_PROPERTIES_ENABLED
00186 
00192   Glib::PropertyProxy<Glib::ustring> property_fill_color() ;
00193 #endif //#GLIBMM_PROPERTIES_ENABLED
00194 
00195 #ifdef GLIBMM_PROPERTIES_ENABLED
00196 
00202   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_fill_color() const;
00203 #endif //#GLIBMM_PROPERTIES_ENABLED
00204 
00205   #ifdef GLIBMM_PROPERTIES_ENABLED
00206 
00212   Glib::PropertyProxy<Gdk::Color> property_fill_color_gdk() ;
00213 #endif //#GLIBMM_PROPERTIES_ENABLED
00214 
00215 #ifdef GLIBMM_PROPERTIES_ENABLED
00216 
00222   Glib::PropertyProxy_ReadOnly<Gdk::Color> property_fill_color_gdk() const;
00223 #endif //#GLIBMM_PROPERTIES_ENABLED
00224 
00225   #ifdef GLIBMM_PROPERTIES_ENABLED
00226 
00232   Glib::PropertyProxy<guint> property_fill_color_rgba() ;
00233 #endif //#GLIBMM_PROPERTIES_ENABLED
00234 
00235 #ifdef GLIBMM_PROPERTIES_ENABLED
00236 
00242   Glib::PropertyProxy_ReadOnly<guint> property_fill_color_rgba() const;
00243 #endif //#GLIBMM_PROPERTIES_ENABLED
00244 
00245   #ifdef GLIBMM_PROPERTIES_ENABLED
00246 
00252   Glib::PropertyProxy< Glib::RefPtr<Gdk::Bitmap> > property_fill_stipple() ;
00253 #endif //#GLIBMM_PROPERTIES_ENABLED
00254 
00255 #ifdef GLIBMM_PROPERTIES_ENABLED
00256 
00262   Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gdk::Bitmap> > property_fill_stipple() const;
00263 #endif //#GLIBMM_PROPERTIES_ENABLED
00264 
00265   #ifdef GLIBMM_PROPERTIES_ENABLED
00266 
00272   Glib::PropertyProxy<guint> property_width_pixels() ;
00273 #endif //#GLIBMM_PROPERTIES_ENABLED
00274 
00275 #ifdef GLIBMM_PROPERTIES_ENABLED
00276 
00282   Glib::PropertyProxy_ReadOnly<guint> property_width_pixels() const;
00283 #endif //#GLIBMM_PROPERTIES_ENABLED
00284 
00285   #ifdef GLIBMM_PROPERTIES_ENABLED
00286 
00292   Glib::PropertyProxy<double> property_width_units() ;
00293 #endif //#GLIBMM_PROPERTIES_ENABLED
00294 
00295 #ifdef GLIBMM_PROPERTIES_ENABLED
00296 
00302   Glib::PropertyProxy_ReadOnly<double> property_width_units() const;
00303 #endif //#GLIBMM_PROPERTIES_ENABLED
00304 
00305   #ifdef GLIBMM_PROPERTIES_ENABLED
00306 
00312   Glib::PropertyProxy<Gdk::CapStyle> property_cap_style() ;
00313 #endif //#GLIBMM_PROPERTIES_ENABLED
00314 
00315 #ifdef GLIBMM_PROPERTIES_ENABLED
00316 
00322   Glib::PropertyProxy_ReadOnly<Gdk::CapStyle> property_cap_style() const;
00323 #endif //#GLIBMM_PROPERTIES_ENABLED
00324 
00325   #ifdef GLIBMM_PROPERTIES_ENABLED
00326 
00332   Glib::PropertyProxy<Gdk::JoinStyle> property_join_style() ;
00333 #endif //#GLIBMM_PROPERTIES_ENABLED
00334 
00335 #ifdef GLIBMM_PROPERTIES_ENABLED
00336 
00342   Glib::PropertyProxy_ReadOnly<Gdk::JoinStyle> property_join_style() const;
00343 #endif //#GLIBMM_PROPERTIES_ENABLED
00344 
00345   #ifdef GLIBMM_PROPERTIES_ENABLED
00346 
00352   Glib::PropertyProxy<Gdk::LineStyle> property_line_style() ;
00353 #endif //#GLIBMM_PROPERTIES_ENABLED
00354 
00355 #ifdef GLIBMM_PROPERTIES_ENABLED
00356 
00362   Glib::PropertyProxy_ReadOnly<Gdk::LineStyle> property_line_style() const;
00363 #endif //#GLIBMM_PROPERTIES_ENABLED
00364 
00365   #ifdef GLIBMM_PROPERTIES_ENABLED
00366 
00372   Glib::PropertyProxy<bool> property_first_arrowhead() ;
00373 #endif //#GLIBMM_PROPERTIES_ENABLED
00374 
00375 #ifdef GLIBMM_PROPERTIES_ENABLED
00376 
00382   Glib::PropertyProxy_ReadOnly<bool> property_first_arrowhead() const;
00383 #endif //#GLIBMM_PROPERTIES_ENABLED
00384 
00385   #ifdef GLIBMM_PROPERTIES_ENABLED
00386 
00392   Glib::PropertyProxy<bool> property_last_arrowhead() ;
00393 #endif //#GLIBMM_PROPERTIES_ENABLED
00394 
00395 #ifdef GLIBMM_PROPERTIES_ENABLED
00396 
00402   Glib::PropertyProxy_ReadOnly<bool> property_last_arrowhead() const;
00403 #endif //#GLIBMM_PROPERTIES_ENABLED
00404 
00405   #ifdef GLIBMM_PROPERTIES_ENABLED
00406 
00412   Glib::PropertyProxy<bool> property_smooth() ;
00413 #endif //#GLIBMM_PROPERTIES_ENABLED
00414 
00415 #ifdef GLIBMM_PROPERTIES_ENABLED
00416 
00422   Glib::PropertyProxy_ReadOnly<bool> property_smooth() const;
00423 #endif //#GLIBMM_PROPERTIES_ENABLED
00424 
00425   #ifdef GLIBMM_PROPERTIES_ENABLED
00426 
00432   Glib::PropertyProxy<guint> property_spline_steps() ;
00433 #endif //#GLIBMM_PROPERTIES_ENABLED
00434 
00435 #ifdef GLIBMM_PROPERTIES_ENABLED
00436 
00442   Glib::PropertyProxy_ReadOnly<guint> property_spline_steps() const;
00443 #endif //#GLIBMM_PROPERTIES_ENABLED
00444 
00445   #ifdef GLIBMM_PROPERTIES_ENABLED
00446 
00452   Glib::PropertyProxy<double> property_arrow_shape_a() ;
00453 #endif //#GLIBMM_PROPERTIES_ENABLED
00454 
00455 #ifdef GLIBMM_PROPERTIES_ENABLED
00456 
00462   Glib::PropertyProxy_ReadOnly<double> property_arrow_shape_a() const;
00463 #endif //#GLIBMM_PROPERTIES_ENABLED
00464 
00465   #ifdef GLIBMM_PROPERTIES_ENABLED
00466 
00472   Glib::PropertyProxy<double> property_arrow_shape_b() ;
00473 #endif //#GLIBMM_PROPERTIES_ENABLED
00474 
00475 #ifdef GLIBMM_PROPERTIES_ENABLED
00476 
00482   Glib::PropertyProxy_ReadOnly<double> property_arrow_shape_b() const;
00483 #endif //#GLIBMM_PROPERTIES_ENABLED
00484 
00485   #ifdef GLIBMM_PROPERTIES_ENABLED
00486 
00492   Glib::PropertyProxy<double> property_arrow_shape_c() ;
00493 #endif //#GLIBMM_PROPERTIES_ENABLED
00494 
00495 #ifdef GLIBMM_PROPERTIES_ENABLED
00496 
00502   Glib::PropertyProxy_ReadOnly<double> property_arrow_shape_c() const;
00503 #endif //#GLIBMM_PROPERTIES_ENABLED
00504 
00505 
00506 };
00507 
00508 } /* namespace Canvas */
00509 } /* namespace Gnome */
00510 
00511 
00512 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00513 namespace Glib
00514 {
00515 
00516 template <>
00517 class Value<Gnome::Canvas::Points> : public Value_Boxed<Gnome::Canvas::Points>
00518 {
00519 public:
00520   static GType value_type() G_GNUC_CONST;
00521 };
00522 
00523 } // namespace Glib
00524 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00525 
00526 
00527 namespace Glib
00528 {
00537   Gnome::Canvas::Line* wrap(GnomeCanvasLine* object, bool take_copy = false);
00538 } //namespace Glib
00539 
00540 
00541 #endif /* _LIBGNOMECANVASMM_LINE_H */
00542 

Generated on Mon Sep 17 19:43:41 2007 for libgnomecanvasmm by  doxygen 1.5.3