Home | History | Annotate | Line # | Download | only in tcl_scripts
gnats.tcl revision 1.1.1.1
      1  1.1  christos #	Id: gnats.tcl,v 8.2 1995/11/18 12:59:07 bostic Exp  (Berkeley) Date: 1995/11/18 12:59:07
      2  1.1  christos #
      3  1.1  christos proc init {catFile} {
      4  1.1  christos 	global viScreenId
      5  1.1  christos 	global categories
      6  1.1  christos 	set categories {}
      7  1.1  christos         set categoriesFile [open $catFile r]
      8  1.1  christos 	while {[gets $categoriesFile line] >= 0} {
      9  1.1  christos 		lappend categories $line
     10  1.1  christos 	}
     11  1.1  christos 	close $categoriesFile
     12  1.1  christos 	viMsg $viScreenId $categories
     13  1.1  christos 	viMapKey $viScreenId  next
     14  1.1  christos }
     15  1.1  christos 
     16  1.1  christos proc next {} {
     17  1.1  christos 	global viScreenId
     18  1.1  christos 	set cursor [viGetCursor $viScreenId]
     19  1.1  christos 	set lineNum [lindex $cursor 0]
     20  1.1  christos 	set line [viGetLine $viScreenId $lineNum]
     21  1.1  christos 	viMsg $viScreenId [lindex $line 0]
     22  1.1  christos 	if {[lindex $line 0] == ">Confidential:"} {
     23  1.1  christos 		confNext $lineNum $line
     24  1.1  christos 	} elseif {[lindex $line 0] == ">Severity:"} {
     25  1.1  christos 		sevNext $lineNum $line
     26  1.1  christos 	} elseif {[lindex $line 0] == ">Priority:"} {
     27  1.1  christos 		priNext $lineNum $line
     28  1.1  christos 	} elseif {[lindex $line 0] == ">Class:"} {
     29  1.1  christos 		classNext $lineNum $line
     30  1.1  christos 	} elseif {[lindex $line 0] == ">Category:"} {
     31  1.1  christos 		catNext $lineNum $line
     32  1.1  christos 	}
     33  1.1  christos }
     34  1.1  christos 
     35  1.1  christos proc confNext {lineNum line} {
     36  1.1  christos 	global viScreenId
     37  1.1  christos 	viMsg $viScreenId [lindex $line 1]
     38  1.1  christos 	if {[lindex $line 1] == "yes"} {
     39  1.1  christos 		viSetLine $viScreenId $lineNum ">Confidential: no"
     40  1.1  christos 	} else {
     41  1.1  christos 		viSetLine $viScreenId $lineNum ">Confidential: yes"
     42  1.1  christos 	}
     43  1.1  christos }
     44  1.1  christos 
     45  1.1  christos proc sevNext {lineNum line} {
     46  1.1  christos 	global viScreenId
     47  1.1  christos 	viMsg $viScreenId [lindex $line 1]
     48  1.1  christos 	if {[lindex $line 1] == "non-critical"} {
     49  1.1  christos 		viSetLine $viScreenId $lineNum ">Severity: serious"
     50  1.1  christos 	} elseif {[lindex $line 1] == "serious"} {
     51  1.1  christos 		viSetLine $viScreenId $lineNum ">Severity: critical"
     52  1.1  christos 	} elseif {[lindex $line 1] == "critical"} {
     53  1.1  christos 		viSetLine $viScreenId $lineNum ">Severity: non-critical"
     54  1.1  christos 	}
     55  1.1  christos }
     56  1.1  christos 
     57  1.1  christos proc priNext {lineNum line} {
     58  1.1  christos 	global viScreenId
     59  1.1  christos 	viMsg $viScreenId [lindex $line 1]
     60  1.1  christos 	if {[lindex $line 1] == "low"} {
     61  1.1  christos 		viSetLine $viScreenId $lineNum ">Priority: medium"
     62  1.1  christos 	} elseif {[lindex $line 1] == "medium"} {
     63  1.1  christos 		viSetLine $viScreenId $lineNum ">Priority: high"
     64  1.1  christos 	} elseif {[lindex $line 1] == "high"} {
     65  1.1  christos 		viSetLine $viScreenId $lineNum ">Priority: low"
     66  1.1  christos 	}
     67  1.1  christos }
     68  1.1  christos 
     69  1.1  christos proc classNext {lineNum line} {
     70  1.1  christos 	global viScreenId
     71  1.1  christos 	viMsg $viScreenId [lindex $line 1]
     72  1.1  christos 	if {[lindex $line 1] == "sw-bug"} {
     73  1.1  christos 		viSetLine $viScreenId $lineNum ">Class: doc-bug"
     74  1.1  christos 	} elseif {[lindex $line 1] == "doc-bug"} {
     75  1.1  christos 		viSetLine $viScreenId $lineNum ">Class: change-request"
     76  1.1  christos 	} elseif {[lindex $line 1] == "change-request"} {
     77  1.1  christos 		viSetLine $viScreenId $lineNum ">Class: support"
     78  1.1  christos 	} elseif {[lindex $line 1] == "support"} {
     79  1.1  christos 		viSetLine $viScreenId $lineNum ">Class: sw-bug"
     80  1.1  christos 	}
     81  1.1  christos }
     82  1.1  christos 
     83  1.1  christos proc catNext {lineNum line} {
     84  1.1  christos 	global viScreenId
     85  1.1  christos 	global categories
     86  1.1  christos 	viMsg $viScreenId [lindex $line 1]
     87  1.1  christos 	set curr [lsearch -exact $categories [lindex $line 1]]
     88  1.1  christos 	if {$curr == -1} {
     89  1.1  christos 		set curr 0
     90  1.1  christos 	}
     91  1.1  christos 	viMsg $viScreenId $curr
     92  1.1  christos 	viSetLine $viScreenId $lineNum ">Class: [lindex $categories $curr]"
     93  1.1  christos }
     94  1.1  christos 
     95  1.1  christos init abekas
     96