]> err.no Git - scalable-opengroupware.org/commitdiff
minor code cleanups
authorhelge <helge@d1b88da0-ebda-0310-925b-ed51d893ca5b>
Mon, 14 Feb 2005 16:21:40 +0000 (16:21 +0000)
committerhelge <helge@d1b88da0-ebda-0310-925b-ed51d893ca5b>
Mon, 14 Feb 2005 16:21:40 +0000 (16:21 +0000)
git-svn-id: http://svn.opengroupware.org/SOGo/trunk@558 d1b88da0-ebda-0310-925b-ed51d893ca5b

SOGo/UI/Contacts/ChangeLog
SOGo/UI/Contacts/UIxContactsListView.h
SOGo/UI/Contacts/UIxContactsListView.m
SOGo/UI/Contacts/Version
SOGo/UI/Mailer/ChangeLog
SOGo/UI/Mailer/GNUmakefile
SOGo/UI/Mailer/UIxMailMainFrame.wox
SOGo/UI/Mailer/UIxMailTree.m
SOGo/UI/Mailer/Version
SOGo/UI/Mailer/common.h
SOGo/UI/Mailer/product.plist

index 254707846640ffacd0bcc39a69cc552ddaa24dc5..69ad21787f057f73dd7126d09313e89c1059979b 100644 (file)
@@ -1,3 +1,7 @@
+2005-02-14  Helge Hess  <helge.hess@opengroupware.org>
+
+       * UIxContactsListView.h: properly protected header file (v0.9.19)
+
 2004-12-08  Marcus Mueller  <znek@mulle-kybernetik.com>
 
        * UIxContactEditor.m: changed to use NGLogging (v0.9.18)
index e848363bc6b2422fab23736656529604f914449d..31d68c27fd7d953675a8a20250b5438913ed977c 100644 (file)
  License along with OGo; see the file COPYING.  If not, write to the
  Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
  02111-1307, USA.
- */
-// $Id$
+*/
 
+#ifndef __UIxContactsListView_H__
+#define __UIxContactsListView_H__
 
 #include <SOGoUI/UIxComponent.h>
 
+@class NSString, NSArray;
+
 @interface UIxContactsListView : UIxComponent
 {
   NSArray  *allRecords;
   NSArray  *filteredRecords;
   NSString *searchText;
-  id contact;
+  id       contact;
 }
 
 @end
+
+#endif /* __UIxContactsListView_H__ */
index 1fdccbf27788d5c65737eb8835defe2950f704fb..55ab51c00c62d1e882c6b9bf1f80d844e33e43f6 100644 (file)
@@ -18,8 +18,6 @@
   Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
   02111-1307, USA.
 */
-// $Id$
-
 
 #include "UIxContactsListView.h"
 #include <Contacts/SOGoContactFolder.h>
@@ -50,6 +48,7 @@
 - (id)searchText {
   return self->searchText;
 }
