chiark / gitweb /
Show owner names in vessel name list
[ypp-sc-tools.db-test.git] / yarrg / where-vessels
index f9f6879e37f42760aef411a9b5efc283b0fb6e5c..9b8c7728a41ade97694f961749ba0d4b20ff3f64 100755 (executable)
@@ -625,7 +625,7 @@ proc vessel {vin} {
     lappend newnotes [list $vid $realname $owner $xabbrev]
     set kk "$island [join $codel _]"
     upvar #0 found($kk) k
-    lappend k [list $vid $realname]
+    lappend k [list $vid $realname $owner]
  
     debug "CODED $kk $vid $realname"
 }
@@ -805,6 +805,7 @@ proc parser-control-create {w base invokebuttontext etl_title} {
     toplevel $eb
     wm withdraw $eb
     wm title $eb "where-vessels - $etl_title"
+    wm protocol $eb WM_DELETE_WINDOW [list wm withdraw $eb]
 
     label $eb.title -text $etl_title
     pack $eb.title -side top
@@ -813,17 +814,17 @@ proc parser-control-create {w base invokebuttontext etl_title} {
     pack $eb.close -side bottom
 
     frame $eb.emsg -bd 2 -relief groove
-    label $eb.emsg.lab -text "Error:"
+    label $eb.emsg.lab -anchor nw -text "Error:"
     text $eb.emsg.text -height 1
-    pack $eb.emsg.text -side bottom
+    pack $eb.emsg.text -side bottom -fill x
     pack $eb.emsg.lab -side left
 
-    pack $eb.emsg -side top -pady 2
+    pack $eb.emsg -side top -pady 2 -fill x
 
     frame $eb.text -bd 2 -relief groove
-    pack $eb.text -side bottom -pady 2
+    pack $eb.text -side bottom -pady 2 -fill both -expand y
     
-    label $eb.text.lab
+    label $eb.text.lab -anchor nw
 
     text $eb.text.text -width 85 \
        -xscrollcommand [list $eb.text.xscroll set] \
@@ -836,10 +837,15 @@ proc parser-control-create {w base invokebuttontext etl_title} {
     scrollbar $eb.text.yscroll -orient vertical \
        -command [list $eb.text.text yview]
 
-    grid configure $eb.text.lab -row 0 -column 0 -sticky w
-    grid configure $eb.text.text -row 1 -column 0
+    grid configure $eb.text.lab -row 0 -column 0 -sticky w -columnspan 2
+    grid configure $eb.text.text -row 1 -column 0 -sticky news
     grid configure $eb.text.yscroll -sticky ns -row 1 -column 1
     grid configure $eb.text.xscroll -sticky ew -row 2 -column 0
+    grid rowconfigure $eb.text 0 -weight 0
+    grid rowconfigure $eb.text 1 -weight 1
+    grid rowconfigure $eb.text 2 -weight 0
+    grid columnconfigure $eb.text 0 -weight 1
+    grid columnconfigure $eb.text 1 -weight 0
 }
 
 proc parser-control-ok-core {w base background show} {
@@ -1073,8 +1079,20 @@ proc show-report {islandname code} {
     .cp.report.list delete 0 end
 
     foreach entry $k {
-       manyset $entry vid name
-       .cp.report.list insert end $name
+       manyset $entry vid name owner
+       lappend owned($owner) $name
+    }
+
+    foreach owner [lsort [array names owned]] {
+       if {[string length $owner]} {
+           set owndesc "$owner's"
+       } else {
+           set owndesc "Owner unknown"
+       }
+       .cp.report.list insert end "$owndesc:"
+       foreach name $owned($owner) {
+           .cp.report.list insert end " $name"
+       }
     }
 }