Changeset 3cd5806 in sasview for sansview/perspectives/fitting


Ignore:
Timestamp:
Feb 4, 2011 3:41:13 PM (14 years ago)
Author:
Gervaise Alina <gervyh@…>
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:
73b3ae2
Parents:
3f0351c6
Message:

bindind save button with guiframe toolbar

Location:
sansview/perspectives/fitting
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • sansview/perspectives/fitting/basepage.py

    rc8deee5 r3cd5806  
    1111from wx.lib.scrolledpanel import ScrolledPanel 
    1212from sans.guiframe.utils import format_number,check_float 
     13from sans.guiframe.events import PanelOnFocusEvent 
    1314from sans.guiframe.events import StatusEvent 
    1415import pagestate 
     
    5354        self.parent = parent 
    5455        ## manager is the fitting plugin 
    55         self.manager = None 
    5656        ## owner of the page (fitting plugin) 
    5757        self.event_owner = None 
     
    172172        self.set_layout() 
    173173         
     174    def on_set_focus(self, event): 
     175        """ 
     176        """ 
     177        print "fitting panel", self.window_name 
     178        if self._manager is not None: 
     179            wx.PostEvent(self._manager.parent, PanelOnFocusEvent(panel=self)) 
     180         
    174181    class ModelTextCtrl(wx.TextCtrl): 
    175182        """ 
     
    267274        self.window_caption = page_info.window_caption 
    268275        ## manager is the fitting plugin 
    269         self.manager= page_info.manager 
     276        self._manager= page_info.manager 
    270277        ## owner of the page (fitting plugin) 
    271278        self.event_owner= page_info.event_owner 
     
    373380         
    374381        """ 
    375         self.manager = manager   
     382        print "manager", manager 
     383        self._manager = manager   
    376384        self.state.manager = manager 
    377385         
     
    601609            self.reset_page(previous_state)       
    602610          
    603     def on_save_state(self, event):    
     611    def on_save(self, event):    
    604612        """ 
    605613        Save the current state into file 
     
    617625            return None 
    618626        #the manager write the state into file 
    619         self.manager.save_fit_state(filepath=path, fitstate=new_state) 
     627        self._manager.save_fit_state(filepath=path, fitstate=new_state) 
    620628        return new_state   
    621629     
     
    668676        if self.engine_type == None:  
    669677            self.engine_type = "scipy" 
    670         if self.manager !=None: 
    671             self.manager._on_change_engine(engine=self.engine_type) 
     678        if self._manager !=None: 
     679            self._manager._on_change_engine(engine=self.engine_type) 
    672680         
    673681            self.state.engine_type = self.engine_type 
     
    973981        self._on_select_model(event=None) 
    974982        
    975         if self.manager !=None: 
    976             self.manager._on_change_engine(engine=self.engine_type) 
     983        if self._manager !=None: 
     984            self._manager._on_change_engine(engine=self.engine_type) 
    977985        ## set the select all check box to the a given state 
    978986        self.cb1.SetValue(state.cb1) 
     
    13301338        is_modified = False 
    13311339 
    1332         wx.PostEvent(self.manager.parent, StatusEvent(status=" \ 
     1340        wx.PostEvent(self._manager.parent, StatusEvent(status=" \ 
    13331341        updating ... ",type="update")) 
    13341342 
     
    13631371                        flag = self.update_pinhole_smear() 
    13641372                    else: 
    1365                         self.manager.set_smearer_nodraw(smearer=temp_smearer, 
     1373                        self._manager.set_smearer_nodraw(smearer=temp_smearer, 
    13661374                                                     qmin=float(self.qmin_x), 
    13671375                                                      qmax=float(self.qmax_x)) 
    13681376                elif not self._is_2D(): 
    1369                     self.manager.set_smearer(smearer=temp_smearer, 
     1377                    self._manager.set_smearer(smearer=temp_smearer, 
    13701378                                              qmin=float(self.qmin_x), 
    13711379                                                 qmax= float(self.qmax_x)) 
     
    16321640                    temp_smear= self.current_smearer 
    16331641             
    1634             self.manager.draw_model(self.model,  
     1642            self._manager.draw_model(self.model,  
    16351643                                    data=self.data, 
    16361644                                    smearer= temp_smear, 
     
    21732181            msg="Please select a Model first..." 
    21742182            wx.MessageBox(msg, 'Info') 
    2175             wx.PostEvent(self.manager.parent, StatusEvent(status=\ 
     2183            wx.PostEvent(self._manager.parent, StatusEvent(status=\ 
    21762184                            "Polydispersion: %s"%msg)) 
    21772185            return 
     
    24752483        self.btSave_title = wx.StaticText(self, -1, 'Save the current Model') 
    24762484        self.btSave = wx.Button(self,wx.NewId(),'Save') 
    2477         self.btSave.Bind(wx.EVT_BUTTON, self.on_save_state,id= self.btSave.GetId()) 
     2485        self.btSave.Bind(wx.EVT_BUTTON, self.on_save,id= self.btSave.GetId()) 
    24782486        self.btSave.SetToolTipString("Save the current Model") 
     2487        self._set_save_flag(True) 
    24792488         
    24802489        sizer_save.Add(self.btSave_title)   
  • sansview/perspectives/fitting/fitpanel.py

    rc8deee5 r3cd5806  
    66 
    77from sans.guiframe.panel_base import PanelBase 
     8from sans.guiframe.events import PanelOnFocusEvent 
    89import basepage 
    910 
     
    167168                    wx.aui.AUI_NB_DEFAULT_STYLE| 
    168169                    wx.CLIP_CHILDREN) 
    169         PanelBase.__init__(self) 
     170        PanelBase.__init__(self, parent) 
    170171     
    171172        self._manager = None 
     
    188189        self.Bind(basepage.EVT_PREVIOUS_STATE, self._onUndo) 
    189190        self.Bind(basepage.EVT_NEXT_STATE, self._onRedo) 
    190          
     191        
    191192        #add default pages 
    192193        self.add_default_pages() 
    193          
     194      
    194195        # increment number for model name 
    195196        self.count = 0 
     
    198199        self.Center() 
    199200         
     201    def on_set_focus(self, event): 
     202        """ 
     203        """ 
     204        pos = self.GetSelection() 
     205        selected_page = self.GetPage(pos) 
     206        print "panel on fogus", selected_page.window_name 
     207        wx.PostEvent(self.parent, PanelOnFocusEvent(panel=selected_page)) 
     208         
    200209    def get_data(self): 
    201210        """ 
     
    222231        self.hint_page = HintFitPage(self)  
    223232        self.AddPage(page=self.hint_page, caption="Hint") 
    224           
     233        self.hint_page.set_manager(self._manager) 
    225234        #Add the first fit page 
    226235        self.add_empty_page() 
     
    316325        """ 
    317326        self._manager = manager 
     327        for pos in range(self.GetPageCount()): 
     328            page = self.GetPage(pos) 
     329            if page is not None: 
     330                page.set_manager(self._manager) 
    318331 
    319332         
  • sansview/perspectives/fitting/fitting.py

    r13913ec r3cd5806  
    256256        loader.associate_file_reader(".fitv", self.state_reader) 
    257257        loader.associate_file_reader(".svs", self.state_reader) 
    258         from sans.perspectives.calculator.sld_panel import SldPanel 
    259258        #Send the fitting panel to guiframe 
    260259        self.mypanels.append(self.fit_panel)  
    261         self.mypanels.append(SldPanel(parent=self.parent, base=self.parent)) 
     260       
    262261        return self.mypanels 
    263262     
  • sansview/perspectives/fitting/hint_fitpage.py

    rbf66f67 r3cd5806  
    11import wx 
     2from sans.guiframe.panel_base import PanelBase 
    23 
    3  
    4 class HintFitPage(wx.ScrolledWindow): 
     4class HintFitPage(wx.ScrolledWindow, PanelBase): 
    55    """ 
    66        This class provide general structure of  fitpanel page 
     
    1313    def __init__(self, parent): 
    1414        wx.ScrolledWindow.__init__(self, parent, 
    15                  style= wx.FULL_REPAINT_ON_RESIZE ) 
    16          
     15                 style= wx.FULL_REPAINT_ON_RESIZE) 
     16        PanelBase.__init__(self, parent) 
    1717        msg = "right click on the data when it is highlighted " 
    1818        msg += "the select option to fit for futher options" 
Note: See TracChangeset for help on using the changeset viewer.