Author: norman
Date: Tue Aug 11 18:11:18 2009
New Revision: 803238

URL: http://svn.apache.org/viewvc?rev=803238&view=rev
Log:
Fix unseen message decreasing

Added:
    
labs/hupa/src/main/java/org/apache/hupa/shared/events/DecreaseUnseenEvent.java
    
labs/hupa/src/main/java/org/apache/hupa/shared/events/DecreaseUnseenEventHandler.java
Modified:
    labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java
    
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java
    labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java

Modified: 
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java
URL: 
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java?rev=803238&r1=803237&r2=803238&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java 
(original)
+++ labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java 
Tue Aug 11 18:11:18 2009
@@ -24,10 +24,20 @@
 import java.util.Comparator;
 import java.util.List;
 
+import net.customware.gwt.dispatch.client.DispatchAsync;
+import net.customware.gwt.presenter.client.DisplayCallback;
+import net.customware.gwt.presenter.client.EventBus;
+import net.customware.gwt.presenter.client.place.Place;
+import net.customware.gwt.presenter.client.place.PlaceRequest;
+import net.customware.gwt.presenter.client.widget.WidgetDisplay;
+import net.customware.gwt.presenter.client.widget.WidgetPresenter;
+
 import org.apache.hupa.client.widgets.IMAPTreeItem;
 import org.apache.hupa.shared.data.IMAPFolder;
 import org.apache.hupa.shared.data.User;
-import org.apache.hupa.shared.events.FolderSelectionEvent;
+import org.apache.hupa.shared.events.DecreaseUnseenEvent;
+import org.apache.hupa.shared.events.DecreaseUnseenEventHandler;
+import org.apache.hupa.shared.events.LoadMessagesEvent;
 import org.apache.hupa.shared.events.LoginEvent;
 import org.apache.hupa.shared.events.LoginEventHandler;
 import org.apache.hupa.shared.rpc.FetchFolders;
@@ -40,14 +50,6 @@
 import com.google.gwt.user.client.ui.TreeItem;
 import com.google.inject.Inject;
 
-import net.customware.gwt.dispatch.client.DispatchAsync;
-import net.customware.gwt.presenter.client.DisplayCallback;
-import net.customware.gwt.presenter.client.EventBus;
-import net.customware.gwt.presenter.client.place.Place;
-import net.customware.gwt.presenter.client.place.PlaceRequest;
-import net.customware.gwt.presenter.client.widget.WidgetDisplay;
-import net.customware.gwt.presenter.client.widget.WidgetPresenter;
-
 public class IMAPFolderPresenter extends 
WidgetPresenter<IMAPFolderPresenter.Display>{
 
        private DispatchAsync dispatcher;
@@ -148,12 +150,19 @@
                        
                });
                
+               eventBus.addHandler(DecreaseUnseenEvent.TYPE, new 
DecreaseUnseenEventHandler() {
+
+                       public void onDecreaseUnseenEvent(DecreaseUnseenEvent 
event) {
+                               tItem.decreaseUnseenMessageCount();
+                       }
+                       
+               });
                display.getTree().addSelectionHandler(new 
SelectionHandler<TreeItem>() {
 
                        public void onSelection(SelectionEvent<TreeItem> event) 
{
                                tItem = (IMAPTreeItem)event.getSelectedItem();
                                folder = (IMAPFolder) tItem.getUserObject();
-                               eventBus.fireEvent(new 
FolderSelectionEvent(user,folder));
+                               eventBus.fireEvent(new 
LoadMessagesEvent(user,folder));
                        }
                        
                });

Modified: 
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java
URL: 
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java?rev=803238&r1=803237&r2=803238&view=diff
==============================================================================
--- 
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java
 (original)
+++ 
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java
 Tue Aug 11 18:11:18 2009
@@ -128,6 +128,7 @@
                                        int cell) {
                                
                                IMAPMessage message = display.getData(row);
+
                                eventBus.fireEvent(new 
ExpandMessageEvent(user,folder,message));
                        }
 

Modified: labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java
URL: 
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java?rev=803238&r1=803237&r2=803238&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java 
(original)
+++ labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java Tue 
Aug 11 18:11:18 2009
@@ -34,6 +34,7 @@
 import org.apache.hupa.shared.data.IMAPMessage;
 import org.apache.hupa.shared.data.User;
 import org.apache.hupa.shared.data.IMAPMessage.IMAPFlag;
+import org.apache.hupa.shared.events.DecreaseUnseenEvent;
 import org.apache.hupa.shared.events.ExpandMessageEvent;
 import org.apache.hupa.shared.events.ExpandMessageEventHandler;
 import org.apache.hupa.shared.events.FolderSelectionEvent;
