; GtkSourceCompletionProposal

(define-vfunc get_label
  (of-object "GtkSourceCompletionProposal")
  (return-type "char*")
)

(define-vfunc get_markup
  (of-object "GtkSourceCompletionProposal")
  (return-type "char*")
)

(define-vfunc get_text
  (of-object "GtkSourceCompletionProposal")
  (return-type "char*")
)

(define-vfunc get_icon
  (of-object "GtkSourceCompletionProposal")
  (return-type "GdkPixbuf*")
)

(define-vfunc get_info
  (of-object "GtkSourceCompletionProposal")
  (return-type "char*")
)

(define-vfunc hash
  (of-object "GtkSourceCompletionProposal")
  (return-type "guint")
)

(define-vfunc equal
  (of-object "GtkSourceCompletionProposal")
  (return-type "gboolean")
  (parameters
    '("GtkSourceCompletionProposal*" "other")
  )
)

; GtkSourceCompletionProvider

(define-vfunc get_name
  (of-object "GtkSourceCompletionProvider")
  (return-type "char*")
)

(define-vfunc get_icon
  (of-object "GtkSourceCompletionProvider")
  (return-type "GdkPixbuf*")
)

(define-vfunc populate
  (of-object "GtkSourceCompletionProvider")
  (return-type "void")
  (parameters
    '("GtkSourceCompletionContext*" "context")
  )
)

(define-vfunc match
  (of-object "GtkSourceCompletionProvider")
  (return-type "gboolean")
  (parameters
    '("GtkSourceCompletionContext*" "context")
  )
)

(define-vfunc get_activation
  (of-object "GtkSourceCompletionProvider")
  (return-type "GtkSourceCompletionActivation")
)

(define-vfunc get_info_widget
  (of-object "GtkSourceCompletionProvider")
  (return-type "GtkWidget*")
  (parameters
    '("GtkSourceCompletionProposal*" "proposal")
  )
)

(define-vfunc update_info
  (of-object "GtkSourceCompletionProvider")
  (return-type "void")
  (parameters
    '("GtkSourceCompletionProposal*" "proposal")
    '("GtkSourceCompletionInfo*" "info")
  )
)

(define-vfunc get_start_iter
  (of-object "GtkSourceCompletionProvider")
  (return-type "gboolean")
  (parameters
    '("GtkSourceCompletionContext*" "context")
    '("GtkSourceCompletionProposal*" "proposal")
    '("GtkTextIter*" "iter")
  )
)

(define-vfunc activate_proposal
  (of-object "GtkSourceCompletionProvider")
  (return-type "gboolean")
  (parameters
    '("GtkSourceCompletionProposal*" "proposal")
    '("GtkTextIter*" "iter")
  )
)

(define-vfunc get_interactive_delay
  (of-object "GtkSourceCompletionProvider")
  (return-type "int")
)

(define-vfunc get_priority
  (of-object "GtkSourceCompletionProvider")
  (return-type "int")
)

; GtkSourceUndoManager

(define-vfunc can_undo
  (of-object "GtkSourceUndoManager")
  (return-type "gboolean")
)

(define-vfunc can_redo
  (of-object "GtkSourceUndoManager")
  (return-type "gboolean")
)

(define-vfunc undo
  (of-object "GtkSourceUndoManager")
  (return-type "void")
)

(define-vfunc redo
  (of-object "GtkSourceUndoManager")
  (return-type "void")
)

(define-vfunc begin_not_undoable_action
  (of-object "GtkSourceUndoManager")
  (return-type "void")
)

(define-vfunc end_not_undoable_action
  (of-object "GtkSourceUndoManager")
  (return-type "void")
)

; GtkSourceGutterRenderer

(define-vfunc begin
  (of-object "GtkSourceGutterRenderer")
  (return-type "void")
  (parameters
    '("cairo_t*" "cr")
    '("GdkRectangle*" "background_area")
    '("GdkRectangle*" "cell_area")
    '("GtkTextIter*" "start")
    '("GtkTextIter*" "end")
  )
)

(define-vfunc draw
  (of-object "GtkSourceGutterRenderer")
  (return-type "void")
  (parameters
    '("cairo_t*" "cr")
    '("GdkRectangle*" "background_area")
    '("GdkRectangle*" "cell_area")
    '("GtkTextIter*" "start")
    '("GtkTextIter*" "end")
    '("GtkSourceGutterRendererState" "state")
  )
)

(define-vfunc end
  (of-object "GtkSourceGutterRenderer")
  (return-type "void")
)

(define-vfunc change_view
  (of-object "GtkSourceGutterRenderer")
  (return-type "void")
  (parameters
    '("GtkTextView*" "old_view")
  )
)

(define-vfunc change_buffer
  (of-object "GtkSourceGutterRenderer")
  (return-type "void")
  (parameters
    '("GtkTextBuffer*" "old_buffer")
  )
)

