diff options
Diffstat (limited to 'ReckonPrimer.activity/collection.py')
-rw-r--r-- | ReckonPrimer.activity/collection.py | 208 |
1 files changed, 104 insertions, 104 deletions
diff --git a/ReckonPrimer.activity/collection.py b/ReckonPrimer.activity/collection.py index a90d82d..b94ca3a 100644 --- a/ReckonPrimer.activity/collection.py +++ b/ReckonPrimer.activity/collection.py @@ -9,115 +9,115 @@ import gtk import pickle import os -class CollectionTest: -# __data = None -# __title = None -# __description = None - #__pic = None - def __init__(self): - self.__data = [] - self.__title = "Collection" - self.__description = "Description" - #self.__pic = gtk.gdk.pixbuf_new_from_file("collection.png") +class Collection: + __data = None + __title = None + __description = None + __pic = None - ''' - def __init__(self, title, description, pic): + def __init__(self, title, descript, icon, data): + """ + def __init__(self, title, description, pic): self.__data = [] self.__title = title self.__description = description self.__pic = pic + """ + self.__title = title + self.__description = descript + self.__pic = icon + #gtk.gdk.pixbuf_new_from_file("collection.png") + self.__data = data + + def getData(self): + return self.__data + + def setData(self, data): + self.__data = data + + def getTitle(self): + return self.__title + + def setTitle(self, title): + self.__title = title + + def getDescription(self): + return self.__description + + def setDescription(self, description): + self.__description = description + + ''' keep for need, TODO icon reformatting icon to string + def getPic(self): + return self.__pic + + def setPic(self, pic): + self.__pic = pic ''' -# def getData(self): -# return self.__data -# -# def setData(self, data): -# self.__data = data -# -# def getTitle(self): -# return self.__title -# -# def setTitle(self, title): -# self.__title = title -# -# def getDescription(self): -# return self.__description -# -# def setDescription(self, description): -# self.__description = description -# -# ''' keep for need, TODO icon reformatting icon to string -# def getPic(self): -# return self.__pic -# -# def setPic(self, pic): -# self.__pic = pic -# ''' -# -# def get_data_from_pickle(self): -# path = os.path.join(os.getcwd(), "data/Collection.data") -# f = open(path, "rb") -# root = pickle.load(f) -# f.close() -# return root -# -# def set_data_in_pickle(self, root): -# path = os.path.join(os.getcwd(), "data/Collection.data") -# f = open(path, "wb") -# pickle.dump(root, f) -# f.close() -# -# -# def insert_object(self, obj, pos): -# root = self.get_data_from_pickle() -# list = root.getData() -# -# if (pos == None): -# list.append(obj) # sonderfall ganz hinten einfügen -# else: -# max = len(pos) -# for i in range(len(pos)): -# try: -# if isinstance(list[pos[i]], CollectionTest): -# list = list[pos[i]].getData() -# if (i == (max - 1)): -# list.append(obj) -# else: -# list.insert(pos[i], obj) -# except IndexError: -# list.append(obj) # wenn in eigener collection verschoben wird, wurde ja element schon gelöscht daher passt index nicht mehr -# -# self.set_data_in_pickle(root) -# -# -# def get_object(self, pos): -# root = self.get_data_from_pickle() -# -# list = root.getData() -# -# # find object and return it to insert it in collection -# for i in range(len(pos)): -# if isinstance(list[pos[i]], CollectionTest): -# obj = list[pos[i]] -# list = list[pos[i]].getData() -# else: -# obj = list[pos[i]] -# -# list = root.getData() -# max = len(pos) -# -# # find object and delete it in current collection -# for i in range(len(pos)): -# if isinstance(list[pos[i]], CollectionTest): -# if (i == (max - 1)): -# #collection löschen (evt. abfrage ob wirklich gelöscht werden soll inkl. kinder) -# list.remove(obj) -# else: -# list = list[pos[i]].getData() -# else: -# #task löschen -# list.remove(obj) -# -# self.set_data_in_pickle(root) -# return obj + def insert_object(self, obj, pos): + root = self.get_data_from_pickle() + list = root.getData() + + if (pos == None): + list.append(obj) # sonderfall ganz hinten einfügen + else: + max = len(pos) + for i in range(len(pos)): + try: + if isinstance(list[pos[i]], Collection): + list = list[pos[i]].getData() + if (i == (max - 1)): + list.append(obj) + else: + list.insert(pos[i], obj) + except IndexError: + list.append(obj) # wenn in eigener collection verschoben wird, wurde ja element schon gelöscht daher passt index nicht mehr + + self.set_data_in_pickle(root) + + + def get_object(self, pos): + root = self.get_data_from_pickle() + + list = root.getData() + + # find object and return it to insert it in collection + for i in range(len(pos)): + if isinstance(list[pos[i]], Collection): + obj = list[pos[i]] + list = list[pos[i]].getData() + else: + obj = list[pos[i]] + + list = root.getData() + max = len(pos) + + # find object and delete it in current collection + for i in range(len(pos)): + if isinstance(list[pos[i]], Collection): + if (i == (max - 1)): + #collection löschen (evt. abfrage ob wirklich gelöscht werden soll inkl. kinder) + list.remove(obj) + else: + list = list[pos[i]].getData() + else: + #task löschen + list.remove(obj) + + self.set_data_in_pickle(root) + return obj + + def get_data_from_pickle(self): + path = os.path.join(os.getcwd(), "data/Collection.data") + f = open(path, "rb") + root = pickle.load(f) + f.close() + return root + + def set_data_in_pickle(self, root): + path = os.path.join(os.getcwd(), "data/Collection.data") + f = open(path, "wb") + pickle.dump(root, f) + f.close() |