More changes for the new left pane
authorChristos Stathis <chstath@ebs.gr>
Thu, 19 Apr 2012 15:43:13 +0000 (18:43 +0300)
committerChristos Stathis <chstath@ebs.gr>
Thu, 19 Apr 2012 15:43:13 +0000 (18:43 +0300)
13 files changed:
src/gr/grnet/pithos/resources/2folder22.png [new file with mode: 0644]
src/gr/grnet/pithos/resources/sharedbyme22.png [new file with mode: 0644]
src/gr/grnet/pithos/resources/sharedtome22.png [new file with mode: 0644]
src/gr/grnet/pithos/web/client/PithosDisclosurePanel.css
src/gr/grnet/pithos/web/client/PithosDisclosurePanel.java
src/gr/grnet/pithos/web/client/foldertree/FolderTreeView.java
src/gr/grnet/pithos/web/client/foldertree/FolderTreeViewModel.java
src/gr/grnet/pithos/web/client/grouptree/GroupTreeView.java
src/gr/grnet/pithos/web/client/mysharedtree/MysharedTreeView.java
src/gr/grnet/pithos/web/client/mysharedtree/MysharedTreeViewModel.java
src/gr/grnet/pithos/web/client/othersharedtree/OtherSharedTreeView.java
src/gr/grnet/pithos/web/client/othersharedtree/OtherSharedTreeViewModel.java
src/gr/grnet/pithos/web/public/pithos.css

diff --git a/src/gr/grnet/pithos/resources/2folder22.png b/src/gr/grnet/pithos/resources/2folder22.png
new file mode 100644 (file)
index 0000000..1e9df8c
Binary files /dev/null and b/src/gr/grnet/pithos/resources/2folder22.png differ
diff --git a/src/gr/grnet/pithos/resources/sharedbyme22.png b/src/gr/grnet/pithos/resources/sharedbyme22.png
new file mode 100644 (file)
index 0000000..54e3a51
Binary files /dev/null and b/src/gr/grnet/pithos/resources/sharedbyme22.png differ
diff --git a/src/gr/grnet/pithos/resources/sharedtome22.png b/src/gr/grnet/pithos/resources/sharedtome22.png
new file mode 100644 (file)
index 0000000..81a8f95
Binary files /dev/null and b/src/gr/grnet/pithos/resources/sharedtome22.png differ
index f6778cb..4978d7f 100644 (file)
@@ -36,3 +36,8 @@
 .disclosurePanel {
        padding-left: 10px;
 }
