X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/clg/blobdiff_plain/5c9cc66aa5fa72f1edce094b9c3fe476705de040..b4a94e209931fdae387a11090159e96e42417fee:/gtk/gtk.lisp diff --git a/gtk/gtk.lisp b/gtk/gtk.lisp index 722584a..05f6c8a 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.46 2005-10-21 12:32:29 espen Exp $ +;; $Id: gtk.lisp,v 1.52 2006-02-09 22:32:47 espen Exp $ (in-package "GTK") @@ -1091,13 +1091,14 @@ (defbinding menu-tool-button-set-arrow-tooltip () nil ;;; Message dialog -(defmethod initialize-instance ((dialog message-dialog) - &key (message-type :info) (buttons :close) - flags text #+gtk 2.6 secondary-text - transient-parent) - (setf - (slot-value dialog 'location) - (%message-dialog-new transient-parent flags message-type buttons)) +(defmethod allocate-foreign ((dialog message-dialog) &key (message-type :info) + (buttons :close) flags transient-parent) + (%message-dialog-new transient-parent flags message-type buttons)) + + +(defmethod shared-initialize ((dialog message-dialog) names + &key text #+gtk 2.6 secondary-text) + (declare (ignore names)) (when text (message-dialog-set-markup dialog text)) #+gtk2.6 @@ -1294,13 +1295,13 @@ (progn (defbinding %window-present () nil (window window)) - (defbinding %window-present-with-timestamp () nil + (defbinding %window-present-with-time () nil (window window) (timespamp unsigned-int)) (defun window-present (window &optional timestamp) (if timestamp - (%window-present-with-timestamp window timestamp) + (%window-present-with-time window timestamp) (%window-present window)))) (defbinding window-iconify () nil @@ -1366,7 +1367,7 @@ (defbinding window-get-frame-dimensions () nil (window window) (left int :out) (top int :out) (rigth int :out) (bottom int :out)) -(defbinding %window-get-icon-list () (glist gdk:pixbuf) +(defbinding %window-get-icon-list () (glist (copy-of gdk:pixbuf)) (window window)) (defbinding window-get-position () nil @@ -2231,7 +2232,7 @@ (defbinding %stock-lookup () boolean (defun stock-lookup (stock-id) (let ((location - (allocate-memory (proxy-instance-size (find-class 'stock-item))))) + (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)))