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 06:16:09 UTC
svn commit: r1522319 - in
/james/hupa/trunk/client/src/main/java/org/apache/hupa/client:
activity/ToolBarActivity.java ui/MessagesCellTable.java ui/ToolBarView.java
ui/ToolBarView.ui.xml
Author: dongxu
Date: Thu Sep 12 04:16:09 2013
New Revision: 1522319
URL: http://svn.apache.org/r1522319
Log:
link the mark action to the message list such that they can change upon the actions
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/ToolBarActivity.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/MessagesCellTable.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ToolBarView.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ToolBarView.ui.xml
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/ToolBarActivity.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/ToolBarActivity.java?rev=1522319&r1=1522318&r2=1522319&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/ToolBarActivity.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/ToolBarActivity.java Thu Sep 12 04:16:09 2013
@@ -21,6 +21,7 @@ package org.apache.hupa.client.activity;
<<<<<<< HEAD
<<<<<<< HEAD
+<<<<<<< HEAD
import java.util.ArrayList;
import java.util.List;
@@ -150,9 +151,13 @@ public class ToolBarActivity extends App
}
=======
=======
+=======
+import org.apache.hupa.client.ui.MessagesCellTable;
+>>>>>>> link the mark action to the message list such that they can change upon the actions
import org.apache.hupa.client.ui.ToolBarView.Parameters;
>>>>>>> coping with reply and forward sending message
import org.apache.hupa.client.ui.WidgetDisplayable;
+import org.apache.hupa.shared.domain.Message;
import org.apache.hupa.shared.events.ExpandMessageEvent;
import org.apache.hupa.shared.events.ExpandMessageEventHandler;
import org.apache.hupa.shared.events.LoadMessagesEvent;
@@ -160,14 +165,19 @@ import org.apache.hupa.shared.events.Loa
import org.apache.hupa.shared.events.LoginEvent;
import org.apache.hupa.shared.events.LoginEventHandler;
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.HasClickHandlers;
import com.google.gwt.event.shared.EventBus;
import com.google.gwt.user.client.ui.AcceptsOneWidget;
+import com.google.gwt.user.client.ui.PopupPanel;
+import com.google.gwt.user.client.ui.Widget;
import com.google.inject.Inject;
public class ToolBarActivity extends AppBaseActivity {
@Inject private Displayable display;
+ @Inject private MessagesCellTable table;
@Override
public void start(AcceptsOneWidget container, EventBus eventBus) {
@@ -197,9 +207,43 @@ public class ToolBarActivity extends App
eventBus.addHandler(ExpandMessageEvent.TYPE, new ExpandMessageEventHandler() {
public void onExpandMessage(ExpandMessageEvent event) {
display.enableMessageTools();
- display.setParameters(new Parameters(event.getUser(), event.getFolder(), event.getMessage(), event.getMessageDetails()));
+ display.setParameters(new Parameters(event.getUser(), event.getFolder(), event.getMessage(), event
+ .getMessageDetails()));
}
});
+ registerHandler(display.getMark().addClickHandler(new ClickHandler() {
+ public void onClick(ClickEvent event) {
+ // Reposition the popup relative to the button
+ Widget source = (Widget) event.getSource();
+ int left = source.getAbsoluteLeft();
+ int top = source.getAbsoluteTop() + source.getOffsetHeight();
+ display.getPopup().setPopupPosition(left, top);
+ // Show the popup
+ display.getPopup().show();
+ }
+ }));
+ registerHandler(display.getMarkRead().addClickHandler(new ClickHandler() {
+ @Override
+ public void onClick(ClickEvent event) {
+ toMarkRead(true);
+ display.getPopup().hide();
+ }
+ }));
+ registerHandler(display.getMarkUnread().addClickHandler(new ClickHandler() {
+ @Override
+ public void onClick(ClickEvent event) {
+ toMarkRead(false);
+ display.getPopup().hide();
+ }
+ }));
+ }
+
+ protected void toMarkRead(boolean read) {
+ for (Message msg : table.getVisibleItems()) {
+ if (table.getSelectionModel().isSelected(msg)) {
+ table.markRead(msg, read);
+ }
+ }
}
public interface Displayable extends WidgetDisplayable {
@@ -214,6 +258,14 @@ public class ToolBarActivity extends App
HasClickHandlers getForward();
void setParameters(Parameters parameters);
+
+ HasClickHandlers getMarkUnread();
+
+ HasClickHandlers getMarkRead();
+
+ HasClickHandlers getMark();
+
+ PopupPanel getPopup();
}
>>>>>>> add enable tool bar buttons toggling event, with being related to issue #31
}
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=1522319&r1=1522318&r2=1522319&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 04:16:09 2013
@@ -610,24 +610,42 @@ public class MessagesCellTable extends D
setRowStyles(new RowStyles<Message>() {
@Override
public String getStyleNames(Message row, int rowIndex) {
- return haveRead(row) ? markAsRead() : markAsUnread();
+ return getMessageStyle(row);
}
+ });
+ redraw();
+ setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED);
+ setAutoHeaderRefreshDisabled(true);
+ setSelectionModel(selectionModel, DefaultSelectionEventManager.<Message> createCheckboxManager(0));
+ }
- private String markAsUnread() {
- return Resources.INSTANCE.dataGridStyle().fontBold();
- }
- private String markAsRead() {
- return Resources.INSTANCE.dataGridStyle().fontNormal();
- }
+ private String getMessageStyle(Message row) {
+ return haveRead(row) ? getReadStyle() : getUnreadStyle();
+ }
+ private String getUnreadStyle() {
+ return Resources.INSTANCE.dataGridStyle().fontBold();
+ }
- private boolean haveRead(Message row) {
- return row.getFlags().contains(IMAPFlag.SEEN);
+ private String getReadStyle() {
+ return Resources.INSTANCE.dataGridStyle().fontNormal();
+ }
+
+ private boolean haveRead(Message row) {
+ return row.getFlags().contains(IMAPFlag.SEEN);
+ }
+ public void markRead(final Message message, final boolean read) {
+ setRowStyles(new RowStyles<Message>() {
+ @Override
+ public String getStyleNames(Message row, int rowIndex) {
+ if (message.equals(row)) {
+ return (read ? getReadStyle() : getUnreadStyle());
+ } else {
+ return getMessageStyle(row);// keep original
+ }
}
});
- setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED);
- setAutoHeaderRefreshDisabled(true);
- setSelectionModel(selectionModel, DefaultSelectionEventManager.<Message> createCheckboxManager(0));
+ redraw();
}
public class CheckboxColumn extends Column<Message, Boolean> {
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ToolBarView.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ToolBarView.java?rev=1522319&r1=1522318&r2=1522319&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ToolBarView.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ToolBarView.java Thu Sep 12 04:16:09 2013
@@ -371,6 +371,7 @@ import com.google.gwt.user.client.ui.Com
import com.google.gwt.user.client.ui.DecoratedPopupPanel;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.HTMLPanel;
+import com.google.gwt.user.client.ui.PopupPanel;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;
import com.google.inject.Inject;
@@ -405,6 +406,7 @@ public class ToolBarView extends Composi
}
private VerticalPanel popup;
+ final DecoratedPopupPanel simplePopup = new DecoratedPopupPanel(true);
private Anchor markRead;
private Anchor markUnread;
@@ -511,6 +513,7 @@ public class ToolBarView extends Composi
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
+<<<<<<< HEAD
>>>>>>> make login page as one part of the overall layout & splite layout to little one
=======
reply.addStyleName(style.disabledButton());
@@ -518,6 +521,8 @@ public class ToolBarView extends Composi
=======
=======
final DecoratedPopupPanel simplePopup = new DecoratedPopupPanel(true);
+=======
+>>>>>>> link the mark action to the message list such that they can change upon the actions
simplePopup.addStyleName(style.popupMenu());
mark.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
@@ -531,8 +536,8 @@ public class ToolBarView extends Composi
}
});
popup = new VerticalPanel();
- markRead = new Anchor("As Unread");
- markUnread = new Anchor("As Read");
+ markRead = new Anchor("As Read");
+ markUnread = new Anchor("As Unread");
popup.addStyleName(style.toolBarMenu());
markRead.addStyleName(style.activeIcon());
markRead.addStyleName(style.listicon());
@@ -547,6 +552,21 @@ public class ToolBarView extends Composi
}
@Override
+ public HasClickHandlers getMark() {
+ return mark;
+ }
+
+ @Override
+ public HasClickHandlers getMarkRead() {
+ return markRead;
+ }
+
+ @Override
+ public HasClickHandlers getMarkUnread() {
+ return markUnread;
+ }
+
+ @Override
public HasClickHandlers getReply() {
return reply;
}
@@ -560,6 +580,10 @@ public class ToolBarView extends Composi
public HasClickHandlers getForward() {
return forward;
}
+ @Override
+ public PopupPanel getPopup() {
+ return simplePopup;
+ }
// TODO realy disabled the click event of the tool bar coupled with graying
@Override
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ToolBarView.ui.xml
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ToolBarView.ui.xml?rev=1522319&r1=1522318&r2=1522319&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ToolBarView.ui.xml (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/ToolBarView.ui.xml Thu Sep 12 04:16:09 2013
@@ -299,6 +299,12 @@
.toolBarMenu td {
border-top: 1px solid #5a5a5a;
border-bottom: 1px solid #333;
+ padding: 3px 8px;
+ }
+
+ .toolBarMenu td:hover {
+ background-color: #0186ba;
+
}
.activeIcon {
@@ -309,7 +315,7 @@
text-decoration: none;
min-height: 14px;
color: #eee;
- padding: 2px 20px;
+ padding: 2px 25px;
cursor: default;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org