1*2bcacabbSAdam Hornacek# 2*2bcacabbSAdam Hornacek# CDDL HEADER START 3*2bcacabbSAdam Hornacek# 4*2bcacabbSAdam Hornacek# The contents of this file are subject to the terms of the 5*2bcacabbSAdam Hornacek# Common Development and Distribution License (the "License"). 6*2bcacabbSAdam Hornacek# You may not use this file except in compliance with the License. 7*2bcacabbSAdam Hornacek# 8*2bcacabbSAdam Hornacek# See LICENSE.txt included in this distribution for the specific 9*2bcacabbSAdam Hornacek# language governing permissions and limitations under the License. 10*2bcacabbSAdam Hornacek# 11*2bcacabbSAdam Hornacek# When distributing Covered Code, include this CDDL HEADER in each 12*2bcacabbSAdam Hornacek# file and include the License file at LICENSE.txt. 13*2bcacabbSAdam Hornacek# If applicable, add the following below this CDDL HEADER, with the 14*2bcacabbSAdam Hornacek# fields enclosed by brackets "[]" replaced with your own identifying 15*2bcacabbSAdam Hornacek# information: Portions Copyright [yyyy] [name of copyright owner] 16*2bcacabbSAdam Hornacek# 17*2bcacabbSAdam Hornacek# CDDL HEADER END 18*2bcacabbSAdam Hornacek# 19*2bcacabbSAdam Hornacek 20*2bcacabbSAdam Hornacekproc printHelloWorld {} { 21*2bcacabbSAdam Hornacek puts "Hello world" 22*2bcacabbSAdam Hornacek} 23*2bcacabbSAdam Hornacek 24*2bcacabbSAdam Hornacekproc viewSource { f } { 25*2bcacabbSAdam Hornacek global filesVisited EB 26*2bcacabbSAdam Hornacek set EB(curFile) $f 27*2bcacabbSAdam Hornacek lappend filesVisited $f 28*2bcacabbSAdam Hornacek 29*2bcacabbSAdam Hornacek # change window title to show the current file 30*2bcacabbSAdam Hornacek set wt [wm title .eb] 31*2bcacabbSAdam Hornacek if { [string first : $wt] != -1 } { 32*2bcacabbSAdam Hornacek set idx [string first : $wt] 33*2bcacabbSAdam Hornacek set base [string range $wt 0 $idx] 34*2bcacabbSAdam Hornacek set wtn [concat $base $f] 35*2bcacabbSAdam Hornacek } else { 36*2bcacabbSAdam Hornacek set wtn [concat ${wt}: $f] 37*2bcacabbSAdam Hornacek } 38*2bcacabbSAdam Hornacek wm title .eb $wtn 39*2bcacabbSAdam Hornacek .eb.f.t config -state normal 40*2bcacabbSAdam Hornacek .eb.f.t delete 1.0 end 41*2bcacabbSAdam Hornacek if [catch {open $f} in] { 42*2bcacabbSAdam Hornacek .eb.f.t insert end $in 43*2bcacabbSAdam Hornacek } else { 44*2bcacabbSAdam Hornacek .eb.f.t insert end [read $in] 45*2bcacabbSAdam Hornacek close $in 46*2bcacabbSAdam Hornacek } 47*2bcacabbSAdam Hornacek .eb.f.t config -state normal 48*2bcacabbSAdam Hornacek .eb.buttons.apply config -command [list applySource $f] 49*2bcacabbSAdam Hornacek}