/usr/share/tcltk/tklib0.6/diagrams/diagram.tcl is in tklib 0.6-1.
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 | ## -*- tcl -*-
## (C) 2010 Andreas Kupries <andreas_kupries@users.sourceforge.net>
## BSD Licensed
# # ## ### ##### ######## ############# ######################
#
# diagram drawing package.
#
##
# # ## ### ##### ######## ############# ######################
## Requisites
package require Tcl 8.5 ; # Want the nice things it brings
# (dicts, {*}, etc.)
package require diagram::core ; # Core drawing management
package require diagram::basic ; # Basic shapes.
package require snit ; # Object framework.
# # ## ### ##### ######## ############# ######################
## Implementation
snit::type ::diagram {
# # ## ### ##### ######## ############# ######################
## Public API :: Instance construction, and method routing
constructor {canvas args} {
install core using diagram::core ${selfns}::CORE $canvas
install basic using diagram::basic ${selfns}::BASIC $core
set mybaseline [$core snap]
if {![llength $args]} return
$core draw {*}$args
return
}
method reset {} {
$core drop
$core restore $mybaseline
return
}
delegate method * to core
# # ## ### ##### ######## ############# ######################
## Instance data, just two components,
component core ; # Fundamental drawing engine and management
component basic ; # Fundamental shapes we can draw
variable mybaseline
##
# # ## ### ##### ######## ############# ######################
}
# # ## ### ##### ######## ############# ######################
## Ready
package provide diagram 1
|