@@ -223,7 +224,7 @@
                                        protected void 
handleSuccess(ExposeMessageResult result) {
                                                // decrease the unseen count if 
we were able to expose the message
                                                if (decreaseUnseen) {
-                                                       
//tItem.decreaseUnseenMessageCount();
+                                                       eventBus.fireEvent(new 
DecreaseUnseenEvent(user,folder));
                                                }
                                                
                                                
showMessage(result.getMessage());

Added: 
labs/hupa/src/main/java/org/apache/hupa/shared/events/DecreaseUnseenEvent.java
URL: 
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/shared/events/DecreaseUnseenEvent.java?rev=803238&view=auto
==============================================================================
--- 
labs/hupa/src/main/java/org/apache/hupa/shared/events/DecreaseUnseenEvent.java 
(added)
+++ 
labs/hupa/src/main/java/org/apache/hupa/shared/events/DecreaseUnseenEvent.java 
Tue Aug 11 18:11:18 2009
@@ -0,0 +1,57 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one   *
+ * or more contributor license agreements.  See the NOTICE file *
+ * distributed with this work for additional information        *
+ * regarding copyright ownership.  The ASF licenses this file   *
+ * to you under the Apache License, Version 2.0 (the            *
+ * "License"); you may not use this file except in compliance   *
+ * with the License.  You may obtain a copy of the License at   *
+ *                                                              *
+ *   http://www.apache.org/licenses/LICENSE-2.0                 *
+ *                                                              *
+ * Unless required by applicable law or agreed to in writing,   *
+ * software distributed under the License is distributed on an  *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
+ * KIND, either express or implied.  See the License for the    *
+ * specific language governing permissions and limitations      *
+ * under the License.                                           *
+ ****************************************************************/
+
+package org.apache.hupa.shared.events;
+
+import org.apache.hupa.shared.data.IMAPFolder;
+import org.apache.hupa.shared.data.User;
+
+import com.google.gwt.event.shared.GwtEvent;
+
+public class DecreaseUnseenEvent extends GwtEvent<DecreaseUnseenEventHandler>{
+
+       public final static Type<DecreaseUnseenEventHandler> TYPE = new 
Type<DecreaseUnseenEventHandler>();
+       private User user;
+       private IMAPFolder folder;
+       
+       public DecreaseUnseenEvent(User user, IMAPFolder folder) {
+               this.user =user;
+               this.folder = folder;
+       }
+       
+       public IMAPFolder getFolder() {
+               return folder;
+       }
+       
+       public User getUser() {
+               return user;
+       }
+       
+       @Override
+       protected void dispatch(DecreaseUnseenEventHandler handler) {
+               handler.onDecreaseUnseenEvent(this);
+               
+       }
+
+       @Override
+       public 
com.google.gwt.event.shared.GwtEvent.Type<DecreaseUnseenEventHandler> 
getAssociatedType() {
+               return TYPE;
+       }
+
+}

Added: 
labs/hupa/src/main/java/org/apache/hupa/shared/events/DecreaseUnseenEventHandler.java
URL: 
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/shared/events/DecreaseUnseenEventHandler.java?rev=803238&view=auto
==============================================================================
--- 
labs/hupa/src/main/java/org/apache/hupa/shared/events/DecreaseUnseenEventHandler.java
 (added)
+++ 
labs/hupa/src/main/java/org/apache/hupa/shared/events/DecreaseUnseenEventHandler.java
 Tue Aug 11 18:11:18 2009
@@ -0,0 +1,27 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one   *
+ * or more contributor license agreements.  See the NOTICE file *
+ * distributed with this work for additional information        *
+ * regarding copyright ownership.  The ASF licenses this file   *
+ * to you under the Apache License, Version 2.0 (the            *
+ * "License"); you may not use this file except in compliance   *
+ * with the License.  You may obtain a copy of the License at   *
+ *                                                              *
+ *   http://www.apache.org/licenses/LICENSE-2.0                 *
+ *                                                              *
+ * Unless required by applicable law or agreed to in writing,   *
+ * software distributed under the License is distributed on an  *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
+ * KIND, either express or implied.  See the License for the    *
+ * specific language governing permissions and limitations      *
+ * under the License.                                           *
+ ****************************************************************/
+
+package org.apache.hupa.shared.events;
+
+import com.google.gwt.event.shared.EventHandler;
+
+public interface DecreaseUnseenEventHandler extends EventHandler{
+
+       public void onDecreaseUnseenEvent(DecreaseUnseenEvent event);
+}



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

Reply via email to