]> err.no Git - scalable-opengroupware.org/commitdiff
SOGoAptFormatter -> -titlePlaceholder, used by UIxCalView now
authorznek <znek@d1b88da0-ebda-0310-925b-ed51d893ca5b>
Mon, 18 Jul 2005 15:15:32 +0000 (15:15 +0000)
committerznek <znek@d1b88da0-ebda-0310-925b-ed51d893ca5b>
Mon, 18 Jul 2005 15:15:32 +0000 (15:15 +0000)
git-svn-id: http://svn.opengroupware.org/SOGo/trunk@797 d1b88da0-ebda-0310-925b-ed51d893ca5b

SOGo/UI/SOGoUI/ChangeLog
SOGo/UI/SOGoUI/SOGoAptFormatter.h
SOGo/UI/SOGoUI/SOGoAptFormatter.m
SOGo/UI/SOGoUI/Version
SOGo/UI/Scheduler/ChangeLog
SOGo/UI/Scheduler/English.lproj/Localizable.strings
SOGo/UI/Scheduler/UIxCalView.m
SOGo/UI/Scheduler/Version

index 7882308fb46fecd424223bef25fb46610770a78c..4246f9381916aea848aab25331f288f72a3fc699 100644 (file)
@@ -1,3 +1,8 @@
+2005-07-18  Marcus Mueller  <znek@mulle-kybernetik.com>
+
+       * SOGoAptFormatter.[hm]: added -titlePlaceholder API for properly
+         formatting appointments without titles (v0.9.30)
+
 2005-07-13  Marcus Mueller  <znek@mulle-kybernetik.com>
 
        * WOContext+UIx.[hm]: new category to WOContext, currently provides
index c81068344d3f947985ea470967c7ecec3619588a..70834d1e871d653046b371b61f3a46db0fd09a2f 100644 (file)
@@ -33,6 +33,7 @@
   NSTimeZone *tz;
   SEL        formatAction;
   NSString   *privateTitle;
+  NSString   *titlePlaceholder;
   BOOL       omitsEndDate;
 }
 
@@ -53,6 +54,9 @@
 - (void)setPrivateTitle:(NSString *)_privateTitle;
 - (NSString *)privateTitle;
 
+- (void)setTitlePlaceholder:(NSString *)_titlePlaceholder;
+- (NSString *)titlePlaceholder;
+
 - (NSString *)stringForObjectValue:(id)_obj
   referenceDate:(NSCalendarDate *)_refDate;
 
index 99f938c515bedd1c27c8652efc7228fc795a39d1..6f0d91d1ff86d19fcc90a3f9db4fb683b3a47279 100644 (file)
@@ -52,8 +52,9 @@
 }
 
 - (void)dealloc {
-  [self->tz           release];
-  [self->privateTitle release];
+  [self->tz               release];
+  [self->privateTitle     release];
+  [self->titlePlaceholder release];
   [super dealloc];
 }
 
   return self->privateTitle;
 }
 
+- (void)setTitlePlaceholder:(NSString *)_titlePlaceholder {
+  ASSIGN(self->titlePlaceholder, _titlePlaceholder);
+}
+- (NSString *)titlePlaceholder {
+  return self->titlePlaceholder;
+}
+
 - (void)setOmitsEndDate {
   self->omitsEndDate = YES;
 }
 }
 
 - (NSString *)titleForApt:(id)_apt :(NSCalendarDate *)_refDate {
-  return [_apt valueForKey:@"title"];
+  NSString *title;
+  
+  title = [_apt valueForKey:@"title"];
+  if (![title isNotEmpty])
+    title = [self titlePlaceholder];
+  return title;
 }
 
 - (NSString *)shortTitleForApt:(id)_apt :(NSCalendarDate *)_refDate {
   if ((s = [_apt valueForKey:@"location"]) != nil) {
     [aptDescr appendFormat:@"; (%@)", s];
   }
-  if ((s = [_apt valueForKey:@"title"]) != nil)
-    [aptDescr appendFormat:@"; %@", [self titleForApt:_apt :_refDate]];
+  if ((s = [self titleForApt:_apt :_refDate]) != nil)
+    [aptDescr appendFormat:@"; %@", s];
   return aptDescr;
 }
 
       s = [[s substringToIndex:11] stringByAppendingString:@"..."];
     [aptDescr appendFormat:@" (%@)", s];
   }
