5 (defcfun gtk-entry-get-layout-offsets :void
6 (entry (g-object entry))
10 (defun gtk-entry-layout-offset (entry)
11 (with-foreign-objects ((x :int) (y :int))
12 (gtk-entry-get-layout-offsets entry x y)
13 (list (mem-ref x :int) (mem-ref y :int))))
15 (defcfun (entry-layout-index-to-text-index "gtk_entry_layout_index_to_text_index") :int
16 (entry (g-object entry))
19 (export 'entry-layout-index-to-text-index)
21 (defcfun (entry-text-index-to-layout-index "gtk_entry_text_index_to_layout_index") :int
22 (entry (g-object entry))
25 (export 'entry-text-index-to-layout-info)
27 (defcfun (entry-icon-at-pos "gtk_entry_get_icon_at_pos") :int
28 (entry (g-object entry))
32 (export 'entry-icon-at-pos)
34 (defcfun (entry-progress-pulse "gtk_entry_progress_pulse") :void
35 (entry (g-object entry)))
37 (export 'entry-progress-pulse)
41 (defcfun (editable-select-region "gtk_editable_select_region") :void
42 (editable (g-object editable))
46 (export 'editable-select-region)
48 (defcfun gtk-editable-get-selection-bounds :boolean
49 (editable (g-object editable))
50 (start (:pointer :int))
51 (end (:pointer :int)))
53 (defun editable-selection (editable)
54 (with-foreign-objects ((start :int) (end :int))
55 (let ((selected-p (gtk-editable-get-selection-bounds editable start end)))
56 (values selected-p (mem-ref start :int) (mem-ref end :int)))))
58 (export 'editable-selection)
60 (defcfun gtk-editable-insert-text :void
61 (editable (g-object editable))
63 (new-text-length :int)
64 (position (:pointer :int)))
66 (defun editable-insert-text (editable text position)
67 (with-foreign-object (pos :int)
68 (setf (mem-ref pos :int) position)
69 (gtk-editable-insert-text editable text (length text) pos)
72 (export 'editable-insert-text)
74 (defcfun gtk-editable-delete-text :void
75 (editable (g-object editable))
79 (defun editable-delete-text (editable &key start-pos end-pos)
80 (gtk-editable-delete-text editable (or start-pos -1) (or end-pos -1)))
82 (export 'editable-delete-text)
84 (defcfun gtk-editable-get-chars g-string
85 (editable (g-object editable))
89 (defun editable-get-chars (editable &key (start -1) (end -1))
90 (gtk-editable-get-chars editable start end))
92 (export 'editable-get-chars)
94 (defcfun (editable-cut-clipboard "gtk_editable_cut_clipboard") :void
95 (editable (g-object editable)))
97 (export 'editable-cut-clipboard)
99 (defcfun (editable-copy-clipboard "gtk_editable_copy_clipboard") :void
100 (editable (g-object editable)))
102 (export 'editable-copy-clipboard)
104 (defcfun (editable-paste-clipboard "gtk_editable_paste_clipboard") :void
105 (editable (g-object editable)))
107 (export 'editable-paste-clipboard)
109 (defcfun (editable-delete-selection "gtk_editable_delete_selection") :void
110 (editable (g-object editable)))
112 (export 'editable-delete-selection)
114 (defcfun (editable-position "gtk_editable_get_position") :int
115 (editable (g-object editable)))
117 (defcfun gtk-editable-set-position :void
118 (editable (g-object editable))
121 (defun (setf editable-position) (position editable)
122 (gtk-editable-set-position editable position))
124 (export 'editable-position)
126 (defcfun (editable-editable "gtk_editable_get_editable") :boolean
127 (editable (g-object editable)))
129 (defcfun gtk-editable-set-editable :void
130 (editable (g-object editable))
131 (is-editable :boolean))
133 (defun (setf editable-editable) (is-editable editable)
134 (gtk-editable-set-editable editable is-editable))
136 (export 'editable-editable)
138 ;; GtkEntryCompletion
140 (define-cb-methods entry-completion-match-func :boolean
141 ((completion (g-object entry-completion))
143 (iter (g-boxed-foreign tree-iter))))
145 (defcfun (%gtk-entry-completion-set-match-func "gtk_entry_completion_set_match_func") :void
146 (completion (g-object entry-completion))
149 (destroy-notify :pointer))
151 (defun gtk-entry-completion-set-match-func (completion function)
153 (%gtk-entry-completion-set-match-func completion
154 (callback entry-completion-match-func-cb)
155 (create-fn-ref completion function)
156 (callback entry-completion-match-func-destroy-notify))
157 (%gtk-entry-completion-set-match-func completion
162 (defcfun (entry-completion-complete "gtk_entry_completion_complete") :void
163 (completion (g-object entry-completion)))
165 (export 'entry-completion-complete)
167 (defcfun (entry-completion-completion-prefix "gtk_entry_completion_get_completion_prefix") (:string :free-from-foreign t)
168 (completion (g-object entry-completion)))
170 (export 'entry-completion-completion-prefix)
172 (defcfun (entry-completion-insert-prefix "gtk_entry_completion_insert_prefix") :void
173 (completion (g-object entry-completion)))
175 (export 'entry-completion-completion-prefix)
177 (defcfun (entry-completion-insert-action-text "gtk_entry_completion_insert_action_text") :void
178 (completion (g-object entry-completion))
182 (export 'entry-completion-insert-action-text)
184 (defcfun (entry-copmletion-insert-action-markup "gtk_entry_completion_insert_action_markup") :void
185 (completion (g-object entry-completion))
189 (export 'entry-completion-insert-action-markup)
191 (defcfun (entry-completion-delete-action "gtk_entry_completion_delete_action") :void
192 (completion (g-object entry-completion))
195 (export 'entry-completion-delete-action)