chiark
/
gitweb
/
~mdw
/
clg
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Small bug fix
[clg]
/
gtk
/
gtkobject.lisp
diff --git
a/gtk/gtkobject.lisp
b/gtk/gtkobject.lisp
index 68c2db97e0637851f018c375eb4a037ed24c7c54..e88046c39f12c60eecf4c312d8fded30108a4a01 100644
(file)
--- a/
gtk/gtkobject.lisp
+++ b/
gtk/gtkobject.lisp
@@
-20,22
+20,12
@@
;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-;; $Id: gtkobject.lisp,v 1.
27 2005-04-23 16:48:52
espen Exp $
+;; $Id: gtkobject.lisp,v 1.
33 2006-02-28 16:34:37
espen Exp $
(in-package "GTK")
(in-package "GTK")
-;;;; Misc utils
-
-; (defun name-to-string (name)
-; (substitute #\_ #\- (string-downcase (string name))))
-
-; (defun string-to-name (name &optional (package "KEYWORD"))
-; (intern (substitute #\- #\_ (string-upcase name)) package))
-
-
-
;;;; Superclass for the gtk class hierarchy
(eval-when (:compile-toplevel :load-toplevel :execute)
;;;; Superclass for the gtk class hierarchy
(eval-when (:compile-toplevel :load-toplevel :execute)
@@
-52,13
+42,15
@@
(defclass %object (gobject)
(defmethod initialize-instance ((object %object) &rest initargs &key signal)
(declare (ignore signal))
(call-next-method)
(defmethod initialize-instance ((object %object) &rest initargs &key signal)
(declare (ignore signal))
(call-next-method)
- (reference-foreign (class-of object) (proxy-location object))
(dolist (signal-definition (get-all initargs :signal))
(apply #'signal-connect object signal-definition)))
(defmethod initialize-instance :around ((object %object) &rest initargs)
(declare (ignore initargs))
(call-next-method)
(dolist (signal-definition (get-all initargs :signal))
(apply #'signal-connect object signal-definition)))
(defmethod initialize-instance :around ((object %object) &rest initargs)
(declare (ignore initargs))
(call-next-method)
+ ;; Add a temorary reference which will be removed when the object is
+ ;; sinked
+ (reference-foreign (class-of object) (foreign-location object))
(%object-sink object))
(defbinding %object-sink () nil
(%object-sink object))
(defbinding %object-sink () nil
@@
-123,18
+115,12
@@
(defmethod effective-slot-definition-class ((class child-class) &rest initargs)
(t (call-next-method))))
(defmethod compute-effective-slot-definition-initargs ((class child-class) direct-slotds)
(t (call-next-method))))
(defmethod compute-effective-slot-definition-initargs ((class child-class) direct-slotds)
- (if (eq (
most-specific-slot-value direct-slotds 'allocation
) :property)
+ (if (eq (
slot-definition-allocation (first direct-slotds)
) :property)
(nconc
(list :pname (most-specific-slot-value direct-slotds 'pname))
(call-next-method))
(call-next-method)))
(nconc
(list :pname (most-specific-slot-value direct-slotds 'pname))
(call-next-method))
(call-next-method)))
-(progn
- #+cmu(declaim (optimize (inhibit-warnings 3)))
- #+sbcl(declaim (muffle-conditions compiler-note))
- (defun %container-child-get-property (parent child pname gvalue))
- (defun %container-child-set-property (parent child pname gvalue)))
-
(defmethod initialize-internal-slot-functions ((slotd effective-child-slot-definition))
(let ((type (slot-definition-type slotd))
(defmethod initialize-internal-slot-functions ((slotd effective-child-slot-definition))
(let ((type (slot-definition-type slotd))