+
 - (EOQualifier *)qualifier {
   NSString *qs, *s;
   
index e66b6e906368b924f77aca09a243f86a27fd286e..145749f9a72c47c91a068843e737ebbdae556fe0 100644 (file)
@@ -1,6 +1,6 @@
-# $Id$
+# GNUstep makefile
 
-SUBMINOR_VERSION:=18
+SUBMINOR_VERSION:=19
 
 # v0.9.18 requires NGExtensions v4.5.136
 # v0.9.16 requires libSOGoUI    v0.9.16
index b4071acd4d0a71aa1cc1374199351aa714df3971..8acfa77aa9d8c2b2a7aa3aac736d099f3ea41f4b 100644 (file)
@@ -1,5 +1,15 @@
 2005-02-14  Helge Hess  <helge.hess@opengroupware.org>
-       
+
+       * v0.9.107
+
+       * product.plist: mapped 'namespaced' "tb.view" SOPE method to the same
+         methods like "view". This allows us to use "tb.view" inside the
+         mailer without clashing with other UIs on top of the same SoObjects
+
+       * UIxMailTree.m: use Inbox icon for SOGoMailAccount and
+         SOGoMailAccounts folders, added ability to specify a
+         'treeFolderAction' (relative URL to be triggered by clicks)
+
        * v0.9.106
        
        * UIxMailFilterPanel.wox: improved CSS styling of the search field
index b9caf48d1e57e3a8bea21b95cab29fd68fe446fa..f18d8530adbb52567fe3a8dfc93a038ea519bb97 100644 (file)
@@ -91,7 +91,6 @@ MailerUI_RESOURCE_FILES += \
        mailer.js               \
 
 MailerUI_RESOURCE_FILES += \
-       screenshots/*.png       \
        Images/tbtv_*.gif       \
        Images/icon_*.gif       \
        Images/tbtb_*.png       \
index 1e6679a63f25b45d5f8af34b3347263316fa173d..a419b307a19f44ce27c5204c1104776e763924f6 100644 (file)
@@ -64,7 +64,9 @@
                     <div class="embedwhite_out">
                       <div class="embedwhite_in">
                         <var:component className="UIxMailTree" 
-                           var:rootClassName="treeRootClassName" />
+                           rootClassName="treeRootClassName" 
+                           const:treeFolderAction="tb.view" 
+                           />
                       </div>
                     </div>
                   </div>
index 832308fc0d86b4960a1458ae9a0f1b40d3c853a4..9f062a65f5cdffb92d9f971dc3061a224754eab0 100644 (file)
@@ -24,6 +24,7 @@
 @interface UIxMailTree : UIxComponent
 {
   NSString *rootClassName;
+  NSString *treeFolderAction;
   id rootNodes;
   id item;
 }
@@ -54,7 +55,8 @@ static BOOL debugBlocks = NO;
 }
 
 - (void)dealloc {
-  [self->rootClassName release];
+  [self->treeFolderAction release];
+  [self->rootClassName    release];
   [self->rootNodes release];
   [self->item      release];
   [super dealloc];
@@ -91,6 +93,13 @@ static BOOL debugBlocks = NO;
   return self->item;
 }
 
+- (void)setTreeFolderAction:(NSString *)_action {
+  ASSIGNCOPY(self->treeFolderAction, _action);
+}
+- (NSString *)treeFolderAction {
+  return self->treeFolderAction;
+}
+
 - (NSString *)itemIconName {
   // TODO: only called once!
   NSString *ftype;
@@ -108,7 +117,7 @@ static BOOL debugBlocks = NO;
   unsigned i, count;
   
   if ((names = [_object toManyRelationshipKeys]) == nil) {
-    [self logWithFormat:@"no to-many: %@", _object];
+    if (debugBlocks) [self logWithFormat:@"no to-many: %@", _object];
     return nil;
   }
   
@@ -149,8 +158,17 @@ static BOOL debugBlocks = NO;
 - (NSString *)treeNavigationLinkForObject:(id)_object atDepth:(int)_depth {
   NSString *link;
   unsigned i;
-  
+
   link = [[_object nameInContainer] stringByAppendingString:@"/"];
+  link = [link stringByAppendingString:[self treeFolderAction]];
+  
+  switch (_depth) {
+  case 0: return link;
+  case 1: return [@"../"       stringByAppendingString:link];
+  case 2: return [@"../../"    stringByAppendingString:link];
+  case 3: return [@"../../../" stringByAppendingString:link];
+  }
+  
   for (i = 0; i < _depth; i++)
     link = [@"../" stringByAppendingString:link];
   return link;
@@ -202,6 +220,20 @@ static BOOL debugBlocks = NO;
   
   *_t    = [_object davDisplayName];
   *_icon = nil;
+  
+  if ([_object isKindOfClass:NSClassFromString(@"SOGoMailFolder")])
+    *_icon = nil;
+  else if ([_object isKindOfClass:NSClassFromString(@"SOGoMailAccount")])
+    *_icon = @"tbtv_inbox_17x17.gif";
+  else if ([_object isKindOfClass:NSClassFromString(@"SOGoMailAccounts")])
+    *_icon = @"tbtv_inbox_17x17.gif";
+  else if ([_object isKindOfClass:NSClassFromString(@"SOGoUserFolder")])
+    *_icon = @"tbtv_inbox_17x17.gif";
+  else {
+    // TODO: use drafts icon for other SOGo folders
+    *_icon = @"tbtv_drafts_17x17.gif";
+  }
+  
   return;
 }
 
@@ -340,7 +372,7 @@ static BOOL debugBlocks = NO;
   
   folders = [self fetchSubfoldersOfObject:_object];
   count   = [folders count];
-  blocks  = [NSMutableArray arrayWithCapacity:count];
+  blocks  = [NSMutableArray arrayWithCapacity:count == 0 ? 1 : count];
   for (i = 0; i < count; i++) {
     UIxMailTreeBlock *block;
     id folder;
@@ -352,7 +384,12 @@ static BOOL debugBlocks = NO;
     
     if ([block isNotNull]) [blocks addObject:block];
   }
-  if ([blocks count] == 0) blocks = nil;
+  if ([blocks count] == 0) {
+    if (_activeChildBlock != nil) // if the parent has no proper fetchmethod!
+      [blocks addObject:_activeChildBlock];
+    else
+      blocks = nil;
+  }
   
   /* build block */
   
index 177d1750bbb18836eadbc8dcf655193f9efea3a1..d973f317f913a5b10e523857876c27d5b35624f3 100644 (file)
@@ -1,6 +1,6 @@
 # version file
 
-SUBMINOR_VERSION:=106
+SUBMINOR_VERSION:=107
 
 # v0.9.100 requires libNGMime        v4.5.213
 # v0.9.99  requires libNGMime        v4.5.212
index bb109a4ae13c646364379b7db806f61ab8563cba..9e98639ce8e5c5b3b94d4998744ca9ce8257d18d 100644 (file)
@@ -18,7 +18,6 @@
   Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
   02111-1307, USA.
 */
-// $Id$
 
 #import <Foundation/Foundation.h>
 
index f95ac7a4a3f234027e029ce65fcbcac228829260..f21701b96b092ad3acd136f77a5f263692a983df 100644 (file)
     "title_thread.png",
     "title_sortdown_12x12.png",
     "title_sortup_12x12.png",
-
-    "tbird_073_accountview.png",
-    "tbird_073_compose.png",
-    "tbird_073_mailwelcome.png",
-    "tbird_073_settings.png",
-    "tbird_073_viewer.png",
   );
 
   factories = {
           protectedBy = "View";
           pageName    = "UIxMailListView"; 
         };
