1 #!/usr/bin/env tclsh8.4
3 source "boilerplate.tcl"
5 package require TLC
0.77.0
6 option add
*Entry.background
[$tlc::theme setting textbackground
]
7 option add
*Entry.highlightBackground
[$tlc::theme setting background
]
10 lappend data
{asdf lkjqh lkqjwehr
}
11 lappend data
{agwer sdfg jkh
}
12 lappend data
{asdfg kjqew kjhvawe
}
14 set ds
[DSlist
#auto -headers {foo bar baz} -list $data]
16 proc manage_bar_visibility
{visible
} {
17 .l column_configure bar
-visible $visible
25 puts "Edit called, on item(s) ([.l get_selected_items])"
29 puts "Del called, on item(s) ([.l get_selected_items])"
32 Browse_tktreectrl .l
-datasource $ds -actionside right
-actionbuttonwidth 5 \
34 foo
{-expand false
-text "Foo ID"}
35 bar
{-visible false
-justify right
}
37 [.l component filters
] register_handler onchange
,bleh manage_bar_visibility
39 .l action_add
"Add" add
40 .l action_add
"Edit" edit
41 .l action_add
"Del" del
43 .l action_attach_signal
"Edit" [.l signal_ref item_selected
]
44 .l action_attach_signal
"Del" [.l signal_ref item_selected
]
46 .l filter_add
"Search" {spec
entry -width 8} {
47 [string match
-nocase "*$filter(spec)*" $row(foo
)] ||
48 [string match
-nocase "*$filter(spec)*" $row(baz
)]
50 .l filter_add
" Bleh" {bleh
checkbutton -text "Show Bar"}
52 proc onselect_id
{newid
} {
53 puts "newid: ($newid)"
56 proc onselect_row
{newrow
} {
57 puts "newrow: ($newrow)"
60 proc item_selected_changed
{selected
} {
61 puts "itemselected: ($selected)"
64 .l register_handler onselect_id onselect_id
65 .l register_handler onselect onselect_row
66 [.l signal_ref item_selected
] attach_output item_selected_changed