// -*- c++ -*-
// Generated by gtkmmproc -- DO NOT MODIFY!
#ifndef _GTKSOURCEVIEWMM_GUTTERRENDERER_P_H
#define _GTKSOURCEVIEWMM_GUTTERRENDERER_P_H


#include <gtkmm/private/object_p.h>

#include <glibmm/class.h>

namespace Gsv
{

class GutterRenderer_Class : public Glib::Class
{
public:
#ifndef DOXYGEN_SHOULD_SKIP_THIS
  typedef GutterRenderer CppObjectType;
  typedef GtkSourceGutterRenderer BaseObjectType;
  typedef GtkSourceGutterRendererClass BaseClassType;
  typedef Gtk::Object_Class CppClassParent;
  typedef GInitiallyUnownedClass BaseClassParent;

  friend class GutterRenderer;
#endif /* DOXYGEN_SHOULD_SKIP_THIS */

  const Glib::Class& init();


  static void class_init_function(void* g_class, void* class_data);

  static Glib::ObjectBase* wrap_new(GObject*);

protected:

  //Callbacks (default signal handlers):
  //These will call the *_impl member methods, which will then call the existing default signal callbacks, if any.
  //You could prevent the original default signal handlers being called by overriding the *_impl method.
  static gboolean query_tooltip_callback(GtkSourceGutterRenderer* self, GtkTextIter* p0, GdkRectangle* p1, gint p2, gint p3, GtkTooltip* p4);
  static void activate_callback(GtkSourceGutterRenderer* self, GtkTextIter* p0, GdkRectangle* p1, GdkEvent* p2);
  static void queue_draw_callback(GtkSourceGutterRenderer* self);
  static void query_data_callback(GtkSourceGutterRenderer* self, GtkTextIter* p0, GtkTextIter* p1, GtkSourceGutterRendererState p2);
  static gboolean query_activatable_callback(GtkSourceGutterRenderer* self, GtkTextIter* p0, GdkRectangle* p1, GdkEvent* p2);

  //Callbacks (virtual functions):
  static void begin_vfunc_callback(GtkSourceGutterRenderer* self, cairo_t* cr, GdkRectangle* background_area, GdkRectangle* cell_area, GtkTextIter* start, GtkTextIter* end);
  static void draw_vfunc_callback(GtkSourceGutterRenderer* self, cairo_t* cr, GdkRectangle* background_area, GdkRectangle* cell_area, GtkTextIter* start, GtkTextIter* end, GtkSourceGutterRendererState state);
  static void end_vfunc_callback(GtkSourceGutterRenderer* self);
  static void change_view_vfunc_callback(GtkSourceGutterRenderer* self, GtkTextView* old_view);
  static void change_buffer_vfunc_callback(GtkSourceGutterRenderer* self, GtkTextBuffer* old_buffer);
};


} // namespace Gsv


#endif /* _GTKSOURCEVIEWMM_GUTTERRENDERER_P_H */

