You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by do...@apache.org on 2013/09/12 05:52:25 UTC

svn commit: r1522264 - in /james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui: HupaLayout.ui.xml MessageListView.java MessagesCellTable.java

Author: dongxu
Date: Thu Sep 12 03:52:25 2013
New Revision: 1522264

URL: http://svn.apache.org/r1522264
Log:
add click handler to every message row

Modified:
    james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayout.ui.xml
    james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessageListView.java
    james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessagesCellTable.java

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayout.ui.xml
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayout.ui.xml?rev=1522264&r1=1522263&r2=1522264&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayout.ui.xml (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayout.ui.xml Thu Sep 12 03:52:25 2013
@@ -116,7 +116,8 @@
 		}
 		
 		@sprite .messageContentWorkAround {
-			margin: 8px;
+			margin: 8px 0 8px 8px;
+			padding-right: 8px;
             gwt-image: 'originLogo';
             background-position: center center;
             width: auto;

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessageListView.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessageListView.java?rev=1522264&r1=1522263&r2=1522264&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessageListView.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessageListView.java Thu Sep 12 03:52:25 2013
@@ -21,6 +21,7 @@ package org.apache.hupa.client.ui;
 
 <<<<<<< HEAD
 <<<<<<< HEAD
+<<<<<<< HEAD
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Set;
@@ -53,6 +54,10 @@ public class MessageListView extends Com
 	interface MessageListUiBinder extends UiBinder<SimpleLayoutPanel, MessageListView> {
 =======
 =======
+=======
+import java.util.List;
+
+>>>>>>> add click handler to every message row
 import org.apache.hupa.client.activity.MessageListActivity;
 import org.apache.hupa.client.rf.FetchMessagesRequest;
 import org.apache.hupa.client.rf.HupaRequestFactory;
@@ -84,10 +89,10 @@ import com.google.inject.Inject;
 import com.google.web.bindery.requestfactory.shared.Receiver;
 import com.google.web.bindery.requestfactory.shared.ServerFailure;
 
-public class MessageListView extends Composite implements MessageListActivity.Displayable {
+public class MessageListView extends Composite implements
+		MessageListActivity.Displayable {
 
-	@UiField(provided = true)
-	DataGrid<Message> table;
+	@UiField(provided = true) DataGrid<Message> table;
 	private HupaRequestFactory requestFactory;
 	private EventBus eventBus;
 	private ImapFolder folder;
@@ -96,7 +101,8 @@ public class MessageListView extends Com
 	private boolean pending;
 
 	@Inject
-	public MessageListView(final EventBus eventBus, final HupaRequestFactory requestFactory,
+	public MessageListView(final EventBus eventBus,
+			final HupaRequestFactory requestFactory,
 			final MessagesCellTable table) {
 		this.requestFactory = requestFactory;
 		this.eventBus = eventBus;
@@ -106,12 +112,21 @@ public class MessageListView extends Com
 			@Override
 			public void onCellPreview(CellPreviewEvent<Message> event) {
 				if (hasClickedButFirstCol(event)) {
-					eventBus.fireEvent(new ExpandMessageEvent(user, folder, event.getValue()));
+					List<Message> displayedItems = table.getVisibleItems();
+					for (Message msg : displayedItems) {
+						table.getSelectionModel().setSelected(msg, false);
+					}
+					table.getSelectionModel().setSelected(event.getValue(),
+							true);
+					eventBus.fireEvent(new ExpandMessageEvent(user, folder,
+							event.getValue()));
 				}
 			}
 
-			private boolean hasClickedButFirstCol(CellPreviewEvent<Message> event) {
-				return "click".equals(event.getNativeEvent().getType()) && 0 != event.getColumn();
+			private boolean hasClickedButFirstCol(
+					CellPreviewEvent<Message> event) {
+				return "click".equals(event.getNativeEvent().getType())
+						&& 0 != event.getColumn();
 			}
 
 		});
@@ -121,19 +136,22 @@ public class MessageListView extends Com
 				fetch(event.getNewRange().getStart());
 			}
 		});
-		eventBus.addHandler(LoadMessagesEvent.TYPE, new LoadMessagesEventHandler() {
-			public void onLoadMessagesEvent(LoadMessagesEvent loadMessagesEvent) {
-				user = loadMessagesEvent.getUser();
-				folder = loadMessagesEvent.getFolder();
-				searchValue = loadMessagesEvent.getSearchValue();
-				fetch(0);
+		eventBus.addHandler(LoadMessagesEvent.TYPE,
+				new LoadMessagesEventHandler() {
+					public void onLoadMessagesEvent(
+							LoadMessagesEvent loadMessagesEvent) {
+						user = loadMessagesEvent.getUser();
+						folder = loadMessagesEvent.getFolder();
+						searchValue = loadMessagesEvent.getSearchValue();
+						fetch(0);
 
-			}
-		});
+					}
+				});
 		eventBus.addHandler(LoginEvent.TYPE, new LoginEventHandler() {
 			public void onLogin(LoginEvent event) {
 				user = event.getUser();
-				folder = new ImapFolderImpl(user.getSettings().getInboxFolderName());
+				folder = new ImapFolderImpl(user.getSettings()
+						.getInboxFolderName());
 				searchValue = null;
 				if (!pending) {
 					pending = true;
@@ -151,7 +169,8 @@ public class MessageListView extends Com
 
 	public void fetch(final int start) {
 		FetchMessagesRequest messagesRequest = requestFactory.messagesRequest();
-		FetchMessagesAction action = messagesRequest.create(FetchMessagesAction.class);
+		FetchMessagesAction action = messagesRequest
+				.create(FetchMessagesAction.class);
 		final ImapFolder folder1 = messagesRequest.create(ImapFolder.class);
 		folder1.setChildren(folder.getChildren());
 		folder1.setDelimiter(folder.getDelimiter());
@@ -183,7 +202,8 @@ public class MessageListView extends Com
 				table.setRowData(start, result.getMessages());
 
 				// pager.setPageStart(start);
-//				eventBus.fireEvent(new MessagesReceivedEvent(folder1, result.getMessages()));
+				// eventBus.fireEvent(new MessagesReceivedEvent(folder1,
+				// result.getMessages()));
 			}
 		});
 	}
@@ -208,7 +228,8 @@ public class MessageListView extends Com
 >>>>>>> deal with onResizeEvent of folder list panel, but found issue #25
 	}
 
-	private static MessageListUiBinder binder = GWT.create(MessageListUiBinder.class);
+	private static MessageListUiBinder binder = GWT
+			.create(MessageListUiBinder.class);
 
 <<<<<<< HEAD
 	@Override

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessagesCellTable.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessagesCellTable.java?rev=1522264&r1=1522263&r2=1522264&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessagesCellTable.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessagesCellTable.java Thu Sep 12 03:52:25 2013
@@ -551,6 +551,7 @@ public class MessagesCellTable extends D
 			KEY_PROVIDER);
 
 	static DataGrid.Resources res = GWT.create(DataGridResources.class);
+
 	@Inject
 	public MessagesCellTable(final HupaImageBundle imageBundle,
 			final HupaConstants constants) {
@@ -566,7 +567,8 @@ public class MessagesCellTable extends D
 				return false;
 			}
 		};
