Changeset 1006


Ignore:
Timestamp:
Sep 16, 2010 2:32:38 PM (15 years ago)
Author:
chlake
Message:

Fixed refresh problems after leaving Restraint Editor Window

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified branches/sandbox/distrest.tcl

    r1005 r1006  
    6262        grid $top.rlabel2 -column 5 -row 2
    6363
    64         SR_Rest_Only
    6564        set ::sr_rb ""
    6665        SR_Fill_Display  $main
     
    8584        catch {unset ::sr_lookuplist1}
    8685        catch {unset ::sr_lookuplist2}
    87         catch {unset ::sr_restraintdist}
    88         catch {unset ::sr_restraintesd}
     86#        catch {unset ::sr_restraintdist}
     87#        catch {unset ::sr_restraintesd}
    8988        set ::sr_bond_list ""
    9089        set ::sr_key_list ""
     
    149148              #create bond ID code
    150149              set t2 [string map {" " ""} [set t1 $initsoftpar($x)]]
    151               set ::sr_restraintdist($t2) ""
    152               set ::sr_restraintesd($t2) ""
     150
     151              set z [info exists ::sr_restraintdist($t2)]
     152              if {$z == 0} {
     153                            set ::sr_restraintdist($t2) ""
     154                            set ::sr_restraintesd($t2) ""
     155                            }
    153156
    154157              #extract bond distance
     
    427430proc SR_Write_Restraints { } {
    428431     if {$::sr_error == 0} {
    429 #          set ::sr_write ""
     432          set sr_write ""
     433          set new_list ""
    430434          set len [llength $::sr_bond_list]
     435          set ::sr_key_list ""
    431436          for {set i 0} {$i <= [expr $len-1]} {incr i} {
    432437                    set temp [lindex $::sr_bond_list $i]
     
    438443                                $::sr_restraintesd([lindex $temp 13])"
    439444                                lappend sr_write $softrest
    440                     }
     445                                lappend new_list $temp
     446
     447                    } else {
     448                           unset ::sr_restraintdist([lindex $temp 13])
     449                           unset ::sr_restraintesd([lindex $temp 13])
     450                           }
    441451          }
    442452          puts $sr_write
    443453          # put the entire restraint list back into the .EXP file
    444454          SoftConst restraintlist set $sr_write
     455          set ::sr_bond_list $new_list
    445456          # indicate a change to the .EXP file
    446457          incr ::expgui(changed)
    447458          # close the window and return access to main window
    448459          destroy .mainrestraintbox
     460          set ::sr_display_mode noedit
    449461          afterputontop
     462          DisplayDistanceRestraints
    450463     } else {
    451464            bell
     
    519532     pack $::srcb3 -side bottom -anchor w -fill x
    520533
    521      label $srcb1.atomlabel1   -text "Atom Type 1"
    522      label $srcb1.atomlabel2   -text "Atom Type 2"
     534     label $srcb1.atomlabel1   -text "Atom 1 Filter"
     535     label $srcb1.atomlabel2   -text "Atom 2 Filter"
    523536     label $srcb1.dminlabel    -text "Dmin"
    524537     label $srcb1.dmaxlabel    -text "Dmax"
     
    543556     button $srcb2.rbutton2 -text "check remove" -command {SR_Delete_Restraints}
    544557     button $::srcb3.rbutton3 -text "Save Restraints to EXP File" -bd 6 -bg green -command {SR_Write_Restraints}
    545      button $::srcb3.rbutton4 -text "Cancel" -command {destroy .mainrestraintbox; afterputontop}
     558     button $::srcb3.rbutton4 -text "Cancel" -command {destroy .mainrestraintbox
     559                                                      afterputontop
     560                                                      SR_Rest_Only
     561                                                      DisplayDistanceRestraints}
     562     wm protocol .mainrestraintbox WM_DELETE_WINDOW {destroy .mainrestraintbox
     563                                                      afterputontop
     564                                                      SR_Rest_Only
     565                                                      DisplayDistanceRestraints}
    546566
    547567     grid $srcb1.atomlabel1   -column 1 -row 0
     
    648668#*************************************************************************
    649669proc SR_Initialize {} {
     670catch {unset ::sr_restraintdist}
     671catch {unset ::sr_restraintesd}
     672
    650673set ::sr_atom1_button 1
    651674set ::sr_atom2_button 1
     
    660683set ::sr_dminvalue 0
    661684set ::sr_dmaxvalue 1000
    662 
     685SR_Rest_Only
    663686}
    664687
    665688proc SR_Rest_Only {} {
    666      set ::sr_display_mode noedit
     689        set ::sr_display_mode noedit
    667690        catch {unset ::sr_lookuplist1}
    668691        catch {unset ::sr_lookuplist2}
    669         catch {unset ::sr_restraintdist}
    670         catch {unset ::sr_restraintesd}
     692#        catch {unset ::sr_restraintdist}
     693#        catch {unset ::sr_restraintesd}
    671694        set ::sr_bond_list ""
    672695        set ::sr_key_list ""
    673  SR_Load_Restraints
     696SR_Load_Restraints
    674697}
    675698
     
    684707#SR_Load_Restraints
    685708
     709
     710
     711
    686712proc SR_TEST {} {
    687713     set ::sr_display_mode edit
Note: See TracChangeset for help on using the changeset viewer.