Changes in src/sas/sasgui/perspectives/fitting/fitpanel.py [a95ae9a:05228b0] in sasview
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/sas/sasgui/perspectives/fitting/fitpanel.py
ra95ae9a r05228b0 13 13 from sas.sasgui.guiframe.events import StatusEvent 14 14 from sas.sasgui.guiframe.dataFitting import check_data_validity 15 from sas.sasgui.perspectives.fitting.simfitpage import SimultaneousFitPage16 15 17 16 import basepage … … 19 18 _BOX_WIDTH = 80 20 19 21 22 20 class FitPanel(nb, PanelBase): 23 21 """ … … 28 26 29 27 """ 30 # Internal name for the AUI manager28 ## Internal name for the AUI manager 31 29 window_name = "Fit panel" 32 # Title to appear on top of the window30 ## Title to appear on top of the window 33 31 window_caption = "Fit Panel " 34 32 CENTER_PANE = True … … 42 40 wx.CLIP_CHILDREN) 43 41 PanelBase.__init__(self, parent) 44 # 42 #self.SetWindowStyleFlag(style=nb.FNB_FANCY_TABS) 45 43 self._manager = manager 46 44 self.parent = parent 47 45 self.event_owner = None 48 # 46 #dictionary of miodel {model class name, model class} 49 47 self.menu_mng = models.ModelManager() 50 48 self.model_list_box = self.menu_mng.get_model_list() 51 # 49 #pageClosedEvent = nb.EVT_FLATNOTEBOOK_PAGE_CLOSING 52 50 self.model_dictionary = self.menu_mng.get_model_dictionary() 53 51 self.pageClosedEvent = wx.aui.EVT_AUINOTEBOOK_PAGE_CLOSE 54 52 55 53 self.Bind(self.pageClosedEvent, self.on_close_page) 56 # save the title of the last page tab added54 ## save the title of the last page tab added 57 55 self.fit_page_name = {} 58 # list of existing fit page56 ## list of existing fit page 59 57 self.opened_pages = {} 60 # 58 #index of fit page 61 59 self.fit_page_index = 0 62 # 60 #index of batch page 63 61 self.batch_page_index = 0 64 # 62 #page of simultaneous fit 65 63 self.sim_page = None 66 64 self.batch_page = None 67 # get the state of a page65 ## get the state of a page 68 66 self.Bind(basepage.EVT_PAGE_INFO, self._onGetstate) 69 67 self.Bind(basepage.EVT_PREVIOUS_STATE, self._onUndo) … … 82 80 """ 83 81 return an xml node containing state of the panel 84 that guiframe can write to file 85 """ 86 # Iterate through all pages and check for batch fitting 87 batch_state = None 88 if self.sim_page is not None: 89 batch_state = self.sim_page.set_state() 90 82 that guiframe can write to file 83 """ 84 msg = "" 91 85 for uid, page in self.opened_pages.iteritems(): 92 data = page.get_data() 93 # state must be cloned 94 state = page.get_state().clone() 95 if data is not None or page.model is not None: 96 new_doc = self._manager.state_reader.write_toXML(data, 97 state, 98 batch_state) 99 if doc is not None and hasattr(doc, "firstChild"): 100 child = new_doc.firstChild.firstChild 101 doc.firstChild.appendChild(child) 102 else: 103 doc = new_doc 104 86 if page.batch_on: 87 pos = self.GetPageIndex(page) 88 if pos != -1 and page not in [self.sim_page, self.batch_page]: 89 msg += "%s .\n" % str(self.GetPageText(pos)) 90 else: 91 data = page.get_data() 92 # state must be cloned 93 state = page.get_state().clone() 94 if data is not None and page.model is not None: 95 new_doc = self._manager.state_reader.write_toXML(data, 96 state) 97 if doc != None and hasattr(doc, "firstChild"): 98 child = new_doc.firstChild.firstChild 99 doc.firstChild.appendChild(child) 100 else: 101 doc = new_doc 102 if msg.strip() != "": 103 temp = "Save Project is not supported for Batch page.\n" 104 temp += "The following pages will not be save:\n" 105 message = temp + msg 106 wx.PostEvent(self._manager.parent, StatusEvent(status=message, 107 info="warning")) 105 108 return doc 106 109 … … 360 363 panel.set_index_model(self.batch_page_index) 361 364 else: 362 # 365 #Increment index of fit page 363 366 panel = FitPage(parent=self) 364 367 self.fit_page_index += 1 … … 523 526 self.SetSelection(pos) 524 527 return page 525 # 528 #create new page and add data 526 529 page = self.add_empty_page() 527 530 pos = self.GetPageIndex(page)
Note: See TracChangeset
for help on using the changeset viewer.