Bwidget Source Code
View Ticket
Not logged in
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.
Ticket UUID: 397db23424640403a24080961df44bfac6ef3c9e
Title: Themed ComboBox fails on -postcommand
Type: Bug Version: 1.9.7
Submitter: anonymous Created on: 2014-09-05 07:56:26
Subsystem: bwidget Assigned To: oehhar
Priority: 5 Medium Severity: Important
Status: Closed Last Modified: 2014-09-05 12:43:49
Resolution: Fixed Closed By: oehhar
    Closed on: 2014-09-05 12:43:49
Description:
% package require BWidget
1.9.7
% Widget::theme 1
1
% pack [ComboBox .cb -values {123 456 hello "w o r l d"} -modifycmd {puts "modified"}]

Select Arrow -> runtime error:

unknown option "-entrybg"
    while executing
"Widget::cget $path -entrybg"
    (procedure "_create_popup" line 59)
    invoked from within
"_create_popup $path"
    (procedure "_recreate_popup" line 27)
    invoked from within
"_recreate_popup $path"
    (procedure "ComboBox::_mapliste" line 19)
    invoked from within
"ComboBox::_mapliste .cb"
    ("uplevel" body line 1)
    invoked from within
"uplevel \#0 $cmd"
    (procedure "ArrowButton::_release" line 17)
    invoked from within
"ArrowButton::_release .cb.a.c"
    (command bound to event)
User Comments: oehhar added on 2014-09-05 12:43:49:

Thank you for the bug report.

On the current bwidget branch, this shows another related issue:

can't read "option": no such variable
can't read "option": no such variable
    while executing
"info exists pathopt($option)"
    (procedure "::Widget::which" line 23)
    invoked from within
"::Widget::which $path -option $option"
    (procedure "Widget::varForOption" line 2)
    invoked from within
"Widget::varForOption $path -values"
    (procedure "_create_popup" line 59)
    invoked from within
"_create_popup $path"
    (procedure "_recreate_popup" line 27)
    invoked from within
"_recreate_popup $path"
    (procedure "ComboBox::_mapliste" line 19)
    invoked from within
"ComboBox::_mapliste .cb"
    ("uplevel" body line 1)
    invoked from within
"uplevel \#0 $cmd"
    (procedure "ArrowButton::_release" line 17)
    invoked from within
"ArrowButton::_release .cb.a.c"
    (command bound to event)

This is fixed for me with checkin [7665445856091342a].

Then, the issue does not arise any more for me.

The resulting box looks a bit ugly on windows but that is as it is.

Bug closed, please check checkin if ok for you, and complain if not.

Thank you, Harald