00001 // -*- c++ -*- 00002 // Generated by gtkmmproc -- DO NOT MODIFY! 00003 #ifndef _LIBGNOMECANVASMM_WIDGET_H 00004 #define _LIBGNOMECANVASMM_WIDGET_H 00005 00006 00007 #include <glibmm.h> 00008 00009 /* $Id: widget.hg,v 1.7 2003/12/19 15:28:43 murrayc Exp $ */ 00010 00011 /* widget.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-widget.h> 00035 #include <gtkmm/widget.h> 00036 00037 00038 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00039 typedef struct _GnomeCanvasWidget GnomeCanvasWidget; 00040 typedef struct _GnomeCanvasWidgetClass GnomeCanvasWidgetClass; 00041 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 00042 00043 00044 namespace Gnome 00045 { 00046 00047 namespace Canvas 00048 { class Widget_Class; } // namespace Canvas 00049 00050 } // namespace Gnome 00051 namespace Gnome 00052 { 00053 00054 namespace Canvas 00055 { 00056 00057 class Group; 00058 00059 00060 class Widget : public Item 00061 { 00062 public: 00063 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00064 typedef Widget CppObjectType; 00065 typedef Widget_Class CppClassType; 00066 typedef GnomeCanvasWidget BaseObjectType; 00067 typedef GnomeCanvasWidgetClass BaseClassType; 00068 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 00069 00070 virtual ~Widget(); 00071 00072 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00073 00074 private: 00075 friend class Widget_Class; 00076 static CppClassType widget_class_; 00077 00078 // noncopyable 00079 Widget(const Widget&); 00080 Widget& operator=(const Widget&); 00081 00082 protected: 00083 explicit Widget(const Glib::ConstructParams& construct_params); 00084 explicit Widget(GnomeCanvasWidget* castitem); 00085 00086 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 00087 00088 public: 00089 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00090 static GType get_type() G_GNUC_CONST; 00091 static GType get_base_type() G_GNUC_CONST; 00092 #endif 00093 00095 GnomeCanvasWidget* gobj() { return reinterpret_cast<GnomeCanvasWidget*>(gobject_); } 00096 00098 const GnomeCanvasWidget* gobj() const { return reinterpret_cast<GnomeCanvasWidget*>(gobject_); } 00099 00100 00101 public: 00102 //C++ methods used to invoke GTK+ virtual functions: 00103 00104 protected: 00105 //GTK+ Virtual Functions (override these to change behaviour): 00106 00107 //Default Signal Handlers:: 00108 00109 00110 private: 00111 00112 public: 00113 Widget(Group& parent, double x, double y, Gtk::Widget& w); 00114 explicit Widget(Group& parent); 00115 00122 Glib::PropertyProxy<Gtk::Widget*> property_widget() ; 00123 00130 Glib::PropertyProxy_ReadOnly<Gtk::Widget*> property_widget() const; 00131 00138 Glib::PropertyProxy<double> property_x() ; 00139 00146 Glib::PropertyProxy_ReadOnly<double> property_x() const; 00147 00154 Glib::PropertyProxy<double> property_y() ; 00155 00162 Glib::PropertyProxy_ReadOnly<double> property_y() const; 00163 00170 Glib::PropertyProxy<double> property_width() ; 00171 00178 Glib::PropertyProxy_ReadOnly<double> property_width() const; 00179 00186 Glib::PropertyProxy<double> property_height() ; 00187 00194 Glib::PropertyProxy_ReadOnly<double> property_height() const; 00195 00202 Glib::PropertyProxy<Gtk::AnchorType> property_anchor() ; 00203 00210 Glib::PropertyProxy_ReadOnly<Gtk::AnchorType> property_anchor() const; 00211 00218 Glib::PropertyProxy<bool> property_size_pixels() ; 00219 00226 Glib::PropertyProxy_ReadOnly<bool> property_size_pixels() const; 00227 00228 00229 }; 00230 00231 } /* namespace Canvas */ 00232 } /* namespace Gnome */ 00233 00234 00235 namespace Glib 00236 { 00242 Gnome::Canvas::Widget* wrap(GnomeCanvasWidget* object, bool take_copy = false); 00243 } //namespace Glib 00244 00245 00246 #endif /* _LIBGNOMECANVASMM_WIDGET_H */ 00247