(define-object Entry
  (in-module "Gtk")
  (parent "GtkWidget")
  (implements "GtkEditable")
  (implements "GtkCellEditable")
  (c-name "GtkEntry")
  (gtype-id "GTK_TYPE_ENTRY")
)

(define-function gtk_entry_new
  (is-constructor-of "GtkEntry")
  (c-name "gtk_entry_new")
  (caller-owns-return #t)
  (return-type "GtkWidget*")
)

(define-function new_with_buffer
  (is-constructor-of "GtkEntry")
  (c-name "gtk_entry_new_with_buffer")
  (caller-owns-return #t)
  (return-type "GtkWidget*")
  (parameters
    '("GtkEntryBuffer*" "buffer")
  )
)

(define-method set_visibility
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_visibility")
  (return-type "none")
  (parameters
    '("gboolean" "visible")
  )
)

(define-method get_visibility
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_visibility")
  (return-type "gboolean")
)

(define-method set_invisible_char
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_invisible_char")
  (return-type "none")
  (parameters
    '("gunichar" "ch")
  )
)

(define-method get_invisible_char
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_invisible_char")
  (return-type "gunichar")
)

(define-method set_has_frame
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_has_frame")
  (return-type "none")
  (parameters
    '("gboolean" "setting")
  )
)

(define-method get_has_frame
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_has_frame")
  (return-type "gboolean")
)

(define-method set_max_length
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_max_length")
  (return-type "none")
  (parameters
    '("gint" "max")
  )
)

(define-method get_max_length
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_max_length")
  (return-type "gint")
)

(define-method set_activates_default
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_activates_default")
  (return-type "none")
  (parameters
    '("gboolean" "setting")
  )
)

(define-method get_activates_default
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_activates_default")
  (return-type "gboolean")
)

(define-method set_width_chars
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_width_chars")
  (return-type "none")
  (parameters
    '("gint" "n_chars")
  )
)

(define-method get_width_chars
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_width_chars")
  (return-type "gint")
)

(define-method set_text
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_text")
  (return-type "none")
  (parameters
    '("const-gchar*" "text")
  )
)

(define-method get_text
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_text")
  (return-type "const-gchar*")
)

(define-method get_text_length
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_text_length")
  (return-type "guint16")
)

(define-method get_layout
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_layout")
  (return-type "PangoLayout*")
)

(define-method get_layout_offsets
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_layout_offsets")
  (return-type "none")
  (parameters
    '("gint*" "x")
    '("gint*" "y")
  )
)

(define-method set_alignment
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_alignment")
  (return-type "none")
  (parameters
    '("gfloat" "xalign")
  )
)

(define-method get_alignment
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_alignment")
  (return-type "gfloat")
)

(define-method set_completion
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_completion")
  (return-type "none")
  (parameters
    '("GtkEntryCompletion*" "completion" (null-ok))
  )
)

(define-method get_completion
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_completion")
  (return-type "GtkEntryCompletion*")
)

(define-method set_buffer
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_buffer")
  (return-type "none")
  (parameters
    '("GtkEntryBuffer*" "buffer")
  )
)

(define-method get_buffer
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_buffer")
  (return-type "GtkEntryBuffer*")
)

(define-method layout_index_to_text_index
  (of-object "GtkEntry")
  (c-name "gtk_entry_layout_index_to_text_index")
  (return-type "gint")
  (parameters
    '("gint" "layout_index")
  )
)

(define-method text_index_to_layout_index
  (of-object "GtkEntry")
  (c-name "gtk_entry_text_index_to_layout_index")
  (return-type "gint")
  (parameters
    '("gint" "text_index")
  )
)

(define-method set_overwrite_mode
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_overwrite_mode")
  (return-type "none")
  (parameters
    '("gboolean" "overwrite")
  )
)

(define-method get_overwrite_mode
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_overwrite_mode")
  (return-type "gboolean")
)

(define-virtual populate_popup
  (of-object "GtkEntry")
  (return-type "none")
  (parameters
    '("GtkMenu*" "menu")
  )
)

(define-virtual activate
  (of-object "GtkEntry")
  (return-type "none")
)

(define-virtual move_cursor
  (of-object "GtkEntry")
  (return-type "none")
  (parameters
    '("GtkMovementStep" "step")
    '("gint" "count")
    '("gboolean" "extend_selection")
  )
)

(define-virtual insert_at_cursor
  (of-object "GtkEntry")
  (return-type "none")
  (parameters
    '("const-gchar*" "str")
  )
)

(define-virtual delete_from_cursor
  (of-object "GtkEntry")
  (return-type "none")
  (parameters
    '("GtkDeleteType" "type")
    '("gint" "count")
  )
)

(define-virtual backspace
  (of-object "GtkEntry")
  (return-type "none")
)

(define-virtual cut_clipboard
  (of-object "GtkEntry")
  (return-type "none")
)

(define-virtual copy_clipboard
  (of-object "GtkEntry")
  (return-type "none")
)

(define-virtual paste_clipboard
  (of-object "GtkEntry")
  (return-type "none")
)

(define-virtual toggle_overwrite
  (of-object "GtkEntry")
  (return-type "none")
)

(define-method set_inner_border
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_inner_border")
  (return-type "none")
  (parameters
    '("const-GtkBorder*" "border" (null-ok))
  )
)

(define-method get_inner_border
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_inner_border")
  (return-type "const-GtkBorder*")
)

(define-method set_cursor_hadjustment
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_cursor_hadjustment")
  (return-type "none")
  (parameters
    '("GtkAdjustment*" "adjustment" (null-ok))
  )
)

(define-method get_cursor_hadjustment
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_cursor_hadjustment")
  (return-type "GtkAdjustment*")
)

(define-method set_progress_fraction
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_progress_fraction")
  (return-type "none")
  (parameters
    '("gdouble" "fraction")
  )
)

(define-method get_progress_fraction
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_progress_fraction")
  (return-type "gdouble")
)

(define-method set_progress_pulse_step
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_progress_pulse_step")
  (return-type "none")
  (parameters
    '("gdouble" "fraction")
  )
)

(define-method get_progress_pulse_step
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_progress_pulse_step")
  (return-type "gdouble")
)

(define-method progress_pulse
  (of-object "GtkEntry")
  (c-name "gtk_entry_progress_pulse")
  (return-type "none")
)

(define-method set_icon_from_pixbuf
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_icon_from_pixbuf")
  (return-type "none")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
    '("GdkPixbuf*" "pixbuf" (null-ok))
  )
)

(define-method set_icon_from_stock
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_icon_from_stock")
  (return-type "none")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
    '("const-gchar*" "stock_id" (null-ok))
  )
)

