1 /* === S Y N F I G ========================================================= */
2 /*! \file cellrenderer_gradient.h
3 ** \brief Template Header
5 ** $Id: cellrenderer_gradient.h,v 1.1.1.1 2005/01/07 03:34:35 darco Exp $
8 ** Copyright (c) 2002 Robert B. Quattlebaum Jr.
10 ** This software and associated documentation
11 ** are CONFIDENTIAL and PROPRIETARY property of
12 ** the above-mentioned copyright holder.
14 ** You may not copy, print, publish, or in any
15 ** other way distribute this software without
16 ** a prior written agreement with
17 ** the copyright holder.
20 /* ========================================================================= */
22 /* === S T A R T =========================================================== */
24 #ifndef __SYNFIG_STUDIO_CELLRENDERER_GRADIENT_H
25 #define __SYNFIG_STUDIO_CELLRENDERER_GRADIENT_H
27 /* === H E A D E R S ======================================================= */
29 #include <gtkmm/entry.h>
30 #include <gtkmm/cellrenderertext.h>
32 #include <sigc++/signal.h>
33 #include <sigc++/slot.h>
35 #include <synfig/gradient.h>
37 /* === M A C R O S ========================================================= */
39 /* === T Y P E D E F S ===================================================== */
41 /* === C L A S S E S & S T R U C T S ======================================= */
43 namespace Gtk { class Entry; class Button; };
47 class CellRenderer_Gradient : public Gtk::CellRendererText
49 sigc::signal<void, const Glib::ustring&> signal_secondary_click_;
50 sigc::signal<void, const Glib::ustring&, synfig::Gradient> signal_edited_;
52 Glib::Property<synfig::Gradient> property_gradient_;
55 sigc::signal<void, const Glib::ustring&, synfig::Gradient> &signal_edited()
56 {return signal_edited_; }
58 Glib::PropertyProxy<synfig::Gradient> property_gradient() { return property_gradient_.get_proxy();}
60 CellRenderer_Gradient();
61 ~CellRenderer_Gradient();
67 const Glib::RefPtr<Gdk::Drawable>& window,
69 const Gdk::Rectangle& background_area,
70 const Gdk::Rectangle& ca,
71 const Gdk::Rectangle& expose_area,
72 Gtk::CellRendererState flags);
74 virtual Gtk::CellEditable* start_editing_vfunc(GdkEvent* event,
76 const Glib::ustring& path,
77 const Gdk::Rectangle& background_area,
78 const Gdk::Rectangle& cell_area,
79 Gtk::CellRendererState flags);
81 }; // END of class CellRenderer_Gradient
83 }; // END of namespace studio
85 /* === E N D =============================================================== */