Author: norman
Date: Fri Sep 25 15:08:08 2009
New Revision: 818871

URL: http://svn.apache.org/viewvc?rev=818871&view=rev
Log:
Update message count when fetching messages (Hupa-28)

Modified:
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderView.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListView.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/IMAPTreeItem.java

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java?rev=818871&r1=818870&r2=818871&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java
 Fri Sep 25 15:08:08 2009
@@ -44,6 +44,8 @@
 import org.apache.hupa.shared.events.IncreaseUnseenEvent;
 import org.apache.hupa.shared.events.IncreaseUnseenEventHandler;
 import org.apache.hupa.shared.events.LoadMessagesEvent;
+import org.apache.hupa.shared.events.MessagesReceivedEvent;
+import org.apache.hupa.shared.events.MessagesReceivedEventHandler;
 import org.apache.hupa.shared.events.NewMessageEvent;
 import org.apache.hupa.shared.events.NewMessageEventHandler;
 import org.apache.hupa.shared.rpc.CreateFolder;
@@ -93,6 +95,7 @@
                public HasEnable getRenameEnable();
                public HasEnable getDeleteEnable();
                public HasEnable getNewEnable();
+               public void updateTreeItem(IMAPFolder folder);
                public void deleteSelectedFolder();
                public HasEditable createFolder(EditHandler handler);
                public void increaseUnseenMessageCount(IMAPFolder folder, int 
amount);
@@ -324,6 +327,15 @@
                        }
                        
                }));
+               
+               registerHandler(eventBus.addHandler(MessagesReceivedEvent.TYPE, 
new MessagesReceivedEventHandler() {
+
+                       public void onMessagesReceived(MessagesReceivedEvent 
event) {
+                               IMAPFolder f = event.getFolder();
+                               display.updateTreeItem(f);
+                       }
+                       
+               }));
        }
 
        public void bind(User user) {

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderView.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderView.java?rev=818871&r1=818870&r2=818871&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderView.java
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderView.java
 Fri Sep 25 15:08:08 2009
@@ -430,4 +430,15 @@
                }
                return null;
        }
+
+       public void updateTreeItem(IMAPFolder folder) {
+               int count = folderTree.getItemCount();
+               for (int i = 0; i < count; i++) {
+                       IMAPTreeItem item = 
findTreeItemForFolder((IMAPTreeItem) folderTree.getItem(i), folder);
+                       if (item != null) {
+                               item.setUserObject(folder);
+                               break;
+                       }
+               }
+       }
 }

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListView.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListView.java?rev=818871&r1=818870&r2=818871&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListView.java
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListView.java
 Fri Sep 25 15:08:08 2009
@@ -381,7 +381,7 @@
                                }
 
                                public void onSuccess(final FetchMessagesResult 
result) {
-                                       bus.fireEvent(new 
MessagesReceivedEvent(result.getMessages()));
+                                       bus.fireEvent(new 
MessagesReceivedEvent(folder,result.getMessages()));
                                         TableModelHelper.Response<Message> 
response = new TableModelHelper.Response<Message>() {
 
                                                @Override

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/IMAPTreeItem.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/IMAPTreeItem.java?rev=818871&r1=818870&r2=818871&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/IMAPTreeItem.java
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/IMAPTreeItem.java
 Fri Sep 25 15:08:08 2009
@@ -49,6 +49,14 @@
                descreaseUnseenMessageCount(1);
        }
        
+       public void setUnseenMessageCount(int cound) {
+               IMAPFolder folder = (IMAPFolder) getUserObject();
+               int count = folder.getUnseeMessageCount();
+               folder.setUnseenMessageCount(count);
+               setFolderText(folder);
+               
+       }
+       
        
        /**
         * Decrease the unseen messagecount of this folder



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to