Bwidget Source Code
Artifact [1692ae3af6]
Not logged in

Artifact 1692ae3af6603d4519e9d4cc92f78d4f1185feb7:

Ticket change [1692ae3af6] - New ticket [4b6a27c9b8] Widget::theme 1 -> TitleFrame fails. by anonymous 2016-08-23 19:14:08.
D 2016-08-23T19:14:08.736
J assignee nobody
J closer nobody
J cmimetype text/plain
J comment When\strying\sto\srun\sthe\sdemo\susing\s"Widget::theme\s1"\sthe\sTitleFrame\swidget\sfails.\r\n\r\nPls.\ssee\sfollowing\ssource\scode,\swhere\sI\sadded\sthe\susual\s"if\s{[Widget::theme]}\s{..."\r\ncode\sblock\sto\ssupport\sttk::\swidgets.\r\n\r\nWould\sbe\sglad,\sif\sthis\sget's\sfixed.\r\nWith\skind\sregards,\r\n\s\sJohann\sOberdorfer\r\n\r\n#\s------------------------------------------------------------------------------\r\n#\s\stitleframe.tcl\r\n#\s\sThis\sfile\sis\spart\sof\sUnifix\sBWidget\sToolkit\r\n#\s------------------------------------------------------------------------------\r\n#\s\sIndex\sof\scommands:\r\n#\s\s\s\s\s-\sTitleFrame::create\r\n#\s\s\s\s\s-\sTitleFrame::configure\r\n#\s\s\s\s\s-\sTitleFrame::cget\r\n#\s\s\s\s\s-\sTitleFrame::getframe\r\n#\s\s\s\s\s-\sTitleFrame::_place\r\n#\s------------------------------------------------------------------------------\r\n\r\nnamespace\seval\sTitleFrame\s{\r\n\s\s\s\sWidget::define\sTitleFrame\stitleframe\r\n\r\n\s\s\s\sWidget::declare\sTitleFrame\s{\r\n\s\s\s\s\s\s\s\s{-relief\s\s\s\s\s\sTkResource\sgroove\s0\sframe}\r\n\s\s\s\s\s\s\s\s{-borderwidth\sTkResource\s2\s\s\s\s\s\s0\sframe}\r\n\s\s\s\s\s\s\s\s{-font\s\s\s\s\s\s\s\sTkResource\s""\s\s\s\s\s0\slabel}\r\n\s\s\s\s\s\s\s\s{-foreground\s\sTkResource\s""\s\s\s\s\s0\slabel}\r\n\s\s\s\s\s\s\s\s{-state\s\s\s\s\s\s\sTkResource\s""\s\s\s\s\s0\slabel}\r\n\s\s\s\s\s\s\s\s{-background\s\sTkResource\s""\s\s\s\s\s0\sframe}\r\n\s\s\s\s\s\s\s\s{-text\s\s\s\s\s\s\s\sString\s\s\s\s\s""\s\s\s\s\s0}\r\n\s\s\s\s\s\s\s\s{-ipad\s\s\s\s\s\s\s\sInt\s\s\s\s\s\s\s\s4\s\s\s\s\s\s0\s"%d\s>=0"}\r\n\s\s\s\s\s\s\s\s{-side\s\s\s\s\s\s\s\sEnum\s\s\s\s\s\s\sleft\s\s\s0\s{left\scenter\sright}}\r\n\s\s\s\s\s\s\s\s{-baseline\s\s\s\sEnum\s\s\s\s\s\s\scenter\s0\s{top\scenter\sbottom}}\r\n\s\s\s\s\s\s\s\s{-fg\s\s\s\s\s\s\s\s\s\sSynonym\s\s\s\s-foreground}\r\n\s\s\s\s\s\s\s\s{-bg\s\s\s\s\s\s\s\s\s\sSynonym\s\s\s\s-background}\r\n\s\s\s\s\s\s\s\s{-bd\s\s\s\s\s\s\s\s\s\sSynonym\s\s\s\s-borderwidth}\r\n\s\s\s\s}\r\n\r\n\s\s\s\sWidget::addmap\sTitleFrame\s""\s:cmd\s{-background\s{}}\r\n\s\s\s\sWidget::addmap\sTitleFrame\s""\s.l\s\s\s{\r\n\s\s\s\s\t-background\s{}\s-foreground\s{}\s-text\s{}\s-font\s{}\r\n\s\s\s\s}\r\n\s\s\s\sWidget::addmap\sTitleFrame\s""\s.l\s\s\s{-state\s{}}\r\n\s\s\s\sWidget::addmap\sTitleFrame\s""\s.p\s\s\s{-background\s{}}\r\n\s\s\s\sWidget::addmap\sTitleFrame\s""\s.b\s\s\s{\r\n\s\s\s\s\t-background\s{}\s-relief\s{}\s-borderwidth\s{}\r\n\s\s\s\s}\r\n\s\s\s\sWidget::addmap\sTitleFrame\s""\s.b.p\s{-background\s{}}\r\n\s\s\s\sWidget::addmap\sTitleFrame\s""\s.f\s\s\s{-background\s{}}\r\n}\r\n\r\n\r\n#\s------------------------------------------------------------------------------\r\n#\s\sCommand\sTitleFrame::create\r\n#\s------------------------------------------------------------------------------\r\nproc\sTitleFrame::create\s{\spath\sargs\s}\s{\r\n\s\s\s\sWidget::init\sTitleFrame\s$path\s$args\r\n\r\n\tif\s{[Widget::theme]}\s{\r\n\r\n\s\s\s\s\s\sset\sframe\s[eval\s[list\sttk::frame\s$path]\s[Widget::subcget\s$path\s:cmd]\s-relief\sflat\s\\\r\n\t\s\s\s\s\s\s\s\s-class\sTitleFrame]\r\n\r\n\s\s\s\s\s\sset\spadtop\s[eval\s[list\sttk::frame\s$path.p]\s[Widget::subcget\s$path\s:cmd]\s-relief\sflat]\r\n\s\s\s\s\s\sset\sborder\s[eval\s[list\sttk::frame\s$path.b]\s[Widget::subcget\s$path\s.b]]\r\n\s\s\s\s\s\sset\slabel\s\s[eval\s[list\sttk::label\s$path.l]\s[Widget::subcget\s$path\s.l]\s-relief\sflat]\r\n\s\s\s\s\s\sset\spadbot\s[eval\s[list\sttk::frame\s$border.p]\s[Widget::subcget\s$path\s.p]\s-relief\sflat]\r\n\s\s\s\s\s\sset\sframe\s\s[eval\s[list\sttk::frame\s$path.f]\s[Widget::subcget\s$path\s.f]\s-relief\sflat]\r\n\r\n\t}\selse\s{\r\n\r\n\s\s\s\s\s\sset\sframe\s\s[eval\s[list\sframe\s$path]\s[Widget::subcget\s$path\s:cmd]\s\\\r\n\t\s\s\s\s\s\s-class\sTitleFrame\s-relief\sflat\s-bd\s0\s-highlightthickness\s0]\r\n\r\n\s\s\s\s\s\sset\spadtop\s[eval\s[list\sframe\s$path.p]\s[Widget::subcget\s$path\s:cmd]\s\\\r\n\t\s\s\s\s\s\s-relief\sflat\s-borderwidth\s0]\r\n\s\s\s\s\s\sset\sborder\s[eval\s[list\sframe\s$path.b]\s[Widget::subcget\s$path\s.b]\s-highlightthickness\s0]\r\n\s\s\s\s\s\sset\slabel\s\s[eval\s[list\slabel\s$path.l]\s[Widget::subcget\s$path\s.l]\s\\\r\n\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s-highlightthickness\s0\s\\\r\n\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s-relief\sflat\s\\\r\n\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s\s-bd\s\s\s\s\s0\s-padx\s2\s-pady\s0]\r\n\s\s\s\s\s\sset\spadbot\s[eval\s[list\sframe\s$border.p]\s[Widget::subcget\s$path\s.p]\s\\\r\n\t\s\s\s\s\s\s-relief\sflat\s-bd\s0\s-highlightthickness\s0]\r\n\s\s\s\s\s\sset\sframe\s\s[eval\s[list\sframe\s$path.f]\s[Widget::subcget\s$path\s.f]\s\\\r\n\t\s\s\s\s\s\s-relief\sflat\s-bd\s0\s-highlightthickness\s0]\r\n\r\n\t}\r\n\r\n\s\s\s\sset\sheight\s[winfo\sreqheight\s$label]\r\n\r\n\s\s\s\sswitch\s[Widget::getoption\s$path\s-side]\s{\r\n\s\s\s\s\s\s\s\sleft\s\s\s{\sset\srelx\s0.0;\sset\sx\s5;\s\sset\sanchor\snw\s}\r\n\s\s\s\s\s\s\s\scenter\s{\sset\srelx\s0.5;\sset\sx\s0;\s\sset\sanchor\sn\s\s}\r\n\s\s\s\s\s\s\s\sright\s\s{\sset\srelx\s1.0;\sset\sx\s-5;\sset\sanchor\sne\s}\r\n\s\s\s\s}\r\n\s\s\s\sset\sbd\s[Widget::getoption\s$path\s-borderwidth]\r\n\s\s\s\sswitch\s[Widget::getoption\s$path\s-baseline]\s{\r\n\s\s\s\s\s\s\s\stop\s\s\s\s{\r\n\t\s\s\s\sset\sy\s\s\s\s0\r\n\t\s\s\s\sset\shtop\s$height\r\n\t\s\s\s\sset\shbot\s1\r\n\t}\r\n\s\s\s\s\s\s\s\scenter\s{\r\n\t\s\s\s\sset\sy\s\s\s\s0\r\n\t\s\s\s\sset\shtop\s[expr\s{$height/2}]\r\n\t\s\s\s\sset\shbot\s[expr\s{$height/2+$height%2+1}]\r\n\t}\r\n\s\s\s\s\s\s\s\sbottom\s{\r\n\t\s\s\s\sset\sy\s\s\s\s[expr\s{$bd+1}]\r\n\t\s\s\s\sset\shtop\s1\r\n\t\s\s\s\sset\shbot\s$height\r\n\t}\r\n\s\s\s\s}\r\n\s\s\s\s$padtop\sconfigure\s-height\s$htop\r\n\s\s\s\s$padbot\sconfigure\s-height\s$hbot\r\n\r\n\s\s\s\sset\spad\s[Widget::getoption\s$path\s-ipad]\r\n\s\s\s\spack\s$padbot\s-side\stop\s-fill\sx\r\n\s\s\s\spack\s$frame\s\s-in\s$border\s-fill\sboth\s-expand\syes\s-padx\s$pad\s-pady\s$pad\r\n\r\n\s\s\s\spack\s$padtop\s-side\stop\s-fill\sx\r\n\s\s\s\spack\s$border\s-fill\sboth\s-expand\syes\r\n\r\n\s\s\s\splace\s$label\s-relx\s$relx\s-x\s$x\s-anchor\s$anchor\s-y\s$y\r\n\r\n\s\s\s\sbind\s$label\s<Configure>\s[list\sTitleFrame::_place\s$path]\r\n\s\s\s\sbind\s$path\s\s<Destroy>\s\s\s[list\sWidget::destroy\s%W]\r\n\r\n\s\s\s\sreturn\s[Widget::create\sTitleFrame\s$path]\r\n}\r\n\r\n\r\n#\s------------------------------------------------------------------------------\r\n#\s\sCommand\sTitleFrame::configure\r\n#\s------------------------------------------------------------------------------\r\nproc\sTitleFrame::configure\s{\spath\sargs\s}\s{\r\n\s\s\s\sset\sres\s[Widget::configure\s$path\s$args]\r\n\r\n\s\s\s\sif\s{\s[Widget::hasChanged\s$path\s-ipad\spad]\s}\s{\r\n\s\s\s\s\s\s\s\spack\sconfigure\s$path.f\s-padx\s$pad\s-pady\s$pad\r\n\s\s\s\s}\r\n\s\s\s\sif\s{\s[Widget::hasChanged\s$path\s-borderwidth\sval]\s|\r\n\s\s\s\s\s\s\s\s\s[Widget::hasChanged\s$path\s-font\s\s\s\s\s\s\s\sval]\s|\r\n\s\s\s\s\s\s\s\s\s[Widget::hasChanged\s$path\s-side\s\s\s\s\s\s\s\sval]\s|\r\n\s\s\s\s\s\s\s\s\s[Widget::hasChanged\s$path\s-baseline\s\s\s\sval]\s}\s{\r\n\s\s\s\s\s\s\s\s_place\s$path\r\n\s\s\s\s}\r\n\r\n\s\s\s\sreturn\s$res\r\n}\r\n\r\n\r\n#\s------------------------------------------------------------------------------\r\n#\s\sCommand\sTitleFrame::cget\r\n#\s------------------------------------------------------------------------------\r\nproc\sTitleFrame::cget\s{\spath\soption\s}\s{\r\n\s\s\s\sreturn\s[Widget::cget\s$path\s$option]\r\n}\r\n\r\n\r\n#\s------------------------------------------------------------------------------\r\n#\s\sCommand\sTitleFrame::getframe\r\n#\s------------------------------------------------------------------------------\r\nproc\sTitleFrame::getframe\s{\spath\s}\s{\r\n\s\s\s\sreturn\s$path.f\r\n}\r\n\r\n\r\n#\s------------------------------------------------------------------------------\r\n#\s\sCommand\sTitleFrame::_place\r\n#\s------------------------------------------------------------------------------\r\nproc\sTitleFrame::_place\s{\spath\s}\s{\r\n\s\s\s\sset\sheight\s[winfo\sheight\s$path.l]\r\n\s\s\s\sswitch\s[Widget::getoption\s$path\s-side]\s{\r\n\s\s\s\s\s\s\s\sleft\s\s\s\s{\sset\srelx\s0.0;\sset\sx\s10;\s\sset\sanchor\snw\s}\r\n\s\s\s\s\s\s\s\scenter\s\s{\sset\srelx\s0.5;\sset\sx\s0;\s\s\sset\sanchor\sn\s\s}\r\n\s\s\s\s\s\s\s\sright\s\s\s{\sset\srelx\s1.0;\sset\sx\s-10;\sset\sanchor\sne\s}\r\n\s\s\s\s}\r\n\s\s\s\sset\sbd\s[Widget::getoption\s$path\s-borderwidth]\r\n\s\s\s\sswitch\s[Widget::getoption\s$path\s-baseline]\s{\r\n\s\s\s\s\s\s\s\stop\s\s\s\s{\sset\shtop\s$height;\sset\shbot\s1;\sset\sy\s0\s}\r\n\s\s\s\s\s\s\s\scenter\s{\sset\shtop\s[expr\s{$height/2}];\sset\shbot\s[expr\s{$height/2+$height%2+1}];\sset\sy\s0\s}\r\n\s\s\s\s\s\s\s\sbottom\s{\sset\shtop\s1;\sset\shbot\s$height;\sset\sy\s[expr\s{$bd+1}]\s}\r\n\s\s\s\s}\r\n\s\s\s\s$path.p\s\s\sconfigure\s-height\s$htop\r\n\s\s\s\s$path.b.p\sconfigure\s-height\s$hbot\r\n\r\n\s\s\s\splace\s$path.l\s-relx\s$relx\s-x\s$x\s-anchor\s$anchor\s-y\s$y\r\n}
J foundin 1.9.10
J is_private 0
J login anonymous
J priority 5\sMedium
J private_contact f75db2b2e0daed8a015467f70380a582a0c11109
J resolution None
J severity Minor
J status Open
J submitter anonymous
J subsystem (unused)
J title Widget::theme\s1\s->\sTitleFrame\sfails
J type Bug
K 4b6a27c9b855b6450347def5c9a72e0f0171eaec
U anonymous
Z baa31f20efa5bce9249be50c00fec17a