Changeset 3328


Ignore:
Timestamp:
Mar 30, 2018 1:31:44 PM (6 years ago)
Author:
vondreele
Message:

reformat residue RB display to show residues one at a time

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIconstrGUI.py

    r3325 r3328  
    20972097               
    20982098        def OnSelect(event):
    2099             global rbId
    21002099            rbname = rbchoice[select.GetSelection()]
    21012100            rbId = RBnames[rbname]
    2102             wx.CallAfter(UpdateResidueRB,rbId)
    2103            
     2101            wx.CallLater(100,UpdateResidueRB,rbId)
    21042102           
    21052103        if ResidueRBDisplay.GetSizer(): ResidueRBDisplay.GetSizer().Clear(True)
    2106         ResidueRBSizer = wx.BoxSizer(wx.VERTICAL)
    2107         ResidueRBSizer.Add(wx.StaticText(ResidueRBDisplay,label=' Select residue to view:'),0)
    21082104        RBnames = {}
    21092105        for rbid in data['RBIds']['Residue']:
    21102106            RBnames.update({data['Residue'][rbid]['RBname']:rbid,})
    21112107        rbchoice = RBnames.keys()
    2112         rbchoice.sort()
    2113         select = wx.ListBox(ResidueRBDisplay,choices=rbchoice,style=wx.LB_SINGLE,size=(-1,120))
    2114         select.Bind(wx.EVT_LISTBOX,OnSelect)
    2115         ResidueRBSizer.Add(select,0)
    2116         if rbId:
    2117             rbData = data['Residue'][rbId]
    2118             FillRefChoice(rbId,rbData)
    2119             ResidueRBSizer.Add(rbNameSizer(rbId,rbData),0)
    2120             ResidueRBSizer.Add(rbResidues(rbId,rbData),0)
    2121             ResidueRBSizer.Add((5,5),0)
    2122             if rbData['rbSeq']:
    2123                 slideSizer,angSlide = SlideSizer()
    2124             if len(rbData['rbSeq']):
    2125                 ResidueRBSizer.Add(wx.StaticText(ResidueRBDisplay,-1,
    2126                     'Sel  Del  Bond             Angle      Riding atoms'),
    2127                     0,wx.ALIGN_CENTER_VERTICAL)                       
    2128             for iSeq,Seq in enumerate(rbData['rbSeq']):
    2129                 ResidueRBSizer.Add(SeqSizer(angSlide,rbId,iSeq,Seq,rbData['atNames']))
    2130             if rbData['rbSeq']:
    2131                 ResidueRBSizer.Add(slideSizer,)
     2108        ResidueRBSizer = wx.BoxSizer(wx.VERTICAL)
     2109        if len(RBnames) > 1:
     2110            selSizer = wx.BoxSizer(wx.HORIZONTAL)
     2111            selSizer.Add(wx.StaticText(ResidueRBDisplay,label=' Select residue to view:'),0)
     2112            rbchoice.sort()
     2113            select = wx.ComboBox(ResidueRBDisplay,choices=rbchoice)
     2114            select.Bind(wx.EVT_COMBOBOX,OnSelect)
     2115            selSizer.Add(select,0)
     2116            ResidueRBSizer.Add(selSizer,0)
     2117        if not rbId:
     2118            rbId = RBnames[rbchoice[0]]
     2119        rbData = data['Residue'][rbId]
     2120        FillRefChoice(rbId,rbData)
     2121        ResidueRBSizer.Add(rbNameSizer(rbId,rbData),0)
     2122        ResidueRBSizer.Add(rbResidues(rbId,rbData),0)
     2123        ResidueRBSizer.Add((5,5),0)
     2124        if rbData['rbSeq']:
     2125            slideSizer,angSlide = SlideSizer()
     2126        if len(rbData['rbSeq']):
     2127            ResidueRBSizer.Add(wx.StaticText(ResidueRBDisplay,-1,
     2128                'Sel  Del  Bond             Angle      Riding atoms'),
     2129                0,wx.ALIGN_CENTER_VERTICAL)                       
     2130        for iSeq,Seq in enumerate(rbData['rbSeq']):
     2131            ResidueRBSizer.Add(SeqSizer(angSlide,rbId,iSeq,Seq,rbData['atNames']))
     2132        if rbData['rbSeq']:
     2133            ResidueRBSizer.Add(slideSizer,)
    21322134
    21332135        ResidueRBSizer.Add((5,25),)
    21342136        ResidueRBSizer.Layout()   
    21352137        ResidueRBDisplay.SetSizer(ResidueRBSizer,True)
     2138        ResidueRBDisplay.SetAutoLayout(True)
    21362139        Size = ResidueRBSizer.GetMinSize()
    2137         Size[0] += 40
    2138         Size[1] = max(Size[1],450) + 20
    21392140        ResidueRBDisplay.SetSize(Size)
    2140         ResidueRB.SetScrollbars(10,10,Size[0]/10-4,Size[1]/10-1)
     2141        ResidueRBDisplay.Show()
    21412142       
    21422143    def SetStatusLine(text):
Note: See TracChangeset for help on using the changeset viewer.