Author: norman
Date: Mon Nov 16 11:20:04 2009
New Revision: 880709
URL: http://svn.apache.org/viewvc?rev=880709&view=rev
Log:
Searching belongs to IMAPMessageListPresenter/View/Place
Removed:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/place/MainPresenterPlace.java
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/gin/HupaClientModule.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.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/mvp/MainPresenter.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainView.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/place/HupaPlaceManager.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/place/IMAPMessageListPresenterPlace.java
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/gin/HupaClientModule.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/gin/HupaClientModule.java?rev=880709&r1=880708&r2=880709&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/gin/HupaClientModule.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/gin/HupaClientModule.java
Mon Nov 16 11:20:04 2009
@@ -45,7 +45,7 @@
import org.apache.hupa.client.mvp.place.HupaPlaceManager;
import org.apache.hupa.client.mvp.place.IMAPMessageListPresenterPlace;
import org.apache.hupa.client.mvp.place.LoginPresenterPlace;
-import org.apache.hupa.client.mvp.place.MainPresenterPlace;
+import org.apache.hupa.client.mvp.place.MessageSendPresenterPlace;
import com.google.inject.Singleton;
@@ -66,8 +66,8 @@
bind(PagingScrollTableRowDragController.class).in(Singleton.class);
bind(MessageTableModel.class).in(Singleton.class);
bind(LoginPresenterPlace.class).in(Singleton.class);
- bind(MainPresenterPlace.class).in(Singleton.class);
bind(IMAPMessageListPresenterPlace.class).in(Singleton.class);
+ bind(MessageSendPresenterPlace.class).in(Singleton.class);
}
}
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java?rev=880709&r1=880708&r2=880709&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java
Mon Nov 16 11:20:04 2009
@@ -38,8 +38,11 @@
import org.apache.hupa.shared.events.FolderSelectionEvent;
import org.apache.hupa.shared.events.FolderSelectionEventHandler;
import org.apache.hupa.shared.events.IncreaseUnseenEvent;
+import org.apache.hupa.shared.events.LoadMessagesEvent;
import org.apache.hupa.shared.events.LogoutEvent;
import org.apache.hupa.shared.events.LogoutEventHandler;
+import org.apache.hupa.shared.events.MessagesReceivedEvent;
+import org.apache.hupa.shared.events.MessagesReceivedEventHandler;
import org.apache.hupa.shared.events.MoveMessageEvent;
import org.apache.hupa.shared.events.MoveMessageEventHandler;
import org.apache.hupa.shared.events.NewMessageEvent;
@@ -65,6 +68,7 @@
import com.google.gwt.gen2.table.event.client.PageChangeHandler;
import com.google.gwt.gen2.table.event.client.RowSelectionEvent;
import com.google.gwt.gen2.table.event.client.RowSelectionHandler;
+import com.google.gwt.user.client.ui.HasValue;
import com.google.gwt.user.client.ui.SourcesTableEvents;
import com.google.gwt.user.client.ui.TableListener;
import com.google.inject.Inject;
@@ -106,7 +110,12 @@
public int getCurrentPage();
public int getRowsPerPageIndex();
public void setRowsPerPageIndex(int index);
- public HasChangeHandlers getRowsPerPageChange();
+ public HasChangeHandlers getRowsPerPageChange();
+ public HasClickHandlers getSearchClick();
+ public HasValue<String> getSearchValue();
+ public void fillSearchOracle(ArrayList<Message> messages);
+ public void setExpandLoading(boolean expanding);
+
}
private String searchValue;
@@ -125,6 +134,7 @@
public void onLogout(LogoutEvent logoutEvent) {
getDisplay().reset();
+
}
});
@@ -132,6 +142,26 @@
@Override
protected void onBind() {
+ registerHandler(eventBus.addHandler(MessagesReceivedEvent.TYPE, new
MessagesReceivedEventHandler() {
+
+ public void onMessagesReceived(MessagesReceivedEvent event) {
+
+ // fill the oracle
+ display.fillSearchOracle(event.getMessages());
+ }
+
+ }));
+ registerHandler(display.getSearchClick().addClickHandler(new
ClickHandler() {
+
+ public void onClick(ClickEvent event) {
+ String searchValue = null;
+ if (display.getSearchValue().getValue().trim().length() > 0) {
+ searchValue = display.getSearchValue().getValue().trim();
+ }
+ eventBus.fireEvent(new LoadMessagesEvent(user, folder,
searchValue));
+ }
+
+ }));
registerHandler(eventBus.addHandler(MoveMessageEvent.TYPE, new
MoveMessageEventHandler() {
public void onMoveMessageHandler(MoveMessageEvent event) {
@@ -355,6 +385,7 @@
public void onCellClicked(SourcesTableEvents sender, int row,
int cell) {
+ display.setExpandLoading(true);
Message message = display.getData(row);
// mark the message as seen and redraw the table to reflect this
@@ -385,6 +416,7 @@
display.reset();
display.deselectAllMessages();
}
+ display.setExpandLoading(false);
this.searchValue = searchValue;
this.folder = folder;
revealDisplay();
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=880709&r1=880708&r2=880709&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
Mon Nov 16 11:20:04 2009
@@ -32,6 +32,7 @@
import org.apache.hupa.client.widgets.DragRefetchPagingScrollTable;
import org.apache.hupa.client.widgets.EnableButton;
import org.apache.hupa.client.widgets.HasDialog;
+import org.apache.hupa.client.widgets.Loading;
import org.apache.hupa.client.widgets.PagingOptions;
import
org.apache.hupa.client.widgets.DragRefetchPagingScrollTable.DragHandlerFactory;
import org.apache.hupa.shared.data.Message;
@@ -45,6 +46,9 @@
import com.google.gwt.event.dom.client.ChangeHandler;
import com.google.gwt.event.dom.client.HasChangeHandlers;
import com.google.gwt.event.dom.client.HasClickHandlers;
+import com.google.gwt.event.dom.client.KeyCodes;
+import com.google.gwt.event.dom.client.KeyUpEvent;
+import com.google.gwt.event.dom.client.KeyUpHandler;
import com.google.gwt.event.logical.shared.ResizeEvent;
import com.google.gwt.event.logical.shared.ResizeHandler;
import com.google.gwt.gen2.table.client.AbstractColumnDefinition;
@@ -73,9 +77,12 @@
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HTML;
+import com.google.gwt.user.client.ui.HasValue;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.Hyperlink;
import com.google.gwt.user.client.ui.ListBox;
+import com.google.gwt.user.client.ui.MultiWordSuggestOracle;
+import com.google.gwt.user.client.ui.SuggestBox;
import com.google.gwt.user.client.ui.TableListener;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;
@@ -106,7 +113,10 @@
private Hyperlink allLink = new Hyperlink(constants.all(),"");
private Hyperlink noneLink = new Hyperlink(constants.none(),"");
private Hyperlink refreshLink = new Hyperlink(constants.refresh(),"");
-
+ private MultiWordSuggestOracle oracle = new MultiWordSuggestOracle(" ,@");
+ private SuggestBox searchBox = new SuggestBox(oracle);
+ private Button searchButton = new Button(constants.searchButton());
+ private Loading expandLoading = new Loading(false);
@Inject
public IMAPMessageListView(PagingScrollTableRowDragController controller,
MessageTableModel mTableModel) {
@@ -204,15 +214,38 @@
}
});
+
+
+ HorizontalPanel searchPanel = new HorizontalPanel();
+ searchPanel.setSpacing(5);
+ searchPanel.setVerticalAlignment(HorizontalPanel.ALIGN_MIDDLE);
+
+ searchBox.setAnimationEnabled(true);
+ searchBox.setAutoSelectEnabled(false);
+ searchBox.setWidth("150px");
+ searchBox.setLimit(20);
+ searchBox.addKeyUpHandler(new KeyUpHandler() {
+
+ public void onKeyUp(KeyUpEvent event) {
+ if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) {
+ searchButton.click();
+ }
+ }
+
+ });
+ searchPanel.add(searchBox);
+ searchPanel.add(searchButton);
+
HorizontalPanel hPanel = new HorizontalPanel();
hPanel.setStyleName("hupa-MailTableControl");
hPanel.setSpacing(10);
hPanel.add(buttonBar);
+ hPanel.add(searchPanel);
hPanel.add(pageBox);
- hPanel.setCellHorizontalAlignment(pageBox,
HorizontalPanel.ALIGN_RIGHT);
-
-
-
+ hPanel.setCellHorizontalAlignment(searchPanel,
HorizontalPanel.ALIGN_RIGHT);
+ hPanel.setCellHorizontalAlignment(pageBox,
HorizontalPanel.ALIGN_RIGHT);
+ hPanel.setCellVerticalAlignment(pageBox,
HorizontalPanel.ALIGN_MIDDLE);
+
hPanel.setWidth("100%");
hPanel.setHeight("100%");
vPanel.add(hPanel);
@@ -223,9 +256,12 @@
bar.add(new HTML(constants.select() +":"));
bar.add(allLink);
bar.add(noneLink);
+
barPanel.add(bar);
barPanel.setCellHorizontalAlignment(bar, HorizontalPanel.ALIGN_LEFT);
+ barPanel.add(expandLoading);
+
barPanel.add(options);
barPanel.setCellHorizontalAlignment(options,
HorizontalPanel.ALIGN_RIGHT);
barPanel.setWidth("100%");
@@ -735,4 +771,46 @@
return pageBox;
}
+
+ /*
+ * (non-Javadoc)
+ * @see org.apache.hupa.client.mvp.MainPresenter.Display#getSearchClick()
+ */
+ public HasClickHandlers getSearchClick() {
+ return searchButton;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.apache.hupa.client.mvp.MainPresenter.Display#getSearchValue()
+ */
+ public HasValue<String> getSearchValue() {
+ return searchBox;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see
org.apache.hupa.client.mvp.MainPresenter.Display#fillSearchOracle(java.util.ArrayList)
+ */
+ public void fillSearchOracle(ArrayList<Message> messages) {
+ for (int i = 0; i < messages.size(); i++) {
+ String subject = messages.get(i).getSubject();
+ String from = messages.get(i).getFrom();
+ if (subject != null && subject.trim().length() > 0) {
+ oracle.add(subject.trim());
+ }
+ if (from != null && from.trim().length() > 0) {
+ oracle.add(from.trim());
+ }
+ }
+ //searchBox.setText("");
+ }
+
+ public void setExpandLoading(boolean expanding) {
+ if (expanding) {
+ expandLoading.show();
+ } else {
+ expandLoading.hide();
+ }
+ }
}
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java?rev=880709&r1=880708&r2=880709&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java
Mon Nov 16 11:20:04 2009
@@ -82,7 +82,6 @@
import com.google.gwt.event.logical.shared.SelectionHandler;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.AsyncCallback;
-import com.google.gwt.user.client.ui.HasValue;
import com.google.gwt.user.client.ui.TreeItem;
import com.google.inject.Inject;
@@ -92,13 +91,7 @@
public class MainPresenter extends
WidgetContainerPresenter<MainPresenter.Display> {
public interface Display extends NameAwareWidgetContainerDisplay {
-
- public HasClickHandlers getSearchClick();
-
- public HasValue<String> getSearchValue();
-
- public void fillSearchOracle(ArrayList<Message> messages);
-
+
public HasSelectionHandlers<TreeItem> getTree();
public void bindTreeItems(ArrayList<IMAPTreeItem> treeList);
@@ -267,7 +260,6 @@
* Reset the presenter and display
*/
private void reset() {
- display.getSearchValue().setValue("");
// clear the cache
cachingDispatcher.clear();
}
@@ -283,15 +275,7 @@
}
}));
- registerHandler(eventBus.addHandler(MessagesReceivedEvent.TYPE, new
MessagesReceivedEventHandler() {
- public void onMessagesReceived(MessagesReceivedEvent event) {
-
- // fill the oracle
- display.fillSearchOracle(event.getMessages());
- }
-
- }));
registerHandler(eventBus.addHandler(ExpandMessageEvent.TYPE, new
ExpandMessageEventHandler() {
@@ -358,18 +342,6 @@
}));
- registerHandler(display.getSearchClick().addClickHandler(new
ClickHandler() {
-
- public void onClick(ClickEvent event) {
- String searchValue = null;
- if (display.getSearchValue().getValue().trim().length() > 0) {
- searchValue = display.getSearchValue().getValue().trim();
- }
- eventBus.fireEvent(new LoadMessagesEvent(user, folder,
searchValue));
- }
-
- }));
-
registerHandler(eventBus.addHandler(BackEvent.TYPE, new
BackEventHandler() {
public void onBackEvent(BackEvent event) {
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainView.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainView.java?rev=880709&r1=880708&r2=880709&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainView.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainView.java
Mon Nov 16 11:20:04 2009
@@ -46,7 +46,6 @@
import org.apache.hupa.widgets.ui.EnableHyperlink;
import org.apache.hupa.widgets.ui.HasEditable;
import org.apache.hupa.widgets.ui.HasEnable;
-import org.cobogw.gwt.user.client.ui.Button;
import org.cobogw.gwt.user.client.ui.RoundedPanel;
import com.allen_sauer.gwt.dnd.client.DragContext;
@@ -55,17 +54,11 @@
import com.allen_sauer.gwt.dnd.client.drop.SimpleDropController;
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.HasClickHandlers;
-import com.google.gwt.event.dom.client.KeyCodes;
-import com.google.gwt.event.dom.client.KeyUpEvent;
-import com.google.gwt.event.dom.client.KeyUpHandler;
import com.google.gwt.event.logical.shared.HasSelectionHandlers;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.DockPanel;
-import com.google.gwt.user.client.ui.HasValue;
import com.google.gwt.user.client.ui.HorizontalPanel;
-import com.google.gwt.user.client.ui.MultiWordSuggestOracle;
import com.google.gwt.user.client.ui.SimplePanel;
-import com.google.gwt.user.client.ui.SuggestBox;
import com.google.gwt.user.client.ui.Tree;
import com.google.gwt.user.client.ui.TreeItem;
import com.google.gwt.user.client.ui.VerticalPanel;
@@ -85,10 +78,7 @@
private RoundedPanel west;
private IMAPTreeImages tImages = GWT.create(IMAPTreeImages.class);
private Tree folderTree = new Tree(tImages, true);
- private MultiWordSuggestOracle oracle = new MultiWordSuggestOracle(" ,@");
- private SuggestBox searchBox = new SuggestBox(oracle);
- private Button searchButton = new Button(constants.searchButton());
- private Loading loading = new Loading(false);
+
private Widget centerWidget;
private RoundedPanel center;
private IMAPMessageListView mListView;
@@ -170,36 +160,7 @@
north = new VerticalPanel();
north.setWidth("100%");
- HorizontalPanel barPanel = new HorizontalPanel();
- barPanel.setWidth("100%");
- HorizontalPanel hPanel = new HorizontalPanel();
- hPanel.setSpacing(5);
- hPanel.setVerticalAlignment(HorizontalPanel.ALIGN_MIDDLE);
-
- searchBox.setAnimationEnabled(true);
- searchBox.setAutoSelectEnabled(false);
- searchBox.setWidth("250px");
- searchBox.setLimit(20);
- searchBox.addKeyUpHandler(new KeyUpHandler() {
-
- public void onKeyUp(KeyUpEvent event) {
- if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) {
- searchButton.click();
- }
- }
-
- });
- hPanel.add(searchBox);
- hPanel.add(searchButton);
- hPanel.add(messageLoader);
- barPanel.add(hPanel);
- barPanel.setCellHorizontalAlignment(hPanel,
HorizontalPanel.ALIGN_LEFT);
- barPanel.add(loading);
- barPanel.setCellHorizontalAlignment(loading,
HorizontalPanel.ALIGN_RIGHT);
- barPanel.setCellVerticalAlignment(loading,
HorizontalPanel.ALIGN_MIDDLE);
-
- north.add(barPanel);
}
@@ -211,39 +172,6 @@
}
- /*
- * (non-Javadoc)
- * @see org.apache.hupa.client.mvp.MainPresenter.Display#getSearchClick()
- */
- public HasClickHandlers getSearchClick() {
- return searchButton;
- }
-
- /*
- * (non-Javadoc)
- * @see org.apache.hupa.client.mvp.MainPresenter.Display#getSearchValue()
- */
- public HasValue<String> getSearchValue() {
- return searchBox;
- }
-
- /*
- * (non-Javadoc)
- * @see
org.apache.hupa.client.mvp.MainPresenter.Display#fillSearchOracle(java.util.ArrayList)
- */
- public void fillSearchOracle(ArrayList<Message> messages) {
- for (int i = 0; i < messages.size(); i++) {
- String subject = messages.get(i).getSubject();
- String from = messages.get(i).getFrom();
- if (subject != null && subject.trim().length() > 0) {
- oracle.add(subject.trim());
- }
- if (from != null && from.trim().length() > 0) {
- oracle.add(from.trim());
- }
- }
- //searchBox.setText("");
- }
/*
* (non-Javadoc)
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/place/HupaPlaceManager.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/place/HupaPlaceManager.java?rev=880709&r1=880708&r2=880709&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/place/HupaPlaceManager.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/place/HupaPlaceManager.java
Mon Nov 16 11:20:04 2009
@@ -32,8 +32,8 @@
public class HupaPlaceManager extends DefaultPlaceManager{
@Inject
- public HupaPlaceManager(EventBus eventBus, LoginPresenterPlace
loginPresenterPlace, MainPresenterPlace
mainPresenterPlace,IMAPMessageListPresenterPlace messageListPresenterPlace,
IMAPMessagePresenterPlace imapMessagePresenterPlace, MessageSendPresenterPlace
sendPresenterPlace) {
- super(eventBus, loginPresenterPlace, mainPresenterPlace,
messageListPresenterPlace, imapMessagePresenterPlace, sendPresenterPlace);
+ public HupaPlaceManager(EventBus eventBus, LoginPresenterPlace
loginPresenterPlace, IMAPMessageListPresenterPlace messageListPresenterPlace,
IMAPMessagePresenterPlace imapMessagePresenterPlace, MessageSendPresenterPlace
sendPresenterPlace) {
+ super(eventBus, loginPresenterPlace, messageListPresenterPlace,
imapMessagePresenterPlace, sendPresenterPlace);
}
}
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/place/IMAPMessageListPresenterPlace.java
URL:
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/place/IMAPMessageListPresenterPlace.java?rev=880709&r1=880708&r2=880709&view=diff
==============================================================================
---
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/place/IMAPMessageListPresenterPlace.java
(original)
+++
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/place/IMAPMessageListPresenterPlace.java
Mon Nov 16 11:20:04 2009
@@ -32,6 +32,8 @@
private final static String ROWS_PER_PAGE_INDEX = "rowsPerPageIndex";
private final static String PAGE = "page";
+ private final static String SEARCH = "search";
+
@Inject
public IMAPMessageListPresenterPlace(Provider<IMAPMessageListPresenter>
presenter) {
super(presenter);
@@ -66,6 +68,9 @@
}
presenter.getDisplay().setRowsPerPageIndex(rowsPerPageIndex);
+ String searchValue = request.getParameter(SEARCH, "");
+ presenter.getDisplay().getSearchValue().setValue(searchValue);
+
GWT.log("PRES="+request.toString(),null);
}
@@ -75,6 +80,12 @@
request = request.with(PAGE, presenter.getDisplay().getCurrentPage()
+"");
request = request.with(ROWS_PER_PAGE_INDEX,
presenter.getDisplay().getRowsPerPageIndex() + "");
+ String searchValue =
presenter.getDisplay().getSearchValue().getValue();
+ if (searchValue != null && searchValue.length() > 0) {
+ request = request.with(SEARCH, searchValue);
+
+ }
+
GWT.log("REQ="+request.toString(),null);
return request;
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]