Author: dongxu
Date: Thu Sep 12 04:34:08 2013
New Revision: 1522362

URL: http://svn.apache.org/r1522362
Log:
add rename RF to label setting feature

Added:
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.java~HEAD
      - copied, changed from r1522361, 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml~HEAD
      - copied, changed from r1522361, 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml
Removed:
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/SettingFolderActionView.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/SettingFolderActionView.ui.xml
Modified:
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelListActivity.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.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/mapper/ActivityManagerInitializer.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayout.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayoutable.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelListView.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelNode.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/_CenterSettingPanel.java
    
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/_CenterSettingPanel.ui.xml

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelListActivity.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelListActivity.java?rev=1522362&r1=1522361&r2=1522362&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelListActivity.java
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelListActivity.java
 Thu Sep 12 04:34:08 2013
@@ -20,6 +20,7 @@
 package org.apache.hupa.client.activity;
 
 <<<<<<< HEAD
+<<<<<<< HEAD
 import org.apache.hupa.client.HupaController;
 import org.apache.hupa.client.rf.DeleteFolderRequest;
 import org.apache.hupa.client.ui.LabelNode;
@@ -112,6 +113,9 @@ public class LabelListActivity extends A
                });
        }
 =======
+=======
+import org.apache.hupa.client.ui.LabelNode;
+>>>>>>> add rename RF to label setting feature
 import org.apache.hupa.client.ui.WidgetDisplayable;
 
 import com.google.gwt.event.shared.EventBus;
@@ -126,7 +130,13 @@ public class LabelListActivity extends A
        }
 
        @Inject private Displayable display;
+<<<<<<< HEAD
        
        public interface Displayable extends WidgetDisplayable {}
 >>>>>>> make label settings prototype
+=======
+
+       public interface Displayable extends WidgetDisplayable {
+       }
+>>>>>>> add rename RF to label setting feature
 }

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.java?rev=1522362&r1=1522361&r2=1522362&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.java
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.java
 Thu Sep 12 04:34:08 2013
@@ -22,11 +22,10 @@ package org.apache.hupa.client.activity;
 import java.util.List;
 
 import org.apache.hupa.client.ui.LabelNode;
+import org.apache.hupa.client.ui.WidgetDisplayable;
 
