From: espen Date: Sun, 26 Feb 2006 21:19:02 +0000 (+0000) Subject: Stock item bindings updated to Gtk+ 2.8 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/clg/commitdiff_plain/0c5f20d91888de36d1ec15806e46f1afd5938b8b Stock item bindings updated to Gtk+ 2.8 --- diff --git a/gtk/gtk.lisp b/gtk/gtk.lisp index 7f62a0a..6b8b049 100644 --- a/gtk/gtk.lisp +++ b/gtk/gtk.lisp @@ -20,7 +20,7 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: gtk.lisp,v 1.55 2006-02-26 15:20:46 espen Exp $ +;; $Id: gtk.lisp,v 1.56 2006-02-26 21:19:02 espen Exp $ (in-package "GTK") @@ -2245,13 +2245,22 @@ (defbinding %stock-lookup () boolean (location pointer)) (defun stock-lookup (stock-id) - (let ((location - (allocate-memory (foreign-size (find-class 'stock-item))))) - (unwind-protect - (when (%stock-lookup stock-id location) - (ensure-proxy-instance 'stock-item (%stock-item-copy location))) - (deallocate-memory location)))) + (with-allocated-memory (stock-item (foreign-size (find-class 'stock-item))) + (when (%stock-lookup stock-id stock-item) + (ensure-proxy-instance 'stock-item (%stock-item-copy stock-item))))) +#+gtk2.8 +(progn + (define-callback-marshal %stock-translate-callback string ((path string))) + + (defbinding (stock-set-translate-function "gtk_stock_set_translate_func") + (domain function) nil + (domain string) + (%stock-translate-callback callback) + ((register-callback-function function) unsigned-int) + (user-data-destroy-callback callback))) + + ;;; Tooltips