summaryrefslogtreecommitdiffstats
path: root/itemList.py
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2009-04-16 10:42:24 +0200
committerAlexander Sulfrian <alexander@sulfrian.net>2009-04-16 10:42:24 +0200
commit9e4e6b7727df521bd187ca209e2a0ebc10f4a382 (patch)
tree6598f7c232391db821456e55b12ef4b71c0e3a68 /itemList.py
parent188d0883ef4eda09da91cfa6e4cffd583dd999ac (diff)
downloadtodolist-9e4e6b7727df521bd187ca209e2a0ebc10f4a382.tar.gz
todolist-9e4e6b7727df521bd187ca209e2a0ebc10f4a382.tar.xz
todolist-9e4e6b7727df521bd187ca209e2a0ebc10f4a382.zip
first trys
Diffstat (limited to 'itemList.py')
-rw-r--r--itemList.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/itemList.py b/itemList.py
new file mode 100644
index 0000000..527c837
--- /dev/null
+++ b/itemList.py
@@ -0,0 +1,28 @@
+class itemList:
+ def __init__(self, observer):
+ self.data = []
+ self.observer = observer
+
+ def __len__(self):
+ return len(self.data)
+
+ def __getitem__(self, idx):
+ return self.data[idx]
+
+ def __setitem__(self, idx, item):
+ self.data[idx] = item
+
+ def append(self, item):
+ item.observer = self
+ self.data.append(item)
+ self.observer.notifyChange(item)
+
+ def notifyChange(self, sender):
+ self.observer.notifyChange(sender)
+
+ def __add__(self, item):
+ self.append(item)
+ return self
+
+ def __iter__(self):
+ return self.data.__iter__()