/usr/share/tcltk/tklib0.6/widget/arrowb.tcl is in tklib 0.6-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 | ##+##########################################################################
#
# Reference
# http://wiki.tcl.tk/8554
#
# arrows.tcl -- bitmaps for eight directional arrows
# by Keith Vetter, Mar 12, 2003
# by Keith Vetter, July 2, 2010 added diagonal arrows
# snit class by Andreas Kupries
#
package require widget
snit::widgetadaptor widget::arrowbutton {
delegate option * to hull except -image
delegate method * to hull
option -orientation \
-configuremethod C-orientation \
-validatemethod V-orientation
constructor {args} {
installhull using ttk::button
$self configurelist $args
return
}
method C-orientation {o value} {
set options($o) $value
$hull configure -image ::widget::arrowbutton::bit::$value
return
}
method V-orientation {o value} {
if {$value in $ourorientation} return
return -code error "Expected one of [linsert [join $ourorientation {, }] end-1 or], got \"$value\""
}
typevariable ourorientation {
down
downleft
downright
left
right
star
up
upleft
upright
}
}
image create bitmap ::widget::arrowbutton::bit::up -data {
#define up_width 11
#define up_height 11
static char up_bits = {
0x00, 0x00, 0x20, 0x00, 0x70, 0x00, 0xf8, 0x00, 0xfc, 0x01, 0xfe,
0x03, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00
}
}
image create bitmap ::widget::arrowbutton::bit::down -data {
#define down_width 11
#define down_height 11
static char down_bits = {
0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0xfe,
0x03, 0xfc, 0x01, 0xf8, 0x00, 0x70, 0x00, 0x20, 0x00, 0x00, 0x00
}
}
image create bitmap ::widget::arrowbutton::bit::left -data {
#define left_width 11
#define left_height 11
static char left_bits = {
0x00, 0x00, 0x20, 0x00, 0x30, 0x00, 0x38, 0x00, 0xfc, 0x01, 0xfe,
0x01, 0xfc, 0x01, 0x38, 0x00, 0x30, 0x00, 0x20, 0x00, 0x00, 0x00
}
}
image create bitmap ::widget::arrowbutton::bit::right -data {
#define right_width 11
#define right_height 11
static char right_bits = {
0x00, 0x00, 0x20, 0x00, 0x60, 0x00, 0xe0, 0x00, 0xfc, 0x01, 0xfc,
0x03, 0xfc, 0x01, 0xe0, 0x00, 0x60, 0x00, 0x20, 0x00, 0x00, 0x00
}
}
image create bitmap ::widget::arrowbutton::bit::upleft -data {
#define upleft_width 11
#define upleft_height 11
static char upleft_bits = {
0x00, 0x00, 0x7e, 0x00, 0x3e, 0x00, 0x3e, 0x00, 0x7e, 0x00, 0xfe,
0x00, 0xf2, 0x01, 0xe0, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00
}
}
image create bitmap ::widget::arrowbutton::bit::upright -data {
#define upright_width 11
#define upright_height 11
static char upright_bits = {
0x00, 0x00, 0xf0, 0x03, 0xe0, 0x03, 0xe0, 0x03, 0xf0, 0x03, 0xf8,
0x03, 0x7c, 0x02, 0x38, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00
}
}
image create bitmap ::widget::arrowbutton::bit::downleft -data {
#define downleft_width 11
#define downleft_height 11
static char downleft_bits = {
0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0xe0, 0x00, 0xf2, 0x01, 0xfe,
0x00, 0x7e, 0x00, 0x3e, 0x00, 0x3e, 0x00, 0x7e, 0x00, 0x00, 0x00
}
}
image create bitmap ::widget::arrowbutton::bit::downright -data {
#define downright_width 11
#define downright_height 11
static char downright_bits = {
0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x38, 0x00, 0x7c, 0x02, 0xf8,
0x03, 0xf0, 0x03, 0xe0, 0x03, 0xe0, 0x03, 0xf0, 0x03, 0x00, 0x00
}
}
image create bitmap ::widget::arrowbutton::bit::star -data {
#define plus_width 11
#define plus_height 11
static char plus_bits = {
0x00, 0x00, 0x22, 0x02, 0x24, 0x01, 0xa8, 0x00, 0x70, 0x00, 0xfe,
0x03, 0x70, 0x00, 0xa8, 0x00, 0x24, 0x01, 0x22, 0x02, 0x00, 0x00
}
}
package provide widget::arrowbutton 1
return
|