+        "tb.view" = { /* primary entry for mailer actions */
+          protectedBy = "View";
+          pageName    = "UIxMailListView"; 
+        };
         index = {
           protectedBy = "View";
           pageName    = "UIxMailListView"; 
           protectedBy = "View";
           pageName    = "UIxMailView"; 
         };
+        "tb.view" = { /* primary entry for mailer actions */
+          protectedBy = "View";
+          pageName    = "UIxMailView"; 
+        };
 
         getMail = {
           protectedBy = "View";
           protectedBy = "View";
           pageName    = "UIxMailAccountsView"; 
         };
+        "tb.view" = { /* primary entry for mailer actions */
+          protectedBy = "View";
+          pageName    = "UIxMailAccountsView"; 
+        };
       };
     };
     
           protectedBy = "View";
           pageName    = "UIxMailAccountView"; 
         };
+        "tb.view" = { /* primary entry for mailer actions */
+          protectedBy = "View";
+          pageName    = "UIxMailAccountView"; 
+        };
         addressbook = {
           protectedBy = "View";
           pageName    = "UIxMailAddressbook"; 
           protectedBy = "View";
           pageName    = "UIxMailListView"; 
         };
+        "tb.view" = { /* primary entry for mailer actions */
+          protectedBy = "View";
+          pageName    = "UIxMailListView"; 
+        };
         getMail = {
           protectedBy = "View";
           pageName    = "UIxMailListView"; 
           protectedBy = "View";
           pageName    = "UIxMailEditor"; 
         };
+        "tb.view" = { /* primary entry for mailer actions */
+          protectedBy = "View";
+          pageName    = "UIxMailEditor"; 
+        };
         edit = {
           protectedBy = "View";
           pageName    = "UIxMailEditor"; 
           protectedBy = "View";
           pageName    = "UIxFilterList"; 
         };
+        "tb.view" = { /* primary entry for mailer actions */
+          protectedBy = "View";
+          pageName    = "UIxFilterList"; 
+        };
         create = {
           protectedBy = "View";
           pageName    = "UIxFilterList";