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