Package reflectometry :: Package model1d :: Package profileview :: Module plotInfoPanel

Source Code for Module reflectometry.model1d.profileview.plotInfoPanel

  1  from miscInfo  import _f2s 
  2  from reflutils import CheckValid,showErrorMsg 
  3   
  4   
5 -class InfoPanel:
6
7 - def __init__( self, 8 parent = None, 9 model = None, 10 ):
11 self.parent = parent 12 self.model = model 13 14 # Current layer nubmer 15 self.current_layer=0
16 17
18 - def updateNLayer(self, n):
19 """ Update the layer number and set the layer numer """ 20 self.current_layer = n
21 22
23 - def updateDepthValue(self, val ):
24 """ Update Depth Value """ 25 n = self.current_layer 26 model = self.parent.modelPanel.model 27 if n > model.numlayers: return 28 29 _names = [ model.names[n], "depth" ] 30 self.parent._refresh( _names, val )
31 32
33 - def updateLRoughValue2(self, val ):
34 """ Update LRough Value """ 35 n = self.current_layer 36 model = self.parent.modelPanel.model 37 if n > model.numlayers+1: return 38 39 #if n>=1: _names = [ model.names[n-1], "rough" ] 40 #else: _names = [ model.names[n], "rough" ] 41 _names = [ model.names[n], "rough" ] 42 43 self.parent._refresh( _names, val )
44 45
46 - def updateRRoughValue2(self, val ):
47 """ Update RRough Value """ 48 print "Call Here RR" 49 n = self.current_layer 50 model = self.parent.modelPanel.model 51 if n > model.numlayers: return 52 53 _names = [ model.names[n+1], "rough" ] 54 self.parent._refresh( _names, val )
55 56 57
58 - def _updateProfileValue(self, 59 p, # profile 60 val, 61 n, # layer number 62 idx=None 63 ):
64 """ Update abstract profile Value """ 65 if idx==None: 66 p[n]._val = val 67 68 else: 69 try: p[n]._val[idx] = val 70 except: pass
71 72
73 - def updateRhoValue( self, val, idx=None, name=None ):
74 """ Update Rho Value """ 75 model = self.parent.modelPanel.model 76 77 n = self.current_layer 78 if n > model.numlayers+1: return 79 80 self._updateProfileValue( model.Lrho, val, n, idx=idx ) 81 82 if name != None: 83 self.parent._refresh( [ model.names[n], name ], val ) 84 else: 85 if idx==None: 86 self.parent._refresh( [ model.names[n], "rho" ], val ) 87 else: 88 self.parent._refresh( [ model.names[n], "rho" + "_%d"%(idx)], 89 val )
90 91
92 - def updateMuValue(self, val, idx=None, name=None):
93 """ Update Mu Value """ 94 model = self.parent.modelPanel.model 95 96 n = self.current_layer 97 if n > model.numlayers+1: return 98 99 self._updateProfileValue( model.Lmu, val, n, idx=idx ) 100 101 if name != None: 102 self.parent._refresh( [ model.names[n], name ], val ) 103 else: 104 if idx==None: 105 self.parent._refresh( [ model.names[n], "mu" ], val ) 106 else: 107 self.parent._refresh( [ model.names[n], "mu" + "_%d"%(idx)], 108 val )
109 110
111 - def updatePhiValue(self, val, idx=None, name=None):
112 """ Update Phi Value """ 113 model = self.parent.modelPanel.model 114 115 n = self.current_layer 116 if n > model.numlayers+1: return 117 118 self._updateProfileValue( model.Lphi, val, n, idx=idx ) 119 120 if name != None: 121 self.parent._refresh( [ model.names[n], name ], val ) 122 else: 123 if idx==None: 124 self.parent._refresh([ model.names[n], "phi" ], val ) 125 else: 126 self.parent._refresh([ model.names[n], "phi" + "_%d"%(idx)], 127 val )
128 129
130 - def updateThetaValue(self, val, idx=None, name=None):
131 """ Update Theta Value """ 132 model = self.parent.modelPanel.model 133 134 n = self.current_layer 135 if n > model.numlayers+1: return 136 137 self._updateProfileValue( model.Ltheta, val, n, idx=idx ) 138 139 if name != None: 140 self.parent._refresh( [ model.names[n], name ], val ) 141 else: 142 if idx==None: 143 self.parent._refresh([model.names[n], "theta" ], val ) 144 else: 145 self.parent._refresh([model.names[n], "theta" + "_%d"%(idx) ], 146 val )
147 148 149 150 151 #======================================================= 152 # Show abstract profile Value 153 #======================================================
154 - def _showProfileValue(self, 155 p, # profile 156 n, # layer number 157 idx=None 158 ):
159 if idx==None: 160 try: 161 val = p[n]._val 162 except: 163 val = None 164 else: 165 try: 166 val = p[n]._val[idx] 167 except: 168 return None 169 170 return val
171 172
173 - def showRhoValue( self, idx=None ):
174 """ show Rho Value """ 175 176 model = self.parent.modelPanel.model 177 n = self.current_layer 178 179 if n > model.numlayers+1: 180 return 181 182 val = self._showProfileValue( model.Lrho, n, idx=idx ) 183 if val == None: return 184 if idx==None: 185 self.parent._show( [ model.names[n], "rho" ] ) 186 else: 187 self.parent._show( [ model.names[n], "rho" + "_%d"%(idx)] )
188 189
190 - def showMuValue(self, idx=None):
191 """ show Mu Value """ 192 model = self.parent.modelPanel.model 193 n = self.current_layer 194 195 if n > model.numlayers+1: 196 return 197 198 val = self._showProfileValue( model.Lmu, n, idx=idx ) 199 if val == None: return 200 if idx==None: 201 self.parent._show( [ model.names[n], "mu" ] ) 202 else: 203 self.parent._show( [ model.names[n], "mu" + "_%d"%(idx)] )
204 205
206 - def showPhiValue(self, idx=None):
207 """ show Phi Value """ 208 model = self.parent.modelPanel.model 209 n = self.current_layer 210 211 if n > model.numlayers+1: 212 return 213 214 val = self._showProfileValue( model.Lphi, n, idx=idx ) 215 if val == None: return 216 217 if idx==None: 218 self.parent._show( [ model.names[n], "phi" ] ) 219 else: 220 self.parent._show( [ model.names[n], "phi" + "_%d"%(idx)] )
221 222
223 - def showThetaValue(self, idx=None):
224 """ show Theta Value """ 225 model = self.parent.modelPanel.model 226 n = self.current_layer 227 228 if n > model.numlayers+1: 229 return 230 231 val = self._showProfileValue( model.Ltheta, n, idx=idx ) 232 if val == None: return 233 234 if idx==None: 235 self.parent._show( [ model.names[n], "theta" ] ) 236 else: 237 self.parent._show( [ model.names[n], "theta"+"_%d"%(idx)] )
238 239
240 - def showDepthValue(self):
241 """ show Depth Value """ 242 n = self.current_layer 243 model = self.parent.modelPanel.model 244 if n > model.numlayers: return 245 246 self.parent._show( [ model.names[n], "depth" ] )
247 248
249 - def showLRoughValue(self):
250 """ show LRough Value """ 251 n = self.current_layer 252 model = self.parent.modelPanel.model 253 if n > model.numlayers+1: return 254 255 if n>=1: _names = [ model.names[n-1], "rough" ] 256 else: _names = [ model.names[n], "rough" ] 257 258 self.parent._show( _names )
259 260
261 - def updateLRoughValue(self, val ):
262 """ Update LRough Value """ 263 n = self.current_layer 264 model = self.parent.modelPanel.model 265 if n > model.numlayers+1: return 266 267 if n>=1: _names = [ model.names[n-1], "rough" ] 268 else: _names = [ model.names[n], "rough" ] 269 #_names = [ model.names[n], "rough" ] 270 271 self.parent._refresh( _names, val )
272 273
274 - def showRRoughValue(self):
275 """ show RRough Value """ 276 #print "Sjjj" 277 n = self.current_layer 278 model = self.parent.modelPanel.model 279 if n > model.numlayers: return 280 281 self.parent._show( [ model.names[n], "rough" ] )
282 283
284 - def updateRRoughValue(self, val ):
285 """ Update RRough Value """ 286 #print "Call Here RR" 287 n = self.current_layer 288 model = self.parent.modelPanel.model 289 if n > model.numlayers: return 290 291 _names = [ model.names[n], "rough" ] 292 self.parent._refresh( _names, val )
293