Changeset df22224 in sasview
- Timestamp:
- Mar 15, 2011 10:43:43 AM (14 years ago)
- Branches:
- master, ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc, costrafo411, magnetic_scatt, release-4.1.1, release-4.1.2, release-4.2.2, release_4.0.1, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
- Children:
- 665c083
- Parents:
- 504dd9f5
- Location:
- guiframe
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
guiframe/data_manager.py
r52d3fd1 rdf22224 162 162 return self.message 163 163 164 def get_by_id(self, data_id, theory_id=None): 165 """ 166 get a list of data given a list of id 167 """ 168 _selected_data = [] 169 _selected_theory_list = [] 170 if data_id is None: 164 def get_by_id(self, id_list=None): 165 """ 166 """ 167 _selected_data = {} 168 _selected_theory_list = {} 169 if id_list is None: 171 170 return 172 for d_id in data_id:173 if d_id in self.stored_data:171 for d_id in self.stored_data: 172 for search_id in id_list: 174 173 data_state = self.stored_data[d_id] 175 174 data = data_state.data 176 _selected_data.append(data)177 175 theory_list = data_state.get_theory() 178 if theory_id is not None: 179 for t_id in theory_id: 180 if t_id in theory_list.keys(): 181 _selected_theory_list.append(theory_list[t_id]) 176 if search_id == d_id: 177 _selected_data[search_id] = data 178 if search_id in theory_list.keys(): 179 _selected_theory_list[search_id] = theory_list[search_id] 180 182 181 return _selected_data, _selected_theory_list 183 184 182 185 183 -
guiframe/data_state.py
rc70eb7c rdf22224 38 38 _str += "Data: %s \n" % str(self.data) 39 39 40 _str += "Theories available: %s \n" % len(self.theory_list) 40 41 if self.theory_list: 41 _str += "Theories available: \n"42 42 for id, item in self.theory_list.iteritems(): 43 43 theory_data, theory_state = item 44 44 _str += "Theory name : %s \n" % str(theory_data.name) 45 45 _str += "Theory ID : %s \n" % str(id) 46 else: 47 for key , value in self.theory_list.iteritems(): 48 theory_data, theory_state = value 49 _str += "Theory with ID : %s \n" % str(key) 46 _str += "Theory info: \n" 50 47 _str += str(theory_data) 51 _str += str(theory_state) 48 #_str += "Theory info: \n" 49 #_str += str(theory_state) 52 50 return _str 53 51 … … 96 94 """ 97 95 self.theory_list[theory_data.id] = [theory_data, theory_state] 96 data, state = self.theory_list.values()[0] 97 print "self.theory_list",theory_data.id, data.y[1] 98 98 99 99 def get_theory(self): -
guiframe/gui_manager.py
re6a93df rdf22224 455 455 for data_state in data_state_list.values(): 456 456 new_plot = data_state.get_data() 457 457 458 wx.PostEvent(self, NewPlotEvent(plot=new_plot, 458 459 title=new_plot.title)) … … 962 963 ID = str(uid) 963 964 config.printEVT("delete_panel: %s" % ID) 965 964 966 if ID in self.panels.keys(): 965 self._mgr.DetachPane(self.panels[ID]) 967 panel = self.panels[ID] 968 self._plotting_plugin.delete_panel(panel.group_id) 969 self._mgr.DetachPane(panel) 970 panel.Destroy() 966 971 del self.panels[ID] 967 972 self._mgr.Update() … … 1315 1320 list_data, _ = self._data_manager.get_by_id(data_id) 1316 1321 if self._current_perspective is not None: 1317 self._current_perspective.set_data(list_data )1322 self._current_perspective.set_data(list_data.values()) 1318 1323 else: 1319 1324 msg = "Guiframe does not have a current perspective" … … 1323 1328 """ 1324 1329 """ 1325 _, list_theory = self._data_manager.get_by_id( state_id,theory_id)1330 _, list_theory = self._data_manager.get_by_id(theory_id) 1326 1331 if self._current_perspective is not None: 1327 1332 try: 1328 self._current_perspective.set_theory(list_theory )1333 self._current_perspective.set_theory(list_theory.values()) 1329 1334 except: 1330 1335 msg = "Guiframe set_theory: \n" + str(sys.exc_value) … … 1341 1346 """ 1342 1347 data_list, _ = self._data_manager.get_by_id(data_id) 1343 _, temp_list_theory = self._data_manager.get_by_id( state_id,theory_id)1344 for item in temp_list_theory :1348 _, temp_list_theory = self._data_manager.get_by_id(theory_id) 1349 for item in temp_list_theory.values(): 1345 1350 theory_data, theory_state = item 1346 data_list. append(theory_data)1351 data_list.values().append(theory_data) 1347 1352 GROUP_ID = wx.NewId() 1348 1353 for new_plot in data_list: -
guiframe/local_perspectives/plotting/Plotter1D.py
re6a93df rdf22224 138 138 self.graph.delete(data) 139 139 data_manager = self._manager.parent.get_data_manager() 140 data_list = data_manager.get_by_id(id_list=[id]) 141 data = data_list.values()[0].data 142 data.group_id.remove(self.group_id) 140 data_list, theory_list = data_manager.get_by_id(id_list=[id]) 141 142 if id in data_list.keys(): 143 data = data_list[id] 144 else: 145 data = theory_list[id] 146 143 147 del self.plots[id] 144 145 148 self.graph.render(self) 146 149 self.subplot.figure.canvas.draw_idle() 150 event = RemoveDataEvent(data=data) 151 wx.PostEvent(self.parent, event) 147 152 if len(self.graph.plottables) == 0: 148 print "_onRemove: graph is empty must be destroyed"149 153 #onRemove: graph is empty must be the panel must be destroyed 154 self.parent.delete_panel(self.uid) 150 155 else: 151 156 msg = "Attempt to remove an unexisting plot with ID %s " % str(id) … … 217 222 selected_plot = self.plots[self.graph.selected_plottable] 218 223 id = self.graph.selected_plottable 219 self.remove_data_by_id( id) 220 event = RemoveDataEvent(data=selected_plot) 221 wx.PostEvent(self.parent, event) 222 self.graph.delete(selected_plot) 223 del selected_plot 224 224 self.remove_data_by_id(id) 225 225 226 def onContextMenu(self, event): 226 227 """ … … 276 277 self._slicerpop.Append(id, '&Freeze', 'Freeze') 277 278 wx.EVT_MENU(self, id, self.onFreeze) 279 #else: 280 id = wx.NewId() 281 self._slicerpop.Append(id, '&Linear Fit') 282 wx.EVT_MENU(self, id, self.onFitting) 278 283 id = wx.NewId() 279 284 name = plot.name … … 297 302 # Option to hide 298 303 #TODO: implement functionality to hide a plottable (legend click) 299 id = wx.NewId() 300 self._slicerpop.Append(id, '&Linear Fit') 301 wx.EVT_MENU(self, id, self.onFitting) 304 302 305 303 306 id = wx.NewId() -
guiframe/local_perspectives/plotting/plotting.py
re88ebfd rdf22224 180 180 self.parent.show_panel(panel.uid) 181 181 182 def delete_menu_item(self, name, uid): 183 """ 184 """ 185 #remove menu item 186 pos = self.menu.FindItem(name) 187 if pos != -1: 188 self.menu.Delete(uid) 189 if self.menu.GetMenuItemCount() == 0: 190 self.menu.Append(DEFAULT_MENU_ITEM_ID, DEFAULT_MENU_ITEM_LABEL, 191 "No plot available") 192 self.menu.FindItemByPosition(0).Enable(False) 193 182 194 def delete_panel(self, group_id): 183 195 """ … … 186 198 panel = self.plot_panels[group_id] 187 199 #remove menu item 188 self.menu.Delete(panel.uid) 189 self.parent.delete_panel(panel.uid) 200 self.delete_menu_item(panel.window_caption, panel.uid) 190 201 del self.plot_panels[group_id] 191 202 return True -
guiframe/panel_base.py
rc70eb7c rdf22224 26 26 ## Flag to tell the AUI manager to put this panel in the center pane 27 27 group_id = None 28 uid = None 28 29 29 30 def __init__(self, parent=None):
Note: See TracChangeset
for help on using the changeset viewer.