X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=gtk%2Fgtk.entry.lisp;h=c4362aed040aaee94f91850534977ca7f45e5e6b;hb=280cc197440f3dec31bcbcd88b001b740be6e697;hp=c21e62f774bc931a0e0d1247a795a2aaec3f2093;hpb=e9900caf289cbcb92bd0c17c88a4d49379a2022a;p=cl-gtk2.git diff --git a/gtk/gtk.entry.lisp b/gtk/gtk.entry.lisp index c21e62f..c4362ae 100644 --- a/gtk/gtk.entry.lisp +++ b/gtk/gtk.entry.lisp @@ -86,7 +86,7 @@ (start-pos :int) (end-pos :int)) -(defun editable-get-chars (editable &key (start -1) (end -1)) +(defun editable-get-chars (editable &key (start 0) (end -1)) (gtk-editable-get-chars editable start end)) (export 'editable-get-chars) @@ -111,26 +111,61 @@ (export 'editable-delete-selection) -(defcfun (editable-position "gtk_editable_get_position") :int - (editable (g-object editable))) +;; GtkEntryCompletion -(defcfun gtk-editable-set-position :void - (editable (g-object editable)) - (pos :int)) +(define-cb-methods entry-completion-match-func :boolean + ((completion (g-object entry-completion)) + (key :string) + (iter (g-boxed-foreign tree-iter)))) -(defun (setf editable-position) (position editable) - (gtk-editable-set-position editable position)) +(defcfun (%gtk-entry-completion-set-match-func "gtk_entry_completion_set_match_func") :void + (completion (g-object entry-completion)) + (func :pointer) + (data :pointer) + (destroy-notify :pointer)) -(export 'editable-position) +(defun gtk-entry-completion-set-match-func (completion function) + (if function + (%gtk-entry-completion-set-match-func completion + (callback entry-completion-match-func-cb) + (create-fn-ref completion function) + (callback entry-completion-match-func-destroy-notify)) + (%gtk-entry-completion-set-match-func completion + (null-pointer) + (null-pointer) + (null-pointer)))) -(defcfun (editable-editable "gtk_editable_get_editable") :boolean - (editable (g-object editable))) +(defcfun (entry-completion-complete "gtk_entry_completion_complete") :void + (completion (g-object entry-completion))) -(defcfun gtk-editable-set-editable :void - (editable (g-object editable)) - (is-editable :boolean)) +(export 'entry-completion-complete) + +(defcfun (entry-completion-completion-prefix "gtk_entry_completion_get_completion_prefix") (:string :free-from-foreign t) + (completion (g-object entry-completion))) + +(export 'entry-completion-completion-prefix) + +(defcfun (entry-completion-insert-prefix "gtk_entry_completion_insert_prefix") :void + (completion (g-object entry-completion))) + +(export 'entry-completion-completion-prefix) + +(defcfun (entry-completion-insert-action-text "gtk_entry_completion_insert_action_text") :void + (completion (g-object entry-completion)) + (index :int) + (text :string)) + +(export 'entry-completion-insert-action-text) + +(defcfun (entry-copmletion-insert-action-markup "gtk_entry_completion_insert_action_markup") :void + (completion (g-object entry-completion)) + (index :int) + (markup :string)) + +(export 'entry-completion-insert-action-markup) -(defun (setf editable-editable) (is-editable editable) - (gtk-editable-set-editable editable is-editable)) +(defcfun (entry-completion-delete-action "gtk_entry_completion_delete_action") :void + (completion (g-object entry-completion)) + (index :int)) -(export 'editable-editable) \ No newline at end of file +(export 'entry-completion-delete-action)