Ignore:
Timestamp:
Oct 8, 2016 12:46:40 PM (6 years ago)
Author:
krzywon
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, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
Children:
381bafd
Parents:
0912b405
Message:

Fixes #730: All data, theories, plots, and analyses in perspectives are now flushed when loading in a project file.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/sas/sasgui/guiframe/gui_manager.py

    r95eef00 ra4c2445  
    677677        update edit menu if available 
    678678        """ 
    679         if event != None: 
     679        if event is not None: 
    680680            self.panel_on_focus = event.panel 
    681681        if self.panel_on_focus is not None: 
    682             #Disable save application if the current panel is in batch mode 
    683             flag = self.panel_on_focus.get_save_flag() 
    684             if self._save_appl_menu != None: 
    685                 self._save_appl_menu.Enable(flag) 
    686  
    687             if self.panel_on_focus not in self.plot_panels.values(): 
    688                 for ID in self.panels.keys(): 
    689                     if self.panel_on_focus != self.panels[ID]: 
    690                         self.panels[ID].on_kill_focus(None) 
    691  
    692             if self._data_panel is not None and \ 
    693                             self.panel_on_focus is not None: 
    694                 self.set_panel_on_focus_helper() 
    695                 #update toolbar 
    696                 self._update_toolbar_helper() 
    697                 #update edit menu 
    698                 self.enable_edit_menu() 
     682            # Disable save application if the current panel is in batch mode 
     683            try: 
     684                flag = self.panel_on_focus.get_save_flag() 
     685                if self._save_appl_menu != None: 
     686                    self._save_appl_menu.Enable(flag) 
     687 
     688                if self.panel_on_focus not in self.plot_panels.values(): 
     689                    for ID in self.panels.keys(): 
     690                        if self.panel_on_focus != self.panels[ID]: 
     691                            self.panels[ID].on_kill_focus(None) 
     692 
     693                if self._data_panel is not None and \ 
     694                                self.panel_on_focus is not None: 
     695                    self.set_panel_on_focus_helper() 
     696                    #update toolbar 
     697                    self._update_toolbar_helper() 
     698                    #update edit menu 
     699                    self.enable_edit_menu() 
     700            except wx._core.PyDeadObjectError: 
     701                pass 
    699702 
    700703    def disable_app_menu(self, p_panel=None): 
     
    19041907    def _on_open_state_project(self, event): 
    19051908        """ 
     1909        Load in a .svs project file after removing all data from SasView 
    19061910        """ 
    19071911        path = None 
    19081912        if self._default_save_location == None: 
    19091913            self._default_save_location = os.getcwd() 
    1910         msg = "This operation will set SasView to its freshly opened state " 
    1911         msg += "before loading the project. Do you wish to continue?" 
     1914        msg = "This operation will set remove all data, plots and analyses from" 
     1915        msg += " SasView before loading the project. Do you wish to continue?" 
     1916        self._data_panel.selection_cbox.SetValue('Select all Data') 
     1917        self._data_panel._on_selection_type(None) 
     1918        for _, theory_dict in self._data_panel.list_cb_theory.iteritems(): 
     1919            for  key, value in theory_dict.iteritems(): 
     1920                item, _, _ = value 
     1921                item.Check(True) 
    19121922        if not self._data_panel.on_remove(None, msg): 
    19131923            wx.PostEvent(self, StatusEvent(status="Loading Project file...")) 
     
    19341944        self._data_panel.set_panel_on_focus() 
    19351945        # Remove all loaded data 
    1936         self._data_panel.selection_cbox.SetValue('Select all Data') 
    1937         self._data_panel._on_selection_type(None) 
    19381946        for plugin in self.plugins: 
    19391947            plugin.clear_panel() 
Note: See TracChangeset for help on using the changeset viewer.