-  if ((s = [_apt valueForKey:@"title"]) != nil)
-    [aptDescr appendFormat:@"<br />%@", [self shortTitleForApt:_apt :_refDate]];
+  if ((s = [self shortTitleForApt:_apt :_refDate]) != nil)
+    [aptDescr appendFormat:@"<br />%@", s];
   
   return aptDescr;
 }
   [self appendTimeInfoFromApt:_apt
         usingReferenceDate:_refDate
         toBuffer:aptDescr];  
-  if ((s = [_apt valueForKey:@"title"]) != nil)
+  if ((s = [self titleForApt:_apt :_refDate]) != nil)
     [aptDescr appendFormat:@"\n%@", s];
   if ((s = [_apt valueForKey:@"location"]) != nil)
     [aptDescr appendFormat:@"\n%@", s];
index 99566d6563b628437af3835a832c684b32fed4c2..afe528390b380287fbc66a551a06813de8b6fa9e 100644 (file)
@@ -1,5 +1,5 @@
 # version file
 
-SUBMINOR_VERSION:=29
+SUBMINOR_VERSION:=30
 
 # v0.9.18 requires NGExtensions v4.5.136
index 01a03c4f672240f7f1971895c9e187ab78406d2c..d75e98ae6f13d355d2cade240ad841a520835e20 100644 (file)
@@ -1,3 +1,9 @@
+2005-07-18  Marcus Mueller  <znek@mulle-kybernetik.com>
+
+       * UIxCalView.m: provide label "empty title" as -titlePlaceholder for
+         appointment formatters to enable display of appointments whose
+         title has not been set (v0.9.136)
+
 2005-07-15  Helge Hess  <helge.hess@opengroupware.org>
 
        * UIxCalScheduleOverview.m, UIxAppointmentView.m,
index 0cae556a15f37cbacc3bd83ed90804d5b9495daa..e37251544b7502aa83925b4ecb241f5ca1da04b1 100644 (file)
 "Public"               = "Public";
 "Private"              = "Private";
 /* text used in overviews and tooltips */
+"empty title"          = "Empty title";
 "private appointment"  = "Private appointment";
 
 /* Appointments (participation state) */
index 4537a0d5bcd63836ed9eef7f6d4bafdbb8208da9..17c5487b7e0ac0b1058b2005ce21e226657cc209 100644 (file)
@@ -67,7 +67,11 @@ static BOOL shouldDisplayWeekend = NO;
   [self->aptTooltipFormatter setTooltip];
   [self->privateAptFormatter setPrivateDetails];
   [self->privateAptTooltipFormatter setPrivateTooltip];
-  
+
+  title = [self labelForKey:@"empty title"];
+  [self->aptFormatter setTitlePlaceholder:title];
+  [self->aptTooltipFormatter setTitlePlaceholder:title];
+
   title = [self labelForKey:@"private appointment"];
   [self->privateAptFormatter setPrivateTitle:title];
   [self->privateAptTooltipFormatter setPrivateTitle:title];
index 23169dd85aa5638d92d0577bf82e62838b5fded9..3a0c1d4f84daad5670ff81672b4d1fcc2967b3e0 100644 (file)
@@ -1,7 +1,8 @@
 # Version file
 
-SUBMINOR_VERSION:=135
+SUBMINOR_VERSION:=136
 
+# v0.9.136 requires SOGoUI       v0.9.30
 # v0.9.123 requires Appointments v0.9.35
 # v0.9.123 requires SOGoUI       v0.9.24
 # v0.9.115 requires NGiCal       v4.5.44