fix up file renaming code a little bit
[ArdourMidi.git] / gtk2_ardour / simpleline.h
blob3aea5a4aa4ac0cb0da656c144af994fe035dab5e
1 // -*- c++ -*-
2 #ifndef _LIBGNOMECANVASMM_SIMPLELINE_H
3 #define _LIBGNOMECANVASMM_SIMPLELINE_H
5 #include <glibmm.h>
8 /* line.h
10 * Copyright (C) 1998 EMC Capital Management Inc.
11 * Developed by Havoc Pennington <hp@pobox.com>
13 * Copyright (C) 1999 The Gtk-- Development Team
15 * This library is free software; you can redistribute it and/or
16 * modify it under the terms of the GNU Library General Public
17 * License as published by the Free Software Foundation; either
18 * version 2 of the License, or (at your option) any later version.
20 * This library is distributed in the hope that it will be useful,
21 * but WITHOUT ANY WARRANTY; without even the implied warranty of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23 * Library General Public License for more details.
25 * You should have received a copy of the GNU Library General Public
26 * License along with this library; if not, write to the Free
27 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
30 #include <libgnomecanvasmm/item.h>
31 #include <libgnomecanvas/gnome-canvas-util.h>
32 #include <libgnomecanvas/libgnomecanvas.h>
33 #include "canvas-simpleline.h"
35 #ifndef DOXYGEN_SHOULD_SKIP_THIS
36 typedef struct _GnomeCanvasSimpleLine GnomeCanvasSimpleLine;
37 typedef struct _GnomeCanvasSimpleLineClass GnomeCanvasSimpleLineClass;
38 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
41 namespace Gnome
44 namespace Canvas
45 { class SimpleLine_Class; } // namespace Canvas
47 } // namespace Gnome
48 namespace Gnome
51 namespace Canvas
54 class GnomeGroup;
56 class SimpleLine : public Item
58 public:
59 #ifndef DOXYGEN_SHOULD_SKIP_THIS
60 typedef SimpleLine CppObjectType;
61 typedef SimpleLine_Class CppClassType;
62 typedef GnomeCanvasSimpleLine BaseObjectType;
63 typedef GnomeCanvasSimpleLineClass BaseClassType;
64 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
66 virtual ~SimpleLine();
68 #ifndef DOXYGEN_SHOULD_SKIP_THIS
70 private:
71 friend class SimpleLine_Class;
72 static CppClassType line_class_;
74 // noncopyable
75 SimpleLine(const SimpleLine&);
76 SimpleLine& operator=(const SimpleLine&);
78 protected:
79 explicit SimpleLine(const Glib::ConstructParams& construct_params);
80 explicit SimpleLine(GnomeCanvasSimpleLine* castitem);
82 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
84 public:
85 #ifndef DOXYGEN_SHOULD_SKIP_THIS
86 static GType get_type() G_GNUC_CONST;
87 static GType get_base_type() G_GNUC_CONST;
88 #endif
90 ///Provides access to the underlying C GtkObject.
91 GnomeCanvasSimpleLine* gobj() { return reinterpret_cast<GnomeCanvasSimpleLine*>(gobject_); }
93 ///Provides access to the underlying C GtkObject.
94 const GnomeCanvasSimpleLine* gobj() const { return reinterpret_cast<GnomeCanvasSimpleLine*>(gobject_); }
97 public:
98 //C++ methods used to invoke GTK+ virtual functions:
100 protected:
101 //GTK+ Virtual Functions (override these to change behaviour):
103 //Default Signal Handlers::
106 private:
108 public:
109 explicit SimpleLine(Group& parent);
110 SimpleLine(Group& parent, double x1, double y1, double x2, double y2);
114 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
115 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
116 * the value of the property changes.
118 Glib::PropertyProxy<double> property_x1() ;
122 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
123 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
124 * the value of the property changes.
126 Glib::PropertyProxy_ReadOnly<double> property_x1() const;
130 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
131 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
132 * the value of the property changes.
134 Glib::PropertyProxy<double> property_x2() ;
138 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
139 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
140 * the value of the property changes.
142 Glib::PropertyProxy_ReadOnly<double> property_x2() const;
147 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
148 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
149 * the value of the property changes.
151 Glib::PropertyProxy<double> property_y1() ;
155 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
156 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
157 * the value of the property changes.
159 Glib::PropertyProxy_ReadOnly<double> property_y1() const;
163 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
164 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
165 * the value of the property changes.
167 Glib::PropertyProxy<double> property_y2() ;
171 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
172 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
173 * the value of the property changes.
175 Glib::PropertyProxy_ReadOnly<double> property_y2() const;
179 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
180 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
181 * the value of the property changes.
183 Glib::PropertyProxy<guint> property_color_rgba() ;
187 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
188 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
189 * the value of the property changes.
191 Glib::PropertyProxy_ReadOnly<guint> property_color_rgba() const;
194 } /* namespace Canvas */
195 } /* namespace Gnome */
198 namespace Glib
200 /** @relates Gnome::Canvas::SimpleLine
201 * @param object The C instance
202 * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
203 * @result A C++ instance that wraps this C instance.
205 Gnome::Canvas::SimpleLine* wrap(GnomeCanvasSimpleLine* object, bool take_copy = false);
207 #endif /* _LIBGNOMECANVASMM_LINE_H */