1 import wx
2 import traceback
3
4 from reflDataset import ReflDataset
5 from reflDatasetEditor import ReflDatasetEditor
6 from reflDatasetViewerPanel import ReflDatasetViewerPanel
7 from park.parkAui.common.parkEvent import wxEVT_PARK_DATASET, ParkDatasetEvent
8 from park.parkAui.common.fittingDatasetPanel import FittingDatasetPanel
9
10 from reflectometry.model1d.model.dataLoader import FixedResolution
11
12
13 X_LABEL = ' Q value'
14 Y_LABEL = ' Reflectivity'
15 TITLE = ' reflectometry Fitting'
16
17
19 """
20 The panel to show fitting data and theoretical results.
21 """
26
27 - def __init__(self,
28 parent,
29 id=-1,
30 pos =wx.DefaultPosition,
31 size =(200, 400),
32 style=wx.TAB_TRAVERSAL,
33 name ='fitting data source'
34 ):
38
39
47
48
50
51 try:
52 exp0=dataset.getXmlData()[0].getXmlReductionData().getXmlDataArray()
53 meta=dataset.getXmlData()[0].getXmlMetaData()
54 except:
55 return
56
57 for i in xrange( len(exp0)/4 ):
58 _Q = exp0[0+i*4].getData()
59 exp0[1+i*4].setData( self._updateResolution( _Q, meta ) )
60
61
62
63
71
72
75
76
79
80
82 try:
83 if event.ControlDown():
84 self.OnEditDataset(event)
85 else:
86 mgr = self.GetParent().GetOwnerManager()
87
88 mgr.LoadPerspective(self.GetPerspective())
89 all_panes = mgr.GetAllPanes()
90 for pane in xrange(len(all_panes)):
91 all_panes[pane].Show()
92 mgr.Update()
93 event.Skip()
94 except:
95 self.ShowErrorMsg(traceback.format_exc(), 'Dataset Exception')
96
97
101
103 """ Update the dataset viewer due to theory curve is changed. """
104 self.viewer.RefreshModel(self.GetModel())
105