-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.IsWidget;
 import com.google.inject.Inject;
 
 public class LabelPropertiesActivity extends AppBaseActivity {
@@ -38,8 +37,8 @@ public class LabelPropertiesActivity ext
 
        @Inject private Displayable display;
 
-       public interface Displayable extends IsWidget {
-               void cascade(LabelNode labelNode, List<LabelNode> list, int 
cascadeTypeAdd);
-               HasClickHandlers getSave();
+       public interface Displayable extends WidgetDisplayable {
+
+               void cascade(LabelNode labelNode, List<LabelNode> list);
        }
 }

Copied: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.java~HEAD
 (from r1522361, 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.java)
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.java%7EHEAD?p2=james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.java%7EHEAD&p1=james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/LabelPropertiesActivity.java&r1=1522361&r2=1522362&rev=1522362&view=diff
==============================================================================
    (empty)

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=1522362&r1=1522361&r2=1522362&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:34:08 2013
@@ -147,6 +147,7 @@ import org.apache.hupa.client.activity.F
 import org.apache.hupa.client.activity.IMAPMessageActivity;
 import org.apache.hupa.client.activity.IMAPMessageListActivity;
 import org.apache.hupa.client.activity.LabelListActivity;
+import org.apache.hupa.client.activity.LabelPropertiesActivity;
 import org.apache.hupa.client.activity.LoginActivity;
 import org.apache.hupa.client.activity.LogoActivity;
 import org.apache.hupa.client.activity.MessageContentActivity;
@@ -225,6 +226,7 @@ import org.apache.hupa.client.mapper.Com
 >>>>>>> toggle to display/hide the tool bar view to adjust the compose and 
 >>>>>>> message panel
 import org.apache.hupa.client.mapper.FolderListActivityMapper;
 import org.apache.hupa.client.mapper.LabelListActivityMapper;
+import org.apache.hupa.client.mapper.LabelPropertiesActivityMapper;
 import org.apache.hupa.client.mapper.LoginActivityMapper;
 import org.apache.hupa.client.mapper.LogoActivityMapper;
 import org.apache.hupa.client.mapper.MessageContentActivityMapper;
@@ -259,6 +261,7 @@ import org.apache.hupa.client.ui.IMAPMes
 >>>>>>> 1. improve the inbox folder place.
 import org.apache.hupa.client.ui.IMAPMessageView;
 import org.apache.hupa.client.ui.LabelListView;
+import org.apache.hupa.client.ui.LabelPropertiesView;
 import org.apache.hupa.client.ui.LoginLayout;
 import org.apache.hupa.client.ui.LoginLayoutable;
 import org.apache.hupa.client.ui.LoginView;
@@ -375,7 +378,11 @@ public class AppGinModule extends Abstra
 >>>>>>> pull all folders for label settings
                
                
bind(LabelListActivity.Displayable.class).to(LabelListView.class).in(Singleton.class);
+<<<<<<< HEAD
 >>>>>>> make label settings prototype
+=======
+               
bind(LabelPropertiesActivity.Displayable.class).to(LabelPropertiesView.class).in(Singleton.class);
+>>>>>>> add rename RF to label setting feature
 
                bind(LoginActivity.class).in(Singleton.class);
                bind(TopBarActivity.class).in(Singleton.class);
@@ -559,6 +566,7 @@ public class AppGinModule extends Abstra
 =======
                
                bind(LabelListActivity.class).in(Singleton.class);
+               bind(LabelPropertiesActivity.class).in(Singleton.class);
                
                bind(_CenterSettingPanel.class).in(Singleton.class);
 >>>>>>> attempt to add label setting feature
@@ -695,6 +703,14 @@ public class AppGinModule extends Abstra
 >>>>>>> make label settings prototype
        @Provides
        @Singleton
+       @Named("LabelPropertiesRegion")
+       public ActivityManager 
getLabelPropertiesActivityMapper(LabelPropertiesActivityMapper activityMapper, 
EventBus eventBus) {
+               return new ActivityManager(activityMapper, eventBus);
+       }
+       
+       
+       @Provides
+       @Singleton
        @Named("LoginPage")
        public ActivityManager getLoginActivityMapper(LoginActivityMapper 
activityMapper, EventBus eventBus) {
                return new ActivityManager(activityMapper, eventBus);

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mapper/ActivityManagerInitializer.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mapper/ActivityManagerInitializer.java?rev=1522362&r1=1522361&r2=1522362&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mapper/ActivityManagerInitializer.java
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/mapper/ActivityManagerInitializer.java
 Thu Sep 12 04:34:08 2013
@@ -36,6 +36,7 @@ public class ActivityManagerInitializer 
        public ActivityManagerInitializer(LoginLayoutable loginLayout, 
HupaLayoutable hupaLayout,
 
        @Named("LabelListRegion") ActivityManager labelListActivityManager,
+       @Named("LabelPropertiesRegion") ActivityManager 
labelPropertiesActivityManager,
                        @Named("LoginPage") ActivityManager 
loginActivityManager,
                        @Named("TopBarRegion") ActivityManager 
topBarActivityManager,
                        @Named("LogoRegion") ActivityManager 
logoActivityManager,
@@ -49,6 +50,7 @@ public class ActivityManagerInitializer 
                        @Named("StatusRegion") ActivityManager 
statusActivityManager,
                        @Named("ComposeToolBarRegion") ActivityManager 
composeToolBarActivityManager,
                        @Named("ComposeRegion") ActivityManager 
composeActivityManager) {
+               
labelPropertiesActivityManager.setDisplay(hupaLayout.getLabelPropertiesView());
                
labelListActivityManager.setDisplay(hupaLayout.getLabelListView());
                loginActivityManager.setDisplay(loginLayout.getLoginView());
                topBarActivityManager.setDisplay(hupaLayout.getTopBarView());

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayout.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayout.java?rev=1522362&r1=1522361&r2=1522362&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayout.java 
(original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayout.java 
Thu Sep 12 04:34:08 2013
@@ -407,6 +407,11 @@ public class HupaLayout implements HupaL
        public AcceptsOneWidget getLabelListView() {
                return settingPanel.getLabelListView();
        }
+       
+       @Override
+       public AcceptsOneWidget getLabelPropertiesView(){
+               return settingPanel.getLabelPropertiesView();
+       }
 
 <<<<<<< HEAD
        @Override

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayoutable.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayoutable.java?rev=1522362&r1=1522361&r2=1522362&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayoutable.java
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/HupaLayoutable.java
 Thu Sep 12 04:34:08 2013
@@ -146,5 +146,10 @@ public interface HupaLayoutable extends 
 =======
 
        AcceptsOneWidget getLabelListView();
+<<<<<<< HEAD
 >>>>>>> make label settings prototype
+=======
+
+       AcceptsOneWidget getLabelPropertiesView();
+>>>>>>> add rename RF to label setting feature
 }

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelListView.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelListView.java?rev=1522362&r1=1522361&r2=1522362&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelListView.java
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelListView.java
 Thu Sep 12 04:34:08 2013
@@ -22,10 +22,12 @@ package org.apache.hupa.client.ui;
 <<<<<<< HEAD
 <<<<<<< HEAD
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 
 import org.apache.hupa.client.activity.LabelListActivity;
 import org.apache.hupa.client.activity.LabelPropertiesActivity;
+<<<<<<< HEAD
 import org.apache.hupa.client.rf.HupaRequestFactory;
 import org.apache.hupa.shared.domain.ImapFolder;
 
@@ -188,11 +190,14 @@ import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.hupa.client.activity.LabelListActivity;
+=======
+>>>>>>> add rename RF to label setting feature
 import org.apache.hupa.client.rf.HupaRequestFactory;
 import org.apache.hupa.shared.domain.ImapFolder;
 
-import com.google.gwt.cell.client.TextCell;
+import com.google.gwt.cell.client.AbstractCell;
 import com.google.gwt.core.client.GWT;
+import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
 import com.google.gwt.uibinder.client.UiBinder;
 import com.google.gwt.uibinder.client.UiField;
 import com.google.gwt.user.cellview.client.CellList;
@@ -200,6 +205,9 @@ import com.google.gwt.user.client.ui.Com
 import com.google.gwt.user.client.ui.SimplePanel;
 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.inject.Inject;
 import com.google.web.bindery.requestfactory.shared.Receiver;
 import com.google.web.bindery.requestfactory.shared.ServerFailure;
@@ -209,48 +217,92 @@ public class LabelListView extends Compo
        @UiField SimplePanel thisView;
 
        @Inject
-       public LabelListView(HupaRequestFactory rf) {
+       public LabelListView(HupaRequestFactory rf, final 
LabelPropertiesActivity.Displayable labelProperties) {
                initWidget(binder.createAndBindUi(this));
-               ImapLabelListDataProvider data = new 
ImapLabelListDataProvider(rf);
-               CellList<String> cellList = new CellList<String>(new 
TextCell());
+               final ImapLabelListDataProvider data = new 
ImapLabelListDataProvider(rf);
+               CellList<LabelNode> cellList = new CellList<LabelNode>(new 
LabelCell());
+               cellList.setSelectionModel(selectionModel);
+               selectionModel.addSelectionChangeHandler(new 
SelectionChangeEvent.Handler() {
+                       public void onSelectionChange(SelectionChangeEvent 
event) {
+                               
labelProperties.cascade(selectionModel.getSelectedObject(), data.getDataList());
+                       }
+               });
                data.addDataDisplay(cellList);
                thisView.setWidget(cellList);
        }
 
-       public class ImapLabelListDataProvider extends 
AsyncDataProvider<String> {
+       public final SingleSelectionModel<LabelNode> selectionModel = new 
SingleSelectionModel<LabelNode>(
+                       new ProvidesKey<LabelNode>() {
+                               @Override
+                               public Object getKey(LabelNode item) {
+                                       return item == null ? null : 
item.getPath();
+                               }
+                       });
+
+       static class LabelCell extends AbstractCell<LabelNode> {
+
+               public LabelCell() {
+               }
+
+               @Override
+               public void render(com.google.gwt.cell.client.Cell.Context 
context, LabelNode value, SafeHtmlBuilder sb) {
+                       if (value == null) {
+                               return;
+                       }
+
+                       if (value.getFolder().getSubscribed()) {
+                               sb.appendHtmlConstant(value.getName());
+                       } else {
+                               sb.appendHtmlConstant("<span 
style='color:gray;'>");
+                               sb.appendHtmlConstant(value.getName());
+                               sb.appendHtmlConstant("</span>");
+                       }
+               }
+       }
+
+       public class ImapLabelListDataProvider extends 
AsyncDataProvider<LabelNode> {
 
                private HupaRequestFactory rf;
+               private List<LabelNode> folderNodes = new 
ArrayList<LabelNode>();
+
+               public List<LabelNode> getDataList() {
+                       return Collections.unmodifiableList(folderNodes);
+               }
 
                public ImapLabelListDataProvider(HupaRequestFactory rf) {
                        this.rf = rf;
                }
 
                @Override
-               public void addDataDisplay(HasData<String> display) {
+               public void addDataDisplay(HasData<LabelNode> display) {
                        super.addDataDisplay(display);
                }
 
                @Override
-               protected void onRangeChanged(HasData<String> display) {
+               protected void onRangeChanged(HasData<LabelNode> display) {
                        rf.fetchFoldersRequest().fetch(null, 
Boolean.TRUE).fire(new Receiver<List<ImapFolder>>() {
                                @Override
                                public void onSuccess(List<ImapFolder> 
response) {
                                        if (response == null || response.size() 
== 0) {
                                                updateRowCount(-1, true);
                                        } else {
-                                               List<String> fn = new 
ArrayList<String>();
-                                               for (ImapFolder a : response) {
-                                                       fillCellList(fn, a);
+                                               for (ImapFolder folder : 
response) {
+                                                       
fillCellList(folderNodes, folder, null);
                                                }
-                                               updateRowData(0, fn);
+                                               updateRowData(0, folderNodes);
                                        }
                                }
 
-                               private void fillCellList(List<String> fn, 
ImapFolder a) {
-                                       fn.add(a.getFullName());
-                                       if(a.getHasChildren()){
-                                               for(ImapFolder subFolder : 
a.getChildren()){
-                                                       fillCellList(fn, 
subFolder);
+                               private void fillCellList(List<LabelNode> 
folderNodes, ImapFolder curFolder, LabelNode parent) {
+                                       LabelNode labelNode = new LabelNode();
+                                       labelNode.setFolder(curFolder);
+                                       labelNode.setName(curFolder.getName());
+                                       labelNode.setParent(parent);
+                                       
labelNode.setPath(curFolder.getFullName());
+                                       folderNodes.add(labelNode);
+                                       if (curFolder.getHasChildren()) {
+                                               for (ImapFolder subFolder : 
curFolder.getChildren()) {
+                                                       
fillCellList(folderNodes, subFolder, labelNode);
                                                }
                                        }
                                }

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelNode.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelNode.java?rev=1522362&r1=1522361&r2=1522362&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelNode.java 
(original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelNode.java 
Thu Sep 12 04:34:08 2013
@@ -3,6 +3,7 @@ package org.apache.hupa.client.ui;
 import org.apache.hupa.shared.domain.ImapFolder;
 
 public class LabelNode implements Comparable<LabelNode> {
+<<<<<<< HEAD
        
        public static LabelNode ROOT = new LabelNode("---"); 
        
@@ -22,6 +23,13 @@ public class LabelNode implements Compar
        public void setNameForDisplay(String nameForDisplay) {
                this.nameForDisplay = nameForDisplay;
        }
+=======
+       private ImapFolder folder;
+       private String name;
+       private String path;
+       private LabelNode parent;
+
+>>>>>>> add rename RF to label setting feature
        public ImapFolder getFolder() {
                return folder;
        }
@@ -47,10 +55,16 @@ public class LabelNode implements Compar
                this.parent = parent;
        }
        @Override
+<<<<<<< HEAD
        public int compareTo(LabelNode o) {
                if(name == null) return -1;
                if(o == null) return 1;
                return name.compareTo(o.name);
+=======
+       public int compareTo(LabelNode arg0) {
+               // TODO Auto-generated method stub
+               return 0;
+>>>>>>> add rename RF to label setting feature
        }
 
 }

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.java?rev=1522362&r1=1522361&r2=1522362&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.java
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.java
 Thu Sep 12 04:34:08 2013
@@ -21,6 +21,7 @@ package org.apache.hupa.client.ui;
 
 import java.util.List;
 
+<<<<<<< HEAD
 import org.apache.hupa.client.HupaController;
 import org.apache.hupa.client.activity.LabelListActivity;
 import org.apache.hupa.client.activity.LabelPropertiesActivity;
@@ -37,23 +38,44 @@ import com.google.gwt.core.client.GWT;
 import com.google.gwt.event.dom.client.ClickEvent;
 import com.google.gwt.event.dom.client.HasClickHandlers;
 import com.google.gwt.event.shared.EventBus;
+=======
+import org.apache.hupa.client.activity.LabelListActivity;
+import org.apache.hupa.client.activity.LabelPropertiesActivity;
+import org.apache.hupa.client.rf.HupaRequestFactory;
+import org.apache.hupa.client.rf.RenameFolderRequest;
+import org.apache.hupa.shared.domain.GenericResult;
+import org.apache.hupa.shared.domain.ImapFolder;
+import org.apache.hupa.shared.domain.RenameFolderAction;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.dom.client.ClickEvent;
+>>>>>>> add rename RF to label setting feature
 import com.google.gwt.uibinder.client.UiBinder;
 import com.google.gwt.uibinder.client.UiField;
 import com.google.gwt.uibinder.client.UiHandler;
 import com.google.gwt.user.client.ui.Button;
+<<<<<<< HEAD
 import com.google.gwt.user.client.ui.CaptionPanel;
+=======
+>>>>>>> add rename RF to label setting feature
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.DecoratorPanel;
 import com.google.gwt.user.client.ui.ListBox;
 import com.google.gwt.user.client.ui.TextBox;
+<<<<<<< HEAD
 import com.google.gwt.user.client.ui.VerticalPanel;
 import com.google.inject.Inject;
 import com.google.web.bindery.requestfactory.shared.Receiver;
 import com.google.web.bindery.requestfactory.shared.ServerFailure;
+=======
+import com.google.inject.Inject;
+import com.google.web.bindery.requestfactory.shared.Receiver;
+>>>>>>> add rename RF to label setting feature
 
 public class LabelPropertiesView extends Composite implements 
LabelPropertiesActivity.Displayable {
 
        @Inject HupaRequestFactory rf;
+<<<<<<< HEAD
        @Inject HupaController hc;
        @Inject EventBus eventBus;
 
@@ -120,6 +142,28 @@ public class LabelPropertiesView extends
                        });
 
                }
+=======
+       
+       @UiField TextBox _name;
+       @UiField ListBox _parent;
+       @UiField Button save;
+       
+       ImapFolder folder;
+
+       @UiHandler("save")
+       void handleCompose(ClickEvent e){
+               RenameFolderRequest req = rf.renameFolderRequest();
+               RenameFolderAction action = 
req.create(RenameFolderAction.class);
+               action.setFolder(folder);
+               action.setNewName(_name.getText());
+               req.rename(action).fire(new Receiver<GenericResult>() {
+                       @Override
+                       public void onSuccess(GenericResult response) {
+//                             afterSend(response);
+                               System.out.println("success to rename");
+                       }
+               });
+>>>>>>> add rename RF to label setting feature
        }
        public LabelPropertiesView() {
                initWidget(binder.createAndBindUi(this));
@@ -131,6 +175,7 @@ public class LabelPropertiesView extends
        private static Binder binder = GWT.create(Binder.class);
 
        @Override
+<<<<<<< HEAD
        public void cascade(LabelNode labelNode, List<LabelNode> wholeList, int 
type) {
                state = type;
                switch (type) {
@@ -187,6 +232,21 @@ public class LabelPropertiesView extends
        @Override
        public HasClickHandlers getSave() {
                return save;
+=======
+       public void cascade(LabelNode labelNode, List<LabelNode> list) {
+               _name.setText(labelNode.getName());
+               folder = labelNode.getFolder();
+               if (!(labelNode.getFolder().getSubscribed())) {
+                       _name.setEnabled(false);
+               } else {
+                       _name.setEnabled(true);
+               }
+               _parent.clear();
+               for (LabelNode folderNode : list) {
+                       _parent.addItem(folderNode.getName(), 
folderNode.getPath());
+               }
+               _parent.setSelectedIndex(list.indexOf(labelNode.getParent()));
+>>>>>>> add rename RF to label setting feature
        }
 
 }

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml?rev=1522362&r1=1522361&r2=1522362&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml
 Thu Sep 12 04:34:08 2013
@@ -61,26 +61,26 @@
        </ui:style>
        <g:DecoratorPanel addStyleNames="{style.propform}">
                <g:CaptionPanel captionText="Properties">
-                       <g:VerticalPanel ui:field="propContainer">
+                       <g:VerticalPanel>
                                <g:CaptionPanel captionText="Location">
                                        <g:VerticalPanel 
addStyleNames="{style.attribute}">
                                                <g:HorizontalPanel 
addStyleNames="{style.noBorder}">
                                                        <g:Label>
                                                                <ui:msg 
key='folderName'>Folder Name:</ui:msg>
                                                        </g:Label>
-                                                       <g:TextBox 
ui:field='name' name="_name" />
+                                                       <g:TextBox 
ui:field='_name' name="_name" />
                                                </g:HorizontalPanel>
                                                <g:HorizontalPanel 
addStyleNames="{style.noBorder}">
                                                        <g:Label>
                                                                <ui:msg 
key='parentFolder'>Parent Folder:</ui:msg>
                                                        </g:Label>
-                                                       <g:ListBox 
ui:field='parent'>
+                                                       <g:ListBox 
ui:field='_parent'>
                                                                <g:item 
value="1">---</g:item>
                                                        </g:ListBox>
                                                </g:HorizontalPanel>
                                        </g:VerticalPanel>
                                </g:CaptionPanel>
-                               <g:CaptionPanel ui:field="information" 
captionText="Information">
+                               <g:CaptionPanel captionText="Infomation">
                                        <g:VerticalPanel 
addStyleNames="{style.attribute}">
                                        </g:VerticalPanel>
                                </g:CaptionPanel>

Copied: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml~HEAD
 (from r1522361, 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml)
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml%7EHEAD?p2=james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml%7EHEAD&p1=james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LabelPropertiesView.ui.xml&r1=1522361&r2=1522362&rev=1522362&view=diff
==============================================================================
    (empty)

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/_CenterSettingPanel.java
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/_CenterSettingPanel.java?rev=1522362&r1=1522361&r2=1522362&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/_CenterSettingPanel.java
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/_CenterSettingPanel.java
 Thu Sep 12 04:34:08 2013
@@ -105,6 +105,7 @@ import com.google.gwt.user.client.ui.Com
 import com.google.gwt.user.client.ui.IsWidget;
 import com.google.gwt.user.client.ui.ScrollPanel;
 import com.google.gwt.user.client.ui.SimpleLayoutPanel;
+import com.google.gwt.user.client.ui.SimplePanel;
 import com.google.gwt.user.client.ui.SplitLayoutPanel;
 import com.google.gwt.user.client.ui.Widget;
 import com.google.gwt.view.client.SelectionChangeEvent;
@@ -117,6 +118,7 @@ public class _CenterSettingPanel extends
        @UiField SimpleLayoutPanel settingsTab;
        
        @UiField ScrollPanel labelListContainer;
+       @UiField SimplePanel labelPropertiesContainer;
 
        public _CenterSettingPanel() {
                
@@ -183,6 +185,7 @@ public class _CenterSettingPanel extends
        }
 
 <<<<<<< HEAD
+<<<<<<< HEAD
        public void swithTo(SettingPlace sp) {
                int lyt;
                if ("ecs".equals(sp.getToken())) {
@@ -198,4 +201,14 @@ public class _CenterSettingPanel extends
 >>>>>>> attempt to add label setting feature
 =======
 >>>>>>> make label settings prototype
+=======
+       public AcceptsOneWidget getLabelPropertiesView() {
+               return new AcceptsOneWidget() {
+                       @Override
+                       public void setWidget(IsWidget w) {
+                               
labelPropertiesContainer.setWidget(Widget.asWidgetOrNull(w));
+                       }
+               };
+       }
+>>>>>>> add rename RF to label setting feature
 }

Modified: 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/_CenterSettingPanel.ui.xml
URL: 
http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/_CenterSettingPanel.ui.xml?rev=1522362&r1=1522361&r2=1522362&view=diff
==============================================================================
--- 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/_CenterSettingPanel.ui.xml
 (original)
+++ 
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/_CenterSettingPanel.ui.xml
 Thu Sep 12 04:34:08 2013
@@ -268,8 +268,7 @@
                                                <g:HTMLPanel>
                                                        <h2 
class="{style.boxtitle}">Folder properties</h2>
                                                        <g:FlowPanel 
addStyleNames="{style.boxcontent}">
-                                                               
<hupa:SettingFolderActionView />
-                                                               
<g:Button>Save</g:Button>
+                                                               <g:SimplePanel 
ui:field="labelPropertiesContainer"></g:SimplePanel>
                                                        </g:FlowPanel>
                                                        <div 
class="{style.statusbar}" />
                                                </g:HTMLPanel>



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

Reply via email to