00001
00002
00003 #ifndef _LIBGNOMECANVASMM_RICH_TEXT_H
00004 #define _LIBGNOMECANVASMM_RICH_TEXT_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 #include <gtkmm/textbuffer.h>
00033 #include <libgnomecanvasmm/item.h>
00034 #include <libgnomecanvas/gnome-canvas-rich-text.h>
00035
00036
00037 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00038 typedef struct _GnomeCanvasRichText GnomeCanvasRichText;
00039 typedef struct _GnomeCanvasRichTextClass GnomeCanvasRichTextClass;
00040 #endif
00041
00042
00043 namespace Gnome
00044 {
00045
00046 namespace Canvas
00047 { class RichText_Class; }
00048
00049 }
00050 namespace Gnome
00051 {
00052
00053 namespace Canvas
00054 {
00055
00056
00057 class RichText : public Item
00058 {
00059 public:
00060 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00061 typedef RichText CppObjectType;
00062 typedef RichText_Class CppClassType;
00063 typedef GnomeCanvasRichText BaseObjectType;
00064 typedef GnomeCanvasRichTextClass BaseClassType;
00065 #endif
00066
00067 virtual ~RichText();
00068
00069 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00070
00071 private:
00072 friend class RichText_Class;
00073 static CppClassType richtext_class_;
00074
00075
00076 RichText(const RichText&);
00077 RichText& operator=(const RichText&);
00078
00079 protected:
00080 explicit RichText(const Glib::ConstructParams& construct_params);
00081 explicit RichText(GnomeCanvasRichText* castitem);
00082
00083 #endif
00084
00085 public:
00086 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00087 static GType get_type() G_GNUC_CONST;
00088 static GType get_base_type() G_GNUC_CONST;
00089 #endif
00090
00092 GnomeCanvasRichText* gobj() { return reinterpret_cast<GnomeCanvasRichText*>(gobject_); }
00093
00095 const GnomeCanvasRichText* gobj() const { return reinterpret_cast<GnomeCanvasRichText*>(gobject_); }
00096
00097
00098 public:
00099
00100
00101 protected:
00102
00103
00104
00105 virtual void on_tag_changed(const Glib::RefPtr<Gtk::TextTag>& tag);
00106
00107
00108 private:
00109
00110
00111 public:
00112 typedef Gtk::TextIter iterator;
00113
00114 RichText(Group& parent, double x, double y, const Glib::ustring& text);
00115 explicit RichText(Group& parent);
00116
00117
00118 void cut_clipboard();
00119
00120 void copy_clipboard();
00121
00122 void paste_clipboard();
00123
00124
00125 void set_buffer(const Glib::RefPtr<Gtk::TextBuffer>& buffer);
00126
00127 Glib::RefPtr<Gtk::TextBuffer> get_buffer() const;
00128
00129
00130 void get_iter_location(const iterator& iter, Gdk::Rectangle& location) const;
00131 iterator get_iter_at_location(int x, int y) const;
00132
00133
00134 Glib::SignalProxy1< void,const Glib::RefPtr<Gtk::TextTag>& > signal_tag_changed();
00135
00136
00143 Glib::PropertyProxy<Glib::ustring> property_text() ;
00144
00151 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_text() const;
00152
00159 Glib::PropertyProxy<double> property_x() ;
00160
00167 Glib::PropertyProxy_ReadOnly<double> property_x() const;
00168
00175 Glib::PropertyProxy<double> property_y() ;
00176
00183 Glib::PropertyProxy_ReadOnly<double> property_y() const;
00184
00191 Glib::PropertyProxy<double> property_width() ;
00192
00199 Glib::PropertyProxy_ReadOnly<double> property_width() const;
00200
00207 Glib::PropertyProxy<double> property_height() ;
00208
00215 Glib::PropertyProxy_ReadOnly<double> property_height() const;
00216
00223 Glib::PropertyProxy<bool> property_editable() ;
00224
00231 Glib::PropertyProxy_ReadOnly<bool> property_editable() const;
00232
00239 Glib::PropertyProxy<bool> property_visible() ;
00240
00247 Glib::PropertyProxy_ReadOnly<bool> property_visible() const;
00248
00255 Glib::PropertyProxy<bool> property_cursor_visible() ;
00256
00263 Glib::PropertyProxy_ReadOnly<bool> property_cursor_visible() const;
00264
00271 Glib::PropertyProxy<bool> property_cursor_blink() ;
00272
00279 Glib::PropertyProxy_ReadOnly<bool> property_cursor_blink() const;
00280
00287 Glib::PropertyProxy<bool> property_grow_height() ;
00288
00295 Glib::PropertyProxy_ReadOnly<bool> property_grow_height() const;
00296
00303 Glib::PropertyProxy<Gtk::WrapMode> property_wrap_mode() ;
00304
00311 Glib::PropertyProxy_ReadOnly<Gtk::WrapMode> property_wrap_mode() const;
00312
00319 Glib::PropertyProxy<Gtk::Justification> property_justification() ;
00320
00327 Glib::PropertyProxy_ReadOnly<Gtk::Justification> property_justification() const;
00328
00335 Glib::PropertyProxy<Gtk::DirectionType> property_direction() ;
00336
00343 Glib::PropertyProxy_ReadOnly<Gtk::DirectionType> property_direction() const;
00344
00351 Glib::PropertyProxy<Gtk::AnchorType> property_anchor() ;
00352
00359 Glib::PropertyProxy_ReadOnly<Gtk::AnchorType> property_anchor() const;
00360
00367 Glib::PropertyProxy<int> property_pixels_above_lines() ;
00368
00375 Glib::PropertyProxy_ReadOnly<int> property_pixels_above_lines() const;
00376
00383 Glib::PropertyProxy<int> property_pixels_below_lines() ;
00384
00391 Glib::PropertyProxy_ReadOnly<int> property_pixels_below_lines() const;
00392
00399 Glib::PropertyProxy<int> property_pixels_inside_wrap() ;
00400
00407 Glib::PropertyProxy_ReadOnly<int> property_pixels_inside_wrap() const;
00408
00415 Glib::PropertyProxy<int> property_left_margin() ;
00416
00423 Glib::PropertyProxy_ReadOnly<int> property_left_margin() const;
00424
00431 Glib::PropertyProxy<int> property_right_margin() ;
00432
00439 Glib::PropertyProxy_ReadOnly<int> property_right_margin() const;
00440
00447 Glib::PropertyProxy<int> property_indent() ;
00448
00455 Glib::PropertyProxy_ReadOnly<int> property_indent() const;
00456
00457
00458 };
00459
00460 }
00461 }
00462
00463
00464 namespace Glib
00465 {
00471 Gnome::Canvas::RichText* wrap(GnomeCanvasRichText* object, bool take_copy = false);
00472 }
00473
00474
00475 #endif
00476