From 697761cc337aa77a47140c8df50ed84bc25e23f6 Mon Sep 17 00:00:00 2001 From: Hans Petter Date: Thu, 11 Sep 2003 22:04:44 +0000 Subject: Import new libical from mainline HEAD and make appropriate changes to Evolution. svn path=/trunk/; revision=22538 --- libical/src/python/Store.py | 55 ++++++++++++++++++++++++--------------------- 1 file changed, 30 insertions(+), 25 deletions(-) (limited to 'libical/src/python/Store.py') diff --git a/libical/src/python/Store.py b/libical/src/python/Store.py index 6d13bd5211..00b5b0c2d0 100644 --- a/libical/src/python/Store.py +++ b/libical/src/python/Store.py @@ -27,7 +27,8 @@ from LibicalWrap import * from Error import LibicalError -from Component import Component +from Component import Component, CloneComponent +from Gauge import Gauge class Store: """ @@ -88,20 +89,11 @@ class Store: class FileStore(Store): - def __init__(self, file,mode="r",flags=0664): - - _flags = icallangbind_string_to_open_flag(mode) - - - if _flags == -1: - raise Store.ConstructorFailedError("Illegal value for mode: "+mode) - + def __init__(self, file): e1=icalerror_supress("FILE") - self._ref = icalfileset_new_open(file,_flags,flags) + self._ref = icalfileset_new(file) icalerror_restore("FILE",e1) - print self._ref - if self._ref == None or self._ref == 'NULL': raise Store.ConstructorFailedError(file) @@ -121,33 +113,46 @@ class FileStore(Store): if not isinstance(comp,Component): raise Store.AddFailedError("Argument is not a component") - error = icalfileset_add_component(self._ref,comp) + error = icalfileset_add_component(self._ref,comp.ref()) def remove_component(self, comp): if not isinstance(comp,Component): raise Store.AddFailedError("Argument is not a component") - error = icalfileset_remove_component(self._ref,comp) - - + error = icalfileset_remove_component(self._ref,comp.ref()) def count_components(self, kind): - pass + _kind = icalcomponent_string_to_kind(kind) + + return icalfileset_count_components(self._ref, _kind) def select(self, gauge): - pass + error = icalfileset_select(self._ref, gauge.ref()) def clearSelect(self): - pass + icalfileset_clear(self._ref) def fetch(self, uid): - pass + comp_ref = icalfileset_fetch(self._ref, uid) + + if comp_ref == None: + return None + + return CloneComponent(comp_ref) def fetchMatch(self, comp): - pass + if not isinstance(comp,Component): + raise Store.AddFailedError("Argument is not a component") + + comp_ref = icalfileset_fetch_match(self._ref,comp.ref()) + + if comp_ref == None: + return None + + return CloneComponent(comp_ref) def modify(self, oldc, newc): - pass + pass def current_component(self): comp_ref = icalfileset_get_current_component(self._ref) @@ -155,7 +160,7 @@ class FileStore(Store): if comp_ref == None: return None - return Component(ref=comp_ref) + return CloneComponent(comp_ref) def first_component(self): comp_ref = icalfileset_get_first_component(self._ref) @@ -163,7 +168,7 @@ class FileStore(Store): if comp_ref == None: return None - return Component(ref=comp_ref) + return CloneComponent(comp_ref) def next_component(self): @@ -172,5 +177,5 @@ class FileStore(Store): if comp_ref == None: return None - return Component(ref=comp_ref) + return CloneComponent(comp_ref) -- cgit v1.2.3