1 import wx
2 import wx.aui
3 import traceback
4
5 from park.parkAui.common.parkEvent import EVT_PARK_DATASET
6 from matDatasetDataPanel import MatDatasetDataPanel as ReflDatasetViewer
7 from reflDatasetMeta import ReflDatasetMetaPanel
8
9 VIEWER_TITLE = 'Dataset Viewer'
10 META_TITLE = 'Meta Data'
11
12
13 DefaultPaneInfo = lambda : \
14 wx.aui.AuiPaneInfo().CloseButton(False).PinButton(True).MaximizeButton(
15 True).MinimizeButton(True).CaptionVisible(True).Restore()
16
17
19 - def __init__(self,
20 parent,
21 id=-1,
22 pos = wx.DefaultPosition,
23 size=(600, 500)
24 ):
51
52
54 """ Return the AUI manager. """
55 return self._mgr
56
60
63
64
66 """ Set the dataset. """
67 self.dataset = dataset
68 self.UpdateView()
69
70
72 """ Return the dataset. """
73 return self.dataset
74
75
77 if self.model is None:
78 self.dataset = None
79 else:
80 self.dataset = self.model.getXmlDataset()
81 self.UpdateView()
82
83
88
89
91 """ Set the perspective"""
92 self.settings['perspectives'] = self._mgr.SavePerspective()
93 self.viewer.SetPerspective(self.settings['perspectives'])
94 self.meta.SetPerspective(self.settings['perspectives'])
95
96
106
107
109 """ The dataset are changed via viewer panel. """
110 dataset = event.GetDataset()
111 ind = event.GetDataIndex()
112
113 title = META_TITLE
114 data = dataset.getXmlData()
115 if len(data) > 0 and ind >= 0 and ind < len (data):
116 fname = data[ind].getSource()
117 title = '%s:%s' %(title, fname)
118 else:
119 ind = -1
120
121 self._mgr.GetPane(self.meta).Caption(title)
122 self._mgr.Update()
123 self.meta.SetDataset(dataset, ind )
124 event.Skip()
125
126
131