-		Header<ImageResource> attachedPin = new Header<ImageResource>(headerAttached) {
+		Header<ImageResource> attachedPin = new Header<ImageResource>(
+				headerAttached) {
 			@Override
 			public ImageResource getValue() {
 				return imageBundle.attachmentIcon();
@@ -585,8 +587,10 @@ public class MessagesCellTable extends D
 
 		addColumn(checkboxCol, header);
 		setColumnWidth(checkboxCol, 3, Unit.EM);
-//		addColumn(fromCol, new SafeHtmlHeader(SafeHtmlUtils.fromSafeConstant(constants.mailTableFrom())), fromFooter);
-		addColumn(fromCol,constants.mailTableFrom());
+		// addColumn(fromCol, new
+		// SafeHtmlHeader(SafeHtmlUtils.fromSafeConstant(constants.mailTableFrom())),
+		// fromFooter);
+		addColumn(fromCol, constants.mailTableFrom());
 		setColumnWidth(fromCol, 40, Unit.PCT);
 		addColumn(subjectCol, constants.mailTableSubject());
 		setColumnWidth(subjectCol, 60, Unit.PCT);
@@ -629,6 +633,7 @@ public class MessagesCellTable extends D
 			return object.getFrom();
 		}
 	}
+
 	private class SubjectColumn extends Column<Message, String> {
 		public SubjectColumn() {
 			super(new TextCell());
@@ -661,11 +666,6 @@ public class MessagesCellTable extends D
 			return object.getReceivedDate();
 		}
 	}
-	Header<String> fromFooter = new Header<String>(new TextCell()) {
-	      @Override
-	      public String getValue() {
-	        return "From Footer";
-	    };
-	};
+
 }
 >>>>>>> fix some bugs related to RF, and try to use new CellView to replace gwt-incubator 



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org