X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=gtk%2Fgtk.label.lisp;h=bd84e4c4271ca9086eaef9790ed5f87109feefaa;hb=c5a046da8c5ca824b266ff48034a860790dc1aa3;hp=c5d738a306f5702de8af8458b9bb43009437c68c;hpb=0d03b82a77743d2ea5ef69bea08735fa12857d92;p=cl-gtk2.git diff --git a/gtk/gtk.label.lisp b/gtk/gtk.label.lisp index c5d738a..bd84e4c 100644 --- a/gtk/gtk.label.lisp +++ b/gtk/gtk.label.lisp @@ -1,16 +1,14 @@ (in-package :gtk) -(defcfun gtk-label-get-layout-offsets :void +(defcfun (%gtk-label-get-layout-offsets "gtk_label_get_layout_offsets") :void (label (g-object label)) (x (:pointer :int)) (y (:pointer :int))) -(defun label-layout-offsets (label) +(defun gtk-label-get-layout-offsets (label) (with-foreign-objects ((x :int) (y :int)) - (gtk-label-get-layout-offsets label x y) - (values (mem-ref x :int) (mem-ref y :int)))) - -(export 'label-layout-offsets) + (%gtk-label-get-layout-offsets label x y) + (list (mem-ref x :int) (mem-ref y :int)))) (defcfun (label-select-region "gtk_label_select_region") :void (label (g-object label)) @@ -19,7 +17,12 @@ (export 'label-select-region) -(defcfun (label-layout "gtk_label_get_layout") g-object ;(g-object pango-layout) - (label (g-object label))) +(defcfun (%gtk-label-get-selection-bounds "gtk_label_get_selection_bounds") :boolean + (label (g-object label)) + (start (:pointer :int)) + (end (:pointer :int))) -(export 'label-layout) \ No newline at end of file +(defun gtk-label-get-selection-bounds (label) + (with-foreign-objects ((start :int) (end :int)) + (when (%gtk-label-get-selection-bounds label start end) + (list (mem-ref start :int) (mem-ref end :int)))))