anchor.diff:  ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
   ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
   
  -;; $Id: gtkcontainer.lisp,v 1.20 2006-02-28 16:32:18 espen Exp $
  +;; $Id: gtkcontainer.lisp,v 1.21 2006-04-26 12:31:34 espen Exp $
   
   (in-package "GTK")
   
  
positive.code: (defgeneric container-show-recursive (container))
  
  (defmethod container-show-recursive ((container container))
    "Recursively shows any child widgets except widgets explicit hidden during construction."
    (labels ((recursive-show (widget)
  	     (when (typep widget 'container)
  	       (if (not (user-data-p widget 'show-recursive-p))
  
negative.code: (defgeneric (setf container-children) (children container))
  
  
  (defun initial-add (object function initargs key pkey)
    (loop 
     as (initarg value . rest) = initargs then rest
     do (cond
         ((eq initarg key) (funcall function object value))
         ((eq initarg pkey) (mapc #'(lambda (value)
  				    (funcall function object value))
  				value)))
         while rest))
  
  (defun initial-apply-add (object function initargs key pkey)
    (initial-add object #'(lambda (object value)
  			  (apply function object (mklist value)))
  	       initargs key pkey))
  
  
  (defmethod shared-initialize ((container container) names &rest initargs 
  			      &key child children child-args 
  			      (show-children nil show-children-p))
    (declare (ignore names child children))
    (when show-children-p
      (if (not show-children)
  	(setf (user-data container 'show-recursive-p) nil)
  