Ignore:
Timestamp:
Jul 9, 2012 1:08:27 PM (12 years ago)
Author:
Jae Cho <jhjcho@…>
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:
95b513c
Parents:
f8644dd
Message:

added clear func

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sansguiframe/src/sans/guiframe/data_processor.py

    r9696a10b r14e4804  
    147147        if row > self.max_row_touse: 
    148148            self.max_row_touse = row 
     149        if self.data == None: 
     150            self.data = {} 
    149151        event.Skip() 
    150152         
     
    547549        id = wx.NewId() 
    548550        c_menu = wx.Menu() 
    549         copy_menu = c_menu.Append(id, '&Copy', 'Copy cell values') 
     551        copy_menu = c_menu.Append(id, '&Copy', 'Copy the selected cells') 
    550552        wx.EVT_MENU(self, id, self.on_copy) 
    551553         
    552554        id = wx.NewId() 
    553         paste_menu = c_menu.Append(id, '&Paste', 'Paste cell values') 
     555        paste_menu = c_menu.Append(id, '&Paste', 'Paste the selected cells') 
    554556        wx.EVT_MENU(self, id, self.on_paste) 
     557         
     558        id = wx.NewId() 
     559        clear_menu = c_menu.Append(id, '&Clear', 'Clear the selected cells') 
     560        wx.EVT_MENU(self, id, self.on_clear) 
     561         
    555562        # enable from flag 
    556563        has_selection = False 
     
    559566            _row, _col = selected_cel[0] 
    560567            has_selection = self.IsInSelection(_row, _col) 
     568        if len(self.selected_cols) > 0: 
     569            has_selection = True 
     570        if len(self.selected_rows) > 0: 
     571            has_selection = True 
    561572        copy_menu.Enable(has_selection) 
     573        clear_menu.Enable(has_selection) 
    562574        try: 
    563575            # mouse event pos 
     
    577589        On paste event from the contextmenu 
    578590        """ 
    579         self.data = {} 
     591        if self.data == None: 
     592            self.data = {} 
     593        if self.file_name == None: 
     594            self.file_name = 'copied_data' 
    580595        self.Paste() 
     596     
     597    def on_clear(self, event): 
     598        """ 
     599        Clear the cells selected 
     600        """ 
     601        self.Clear() 
    581602     
    582603class Notebook(nb, PanelBase): 
     
    13171338        self.curr_grid = None 
    13181339        self.curr_col_name = "" 
    1319         file = wx.Menu() 
    1320         menubar.Append(file, "&File") 
     1340        self.file = wx.Menu() 
     1341        menubar.Append(self.file, "&File") 
    13211342         
    13221343        hint = "Open file containing batch results" 
    1323         open_menu = file.Append(wx.NewId(), 'Open ', hint) 
     1344        open_menu = self.file.Append(wx.NewId(), 'Open ', hint) 
    13241345        wx.EVT_MENU(self, open_menu.GetId(), self.on_open) 
    13251346         
    13261347        hint = "Open the the current grid into excel" 
    1327         open_excel_menu = file.Append(wx.NewId(), 'Open with Excel', hint) 
    1328         wx.EVT_MENU(self, open_excel_menu.GetId(), self.open_with_excel) 
    1329         file.AppendSeparator() 
    1330         save_menu = file.Append(wx.NewId(), 'Save As', 'Save into File') 
    1331         wx.EVT_MENU(self, save_menu.GetId(), self.on_save_page) 
     1348        self.open_excel_menu = self.file.Append(wx.NewId(), 'Open with Excel', hint) 
     1349        wx.EVT_MENU(self, self.open_excel_menu.GetId(), self.open_with_excel) 
     1350        self.file.AppendSeparator() 
     1351        self.save_menu = self.file.Append(wx.NewId(), 'Save As', 'Save into File') 
     1352        wx.EVT_MENU(self, self.save_menu.GetId(), self.on_save_page) 
    13321353         
    13331354        self.edit = wx.Menu() 
    1334  
    1335         self.copy_menu = self.edit.Append(-1, 'Copy', 'Copy cells') 
     1355         
     1356        add_table_menu = self.edit.Append(-1, 'New Table',  
     1357                                          'Add a New Table') 
     1358        self.edit.AppendSeparator() 
     1359        wx.EVT_MENU(self, add_table_menu.GetId(), self.add_table) 
     1360         
     1361        self.copy_menu = self.edit.Append(-1, 'Copy',  
     1362                                          'Copy the selected cells') 
    13361363        wx.EVT_MENU(self, self.copy_menu.GetId(), self.on_copy) 
    1337         self.paste_menu = self.edit.Append(-1, 'Paste', 'Paste Cells') 
     1364        self.paste_menu = self.edit.Append(-1, 'Paste',  
     1365                                           'Paste the selected Cells') 
    13381366        wx.EVT_MENU(self, self.paste_menu.GetId(), self.on_paste) 
     1367         
     1368        self.edit.AppendSeparator() 
    13391369        hint = "Insert column before the selected column" 
    13401370        self.insert_before_menu = wx.Menu() 
     
    13571387        On Copy 
    13581388        """ 
     1389        if event != None: 
     1390            event.Skip() 
    13591391        pos = self.panel.notebook.GetSelection() 
    13601392        grid = self.panel.notebook.GetPage(pos) 
     
    13651397        On Paste 
    13661398        """ 
     1399        if event != None: 
     1400            event.Skip() 
    13671401        pos = self.panel.notebook.GetSelection() 
    13681402        grid = self.panel.notebook.GetPage(pos) 
    1369         grid.on_paste(event) 
     1403        grid.on_paste(None) 
    13701404      
    13711405    def GetLabelText(self, id): 
     
    13901424        On menu open 
    13911425        """ 
     1426        if self.file == event.GetMenu(): 
     1427            pos = self.panel.notebook.GetSelection() 
     1428            grid = self.panel.notebook.GetPage(pos) 
     1429            has_data = (grid.data != None and grid.data != {}) 
     1430            self.open_excel_menu.Enable(has_data)  
     1431            self.save_menu.Enable(has_data)  
     1432             
    13921433        if self.edit == event.GetMenu(): 
    13931434            #get the selected column 
     
    13951436            grid = self.panel.notebook.GetPage(pos) 
    13961437            col_list = grid.GetSelectedCols() 
    1397             #has_selection = False 
    1398             #selected_cel = grid.selected_cells 
    1399             #if len(selected_cel) > 0: 
    1400             #    has_selection = True 
    1401             #self.copy_menu.Enable(has_selection) 
    1402              
    14031438            has_selection = False 
    14041439            selected_cel = grid.selected_cells 
     
    14061441                _row, _col = selected_cel[0] 
    14071442                has_selection = grid.IsInSelection(_row, _col) 
     1443            if len(grid.selected_cols) > 0: 
     1444                has_selection = True 
     1445            if len(grid.selected_rows) > 0: 
     1446                has_selection = True 
    14081447            self.copy_menu.Enable(has_selection) 
    14091448         
     
    15041543        self.Hide() 
    15051544         
    1506     
    15071545    def on_append_column(self, event): 
    15081546        """ 
     
    15131551    def set_data(self, data_inputs, data_outputs, details="", file_name=None): 
    15141552        """ 
    1515         """ 
    1516         
     1553        Set data 
     1554        """ 
    15171555        self.panel.notebook.set_data(data_inputs=data_inputs,  
    15181556                            file_name=file_name, 
    15191557                            details=details, 
    15201558                            data_outputs=data_outputs) 
    1521        
     1559 
     1560    def add_table(self, event): 
     1561        """ 
     1562        Add a new table 
     1563        """ 
     1564        # DO not event.Skip(): it will make 2 pages 
     1565        self.panel.notebook.add_empty_page()       
    15221566       
    15231567class BatchOutputFrame(wx.Frame): 
Note: See TracChangeset for help on using the changeset viewer.