add updateProjectHours() to fill in hours cells

This commit is contained in:
Josh Holtrop 2011-02-25 20:45:23 -05:00
parent a8222d3247
commit 0b2abe676b

View File

@ -55,7 +55,7 @@ class Window:
if self.projects_present:
self.projects_container.remove(self.projects_table)
self.projects = self.ds.getProjects()
self.project_hours = {}
self.project_hour_labels = {}
projects_to_show = {}
for p in self.shown_projects:
projects_to_show[p] = 1
@ -79,9 +79,11 @@ class Window:
pnum = self.getProjectNum(pname)
self.projects_table.attach(gtk.Label(pname), 0, 1,
row, row + 1)
for i in range(1, len(col_headers)):
self.project_hour_labels[pnum] = {}
for i in range(7):
l = gtk.Label()
self.projects_table.attach(l, i, i + 1, row, row + 1)
self.projects_table.attach(l, i + 1, i + 2, row, row + 1)
self.project_hour_labels[pnum][i] = l
row += 1
# Totals row
@ -110,6 +112,22 @@ class Window:
self.projects_present = True
self.projects_table.show_all()
self.updateProjectHours()
def updateProjectHours(self):
for day in range(7):
dt = str(self.monday + timedelta(day))
day_hours = self.ds.getProjectDailyHours(dt)
for p in day_hours:
if p in self.project_hour_labels:
hrs = self.hoursFromSeconds(day_hours[p])
self.project_hour_labels[p][day].set_text(hrs)
def hoursFromSeconds(self, secs):
if secs < 0.6 * 60 * 60:
secs = 0.6 * 60 * 60;
return "%.1f" % (secs / 60.0 / 60.0)
def main(self):
self.window.show_all()
gtk.main()