Minor change to Accept button in StartVisi - naim
[dyninst.git] / paradyn / tcl / startVisi.tcl
1 proc AcceptProc {} {
2    global W 
3    global phase
4    global visiIds
5    
6    set thesel [$W.bottom.menu.list curselection]
7    if {$thesel!=""} {
8 #     $W.bottom.button.accept configure -state disabled
9      destroy $W
10      set itemif [lindex $visiIds $thesel]
11    
12      if {$phase=="CurrentPhase"} {
13        paradyn visi create [expr $itemif ]  1
14      } else {
15        paradyn visi create [expr $itemif ]  0
16      }
17
18 #    for {set i 0} { $i < [llength $thesel] } {incr i} {
19 #       set item [lindex $thesel $i]
20 #       set itemstring [$W.bottom.menu.list get $item]
21 #       set itemid [lindex $visiIds $i]
22 #       puts stdout $itemstring
23 #       puts stdout $itemid
24 #       puts stdout $i
25 #    }
26 #     destroy $W
27    }
28 }
29
30 # set default phase choice to GlobalPhase
31 if {[catch {set phase}]} {
32   set phase GlobalPhase 
33 }
34
35 #
36 #  display a menu that prompts user for visualization 
37 #  and it's phase info arguments
38 #
39 #
40 proc StartVisi {title lables ids numchoices} {
41   global W
42   global visiIds
43   set W .vStart
44   catch {destroy $W}
45   toplevel $W
46   wm title $W "Start Visi"
47   wm iconname $W "Start Visi"
48
49 # force the window to a happy location
50   set baseGeom [wm geometry .]
51   set Xbase 0
52   set Ybase 0
53   set Xoffset 30
54   set Yoffset 30
55   scan $baseGeom "%*dx%*d+%d+%d" Xbase Ybase
56   wm geometry .vStart [format "+%d+%d" [expr $Xbase + $Xoffset] \
57                                       [expr $Ybase + $Yoffset]]
58  
59 # define all of the main frames
60   set T $W.title
61   label $T -text "Start A Visualization" \
62             -anchor center -relief raised \
63             -foreground seashell1 \
64             -background SeaGreen4 \
65             -font "-Adobe-times-bold-r-normal--*-120*" 
66   pack $T -side top -expand false -fill both 
67
68   frame $W.bottom
69   pack $W.bottom -side top -expand yes -fill y
70
71
72   set M $W.bottom.menu
73   frame $M
74   pack $M -side top -expand yes -fill y
75
76 #  label $M.title -text "Choose a Visualization" \
77 #            -anchor center -relief flat \
78 #            -font "-Adobe-times-bold-r-normal--*-120*" 
79 #  pack $M.title -side top -expand true -fill both 
80
81   frame $W.bottom.button
82   pack $W.bottom.button -side bottom -expand y -fill x -pady 2m
83   button $W.bottom.button.accept -text Accept -command AcceptProc 
84   button $W.bottom.button.dismiss -text Cancel -command "destroy $W"
85   pack $W.bottom.button.accept $W.bottom.button.dismiss -side left -expand 1
86
87
88   scrollbar $M.scroll -command "$M.list yview"
89
90   listbox $M.list -yscroll "$M.scroll set" -setgrid 1 -height 8 -width 29 \
91         -selectmode browse
92   pack $M.scroll -side right -fill y 
93   pack $M.list -side left -expand 1 -fill both
94
95   bind $M.list <Double-1> {
96      
97   }
98
99   # fill list box entries 
100   for {set i 0} { $i < $numchoices } {incr i} {
101       set item [lindex $lables $i]
102       set item2 [lindex $ids $i]
103       $M.list insert end $item
104 #     puts stdout $item2 
105 #     puts stdout $item 
106   }
107   set visiIds $ids
108
109   set B $W.bottom.buttons
110   frame $B 
111   pack $W.bottom.menu $W.bottom.buttons -expand yes  -pady .2c -padx .2c
112
113 #  label $B.title -text "Choose a Phase" \
114 #            -anchor center \
115 #           -relief flat \
116 #            -font "-Adobe-times-bold-r-normal--*-120*" 
117 #
118 #  pack $B.title -side top -expand true -fill both 
119  
120  global phase
121
122   radiobutton $B.bg -text "Global Phase" -variable phase \
123         -relief sunken -value GlobalPhase 
124   pack $B.bg -side left -anchor w 
125
126   radiobutton $B.bc -text "Current Phase" -variable phase \
127         -relief sunken -value CurrentPhase 
128   pack $B.bc -side right -anchor w
129
130 #  pack $T $M $B -side top -expand yes -fill both
131
132
133 }
134