
#include <gtkmm.h>

namespace Bmp
{
  class Image
    : public Gtk::Widget
  {
    public:

      Image ();
      virtual ~Image ();

    protected:

      virtual void  on_size_request (Gtk::Requisition * requisition);
      virtual bool  on_expose_event (GdkEventExpose* event);

    public:

      void  set (Cairo::RefPtr<Cairo::ImageSurface> surface);
      void  set (Glib::RefPtr<Gdk::Pixbuf> pixbuf);
      void  clear ();

    private:

      Cairo::RefPtr<Cairo::ImageSurface> m_surface;
  };
}
