.disclosurePanel {
padding-left: 10px;
}
+
+.content {
+ padding: 4px 0px 4px 8px;
+ margin-left: 6px;
+}
public interface Style extends CssResource {
String disclosurePanel();
+
+ String content();
}
public interface Resources extends ClientBundle {
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());
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(" ");
+ 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());
}
}
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;
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 {
@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();
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
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);
}
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()) {
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);
}
public class MysharedTreeView extends Composite implements TreeView {
public void updateChildren(Folder folder) {
- TreeNode root = ((CellTree) getWidget()).getRootTreeNode();
+ TreeNode root = tree.getRootTreeNode();
updateChildren(root, folder);
}
@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();
}
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;
* 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);
@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(" ");
- 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) {
public class OtherSharedTreeView extends Composite implements TreeView {
public void updateChildren(Folder folder) {
- TreeNode root = ((CellTree) getWidget()).getRootTreeNode();
+ TreeNode root = tree.getRootTreeNode();
updateChildren(root, folder);
}
@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")
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;
* 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);
@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(" ");
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(" ");
- builder.append(OtherSharedTreeView.Templates.INSTANCE.nameSpan(object));
- }
- }), null, null);
- }
String username = (String) value;
if (userDataProviderMap.get(username) == null) {
userDataProviderMap.put(username, new ListDataProvider<Folder>());
text-align: center;
height: auto;
padding: 8px;
- width: 146px;
- border: none;
+ width: 127px;
+ border: 0px;
}
.pithos-uploadButton-loading {
.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