Actually neither of these patches are correct, the intent is to modify the value of the slots.
:)
On Thu, 24 Feb 2005 23:23:54 -0600, mikemac@mikemac.com mikemac@mikemac.com wrote:
Index: gadgets.lisp
@@ -2700,7 +2700,7 @@ (height (space-requirement-height sr))) (allocate-space child width height) (setf (gadget record) child)
- (with-slots (x1 x2 y1 y2) record
- (multiple-value-bind (x1 y1 x2 y2) (slot-value record 'coordinates)
Try this instead:
(multiple-value-bind (x1 y1 x2 y2) (rectangle-edges* record)
Using internal state of classes is a no-no. Use the interfaces provided by the spec.
Mike McDonald mikemac@mikemac.com _______________________________________________ mcclim-devel mailing list mcclim-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/mcclim-devel
To: mcclim-devel@common-lisp.net Date: Fri, 25 Feb 2005 00:57:19 -0500 From: Andy Hefner
Actually neither of these patches are correct, the intent is to modify the value of the slots.
:)
Fine, then use MAKE-RECTANGLE* to make a new rectangle. Don't modify an existing one:
Members of this class are immutable.
Mike McDonald mikemac@mikemac.com
On Feb 25, 2005, at 9:07 AM, mikemac@mikemac.com wrote:
To: mcclim-devel@common-lisp.net Date: Fri, 25 Feb 2005 00:57:19 -0500 From: Andy Hefner
Actually neither of these patches are correct, the intent is to modify the value of the slots.
:)
Fine, then use MAKE-RECTANGLE* to make a new rectangle. Don't modify an existing one:
Members of this class are immutable.
Then we need to rewrite recording.lisp :) Seriously, we've abused rectangles in this way for a very long time; they're too convenient to use in the representation of output recording records. We also conflate rectangles, bounding rectangles, and output records, even though the spec says they are different. I think the admonition "rectangles are immutable" is more in the context of operations on regions.
Tim