00001
00002
00003 #ifndef _LIBGNOMECANVASMM_LINE_H
00004 #define _LIBGNOMECANVASMM_LINE_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
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
00044
00045
00046 namespace Gnome
00047 {
00048
00049 namespace Canvas
00050 { class Line_Class; }
00051
00052 }
00053 namespace Gnome
00054 {
00055
00056 namespace Canvas
00057 {
00058
00059 class GnomeGroup;
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
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;
00087 #endif
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
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
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
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
00146 #ifdef GLIBMM_VFUNCS_ENABLED
00147 #endif //GLIBMM_VFUNCS_ENABLED
00148
00149 protected:
00150
00151 #ifdef GLIBMM_VFUNCS_ENABLED
00152 #endif //GLIBMM_VFUNCS_ENABLED
00153
00154
00155
00156
00157 private:
00158
00159 public:
00160 explicit Line(Group& parent);
00161 Line(Group& parent, const Points& points);
00162
00163 #ifdef GLIBMM_PROPERTIES_ENABLED
00164
00170 Glib::PropertyProxy<Points> property_points() ;
00171 #endif //#GLIBMM_PROPERTIES_ENABLED
00172
00173 #ifdef GLIBMM_PROPERTIES_ENABLED
00174
00180 Glib::PropertyProxy_ReadOnly<Points> property_points() const;
00181 #endif //#GLIBMM_PROPERTIES_ENABLED
00182
00183 #ifdef GLIBMM_PROPERTIES_ENABLED
00184
00190 Glib::PropertyProxy<Glib::ustring> property_fill_color() ;
00191 #endif //#GLIBMM_PROPERTIES_ENABLED
00192
00193 #ifdef GLIBMM_PROPERTIES_ENABLED
00194
00200 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_fill_color() const;
00201 #endif //#GLIBMM_PROPERTIES_ENABLED
00202
00203 #ifdef GLIBMM_PROPERTIES_ENABLED
00204
00210 Glib::PropertyProxy<Gdk::Color> property_fill_color_gdk() ;
00211 #endif //#GLIBMM_PROPERTIES_ENABLED
00212
00213 #ifdef GLIBMM_PROPERTIES_ENABLED
00214
00220 Glib::PropertyProxy_ReadOnly<Gdk::Color> property_fill_color_gdk() const;
00221 #endif //#GLIBMM_PROPERTIES_ENABLED
00222
00223 #ifdef GLIBMM_PROPERTIES_ENABLED
00224
00230 Glib::PropertyProxy<guint> property_fill_color_rgba() ;
00231 #endif //#GLIBMM_PROPERTIES_ENABLED
00232
00233 #ifdef GLIBMM_PROPERTIES_ENABLED
00234
00240 Glib::PropertyProxy_ReadOnly<guint> property_fill_color_rgba() const;
00241 #endif //#GLIBMM_PROPERTIES_ENABLED
00242
00243 #ifdef GLIBMM_PROPERTIES_ENABLED
00244
00250 Glib::PropertyProxy< Glib::RefPtr<Gdk::Bitmap> > property_fill_stipple() ;
00251 #endif //#GLIBMM_PROPERTIES_ENABLED
00252
00253 #ifdef GLIBMM_PROPERTIES_ENABLED
00254
00260 Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gdk::Bitmap> > property_fill_stipple() const;
00261 #endif //#GLIBMM_PROPERTIES_ENABLED
00262
00263 #ifdef GLIBMM_PROPERTIES_ENABLED
00264
00270 Glib::PropertyProxy<guint> property_width_pixels() ;
00271 #endif //#GLIBMM_PROPERTIES_ENABLED
00272
00273 #ifdef GLIBMM_PROPERTIES_ENABLED
00274
00280 Glib::PropertyProxy_ReadOnly<guint> property_width_pixels() const;
00281 #endif //#GLIBMM_PROPERTIES_ENABLED
00282
00283 #ifdef GLIBMM_PROPERTIES_ENABLED
00284
00290 Glib::PropertyProxy<double> property_width_units() ;
00291 #endif //#GLIBMM_PROPERTIES_ENABLED
00292
00293 #ifdef GLIBMM_PROPERTIES_ENABLED
00294
00300 Glib::PropertyProxy_ReadOnly<double> property_width_units() const;
00301 #endif //#GLIBMM_PROPERTIES_ENABLED
00302
00303 #ifdef GLIBMM_PROPERTIES_ENABLED
00304
00310 Glib::PropertyProxy<Gdk::CapStyle> property_cap_style() ;
00311 #endif //#GLIBMM_PROPERTIES_ENABLED
00312
00313 #ifdef GLIBMM_PROPERTIES_ENABLED
00314
00320 Glib::PropertyProxy_ReadOnly<Gdk::CapStyle> property_cap_style() const;
00321 #endif //#GLIBMM_PROPERTIES_ENABLED
00322
00323 #ifdef GLIBMM_PROPERTIES_ENABLED
00324
00330 Glib::PropertyProxy<Gdk::JoinStyle> property_join_style() ;
00331 #endif //#GLIBMM_PROPERTIES_ENABLED
00332
00333 #ifdef GLIBMM_PROPERTIES_ENABLED
00334
00340 Glib::PropertyProxy_ReadOnly<Gdk::JoinStyle> property_join_style() const;
00341 #endif //#GLIBMM_PROPERTIES_ENABLED
00342
00343 #ifdef GLIBMM_PROPERTIES_ENABLED
00344
00350 Glib::PropertyProxy<Gdk::LineStyle> property_line_style() ;
00351 #endif //#GLIBMM_PROPERTIES_ENABLED
00352
00353 #ifdef GLIBMM_PROPERTIES_ENABLED
00354
00360 Glib::PropertyProxy_ReadOnly<Gdk::LineStyle> property_line_style() const;
00361 #endif //#GLIBMM_PROPERTIES_ENABLED
00362
00363 #ifdef GLIBMM_PROPERTIES_ENABLED
00364
00370 Glib::PropertyProxy<bool> property_first_arrowhead() ;
00371 #endif //#GLIBMM_PROPERTIES_ENABLED
00372
00373 #ifdef GLIBMM_PROPERTIES_ENABLED
00374
00380 Glib::PropertyProxy_ReadOnly<bool> property_first_arrowhead() const;
00381 #endif //#GLIBMM_PROPERTIES_ENABLED
00382
00383 #ifdef GLIBMM_PROPERTIES_ENABLED
00384
00390 Glib::PropertyProxy<bool> property_last_arrowhead() ;
00391 #endif //#GLIBMM_PROPERTIES_ENABLED
00392
00393 #ifdef GLIBMM_PROPERTIES_ENABLED
00394
00400 Glib::PropertyProxy_ReadOnly<bool> property_last_arrowhead() const;
00401 #endif //#GLIBMM_PROPERTIES_ENABLED
00402
00403 #ifdef GLIBMM_PROPERTIES_ENABLED
00404
00410 Glib::PropertyProxy<bool> property_smooth() ;
00411 #endif //#GLIBMM_PROPERTIES_ENABLED
00412
00413 #ifdef GLIBMM_PROPERTIES_ENABLED
00414
00420 Glib::PropertyProxy_ReadOnly<bool> property_smooth() const;
00421 #endif //#GLIBMM_PROPERTIES_ENABLED
00422
00423 #ifdef GLIBMM_PROPERTIES_ENABLED
00424
00430 Glib::PropertyProxy<guint> property_spline_steps() ;
00431 #endif //#GLIBMM_PROPERTIES_ENABLED
00432
00433 #ifdef GLIBMM_PROPERTIES_ENABLED
00434
00440 Glib::PropertyProxy_ReadOnly<guint> property_spline_steps() const;
00441 #endif //#GLIBMM_PROPERTIES_ENABLED
00442
00443 #ifdef GLIBMM_PROPERTIES_ENABLED
00444
00450 Glib::PropertyProxy<double> property_arrow_shape_a() ;
00451 #endif //#GLIBMM_PROPERTIES_ENABLED
00452
00453 #ifdef GLIBMM_PROPERTIES_ENABLED
00454
00460 Glib::PropertyProxy_ReadOnly<double> property_arrow_shape_a() const;
00461 #endif //#GLIBMM_PROPERTIES_ENABLED
00462
00463 #ifdef GLIBMM_PROPERTIES_ENABLED
00464
00470 Glib::PropertyProxy<double> property_arrow_shape_b() ;
00471 #endif //#GLIBMM_PROPERTIES_ENABLED
00472
00473 #ifdef GLIBMM_PROPERTIES_ENABLED
00474
00480 Glib::PropertyProxy_ReadOnly<double> property_arrow_shape_b() const;
00481 #endif //#GLIBMM_PROPERTIES_ENABLED
00482
00483 #ifdef GLIBMM_PROPERTIES_ENABLED
00484
00490 Glib::PropertyProxy<double> property_arrow_shape_c() ;
00491 #endif //#GLIBMM_PROPERTIES_ENABLED
00492
00493 #ifdef GLIBMM_PROPERTIES_ENABLED
00494
00500 Glib::PropertyProxy_ReadOnly<double> property_arrow_shape_c() const;
00501 #endif //#GLIBMM_PROPERTIES_ENABLED
00502
00503
00504 };
00505
00506 }
00507 }
00508
00509
00510 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00511 namespace Glib
00512 {
00513
00514 template <>
00515 class Value<Gnome::Canvas::Points> : public Value_Boxed<Gnome::Canvas::Points>
00516 {
00517 public:
00518 static GType value_type() G_GNUC_CONST;
00519 };
00520
00521 }
00522 #endif
00523
00524
00525 namespace Glib
00526 {
00532 Gnome::Canvas::Line* wrap(GnomeCanvasLine* object, bool take_copy = false);
00533 }
00534
00535
00536 #endif
00537