In the section /Defining New Widgets/, the following quotation reveals a bug, I believe. I added emphasis for the last sentence of each description of the keywords. I believe that for the :value-to-external function, the last sentence is not supposed to be present. :value-to-internal Function to convert the value to the internal format. The function takes two arguments, a widget and an external value, and returns the internal value./The function is called on the present :value when the widget is created, and on any value set later with widget-value-set./ :value-to-external Function to convert the value to the external format. The function takes two arguments, a widget and an internal value, and returns the external value./The function is called on the present :value when the widget is created, and on any value set later with widget-value-set./ It looks like the author or editor of the descriptions coped them, which is fine. It doesn't make sense that :value-to-external would be called when the widget is created, nor when new values are set with widget-value-set. Other places in the manual state that the value of the :value keyword, when creating or defining widget, should be in the external form, more evidence that the last sentence is a bug. -- "It's a GNU system, I don't know this!" ||--- Mirror universe Lex Murphy, in Cenozoic Zoo