+
+.content {
+       padding: 4px 0px 4px 8px;
+       margin-left: 6px;
+}
index bdfa793..a7c8b01 100644 (file)
@@ -58,6 +58,8 @@ public class PithosDisclosurePanel extends Composite {
 
        public interface Style extends CssResource {
                String disclosurePanel();
+               
+               String content();
        }
        
        public interface Resources extends ClientBundle {
@@ -76,7 +78,10 @@ public class PithosDisclosurePanel extends Composite {
        
        DisclosurePanel panel;
        
-       public PithosDisclosurePanel(final Resources resources, final String title, boolean open) {
+       Resources resources;
+       
+       public PithosDisclosurePanel(final Resources _resources, final String title, boolean open) {
+               resources = _resources;
                resources.pithosDisclosurePanelCss().ensureInjected();
                panel = new DisclosurePanel();
                panel.addStyleName(resources.pithosDisclosurePanelCss().disclosurePanel());
@@ -97,18 +102,21 @@ public class PithosDisclosurePanel extends Composite {
                                panel.setHeader(createHeader(resources, title, false));
                        }
                });
+               
                initWidget(panel);
        }
        
        HTML createHeader(Resources resources, String title, boolean open) {
         SafeHtmlBuilder sb = new SafeHtmlBuilder();
-        sb.appendHtmlConstant(AbstractImagePrototype.create(resources.icon()).getHTML()).appendHtmlConstant("&nbsp;");
+        sb.appendHtmlConstant(AbstractImagePrototype.create(resources.icon()).getHTML());
         sb.append(Templates.INSTANCE.nameSpan(title));
-        sb.appendHtmlConstant(AbstractImagePrototype.create(open ? resources.open() : resources.closed()).getHTML());
+               sb.appendHtmlConstant(AbstractImagePrototype.create(open ? resources.open() : resources.closed()).getHTML());
         return new HTML(sb.toSafeHtml());
        }
        
        public void add(IsWidget widget) {
                panel.add(widget);
+               panel.getContent().removeStyleName("content");
+               panel.getContent().addStyleName(resources.pithosDisclosurePanelCss().content());
        }
 }
index cd08416..4383acf 100644 (file)
@@ -38,6 +38,7 @@ package gr.grnet.pithos.web.client.foldertree;
 import gr.grnet.pithos.web.client.FolderContextMenu;
 import gr.grnet.pithos.web.client.PithosDisclosurePanel;
 import gr.grnet.pithos.web.client.TreeView;
+import gr.grnet.pithos.web.client.grouptree.GroupTreeView.Templates;
 
 import com.google.gwt.core.client.GWT;
 import com.google.gwt.resources.client.ImageResource;
@@ -45,12 +46,16 @@ import com.google.gwt.resources.client.ImageResource.ImageOptions;
 import com.google.gwt.resources.client.ImageResource.RepeatStyle;
 import com.google.gwt.safehtml.client.SafeHtmlTemplates;
 import com.google.gwt.safehtml.shared.SafeHtml;
+import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
 import com.google.gwt.user.cellview.client.CellTree;
 import com.google.gwt.user.cellview.client.HasKeyboardSelectionPolicy.KeyboardSelectionPolicy;
 import com.google.gwt.user.cellview.client.TreeNode;
 import com.google.gwt.user.client.Command;
+import com.google.gwt.user.client.ui.AbstractImagePrototype;
 import com.google.gwt.user.client.ui.Composite;
+import com.google.gwt.user.client.ui.HTML;
 import com.google.gwt.user.client.ui.Tree;
+import com.google.gwt.user.client.ui.VerticalPanel;
 
 public class FolderTreeView extends Composite implements TreeView {
 
@@ -123,15 +128,12 @@ public class FolderTreeView extends Composite implements TreeView {
         @Source("gr/grnet/pithos/resources/home22.png")
         ImageResource home();
 
-        @Source("gr/grnet/pithos/resources/folder22.png")
+        @Source("gr/grnet/pithos/resources/2folder22.png")
         public ImageResource folderYellow();
 
         @Source("gr/grnet/pithos/resources/mimetypes/document.png")
         ImageResource document();
 
-        @Source("gr/grnet/pithos/resources/othersshared.png")
-        ImageResource othersShared();
-
         @Source("gr/grnet/pithos/resources/myshared22.png")
         ImageResource myShared();
 
@@ -167,7 +169,14 @@ public class FolderTreeView extends Composite implements TreeView {
     public FolderTreeView(FolderTreeViewModel viewModel) {
         this.model = viewModel;
 
-        PithosDisclosurePanel panel = new PithosDisclosurePanel((Resources) GWT.create(Resources.class), "My Files", true);
+        VerticalPanel panel = new VerticalPanel();
+        panel.addStyleName("pithos-folderTreeSection");
+        Resources resources = GWT.create(Resources.class);
+        SafeHtmlBuilder sb = new SafeHtmlBuilder();
+        sb.appendHtmlConstant(AbstractImagePrototype.create(resources.icon()).getHTML());
+        sb.append(Templates.INSTANCE.nameSpan("My Files"));
+        panel.add(new HTML(sb.toSafeHtml()));
+
 
         /*
          * Create the tree using the model. We use <code>null</code> as the default
@@ -177,8 +186,9 @@ public class FolderTreeView extends Composite implements TreeView {
         CellTree.Resources res = GWT.create(BasicResources.class);
         tree = new CellTree(model, null, res);
         tree.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED);
-
+        tree.addStyleName("pithos-folderTreeSectionContent");
         panel.add(tree);
+        
         initWidget(panel);
     }
 
index 843f14f..5e4f348 100644 (file)
@@ -72,7 +72,7 @@ public class FolderTreeViewModel implements TreeViewModel {
             String html;
             SafeHtml name;
                if (folder.isHome()) {
-                       html = AbstractImagePrototype.create(FolderTreeView.images.home()).getHTML();
+                       html = AbstractImagePrototype.create(FolderTreeView.images.folderYellow()).getHTML();
                        name = Templates.INSTANCE.nameSpan("Pithos");
                }
                else if (folder.isTrash()) {
index f2b58fd..104d73e 100644 (file)
@@ -131,7 +131,7 @@ public class GroupTreeView extends Composite implements TreeView {
     public static interface Templates extends SafeHtmlTemplates {
         public Templates INSTANCE = GWT.create(Templates.class);
 
-        @Template("<span>{0}</span>")
+        @Template("<span style='margin-left:5px;'>{0}</span>")
         public SafeHtml nameSpan(String name);
       }
 
index e2fdeed..e286195 100644 (file)
@@ -55,7 +55,7 @@ import com.google.gwt.user.client.ui.Tree;
 public class MysharedTreeView extends Composite implements TreeView {
 
     public void updateChildren(Folder folder) {
-        TreeNode root = ((CellTree) getWidget()).getRootTreeNode();
+        TreeNode root = tree.getRootTreeNode();
         updateChildren(root, folder);
     }
 
@@ -105,18 +105,18 @@ public class MysharedTreeView extends Composite implements TreeView {
         @Source("gr/grnet/pithos/resources/home22.png")
         ImageResource home();
 
-        @Source("gr/grnet/pithos/resources/folder22.png")
+        @Source("gr/grnet/pithos/resources/2folder22.png")
         public ImageResource folderYellow();
 
         @Source("gr/grnet/pithos/resources/mimetypes/document.png")
         ImageResource document();
 
-        @Source("gr/grnet/pithos/resources/othersshared.png")
-        ImageResource othersShared();
-
         @Source("gr/grnet/pithos/resources/myshared22.png")
         ImageResource myShared();
 
+        @Source("gr/grnet/pithos/resources/sharedbyme22.png")
+        ImageResource sharedByMe();
+
         @Source("gr/grnet/pithos/resources/folder_user.png")
         ImageResource sharedFolder();
     }
@@ -132,12 +132,14 @@ public class MysharedTreeView extends Composite implements TreeView {
 
     interface Resources extends gr.grnet.pithos.web.client.PithosDisclosurePanel.Resources {
        @Override
-               @Source("gr/grnet/pithos/resources/myshared22.png")
+               @Source("gr/grnet/pithos/resources/sharedbyme22.png")
        ImageResource icon();
     }
 
     private MysharedTreeViewModel model;
 
+    private CellTree tree;
+    
     public MysharedTreeView(MysharedTreeViewModel viewModel) {
         this.model = viewModel;
         
@@ -148,7 +150,7 @@ public class MysharedTreeView extends Composite implements TreeView {
          * CustomTreeModel#getNodeInfo();
          */
         CellTree.Resources res = GWT.create(BasicResources.class);
-        CellTree tree = new CellTree(model, null, res);
+        tree = new CellTree(model, null, res);
         tree.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED);
 
         panel.add(tree);
index 8b98bc2..e5595ce 100644 (file)
@@ -119,37 +119,16 @@ public class MysharedTreeViewModel implements TreeViewModel {
     @Override
     public <T> NodeInfo<?> getNodeInfo(T value) {
         if (value == null) {
-            ListDataProvider<String> rootDataProvider = new ListDataProvider<String>();
-            rootDataProvider.getList().add("Shared by me");
-            return new DefaultNodeInfo<String>(rootDataProvider, new TextCell(new SafeHtmlRenderer<String>() {
-                @Override
-                public SafeHtml render(String object) {
-                    SafeHtmlBuilder builder = new SafeHtmlBuilder();
-                    render(object, builder);
-                    return builder.toSafeHtml();
-                }
-
-                @Override
-                public void render(String object, SafeHtmlBuilder builder) {
-                    String html = AbstractImagePrototype.create(MysharedTreeView.images.myShared()).getHTML();
-                    builder.appendHtmlConstant(html).appendHtmlConstant("&nbsp;");
-                    builder.append(MysharedTreeView.Templates.INSTANCE.nameSpan(object));
-                }
-            }),  null, null);
-        }
-        else if (value instanceof String) {
                fetchSharedContainers(null);
             return new DefaultNodeInfo<Folder>(firstLevelDataProvider, folderCell, selectionModel, null);
         }
-        else {
-            final Folder f = (Folder) value;
-            if (dataProviderMap.get(f) == null) {
-                dataProviderMap.put(f, new ListDataProvider<Folder>());
-            }
-            final ListDataProvider<Folder> dataProvider = dataProviderMap.get(f);
-            fetchFolder(f, dataProvider, false);
-            return new DefaultNodeInfo<Folder>(dataProvider, folderCell, selectionModel, null);
+        final Folder f = (Folder) value;
+        if (dataProviderMap.get(f) == null) {
+            dataProviderMap.put(f, new ListDataProvider<Folder>());
         }
+        final ListDataProvider<Folder> dataProvider = dataProviderMap.get(f);
+        fetchFolder(f, dataProvider, false);
+        return new DefaultNodeInfo<Folder>(dataProvider, folderCell, selectionModel, null);
     }
 
        private void fetchSharedContainers(final Command callback) {
index 02174ed..f74bd2b 100644 (file)
@@ -56,7 +56,7 @@ import com.google.gwt.user.client.ui.Tree;
 public class OtherSharedTreeView extends Composite implements TreeView {
 
     public void updateChildren(Folder folder) {
-        TreeNode root = ((CellTree) getWidget()).getRootTreeNode();
+        TreeNode root = tree.getRootTreeNode();
         updateChildren(root, folder);
     }
 
@@ -106,13 +106,13 @@ public class OtherSharedTreeView extends Composite implements TreeView {
         @Source("gr/grnet/pithos/resources/home22.png")
         ImageResource home();
 
-        @Source("gr/grnet/pithos/resources/folder22.png")
+        @Source("gr/grnet/pithos/resources/2folder22.png")
         public ImageResource folderYellow();
 
         @Source("gr/grnet/pithos/resources/mimetypes/document.png")
         ImageResource document();
 
-        @Source("gr/grnet/pithos/resources/othersshared.png")
+        @Source("gr/grnet/pithos/resources/sharedtome22.png")
         ImageResource othersShared();
 
         @Source("gr/grnet/pithos/resources/myshared22.png")
@@ -136,12 +136,14 @@ public class OtherSharedTreeView extends Composite implements TreeView {
 
     interface Resources extends gr.grnet.pithos.web.client.PithosDisclosurePanel.Resources {
        @Override
-               @Source("gr/grnet/pithos/resources/othersshared.png")
+               @Source("gr/grnet/pithos/resources/sharedtome22.png")
        ImageResource icon();
     }
 
     private OtherSharedTreeViewModel model;
 
+    private CellTree tree;
+    
     public OtherSharedTreeView(OtherSharedTreeViewModel viewModel) {
         this.model = viewModel;
         
@@ -152,7 +154,7 @@ public class OtherSharedTreeView extends Composite implements TreeView {
          * CustomTreeModel#getNodeInfo();
          */
         CellTree.Resources res = GWT.create(BasicResources.class);
-        CellTree tree = new CellTree(model, null, res);
+        tree = new CellTree(model, null, res);
         tree.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED);
 
         panel.add(tree);
index 63c2426..291287a 100644 (file)
@@ -121,43 +121,25 @@ public class OtherSharedTreeViewModel implements TreeViewModel {
     @Override
     public <T> NodeInfo<?> getNodeInfo(T value) {
         if (value == null) {
-            rootDataProvider.getList().add(treeTitle);
-            return new DefaultNodeInfo<String>(rootDataProvider, new TextCell(new SafeHtmlRenderer<String>() {
-                @Override
-                public SafeHtml render(String object) {
+               fetchSharingUsers(null);
+            return new DefaultNodeInfo<String>(userLevelDataProvider, new TextCell(new SafeHtmlRenderer<String>() {
+
+                               @Override
+                               public SafeHtml render(String object) {
                     SafeHtmlBuilder builder = new SafeHtmlBuilder();
                     render(object, builder);
                     return builder.toSafeHtml();
-                }
+                               }
 
-                @Override
-                public void render(String object, SafeHtmlBuilder builder) {
-                    String html = AbstractImagePrototype.create(OtherSharedTreeView.images.othersShared()).getHTML();
+                               @Override
+                               public void render(String object, SafeHtmlBuilder builder) {
+                    String html = AbstractImagePrototype.create(OtherSharedTreeView.images.myShared()).getHTML();
                     builder.appendHtmlConstant(html).appendHtmlConstant("&nbsp;");
                     builder.append(OtherSharedTreeView.Templates.INSTANCE.nameSpan(object));
-                }
-            }),  null, null);
+                               }
+                       }), null, null);
         }
         else if (value instanceof String) {
-               if (value.equals(treeTitle)) {
-                       fetchSharingUsers(null);
-                   return new DefaultNodeInfo<String>(userLevelDataProvider, new TextCell(new SafeHtmlRenderer<String>() {
-
-                                       @Override
-                                       public SafeHtml render(String object) {
-                           SafeHtmlBuilder builder = new SafeHtmlBuilder();
-                           render(object, builder);
-                           return builder.toSafeHtml();
-                                       }
-
-                                       @Override
-                                       public void render(String object, SafeHtmlBuilder builder) {
-                           String html = AbstractImagePrototype.create(OtherSharedTreeView.images.user()).getHTML();
-                           builder.appendHtmlConstant(html).appendHtmlConstant("&nbsp;");
-                           builder.append(OtherSharedTreeView.Templates.INSTANCE.nameSpan(object));
-                                       }
-                               }), null, null);
-               }
                        String username = (String) value;
                        if (userDataProviderMap.get(username) == null) {
                                userDataProviderMap.put(username, new ListDataProvider<Folder>());
index b618fda..4825ca5 100644 (file)
@@ -377,8 +377,8 @@ table.pithos-permList.props-labels {
     text-align: center;
     height: auto;
     padding: 8px;
-    width: 146px;
-    border: none;
+    width: 127px;
+    border: 0px;
 }
 
 .pithos-uploadButton-loading {
@@ -733,3 +733,12 @@ a.pithos-tag {
 .pithos-versionList {
        padding-right: 5px;
 }
+
+.pithos-folderTreeSection {
+       padding-left: 10px;
+}
+
+.pithos-folderTreeSectionContent {
+       padding: 4px 0px 4px 8px;
+       margin-left: 6px;
+}
\ No newline at end of file