Author: dongxu Date: Thu Sep 12 04:23:15 2013 New Revision: 1522340 URL: http://svn.apache.org/r1522340 Log: make the selected toolbar UI work
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/MessageListActivity.java 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/ioc/AppGinModule.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/res/CssMessagesCellTable.css Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/MessageListActivity.java URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/MessageListActivity.java?rev=1522340&r1=1522339&r2=1522340&view=diff ============================================================================== --- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/MessageListActivity.java (original) +++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/MessageListActivity.java Thu Sep 12 04:23:15 2013 @@ -273,12 +273,9 @@ import org.apache.hupa.shared.domain.Use import org.apache.hupa.shared.events.ExpandMessageEvent; import org.apache.hupa.shared.events.LoadMessagesEvent; import org.apache.hupa.shared.events.LoadMessagesEventHandler; -import org.apache.hupa.shared.events.LoginEvent; -import org.apache.hupa.shared.events.LoginEventHandler; import com.google.gwt.core.client.Scheduler; import com.google.gwt.core.client.Scheduler.ScheduledCommand; -import com.google.gwt.core.shared.GWT; import com.google.gwt.event.shared.EventBus; import com.google.gwt.place.shared.PlaceController; import com.google.gwt.user.client.ui.AcceptsOneWidget; @@ -336,13 +333,6 @@ public class MessageListActivity extends } } }); - } else if (hasChangedFirstCol(event)) { - Scheduler.get().scheduleDeferred(new ScheduledCommand() { - @Override - public void execute() { - toolBarDisplay.enableMessageTools(); - } - }); } } @@ -368,11 +358,6 @@ public class MessageListActivity extends private boolean hasClickedButFirstCol(CellPreviewEvent<Message> event) { return "click".equals(event.getNativeEvent().getType()) && 0 != event.getColumn(); } - private boolean hasChangedFirstCol(CellPreviewEvent<Message> event) { - GWT.log(event.getNativeEvent().getType() + " " - + ("change".equals(event.getNativeEvent().getType()) && 0 == event.getColumn())); - return "change".equals(event.getNativeEvent().getType()) && 0 == event.getColumn(); - } public void fetch(final int start) { FetchMessagesRequest req = requestFactory.messagesRequest(); FetchMessagesAction action = req.create(FetchMessagesAction.class); @@ -413,25 +398,6 @@ public class MessageListActivity extends } }); -// eventBus.addHandler(LoginEvent.TYPE, new LoginEventHandler() { -// public void onLogin(LoginEvent event) { -// user = event.getUser(); -// if (folder == null) { -// folder = new ImapFolderImpl(user.getSettings().getInboxFolderName()); -// searchValue = null; -// if (!pending) { -// pending = true; -// Scheduler.get().scheduleFinally(new ScheduledCommand() { -// @Override -// public void execute() { -// pending = false; -// fetch(0); -// } -// }); -// } -// } -// } -// }); } 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=1522340&r1=1522339&r2=1522340&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:23:15 2013 @@ -169,8 +169,6 @@ import org.apache.hupa.shared.domain.Gen import org.apache.hupa.shared.domain.ImapFolder; import org.apache.hupa.shared.domain.Message; import org.apache.hupa.shared.domain.SetFlagAction; -import org.apache.hupa.shared.events.ExpandMessageEvent; -import org.apache.hupa.shared.events.ExpandMessageEventHandler; import org.apache.hupa.shared.events.LoadMessagesEvent; import org.apache.hupa.shared.events.LoadMessagesEventHandler; import org.apache.hupa.shared.events.LoginEvent; @@ -197,8 +195,8 @@ public class ToolBarActivity extends App container.setWidget(display.asWidget()); bindTo(eventBus); } - - public ToolBarActivity with(String folder){ + + public ToolBarActivity with(String folder) { this.folderName = folder; return this; } @@ -216,16 +214,9 @@ public class ToolBarActivity extends App display.setParameters(new Parameters(e.getUser(), null, null, null)); } }); - 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())); - } - }); eventBus.addHandler(LoadMessagesEvent.TYPE, new LoadMessagesEventHandler() { public void onLoadMessagesEvent(LoadMessagesEvent loadMessagesEvent) { - display.disableMessageTools(); + display.enableAllTools(false); } }); registerHandler(display.getMark().addClickHandler(new ClickHandler() { @@ -280,9 +271,10 @@ public class ToolBarActivity extends App } public interface Displayable extends WidgetDisplayable { - void disableMessageTools(); - void enableMessageTools(); + void enableSendingTools(boolean is); + void enableDealingTools(boolean is); + void enableAllTools(boolean is); HasClickHandlers getReply(); Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java?rev=1522340&r1=1522339&r2=1522340&view=diff ============================================================================== --- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java (original) +++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java Thu Sep 12 04:23:15 2013 @@ -513,7 +513,7 @@ public class AppGinModule extends Abstra bind(LogoActivity.Displayable.class).to(LogoView.class).in(Singleton.class); >>>>>>> fixed issue#46 and issue#32 bind(NavigationActivity.Displayable.class).to(NavigationView.class); - bind(ToolBarActivity.Displayable.class).to(ToolBarView.class); + bind(ToolBarActivity.Displayable.class).to(ToolBarView.class).in(Singleton.class); // bind(FolderListActivity.Displayable.class).to(FolderListView.class); bind(MessageListActivity.Displayable.class).to(MessageListView.class); bind(MessageListFooterActivity.Displayable.class).to(MessageListFooterView.class); 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=1522340&r1=1522339&r2=1522340&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:23:15 2013 @@ -525,7 +525,6 @@ import com.google.gwt.user.cellview.clie import com.google.gwt.view.client.DefaultSelectionEventManager; import com.google.gwt.view.client.MultiSelectionModel; import com.google.gwt.view.client.ProvidesKey; -import com.google.gwt.view.client.SelectionModel; import com.google.inject.Inject; public class MessagesCellTable extends DataGrid<Message> { @@ -563,7 +562,7 @@ public class MessagesCellTable extends D return item == null ? null : item.getUid(); } }; - private final SelectionModel<? super Message> selectionModel = new MultiSelectionModel<Message>(KEY_PROVIDER); + private final MultiSelectionModel<? super Message> selectionModel = new MultiSelectionModel<Message>(KEY_PROVIDER); @Inject public MessagesCellTable(final HupaImageBundle imageBundle, final HupaConstants constants) { @@ -590,7 +589,8 @@ public class MessagesCellTable extends D public void update(Boolean value) { List<Message> displayedItems = MessagesCellTable.this.getVisibleItems(); for (Message msg : displayedItems) { - selectionModel.setSelected(msg, value); + checkboxCol.getFieldUpdater().update(0, msg, value); +// selectionModel.setSelected(msg, value); } } }); @@ -615,7 +615,7 @@ public class MessagesCellTable extends D return getMessageStyle(row); } }); -// redraw(); + // redraw(); setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED); setAutoHeaderRefreshDisabled(true); setSelectionModel(selectionModel, DefaultSelectionEventManager.<Message> createCheckboxManager(0)); @@ -636,7 +636,7 @@ public class MessagesCellTable extends D 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) { @@ -658,7 +658,15 @@ public class MessagesCellTable extends D @Override public void update(int index, Message object, Boolean value) { selectionModel.setSelected(object, value); - toolBarDisplay.enableMessageTools(); + int size = selectionModel.getSelectedSet().size(); + if (size == 1) { + toolBarDisplay.enableAllTools(true); + } else if (size > 1) { + toolBarDisplay.enableDealingTools(true); + toolBarDisplay.enableSendingTools(false); + } else { + toolBarDisplay.enableAllTools(false); + } } }); } 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=1522340&r1=1522339&r2=1522340&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:23:15 2013 @@ -585,21 +585,47 @@ public class ToolBarView extends Composi return simplePopup; } - // TODO realy disabled the click event of the tool bar coupled with graying @Override - public void disableMessageTools() { + public void enableAllTools(boolean is) { + this.enableSendingTools(is); + this.enableDealingTools(is); + } + @Override + public void enableSendingTools(boolean is) { + if (is) { + removeSendingDisableds(); + } else { + addSendingDisableds(); + } + } + + @Override + public void enableDealingTools(boolean is) { + if (is) { + removeDealingDisableds(); + } else { + addDealingDisableds(); + } + } + + private void addSendingDisableds() { reply.addStyleName(style.disabledButton()); replyAllGroup.addStyleName(style.disabledButton()); forwardGroup.addStyleName(style.disabledButton()); - delete.addStyleName(style.disabledButton()); - mark.addStyleName(style.disabledButton()); } - @Override - public void enableMessageTools() { + private void removeSendingDisableds() { reply.removeStyleName(style.disabledButton()); replyAllGroup.removeStyleName(style.disabledButton()); forwardGroup.removeStyleName(style.disabledButton()); + } + + private void addDealingDisableds() { + delete.addStyleName(style.disabledButton()); + mark.addStyleName(style.disabledButton()); + } + + private void removeDealingDisableds() { delete.removeStyleName(style.disabledButton()); <<<<<<< HEAD >>>>>>> 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/res/CssMessagesCellTable.css URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/res/CssMessagesCellTable.css?rev=1522340&r1=1522339&r2=1522340&view=diff ============================================================================== --- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/res/CssMessagesCellTable.css (original) +++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/res/CssMessagesCellTable.css Thu Sep 12 04:23:15 2013 @@ -48,8 +48,8 @@ display: table-cell; vertical-align: inherit; padding: 2px 7px; - border-left: 1px dotted #bbd3da; - border-bottom: 1px solid #111; +/* border-left: 1px dotted #bbd3da; + border-bottom: 1px solid #111; */ } .dataGridFirstColumnFooter { @@ -90,8 +90,8 @@ } .dataGridEvenRowCell { - border-left: 1px dotted #bbd3da; - border-bottom: 0px solid #bbd3da; +/* border-left: 1px dotted #bbd3da; */ + border-bottom: 1px solid #E5E5E5; } .dataGridOddRow { @@ -99,8 +99,8 @@ } .dataGridOddRowCell { - border-left: 1px dotted #bbd3da; - border-bottom: 0px solid #bbd3da; +/* border-left: 1px dotted #bbd3da; */ + border-bottom: 1px solid #E5E5E5; } .dataGridHoveredRow { @@ -108,8 +108,8 @@ } .dataGridHoveredRowCell { - border-left: 1px dotted #eee; - border-bottom: 0px solid #eee; +/* border-left: 1px dotted #bbd3da; */ + border-bottom: 1px solid #E5E5E5; } .dataGridKeyboardSelectedRow { @@ -134,8 +134,13 @@ /*background: linear-gradient(top, #019bc6 0%, #017cb4 100%);*/ } + +.dataGridSelectedRow td{ + border-bottom: 1px dotted #E5E5E5; +} + .dataGridSelectedRowCell { - border-left: 1px dotted #628cd5; + /* border-left: 1px dotted #628cd5; */ border-bottom: 0px solid #628cd5; } --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org