diff options
Diffstat (limited to 'libs/libgnomecanvasmm/libgnomecanvasmm/line.h')
-rw-r--r-- | libs/libgnomecanvasmm/libgnomecanvasmm/line.h | 461 |
1 files changed, 461 insertions, 0 deletions
diff --git a/libs/libgnomecanvasmm/libgnomecanvasmm/line.h b/libs/libgnomecanvasmm/libgnomecanvasmm/line.h new file mode 100644 index 0000000000..ab792c8abd --- /dev/null +++ b/libs/libgnomecanvasmm/libgnomecanvasmm/line.h @@ -0,0 +1,461 @@ +// -*- c++ -*- +// Generated by gtkmmproc -- DO NOT MODIFY! +#ifndef _LIBGNOMECANVASMM_LINE_H +#define _LIBGNOMECANVASMM_LINE_H + +#include <glibmm.h> + +/* $Id$ */ + +/* line.h + * + * Copyright (C) 1998 EMC Capital Management Inc. + * Developed by Havoc Pennington <hp@pobox.com> + * + * Copyright (C) 1999 The Gtk-- Development Team + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <libgnomecanvasmm/item.h> +#include <libgnomecanvas/gnome-canvas-line.h> +#include <libgnomecanvas/gnome-canvas-util.h> +#include <libgnomecanvas/libgnomecanvas.h> +#include <vector> + + +#ifndef DOXYGEN_SHOULD_SKIP_THIS +typedef struct _GnomeCanvasLine GnomeCanvasLine; +typedef struct _GnomeCanvasLineClass GnomeCanvasLineClass; +#endif /* DOXYGEN_SHOULD_SKIP_THIS */ + + +namespace Gnome +{ + +namespace Canvas +{ class Line_Class; } // namespace Canvas + +} // namespace Gnome +namespace Gnome +{ + +namespace Canvas +{ + +class GnomeGroup; + +// Sample use of Gnome_CanvasPoints : + +// Gnome_CanvasPoints points; +// +// points.push_back(Art::Point(0, 0)); +// points.push_back(Art::Point(100,0)); +// points.push_back(Art::Point(0,100)); +// points.push_back(Art::Point(100,100)); +// +// line = new Gnome_CanvasLine(&m_canvasgroup,points); + +//using std::vector; + +/** Wrapper for GnomeCanvasPoints. + * GnomeCanvasPoints is actually a BoxedType, + * but this acts in a similar way, with the advantage of acting like a std::vector. + */ +class Points : public std::vector<Art::Point> +{ +public: + Points(size_type nbpoints = 0); + explicit Points(GnomeCanvasPoints* castitem); + ~Points(); + +#ifndef DOXYGEN_SHOULD_SKIP_THIS + typedef GnomeCanvasPoints BaseObjectType; //So that this works with tempaltes that are intended for normal BoxedTypes. +#endif /* DOXYGEN_SHOULD_SKIP_THIS */ + + operator bool() const; + bool is_null() const; + + const GnomeCanvasPoints* gobj() const { return _gobj(); } + GnomeCanvasPoints* gobj() { return _gobj(); } + static GType get_type () { return GNOME_TYPE_CANVAS_POINTS; } + +protected: + GnomeCanvasPoints* _gobj() const; + mutable GnomeCanvasPoints* points_; + mutable bool owned_; +}; + + +class Line : public Item +{ + public: +#ifndef DOXYGEN_SHOULD_SKIP_THIS + typedef Line CppObjectType; + typedef Line_Class CppClassType; + typedef GnomeCanvasLine BaseObjectType; + typedef GnomeCanvasLineClass BaseClassType; +#endif /* DOXYGEN_SHOULD_SKIP_THIS */ + + virtual ~Line(); + +#ifndef DOXYGEN_SHOULD_SKIP_THIS + +private: + friend class Line_Class; + static CppClassType line_class_; + + // noncopyable + Line(const Line&); + Line& operator=(const Line&); + +protected: + explicit Line(const Glib::ConstructParams& construct_params); + explicit Line(GnomeCanvasLine* castitem); + +#endif /* DOXYGEN_SHOULD_SKIP_THIS */ + +public: +#ifndef DOXYGEN_SHOULD_SKIP_THIS + static GType get_type() G_GNUC_CONST; + static GType get_base_type() G_GNUC_CONST; +#endif + + ///Provides access to the underlying C GtkObject. + GnomeCanvasLine* gobj() { return reinterpret_cast<GnomeCanvasLine*>(gobject_); } + + ///Provides access to the underlying C GtkObject. + const GnomeCanvasLine* gobj() const { return reinterpret_cast<GnomeCanvasLine*>(gobject_); } + + +public: + //C++ methods used to invoke GTK+ virtual functions: + +protected: + //GTK+ Virtual Functions (override these to change behaviour): + + //Default Signal Handlers:: + + +private: + +public: + explicit Line(Group& parent); + Line(Group& parent, const Points& points); + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<Points> property_points() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<Points> property_points() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<Glib::ustring> property_fill_color() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<Glib::ustring> property_fill_color() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<Gdk::Color> property_fill_color_gdk() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<Gdk::Color> property_fill_color_gdk() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<guint> property_fill_color_rgba() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<guint> property_fill_color_rgba() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy< Glib::RefPtr<Gdk::Bitmap> > property_fill_stipple() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gdk::Bitmap> > property_fill_stipple() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<guint> property_width_pixels() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<guint> property_width_pixels() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<double> property_width_units() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<double> property_width_units() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<Gdk::CapStyle> property_cap_style() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<Gdk::CapStyle> property_cap_style() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<Gdk::JoinStyle> property_join_style() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<Gdk::JoinStyle> property_join_style() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<Gdk::LineStyle> property_line_style() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<Gdk::LineStyle> property_line_style() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<bool> property_first_arrowhead() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<bool> property_first_arrowhead() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<bool> property_last_arrowhead() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<bool> property_last_arrowhead() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<bool> property_smooth() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<bool> property_smooth() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<guint> property_spline_steps() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<guint> property_spline_steps() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<double> property_arrow_shape_a() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<double> property_arrow_shape_a() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<double> property_arrow_shape_b() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<double> property_arrow_shape_b() const; + + /** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy<double> property_arrow_shape_c() ; + +/** + * + * You rarely need to use properties because there are get_ and set_ methods for almost all of them. + * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when + * the value of the property changes. + */ + Glib::PropertyProxy_ReadOnly<double> property_arrow_shape_c() const; + + +}; + +} /* namespace Canvas */ +} /* namespace Gnome */ + + +#ifndef DOXYGEN_SHOULD_SKIP_THIS +namespace Glib +{ + +template <> +class Value<Gnome::Canvas::Points> : public Value_Boxed<Gnome::Canvas::Points> +{ +public: + static GType value_type() G_GNUC_CONST; +}; + +} // namespace Glib +#endif /* DOXYGEN_SHOULD_SKIP_THIS */ + +namespace Glib +{ + /** @relates Gnome::Canvas::Line + * @param object The C instance + * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref. + * @result A C++ instance that wraps this C instance. + */ + Gnome::Canvas::Line* wrap(GnomeCanvasLine* object, bool take_copy = false); +} +#endif /* _LIBGNOMECANVASMM_LINE_H */ + |