GNU bug report logs -
#73178
31.0.50; [PATCH] Improve the widget to customize icon
Previous Next
Reported by: David Ponce <da_vid <at> orange.fr>
Date: Wed, 11 Sep 2024 14:29:02 UTC
Severity: normal
Tags: patch
Found in version 31.0.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #23 received at 73178 <at> debbugs.gnu.org (full text, mbox):
> Date: Wed, 8 Jan 2025 10:59:27 -0300
> Cc: Eli Zaretskii <eliz <at> gnu.org>
> From: Mauro Aranda <maurooaranda <at> gmail.com>
>
> David Ponce <da_vid <at> orange.fr> writes:
>
> > On 11/09/2024 5:19 PM, David Ponce wrote:
> >> Attached the correct patch.
> >> Sorry
> > Should be the good one this time.
> > Sorry again.
> >
> > diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
> > index 3ab5f11532e..fd790b18630 100644
> > --- a/lisp/cus-edit.el
> > +++ b/lisp/cus-edit.el
> > @@ -5525,6 +5525,53 @@ custom-icon-extended-menu
> > "A menu for `custom-icon' widgets.
> > Used in `custom-icon-action' to show a menu to the user.")
> >
> > +(defconst custom-icon--images-sub-type
> > + '(list :format "%{%t%}:\n%v\n"
> > + :tag "Images"
> > + (const :tag "" image)
> > + (repeat :tag "Values"
> > + (string :tag "Image filename"))
> > + (plist :tag "Image attributes")))
> > +
> > +(defconst custom-icon--emojis-sub-type
> > + '(list :format "%{%t%}:\n%v\n"
> > + :tag "Colorful Emojis"
> > + (const :tag "" emoji)
> > + (repeat :tag "Values"
> > + (string :tag "Emoji text"))
> > + (plist :tag "Emoji text properties")))
> > +
> > +(defconst custom-icon--symbols-sub-type
> > + '(list :format "%{%t%}:\n%v\n"
> > + :tag "Monochrome Symbols"
> > + (const :tag "" symbol)
> > + (repeat :tag "Values"
> > + (string :tag "Symbol text"))
> > + (plist :tag "Symbol text properties")))
> > +
> > +(defconst custom-icon--texts-sub-type
> > + '(list :format "%{%t%}:\n%v\n"
> > + :tag "Texts Only"
> > + (const :tag "" text)
> > + (repeat :tag "Values"
> > + (string :tag "Text"))
> > + (plist :tag "Text properties")))
> > +
> > +(defconst custom-icon--type
> > + `(repeat :format ,(concat "%{%t%}"
> > + (propertize ":" 'display "")
> > + "\n\n%v%i\n")
> > + :tag "Icon elements:
> > +- Only the first occurrence of a same element counts.
> > +- Missing elements will take their default value.
> > +- At least one element should be provided with a valid value."
> > + (choice :void ,custom-icon--texts-sub-type
> > + :extra-offset -3
> > + ,custom-icon--images-sub-type
> > + ,custom-icon--emojis-sub-type
> > + ,custom-icon--symbols-sub-type
> > + ,custom-icon--texts-sub-type)))
> > +
> > (defun custom-icon-value-create (widget)
> > "Here is where you edit the icon's specification."
> > (custom-load-widget widget)
> > @@ -5535,13 +5582,7 @@ custom-icon-value-create
> > (form (widget-get widget :custom-form))
> > (symbol (widget-get widget :value))
> > (tag (widget-get widget :tag))
> > - (type '(repeat
> > - (list (choice (const :tag "Images" image)
> > - (const :tag "Colorful Emojis" emoji)
> > - (const :tag "Monochrome Symbols" symbol)
> > - (const :tag "Text Only" text))
> > - (repeat string)
> > - plist)))
> > + (type custom-icon--type)
> > (prefix (widget-get widget :custom-prefix))
> > (last (widget-get widget :custom-last))
> > (style (widget-get widget :custom-style))
>
> I think this is an improvement. Thanks David.
Thanks for the review.
I wanted to install this, but byte-compiler produces a warning:
ELC cus-edit.elc
In toplevel form:
cus-edit.el:5595:20: Warning: reference to free variable `custom-icon--texts-widget'
Is that a typo, and you actually meant custom-icon--texts-sub-type?
Also, could you please accompany the patch with the ChangeLog-style
commit log message (see CONTRIBUTE for the details)? Otherwise, I
will have to write the log message manually when installing your
changes.
Thanks.
This bug report was last modified 133 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.