reference/ocr-new/browser.tcl
author viric@llimona
Thu, 18 May 2006 23:12:51 +0200
changeset 0 6b8091ca909a
permissions -rw-r--r--
Init from working directory of svn repository.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     1
#!/usr/sww/bin/wish -f
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     2
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     3
scrollbar .scroll -command ".list yview"
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     4
listbox .list -yscrollcommand ".scroll set" -relief raised -geometry 20x20
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     5
pack append . .scroll {right filly} .list {left expand fill}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     6
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     7
if {$argc > 0} {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     8
    set dir [lindex $argv 0]
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     9
} else {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    10
    set dir .
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    11
}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    12
foreach i [exec ls -aF $dir] {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    13
    .list insert end $i
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    14
}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    15
proc browse {dir file} {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    16
    if {$dir != "."} {set file $dir/$file}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    17
    if [file isdirectory $file] {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    18
	exec browser.tcl $file &
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    19
    } else {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    20
	if [file isfile $file] {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    21
	    exec mx $file &
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    22
	} else {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    23
	    puts stdout "This is neither dir nor regular file"
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    24
	}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    25
    }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    26
}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    27
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    28
bind .list <Control-c> {destroy .}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    29
bind .list <Double-Button-1> {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    30
    foreach i [selection get] {browse $dir $i}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    31
}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    32
focus .list
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    33
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    34
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    35