(define-method set_icon_from_icon_name
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_icon_from_icon_name")
  (return-type "none")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
    '("const-gchar*" "icon_name" (null-ok))
  )
)

(define-method set_icon_from_gicon
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_icon_from_gicon")
  (return-type "none")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
    '("GIcon*" "icon" (null-ok))
  )
)

(define-method get_icon_storage_type
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_icon_storage_type")
  (return-type "GtkImageType")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
  )
)

(define-method get_icon_pixbuf
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_icon_pixbuf")
  (return-type "GdkPixbuf*")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
  )
)

(define-method get_icon_stock
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_icon_stock")
  (return-type "const-gchar*")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
  )
)

(define-method get_icon_name
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_icon_name")
  (return-type "const-gchar*")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
  )
)

(define-method get_icon_gicon
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_icon_gicon")
  (return-type "GIcon*")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
  )
)

(define-method set_icon_activatable
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_icon_activatable")
  (return-type "none")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
    '("gboolean" "activatable")
  )
)

(define-method get_icon_activatable
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_icon_activatable")
  (return-type "gboolean")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
  )
)

(define-method set_icon_sensitive
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_icon_sensitive")
  (return-type "none")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
    '("gboolean" "sensitive")
  )
)

(define-method get_icon_sensitive
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_icon_sensitive")
  (return-type "gboolean")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
  )
)

(define-method get_icon_at_pos
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_icon_at_pos")
  (return-type "gint")
  (parameters
    '("gint" "x")
    '("gint" "y")
  )
)

(define-method set_icon_tooltip_text
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_icon_tooltip_text")
  (return-type "none")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
    '("const-gchar*" "tooltip" (null-ok))
  )
)

(define-method get_icon_tooltip_text
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_icon_tooltip_text")
  (return-type "gchar*")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
  )
)

(define-method set_icon_tooltip_markup
  (of-object "GtkEntry")
  (c-name "gtk_entry_set_icon_tooltip_markup")
  (return-type "none")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
    '("const-gchar*" "tooltip" (null-ok))
  )
)

(define-method get_icon_tooltip_markup
  (of-object "GtkEntry")
  (c-name "gtk_entry_get_icon_tooltip_markup")
  (return-type "gchar*")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
  )
)

(define-method unset_invisible_char
  (of-object "GtkEntry")
  (c-name "gtk_entry_unset_invisible_char")
  (return-type "none")
)

(define-virtual icon_press
  (of-object "GtkEntry")
  (return-type "none")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
    '("GdkEvent*" "event")
  )
)

(define-virtual icon_release
  (of-object "GtkEntry")
  (return-type "none")
  (parameters
    '("GtkEntryIconPosition" "icon_pos")
    '("GdkEvent*" "event")
  )
)

