diff options
author | Alexander Sulfrian <alexander@sulfrian.net> | 2009-05-10 19:40:47 +0200 |
---|---|---|
committer | Alexander Sulfrian <alexander@sulfrian.net> | 2009-05-10 19:40:47 +0200 |
commit | 4bc9b503fa6070e491062d35967d20b37e9c94e0 (patch) | |
tree | 9d0d647a4a006db8adf18240418f72b80b4bd0bd /item.py | |
parent | 91e7bba27adccc2d9815afed104b678366ecb62a (diff) | |
download | todolist-4bc9b503fa6070e491062d35967d20b37e9c94e0.tar.gz todolist-4bc9b503fa6070e491062d35967d20b37e9c94e0.tar.xz todolist-4bc9b503fa6070e491062d35967d20b37e9c94e0.zip |
add/remove support
change db layout to version 0.4, with removed column
only display items, that are not removed
created events for add, remove buttons
remove, __delitem__, contains in itemList as proxy to itemList.data
added default constructor (if nothing is set) for item to create a new
Diffstat (limited to '')
-rw-r--r-- | item.py | 21 |
1 files changed, 17 insertions, 4 deletions
@@ -1,22 +1,32 @@ # -*- coding: utf-8 -*- +import time class item: readOnly = ['id'] - def __init__(self, title=None, created=None, priority=None, description=None, completed=None, row=None): + def __init__(self, title=None, created=None, priority=None, description=None, completed=None, removed=None, row=None): + self.__dict__['id'] = -1 + if title != None: - self.__dict__['id'] = -1 self.title = title self.created = created self.priority = priority self.description = description self.completed = completed - else: + self.removed = removed + elif row != None: id = row[0] - + row.__delitem__(0) apply(self.__init__, row) self.__dict__['id'] = id + else: + self.title = '' + self.created = time.time() + self.priority = '' + self.description = '' + self.completed = 0 + self.removed = 0 def setId(self, id): if self.id == -1: @@ -40,6 +50,9 @@ class item: def getCompleted(self): return self.completed + def getRemoved(self): + return self.removed + def __setattr__(self, name, value): if name not in item.readOnly: if name not in self.__dict__ or self.__dict__[name] != value: |