all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Disabling customization items
@ 2003-08-15 20:47 Bill Wohler
  2003-08-18 16:54 ` Kevin Rodgers
  0 siblings, 1 reply; 3+ messages in thread
From: Bill Wohler @ 2003-08-15 20:47 UTC (permalink / raw)


How does one disable items in the customization interface?

Let's say I have the option foo with three features "a", "b", or "c".

    (defcustom foo "a" nil
      :type '(choice (const "a")
                     (const "b")
                     (const "c")))

Let's say feature "b" is not available on a system. I'd like to indicate that
that item is supported by my code, but not by the system. Thus, choice "b"
should be disabled.

Thus customization interface in 21.2 doesn't appear to support this. Has
anyone figured out how to do this?

-- 
Bill Wohler <wohler@newt.com>  http://www.newt.com/wohler/  GnuPG ID:610BD9AD
Maintainer of comp.mail.mh FAQ and MH-E. Vote Libertarian!
If you're passed on the right, you're in the wrong lane.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Disabling customization items
  2003-08-15 20:47 Disabling customization items Bill Wohler
@ 2003-08-18 16:54 ` Kevin Rodgers
  2003-08-25  2:00   ` Bill Wohler
  0 siblings, 1 reply; 3+ messages in thread
From: Kevin Rodgers @ 2003-08-18 16:54 UTC (permalink / raw)


Bill Wohler wrote:

> How does one disable items in the customization interface?
> 
> Let's say I have the option foo with three features "a", "b", or "c".
> 
>     (defcustom foo "a" nil
>       :type '(choice (const "a")
>                      (const "b")
>                      (const "c")))
> 
> Let's say feature "b" is not available on a system. I'd like to indicate that
> that item is supported by my code, but not by the system. Thus, choice "b"
> should be disabled.
> 
> Thus customization interface in 21.2 doesn't appear to support this. Has
> anyone figured out how to do this?

It's not dynamic, but it should be good enough for the situation you've described:


(defcustom foo "a" nil
   :type `(choice (const "a")
		 ,@(if (featurep 'b) (list '(const "b")))
		 (const "c")))

-- 
Kevin Rodgers

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Disabling customization items
  2003-08-18 16:54 ` Kevin Rodgers
@ 2003-08-25  2:00   ` Bill Wohler
  0 siblings, 0 replies; 3+ messages in thread
From: Bill Wohler @ 2003-08-25  2:00 UTC (permalink / raw)


Kevin Rodgers <ihs_4664@yahoo.com> writes:

> Bill Wohler wrote:
>
>> How does one disable items in the customization interface?
>> Let's say I have the option foo with three features "a", "b", or "c".
>>     (defcustom foo "a" nil
>>       :type '(choice (const "a")
>>                      (const "b")
>>                      (const "c")))
>> Let's say feature "b" is not available on a system. I'd like to
>> indicate that
>> that item is supported by my code, but not by the system. Thus, choice "b"
>> should be disabled.
>> Thus customization interface in 21.2 doesn't appear to support this.
>> Has
>> anyone figured out how to do this?
>
> It's not dynamic, but it should be good enough for the situation you've described:
>
>
> (defcustom foo "a" nil
>    :type `(choice (const "a")
> 		 ,@(if (featurep 'b) (list '(const "b")))
> 		 (const "c")))

Thanks for your reply Kevin, but I don't think this is what I'm
looking for. I think your code makes item "b" go away entirely.
Instead, I want all three items to appear in the menu, but I want item
"b" to be greyed out and not selectable. Any thoughts about that?

-- 
Bill Wohler <wohler@newt.com>  http://www.newt.com/wohler/  GnuPG ID:610BD9AD
Maintainer of comp.mail.mh FAQ and MH-E. Vote Libertarian!
If you're passed on the right, you're in the wrong lane.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2003-08-25  2:00 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-08-15 20:47 Disabling customization items Bill Wohler
2003-08-18 16:54 ` Kevin Rodgers
2003-08-25  2:00   ` Bill Wohler

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.