X-Git-Url: https://code.grnet.gr/git/pithos/blobdiff_plain/2002c1dc4bfa2e5525f0a8f5353234887138aac4..b4d8fe7bede547daaa0cc2b7ee9a8e972b4bbd4e:/src/gr/ebs/gss/client/FileContextMenu.java diff --git a/src/gr/ebs/gss/client/FileContextMenu.java b/src/gr/ebs/gss/client/FileContextMenu.java index 0cc74ec..c2d2b56 100644 --- a/src/gr/ebs/gss/client/FileContextMenu.java +++ b/src/gr/ebs/gss/client/FileContextMenu.java @@ -33,20 +33,22 @@ import gr.ebs.gss.client.rest.resource.FolderResource; import java.util.List; +import com.google.gwt.event.dom.client.ClickEvent; +import com.google.gwt.event.dom.client.ClickHandler; +import com.google.gwt.resources.client.ClientBundle; +import com.google.gwt.resources.client.ImageResource; import com.google.gwt.user.client.Command; import com.google.gwt.user.client.Event; import com.google.gwt.user.client.ui.AbstractImagePrototype; -import com.google.gwt.user.client.ui.ClickListener; import com.google.gwt.user.client.ui.MenuBar; import com.google.gwt.user.client.ui.MenuItem; import com.google.gwt.user.client.ui.PopupPanel; import com.google.gwt.user.client.ui.TreeItem; -import com.google.gwt.user.client.ui.Widget; /** * The 'File Context' menu implementation. */ -public class FileContextMenu extends PopupPanel implements ClickListener { +public class FileContextMenu extends PopupPanel implements ClickHandler { /** * The widget's images. @@ -77,22 +79,22 @@ public class FileContextMenu extends PopupPanel implements ClickListener { * The image bundle for this widget's images that reuses images defined in * other menus. */ - public interface Images extends FileMenu.Images, EditMenu.Images { + public interface Images extends ClientBundle,FileMenu.Images, EditMenu.Images { - @Resource("gr/ebs/gss/resources/mimetypes/document.png") - AbstractImagePrototype fileContextMenu(); + @Source("gr/ebs/gss/resources/mimetypes/document.png") + ImageResource fileContextMenu(); - @Resource("gr/ebs/gss/resources/doc_versions.png") - AbstractImagePrototype versions(); + @Source("gr/ebs/gss/resources/doc_versions.png") + ImageResource versions(); - @Resource("gr/ebs/gss/resources/group.png") - AbstractImagePrototype sharing(); + @Source("gr/ebs/gss/resources/group.png") + ImageResource sharing(); - @Resource("gr/ebs/gss/resources/border_remove.png") - AbstractImagePrototype unselectAll(); + @Source("gr/ebs/gss/resources/border_remove.png") + ImageResource unselectAll(); - @Resource("gr/ebs/gss/resources/demo.png") - AbstractImagePrototype viewImage(); + @Source("gr/ebs/gss/resources/demo.png") + ImageResource viewImage(); } public static native String getDate()/*-{ @@ -121,25 +123,25 @@ public class FileContextMenu extends PopupPanel implements ClickListener { } }; - pasteItem = new MenuItem("" + newImages.paste().getHTML() + " Paste", true, new PasteCommand(this)); + pasteItem = new MenuItem("" + AbstractImagePrototype.create(newImages.paste()).getHTML() + " Paste", true, new PasteCommand(this)); MenuBar contextMenu = new MenuBar(true); if (isEmpty) { contextMenu.addItem(pasteItem); if (GSS.get().getFolders().getCurrent() != null) if (GSS.get().getFolders().isFileItem(GSS.get().getFolders().getCurrent())) - contextMenu.addItem("" + newImages.fileUpdate().getHTML() + " Upload", true, new UploadFileCommand(this)); + contextMenu.addItem("" + AbstractImagePrototype.create(newImages.fileUpdate()).getHTML() + " Upload", true, new UploadFileCommand(this)); else if (GSS.get().getFolders().isMySharedItem(GSS.get().getFolders().getCurrent()) || GSS .get() .getFolders() .isOthersSharedItem(GSS .get() .getFolders() .getCurrent())) if(GSS.get().getFolders().getCurrent().getUserObject() instanceof FolderResource) - contextMenu.addItem("" + newImages.fileUpdate().getHTML() + " Upload", true, new UploadFileCommand(this)); - contextMenu.addItem("" + images.refresh().getHTML() + " Refresh", true, new RefreshCommand(this, images)); + contextMenu.addItem("" + AbstractImagePrototype.create(newImages.fileUpdate()).getHTML() + " Upload", true, new UploadFileCommand(this)); + contextMenu.addItem("" + AbstractImagePrototype.create(images.refresh()).getHTML() + " Refresh", true, new RefreshCommand(this, images)); } else if (isTrash) { - contextMenu.addItem("" + newImages.versions().getHTML() + " Restore", true, new RestoreTrashCommand(this)); - contextMenu.addItem("" + newImages.delete().getHTML() + " Delete", true, new DeleteCommand(this, images)); + contextMenu.addItem("" + AbstractImagePrototype.create(newImages.versions()).getHTML() + " Restore", true, new RestoreTrashCommand(this)); + contextMenu.addItem("" + AbstractImagePrototype.create(newImages.delete()).getHTML() + " Delete", true, new DeleteCommand(this, images)); } else { final Command unselectAllCommand = new Command() { @@ -151,35 +153,35 @@ public class FileContextMenu extends PopupPanel implements ClickListener { GSS.get().getSearchResults().clearSelectedRows(); } }; - cutItem = new MenuItem("" + newImages.cut().getHTML() + " Cut", true, new CutCommand(this)); - copyItem = new MenuItem("" + newImages.copy().getHTML() + " Copy", true, new CopyCommand(this)); + cutItem = new MenuItem("" + AbstractImagePrototype.create(newImages.cut()).getHTML() + " Cut", true, new CutCommand(this)); + copyItem = new MenuItem("" + AbstractImagePrototype.create(newImages.copy()).getHTML() + " Copy", true, new CopyCommand(this)); - updateItem = new MenuItem("" + newImages.fileUpdate().getHTML() + " Upload", true, new UploadFileCommand(this)); + updateItem = new MenuItem("" + AbstractImagePrototype.create(newImages.fileUpdate()).getHTML() + " Upload", true, new UploadFileCommand(this)); - trashItem = new MenuItem("" + newImages.emptyTrash().getHTML() + " Move to Trash", true, new ToTrashCommand(this)); - deleteItem = new MenuItem("" + newImages.delete().getHTML() + " Delete", true, new DeleteCommand(this, images)); + trashItem = new MenuItem("" + AbstractImagePrototype.create(newImages.emptyTrash()).getHTML() + " Move to Trash", true, new ToTrashCommand(this)); + deleteItem = new MenuItem("" + AbstractImagePrototype.create(newImages.delete()).getHTML() + " Delete", true, new DeleteCommand(this, images)); - sharingItem = new MenuItem("" + newImages.sharing().getHTML() + " Sharing", true, new PropertiesCommand(this, images, 1)); - propItem = new MenuItem("" + newImages.viewText().getHTML() + " Properties", true, new PropertiesCommand(this, images, 0)); + sharingItem = new MenuItem("" + AbstractImagePrototype.create(newImages.sharing()).getHTML() + " Sharing", true, new PropertiesCommand(this, images, 1)); + propItem = new MenuItem("" + AbstractImagePrototype.create(newImages.viewText()).getHTML() + " Properties", true, new PropertiesCommand(this, images, 0)); TreeItem currentFolder = gss.getFolders().getCurrent(); if(currentFolder!=null && currentFolder.getUserObject() instanceof FolderResource) contextMenu.addItem(updateItem); String[] link = {"", ""}; gss.getTopPanel().getFileMenu().createDownloadLink(link, false); - downloadItem = new MenuItem("" + link[0] + newImages.download().getHTML() + " Download" + link[1] + "", true, downloadCmd); + downloadItem = new MenuItem("" + link[0] + AbstractImagePrototype.create(newImages.download()).getHTML() + " Download" + link[1] + "", true, downloadCmd); contextMenu.addItem(downloadItem); gss.getTopPanel().getFileMenu().createDownloadLink(link, true); - saveAsItem = new MenuItem("" + link[0] + newImages.download().getHTML() + " Save As" + link[1] + "", true, downloadCmd); + saveAsItem = new MenuItem("" + link[0] + AbstractImagePrototype.create(newImages.download()).getHTML() + " Save As" + link[1] + "", true, downloadCmd); contextMenu.addItem(saveAsItem); contextMenu.addItem(cutItem); contextMenu.addItem(copyItem); if(currentFolder!=null && currentFolder.getUserObject() instanceof FolderResource) contextMenu.addItem(pasteItem); - contextMenu.addItem("" + images.unselectAll().getHTML() + " Unselect", true, unselectAllCommand); + contextMenu.addItem("" + AbstractImagePrototype.create(images.unselectAll()).getHTML() + " Unselect", true, unselectAllCommand); contextMenu.addItem(trashItem); contextMenu.addItem(deleteItem); - contextMenu.addItem("" + images.refresh().getHTML() + " Refresh", true, new RefreshCommand(this, images)); + contextMenu.addItem("" + AbstractImagePrototype.create(images.refresh()).getHTML() + " Refresh", true, new RefreshCommand(this, images)); contextMenu.addItem(sharingItem); contextMenu.addItem(propItem); } @@ -196,8 +198,8 @@ public class FileContextMenu extends PopupPanel implements ClickListener { saveAsItem.setVisible(false); sharingItem.setVisible(false); } - - public void onClick(Widget sender) { + @Override + public void onClick(ClickEvent event) { if (GSS.get().getCurrentSelection() != null) if (GSS.get().getCurrentSelection() instanceof FileResource) { FileResource res = (FileResource) GSS.get().getCurrentSelection(); @@ -206,8 +208,8 @@ public class FileContextMenu extends PopupPanel implements ClickListener { menu = new FileContextMenu(images, true, false); else menu = new FileContextMenu(images, false, false); - int left = sender.getAbsoluteLeft(); - int top = sender.getAbsoluteTop() + sender.getOffsetHeight(); + int left = event.getRelativeElement().getAbsoluteLeft(); + int top = event.getRelativeElement().getAbsoluteTop() + event.getRelativeElement().getOffsetHeight(); menu.setPopupPosition(left, top); menu.show(); } else if (GSS.get().getCurrentSelection() instanceof List) { @@ -218,8 +220,8 @@ public class FileContextMenu extends PopupPanel implements ClickListener { menu = new FileContextMenu(images, false, false); menu.onMultipleSelection(); } - int left = sender.getAbsoluteLeft(); - int top = sender.getAbsoluteTop() + sender.getOffsetHeight(); + int left = event.getRelativeElement().getAbsoluteLeft(); + int top = event.getRelativeElement().getAbsoluteTop() + event.getRelativeElement().getOffsetHeight(); menu.setPopupPosition(left, top); menu.show(); } @@ -265,4 +267,6 @@ public class FileContextMenu extends PopupPanel implements ClickListener { menu.setPopupPosition(left, top); menu.show(); } + + }