Changeset b91c736 in sasview for guiframe/data_loader.py


Ignore:
Timestamp:
Mar 19, 2010 3:09:45 PM (15 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:
837a043
Parents:
d2f1595
Message:

append more than one dat into the panel on focus

File:
1 edited

Legend:

Unmodified
Added
Removed
  • guiframe/data_loader.py

    r196608d rb91c736  
    2222    return path 
    2323 
     24def append_data_to_existing_panel(panel_name, data_name): 
     25    """ 
     26        Pop up an error message. 
     27         
     28        @param panel_name: the name of the current panel 
     29        @param data_name: the name of the current data 
     30    """ 
     31    message = " Do you want to append %s data\n in "%(str(data_name)) 
     32    message += " %s panel?\n\n"%(str(panel_name)) 
     33    dial = wx.MessageDialog(None, message, 'Question', 
     34                       wx.YES_NO|wx.NO_DEFAULT|wx.ICON_QUESTION) 
     35    if dial.ShowModal() == wx.ID_YES: 
     36        return True 
     37    else: 
     38        return False 
     39    
    2440 
    2541def load_ascii_1D(path): 
     
    142158        ## when 2 data have the same id override the 1 st plotted 
    143159        new_plot.id = name 
    144        
    145160        ##group_id specify on which panel to plot this data 
    146161        new_plot.group_id = name 
    147162        new_plot.is_data = True 
    148163        ##post data to plot 
     164        title = output.filename 
    149165        if hasattr(new_plot,"title"): 
    150             title = str(new_plot.title) 
     166            title = str(new_plot.title.lstrip().rstrip()) 
    151167            if title == "": 
    152168                title = str(name) 
    153169        else: 
    154170            title = str(name) 
    155         wx.PostEvent(parent, NewPlotEvent(plot=new_plot, title=title )) 
     171        if hasattr(parent, "panel_on_focus") and not(parent.panel_on_focus is None): 
     172                existing_panel  = parent.panel_on_focus 
     173                panel_name = existing_panel.window_caption 
     174                data_name = new_plot.name 
     175                if existing_panel.__class__.__name__ == "ModelPanel1D"\ 
     176                    and existing_panel.group_id is not None: 
     177                    if append_data_to_existing_panel(panel_name, data_name): 
     178                        #add this plot the an existing panel 
     179                        new_plot.group_id = existing_panel.group_id 
     180        wx.PostEvent(parent, NewPlotEvent(plot=new_plot, title=title)) 
    156181         
    157182    ## the output of the loader is a list , some xml files contain more than one data 
     
    190215            new_plot.name = name 
    191216            new_plot.interactive = True 
    192           
    193217            new_plot.group_id = name 
    194218            new_plot.id = name 
    195       
    196             new_plot.is_data =True 
     219            new_plot.is_data = True 
     220         
    197221            if hasattr(item,"title"): 
    198                 title = item.title 
     222                title = item.title.lstrip().rstrip() 
    199223                if title == "": 
    200224                    title = str(name) 
    201225            else: 
    202226                title = name 
     227            if hasattr(parent, "panel_on_focus") and not(parent.panel_on_focus is None): 
     228                existing_panel  = parent.panel_on_focus 
     229                panel_name = existing_panel.window_caption 
     230                data_name = new_plot.name 
     231                if existing_panel.__class__.__name__ == "ModelPanel1D"\ 
     232                    and existing_panel.group_id is not None: 
     233                    if append_data_to_existing_panel(panel_name, data_name): 
     234                        #add this plot the an existing panel 
     235                        new_plot.group_id = existing_panel.group_id 
    203236            wx.PostEvent(parent, NewPlotEvent(plot=new_plot, title=str(title))) 
    204237            i+=1 
Note: See TracChangeset for help on using the changeset viewer.