Author: dongxu Date: Thu Sep 12 03:44:03 2013 New Revision: 1522240 URL: http://svn.apache.org/r1522240 Log: make folder list in west panel partly work
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderListView.java james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderListView.ui.xml james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FoldersCellTree.java james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FoldersTreeViewModel.java james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/WestView.java Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderListView.java URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderListView.java?rev=1522240&r1=1522239&r2=1522240&view=diff ============================================================================== --- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderListView.java (original) +++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderListView.java Thu Sep 12 03:44:03 2013 @@ -213,14 +213,24 @@ import org.apache.hupa.client.activity.F >>>>>>> integrate all of the views to their corresponding activities and >>>>>>> mappers import com.google.gwt.core.client.GWT; +import com.google.gwt.event.shared.EventBus; import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.user.cellview.client.CellTree; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.SimplePanel; +import com.google.inject.Inject; -public class FolderListView extends Composite implements - FolderListActivity.Displayable { +public class FolderListView extends Composite implements FolderListActivity.Displayable { - public FolderListView() { + @UiField(provided = true) + FoldersCellTree cellTree; + + @Inject + public FolderListView(final FoldersTreeViewModel viewModel, final EventBus eventBus) { + CellTree.Resources res = GWT.create(CellTree.BasicResources.class); + cellTree = new FoldersCellTree(viewModel, res); + cellTree.setAnimationEnabled(true); initWidget(binder.createAndBindUi(this)); >>>>>>> make login page as one part of the overall layout & splite layout to >>>>>>> little one } @@ -228,7 +238,6 @@ public class FolderListView extends Comp interface FolderListUiBinder extends UiBinder<SimplePanel, FolderListView> { } - private static FolderListUiBinder binder = GWT - .create(FolderListUiBinder.class); + private static FolderListUiBinder binder = GWT.create(FolderListUiBinder.class); } Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderListView.ui.xml URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderListView.ui.xml?rev=1522240&r1=1522239&r2=1522240&view=diff ============================================================================== --- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderListView.ui.xml (original) +++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderListView.ui.xml Thu Sep 12 03:44:03 2013 @@ -10,12 +10,17 @@ language governing permissions and limitations under the License. --> <ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder' +<<<<<<< HEAD xmlns:g='urn:import:com.google.gwt.user.client.ui'> <<<<<<< HEAD <g:SimplePanel ui:field="thisView" /> ======= +======= + xmlns:g='urn:import:com.google.gwt.user.client.ui' + xmlns:hupa='urn:import:org.apache.hupa.client.ui'> +>>>>>>> make folder list in west panel partly work <g:SimplePanel ui:field="FolderListView"> - <g:HTMLPanel></g:HTMLPanel> + <hupa:FoldersCellTree ui:field="cellTree"/> </g:SimplePanel> >>>>>>> make login page as one part of the overall layout & splite layout to >>>>>>> little one </ui:UiBinder> \ No newline at end of file Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FoldersCellTree.java URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FoldersCellTree.java?rev=1522240&r1=1522239&r2=1522240&view=diff ============================================================================== --- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FoldersCellTree.java (original) +++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FoldersCellTree.java Thu Sep 12 03:44:03 2013 @@ -23,7 +23,6 @@ import com.google.gwt.user.cellview.clie import com.google.inject.Inject; public class FoldersCellTree extends CellTree { - @Inject public FoldersCellTree(final FoldersTreeViewModel viewModel, Resources resources) { super(viewModel, null, resources); Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FoldersTreeViewModel.java URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FoldersTreeViewModel.java?rev=1522240&r1=1522239&r2=1522240&view=diff ============================================================================== --- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FoldersTreeViewModel.java (original) +++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FoldersTreeViewModel.java Thu Sep 12 03:44:03 2013 @@ -23,12 +23,16 @@ import java.util.List; import org.apache.hupa.client.rf.HupaRequestFactory; import org.apache.hupa.shared.domain.ImapFolder; +import org.apache.hupa.shared.domain.User; +import org.apache.hupa.shared.events.LoadMessagesEvent; import com.google.gwt.cell.client.AbstractCell; import com.google.gwt.event.shared.EventBus; import com.google.gwt.safehtml.shared.SafeHtmlBuilder; import com.google.gwt.view.client.AsyncDataProvider; import com.google.gwt.view.client.HasData; +import com.google.gwt.view.client.ProvidesKey; +import com.google.gwt.view.client.SelectionChangeEvent; import com.google.gwt.view.client.SingleSelectionModel; import com.google.gwt.view.client.TreeViewModel; import com.google.inject.Inject; @@ -36,15 +40,32 @@ import com.google.web.bindery.requestfac public class FoldersTreeViewModel implements TreeViewModel { + protected User user; @Inject protected HupaRequestFactory rf; @Inject protected EventBus eventBus; - protected SingleSelectionModel<ImapFolder> selectionModel; - public void setSelectionModel(SingleSelectionModel<ImapFolder> selectionModel){ - this.selectionModel = selectionModel; + public FoldersTreeViewModel(){ + + selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { + @SuppressWarnings("unchecked") + @Override + public void onSelectionChange(SelectionChangeEvent event) { + SingleSelectionModel<ImapFolder> selectionModel = (SingleSelectionModel<ImapFolder>) event.getSource(); + eventBus.fireEvent(new LoadMessagesEvent(user, selectionModel.getSelectedObject())); + } + }); } + + private final SingleSelectionModel<ImapFolder> selectionModel = new SingleSelectionModel<ImapFolder>( + new ProvidesKey<ImapFolder>() { + @Override + public Object getKey(ImapFolder item) { + return item == null ? null : item.getFullName(); + } + }); + /** * Get the {@link NodeInfo} that provides the children of the specified * value. @@ -77,13 +98,15 @@ public class FoldersTreeViewModel implem @Override protected void onRangeChanged(HasData<ImapFolder> display) { + System.out.print(rf == null); rf.fetchFoldersRequest().fetch(folder).fire(new Receiver<List<ImapFolder>>() { @Override public void onSuccess(List<ImapFolder> response) { if (response == null || response.size() == 0) { updateRowCount(-1, true); - } else + } else{ updateRowData(0, response); + } } }); Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/WestView.java URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/WestView.java?rev=1522240&r1=1522239&r2=1522240&view=diff ============================================================================== --- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/WestView.java (original) +++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/WestView.java Thu Sep 12 03:44:03 2013 @@ -778,10 +778,10 @@ public class WestView extends Composite ======= } }); - viewModel.setSelectionModel(selectionModel); +// viewModel.setSelectionModel(selectionModel); CellTree.Resources res = GWT.create(CellTree.BasicResources.class); - cellTree = new FoldersCellTree(viewModel, res); +// cellTree = new FoldersCellTree(viewModel, res); cellTree.setAnimationEnabled(true); initWidget(cellTree); >>>>>>> refactoring. --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org