emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: :format strings in Custom ending in %h


From: Luc Teirlinck
Subject: Re: :format strings in Custom ending in %h
Date: Mon, 20 Oct 2003 13:05:25 -0500 (CDT)

I am about ready to submit a file for inclusion in Emacs.  It contains
a complex defcustom which does not function properly without the
following patch.  I have applied this patch to my own Emacs CVS and
have used it ever since the end of August without problems.  The patch
is needed to fix an annoying problem in Custom which we discussed at
the end of August.  I had the impression that you were going to commit
something along these lines:

2003-08-24  Per Abrahamsen  <address@hidden>

        * wid-edit.el (widget-default-delete): Always delete child
          widgets.

*** wid-edit.el.~1.120.~        Thu Aug 21 14:17:37 2003
--- wid-edit.el Sun Aug 24 17:37:04 2003
***************
*** 1465,1470 ****
--- 1465,1471 ----
        (inhibit-modification-hooks t)
        (inhibit-read-only t))
      (widget-apply widget :value-delete)
+     (widget-children-value-delete widget)
      (when inactive-overlay
        (delete-overlay inactive-overlay))
      (when button-overlay

Old follow-up message (from Per Abrahamsen):

    Luc Teirlinck <address@hidden> writes:

    > I guess that after applying this patch
    > `widget-children-value-delete'
    > will become a pretty redundant value for :value-delete, essentially
    > equivalent with `ignore'.

    Yes, if we apply this patch we probably also should change all these
    values, mark widget-children-value-delete as obsolete (and inline the
    code in widget-default-delete), and document this property of :buttons
    and :children somewhere.

    But I don't know if there is some code that depend on :buttons and
    :children *not* being deleted recursively.  Maybe applying the patch
    will be the easiest way to find out.

    Oh, and we probably should find other places where :buttons and
    :children are deleted (now) reduntantly, and adjust those.

Did you change your mind about the next to last paragraph?

>From diffing with the current CVS, I noticed that the actual complete
patch I have been using since August (and hence has been tested for a
while) is the diff below.  I believe your patch above (included in the
one below) makes the second (earlier) change redundant however.  I
just forgot to remove it after applying your patch above.

d ~/
diff -c /home/teirllm/emacscvsdir/emacs/lisp/wid-edit.el  ;; (current CVS)
/home/teirllm/wid-edit.el ;; personal, used since end August.
*** /home/teirllm/emacscvsdir/emacs/lisp/wid-edit.el    Mon Oct 20
11:00:20 2003
--- /home/teirllm/wid-edit.el   Tue Sep  2 07:38:18 2003
***************
*** 1465,1470 ****
--- 1465,1471 ----
    (inhibit-modification-hooks t)
    (inhibit-read-only t))
      (widget-apply widget :value-delete)
+     (widget-children-value-delete widget)
      (when inactive-overlay
        (delete-overlay inactive-overlay))
      (when button-overlay
***************
*** 1556,1562 ****
    "Constant items for inclusion in other widgets."
    :convert-widget 'widget-value-convert-widget
    :value-create 'widget-item-value-create
!   :value-delete 'ignore
    :value-get 'widget-value-value-get
    :match 'widget-item-match
    :match-inline 'widget-item-match-inline
--- 1557,1563 ----
    "Constant items for inclusion in other widgets."
    :convert-widget 'widget-value-convert-widget
    :value-create 'widget-item-value-create
!   :value-delete 'widget-children-value-delete
    :value-get 'widget-value-value-get
    :match 'widget-item-match
    :match-inline 'widget-item-match-inline

Diff finished at Mon Oct 20 11:05:58





reply via email to

[Prev in Thread] Current Thread [Next in Thread]