Changeset 140

Show
Ignore:
Timestamp:
01/10/08 19:50:36 (1 year ago)
Author:
vud1
Message:

"code optimization"

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • pytrainer/trunk/glade/pytrainer.glade

    r132 r140  
    430430                              <property name="scrollable">False</property> 
    431431                              <property name="enable_popup">False</property> 
     432                              <signal name="switch_page" handler="on_recordpage_change" last_modification_time="Thu, 10 Jan 2008 18:45:08 GMT"/> 
    432433 
    433434                              <child> 
  • pytrainer/trunk/pytrainer/gui/windowmain.py

    r138 r140  
    499499                self.parent.refreshGraphView(self.selected_view) 
    500500         
     501        def on_recordpage_change(self,widget,gpointer,page): 
     502                if page == 0: 
     503                        selected_view="info" 
     504                elif page == 1: 
     505                        selected_view="graphs" 
     506                elif page == 2: 
     507                        selected_view="map" 
     508                elif page == 3: 
     509                        selected_view="heartrate" 
     510                self.parent.refreshRecordGraphView(selected_view) 
     511         
    501512        def on_showmap_clicked(self,widget): 
    502513                self.infoarea.hide() 
  • pytrainer/trunk/pytrainer/lib/gpx.py

    r137 r140  
    113113                total_hr = 0 
    114114                tmp_alt = 0 
     115                len_validhrpoints = 0 
    115116 
    116117                for trkpoint in trkpoints: 
     
    120121                        if len(trkpoint.getElementsByTagName("gpxdata:hr")) > 0: 
    121122                                hr = int(trkpoint.getElementsByTagName("gpxdata:hr")[0].firstChild.data) 
     123                                len_validhrpoints += 1 
    122124                        else:  
    123125                                hr = 0 
     
    163165                                                elif rel_alt < 0: 
    164166                                                        self.unegative -= rel_alt 
    165                                         #except: 
    166                                         #       print tempnum 
    167167                                 
    168168                                last_lat = tmp_lat 
     
    171171                                last_time = tmp_time 
    172172 
    173                 self.hr_average = total_hr/len(trkpoints) 
     173                self.hr_average = 0 
     174                if len_validhrpoints > 0: 
     175                        self.hr_average = total_hr/len_validhrpoints 
    174176                self.total_dist = total_dist  
    175177                return retorno 
  • pytrainer/trunk/pytrainer/main.py

    r128 r140  
    125125                 
    126126        def refreshGraphView(self, view, sport=None): 
    127                 print "refreshGraphView" 
    128127                date_selected = self.date.getDate() 
    129128                if view=="record": 
    130                         selected,iter = self.windowmain.recordTreeView.get_selection().get_selected() 
    131                         if iter: 
    132                                 id_record = selected.get_value(iter,0) 
    133                                 record_list = self.record.getrecordInfo(id_record) 
    134                                 gpxfile = self.conf.getValue("gpxdir")+"/%s.gpx" %id_record 
    135                                 if os.path.isfile(gpxfile): 
    136                                         gpx = Gpx(self.data_path,gpxfile) 
    137                                         gpx_tracklist = gpx.getTrackList() 
    138                                         #if self.windowmain.recordview.get_current_page()==2: 
    139                                         print "redibujamos el mapa" 
    140                                         #El mapa se deberia refrescar al pinchar en ver map, no en ver record 
    141                                         self.refreshMapView() 
    142                                         print "fin de redibujar el mapa" 
    143                                 else: gpx_tracklist = [] 
    144                         else: 
    145                                 record_list=[] 
    146                                 gpx_tracklist = [] 
    147                         self.windowmain.actualize_recordview(record_list) 
    148                         self.windowmain.actualize_recordgraph(gpx_tracklist) 
    149                           
     129                        if self.windowmain.recordview.get_current_page()==0: 
     130                                self.refreshRecordGraphView("info") 
     131                        elif self.windowmain.recordview.get_current_page()==1: 
     132                                self.refreshRecordGraphView("graphs") 
     133                        elif self.windowmain.recordview.get_current_page()==2: 
     134                                self.refreshRecordGraphView("map") 
     135                        elif self.windowmain.recordview.get_current_page()==3: 
     136                                self.refreshRecordGraphView("heartrate") 
    150137                elif view=="day": 
    151138                        record_list = self.record.getrecordList(date_selected) 
     
    167154                        self.windowmain.actualize_yearview(record_list, year) 
    168155                        self.windowmain.actualize_yeargraph(record_list) 
     156         
     157        def refreshRecordGraphView(self, view): 
     158                if view=="info": 
     159                        selected,iter = self.windowmain.recordTreeView.get_selection().get_selected() 
     160                        if iter: 
     161                                id_record = selected.get_value(iter,0) 
     162                                record_list = self.record.getrecordInfo(id_record) 
     163                        else: 
     164                                record_list=[] 
     165                        self.windowmain.actualize_recordview(record_list) 
     166                if view=="graphs": 
     167                        selected,iter = self.windowmain.recordTreeView.get_selection().get_selected() 
     168                        if iter: 
     169                                id_record = selected.get_value(iter,0) 
     170                                gpxfile = self.conf.getValue("gpxdir")+"/%s.gpx" %id_record 
     171                                if os.path.isfile(gpxfile): 
     172                                        gpx = Gpx(self.data_path,gpxfile) 
     173                                        gpx_tracklist = gpx.getTrackList() 
     174                        else: 
     175                                gpx_tracklist = [] 
     176                        self.windowmain.actualize_recordgraph(gpx_tracklist) 
     177                if view=="map": 
     178                        self.refreshMapView() 
     179                if view=="heartrate": 
     180                        pass 
    169181                         
    170182        def refreshMapView(self): 
  • pytrainer/trunk/pytrainer/record.py

    r137 r140  
    183183                gpx = Gpx(self.data_path,gpxfile) 
    184184                tracks = gpx.getTrackRoutes() 
    185                 #print self.date.unixtime2date(tracks[0][1]) 
    186                 print tracks 
    187185 
    188186                if len(tracks) < 2: