diff options
Diffstat (limited to 'calendario.py')
-rw-r--r-- | calendario.py | 47 |
1 files changed, 39 insertions, 8 deletions
diff --git a/calendario.py b/calendario.py index 5ab2087..ab953c7 100644 --- a/calendario.py +++ b/calendario.py @@ -40,6 +40,7 @@ class CalendarioActivity(activity.Activity): self.left_container = gtk.VBox() self.label_date = gtk.Label("06 Feb 2012") self.calendar = gtk.Calendar() + self.calendar.connect('day-selected', self._day_selected_cb) self.tool_frame = gtk.Frame(_("Tools")) self.reminder_expander = gtk.Expander(_("Tasks reminder")) @@ -155,27 +156,30 @@ class CalendarioActivity(activity.Activity): def add_columns(self): '''Add columns to TreeView''' - cell_text = gtk.CellRendererText() + #for the tasks list + cell_text = gtk.CellRendererText() titles = (_('Tasks'), _('Categoty'), _('Priority')) - i = 0 + i = 1 for title in titles: column = gtk.TreeViewColumn(title, cell_text, text=i) #if the colum is the first - if i == 0: + if i == 1: column.set_min_width(300) else: column.set_min_width(100) self.tasks_list.append_column(column) i = i + 1 - column = gtk.TreeViewColumn('BOTON', cell_text, text=3) + cell_toggle = gtk.CellRendererToggle() + cell_toggle.connect('toggled', self._toggle_row_cb) + column = gtk.TreeViewColumn('', cell_toggle, active=4) self.tasks_list.append_column(column) #for the reminder - column = gtk.TreeViewColumn(titles[0], cell_text, text=0) + column = gtk.TreeViewColumn(titles[0], cell_text, text=1) self.reminder_list.append_column(column) - column = gtk.TreeViewColumn(titles[2], cell_text, text=2) + column = gtk.TreeViewColumn(titles[2], cell_text, text=3) self.reminder_list.append_column(column) def _save_cb(self, widget, data=None): @@ -197,6 +201,33 @@ class CalendarioActivity(activity.Activity): db.close() self.get_tasks() + def _toggle_row_cb(self, widget, path): + '''Toggle button row''' + model = self.tasks_list.get_model() + row_iter = model.get_iter(path) + #row is a gtk.TreeModelRow() + row = model[row_iter] + row[4] = not row[4] + #task, completed, id for the moment category and + #priority are excluded + data = (row[1], row[4], row[0]) + log.debug(data) + db = DataBase() + db.update(data) + db.close() + + #model.set(row_iter, 4, val) + + def _day_selected_cb(self, widget, data=None): + '''Select new day''' + date_formated = date_format(self.calendar.get_date()) + db = DataBase() + data = db.get(date_formated) + db.close() + tasks_model = TasksModel(data) + self.tasks_list.set_model(tasks_model.get_model()) + + def close(self, skip_save=False): '''Override the close method''' activity.Activity.close(self, True) @@ -216,8 +247,8 @@ class Task(object): self.priority = priority self.completed = completed - def get_tasks_id(self): - return self.tasks_id + def get_task_id(self): + return self.task_id def get_task(self): return self.task |