From: espen Date: Fri, 12 Jan 2007 10:32:43 +0000 (+0000) Subject: Inherit from REF-COUNTED-OBJECT X-Git-Url: https://git.distorted.org.uk/~mdw/clg/commitdiff_plain/af338f4a78fec3685e39ce00bcc4cd891e7c0b60 Inherit from REF-COUNTED-OBJECT --- diff --git a/cairo/cairo.lisp b/cairo/cairo.lisp index 75452a2..45a37fb 100644 --- a/cairo/cairo.lisp +++ b/cairo/cairo.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: cairo.lisp,v 1.8 2007-01-11 10:20:22 espen Exp $ +;; $Id: cairo.lisp,v 1.9 2007-01-12 10:32:43 espen Exp $ (in-package "CAIRO") @@ -77,13 +77,13 @@ :type double-float)) (:metaclass struct-class)) - (defclass font-face (proxy) + (defclass font-face (ref-counted-object) () (:metaclass proxy-class) (:ref %font-face-reference) (:unref %font-face-destroy)) - (defclass font-options (proxy) + (defclass font-options (ref-counted-object) ((antialias :allocation :virtual :getter "font_options_get_antialias" @@ -112,7 +112,7 @@ (:ref %font-options-reference) (:unref %font-options-destroy)) - (defclass scaled-font (proxy) + (defclass scaled-font (ref-counted-object) () (:metaclass proxy-class) (:ref %scaled-font-reference) @@ -143,7 +143,7 @@ (y-advance :allocation :alien :reader text-extents-y-advance :type double-float)) (:metaclass struct-class)) - (defclass pattern (proxy) + (defclass pattern (ref-counted-object) ((extend :allocation :virtual :getter "cairo_pattern_get_extend" @@ -167,7 +167,7 @@ (:unref %pattern-destroy)) - (defclass surface (proxy) + (defclass surface (ref-counted-object) (#?(pkg-exists-p "cairo" :atleast-version "1.2") (type :allocation :virtual @@ -184,7 +184,7 @@ (:ref %surface-reference) (:unref %surface-destroy)) - (defclass context (proxy) + (defclass context (ref-counted-object) ((target :allocation :virtual :getter "cairo_get_target" @@ -284,9 +284,7 @@ :getter "cairo_image_surface_get_height" :reader surface-height :type int)) - (:metaclass proxy-class) - (:ref %surface-reference) - (:unref %surface-destroy)) + (:metaclass proxy-class)) ;; (defclass path (proxy) diff --git a/glib/gtype.lisp b/glib/gtype.lisp index 4b411e4..0de8bbd 100644 --- a/glib/gtype.lisp +++ b/glib/gtype.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: gtype.lisp,v 1.59 2007-01-02 18:39:42 espen Exp $ +;; $Id: gtype.lisp,v 1.60 2007-01-12 10:32:43 espen Exp $ (in-package "GLIB") @@ -368,7 +368,7 @@ ;;;; Superclass for wrapping types in the glib type system (eval-when (:compile-toplevel :load-toplevel :execute) - (defclass ginstance (proxy) + (defclass ginstance (ref-counted-object) (;(class :allocation :alien :type pointer :offset 0) ) (:metaclass proxy-class) @@ -400,12 +400,6 @@ (error "Object at ~A has an unkown type number: ~A" location (%type-number-of-ginstance location))))) -(define-type-method from-alien-form ((type ginstance) form &key (ref :copy)) - (call-next-method type form :ref ref)) - -(define-type-method from-alien-function ((type ginstance) &key (ref :copy)) - (call-next-method type :ref ref)) - ;;;; Registering fundamental types