blob: ebcf55983eddaba95a0a4dfaaba1e5f282fcb0fe (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
# LabEntry.tcl --
#
# TixLabelEntry Widget: an entry box with a label
#
# Copyright (c) 1996, Expert Interface Technologies
#
# See the file "license.terms" for information on usage and redistribution
# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
#
tixWidgetClass tixLabelEntry {
-classname TixLabelEntry
-superclass tixLabelWidget
-method {
}
-flag {
-disabledforeground -state
}
-forcecall {
-state
}
-static {
}
-configspec {
{-disabledforeground disabledForeground DisabledForeground #303030}
{-state state State normal}
}
-default {
{.borderWidth 0}
{*entry.relief sunken}
{*entry.width 7}
{*label.anchor e}
{*label.borderWidth 0}
{*Label.font -Adobe-Helvetica-Bold-R-Normal--*-120-*}
{*Entry.background #c3c3c3}
}
}
proc tixLabelEntry:ConstructFramedWidget {w frame} {
upvar #0 $w data
tixChainMethod $w ConstructFramedWidget $frame
set data(w:entry) [entry $frame.entry]
pack $data(w:entry) -side left -expand yes -fill both
# This value is used to configure the disable/normal fg of the ebtry
#
set data(entryfg) [$data(w:entry) cget -fg]
set data(labelfg) [$data(w:label) cget -fg]
}
proc tixLabelEntryBind {} {
tixBind TixLabelEntry <FocusIn> {
if {![tixStrEq [focus -displayof [set %W(w:entry)]] [set %W(w:entry)]]} {
focus [%W subwidget entry]
[set %W(w:entry)] selection from 0
[set %W(w:entry)] selection to end
[set %W(w:entry)] icursor end
}
}
}
#----------------------------------------------------------------------
# CONFIG OPTIONS
#----------------------------------------------------------------------
proc tixLabelEntry:config-state {w value} {
upvar #0 $w data
if {$value == "normal"} {
catch {
$data(w:label) config -fg $data(labelfg)
}
$data(w:entry) config -state $value -fg $data(entryfg)
} else {
catch {
$data(w:label) config -fg $data(-disabledforeground)
}
$data(w:entry) config -state $value -fg $data(-disabledforeground)
}
}
|