Use a single configuration entry for the service home URL and avoid hardcoding it...
[pithos] / src / gr / ebs / gss / client / FileContextMenu.java
index 0d0f6dd..b795e5a 100644 (file)
@@ -71,6 +71,8 @@ public class FileContextMenu extends PopupPanel implements ClickListener {
 
        private MenuItem downloadItem;
 
+       private MenuItem saveAsItem;
+
        /**
         * The image bundle for this widget's images that reuses images defined in
         * other menus.
@@ -121,16 +123,16 @@ public class FileContextMenu extends PopupPanel implements ClickListener {
                MenuBar contextMenu = new MenuBar(true);
                if (isEmpty) {
                        contextMenu.addItem(pasteItem);
-                       if (gss.getFolders().getCurrent() != null)
-                               if (gss.getFolders().isFileItem(gss.getFolders().getCurrent()))
-                                       contextMenu.addItem("<span>" + newImages.fileUpdate().getHTML() + "&nbsp;Upload</span>", true, new UploadFileCommand(this, images));
-                               else if (gss.getFolders().isMySharedItem(gss.getFolders().getCurrent()) || GSS  .get()
+                       if (GSS.get().getFolders().getCurrent() != null)
+                               if (GSS.get().getFolders().isFileItem(GSS.get().getFolders().getCurrent()))
+                                       contextMenu.addItem("<span>" + newImages.fileUpdate().getHTML() + "&nbsp;Upload</span>", true, new UploadFileCommand(this));
+                               else if (GSS.get().getFolders().isMySharedItem(GSS.get().getFolders().getCurrent()) || GSS      .get()
                                                                                                                                                                                                                        .getFolders()
                                                                                                                                                                                                                        .isOthersSharedItem(GSS .get()
                                                                                                                                                                                                                                                                        .getFolders()
                                                                                                                                                                                                                                                                        .getCurrent()))
-                                       if(gss.getFolders().getCurrent().getUserObject() instanceof FolderResource)
-                                               contextMenu.addItem("<span>" + newImages.fileUpdate().getHTML() + "&nbsp;Upload</span>", true, new UploadFileCommand(this, images));
+                                       if(GSS.get().getFolders().getCurrent().getUserObject() instanceof FolderResource)
+                                               contextMenu.addItem("<span>" + newImages.fileUpdate().getHTML() + "&nbsp;Upload</span>", true, new UploadFileCommand(this));
                        contextMenu.addItem("<span>" + images.refresh().getHTML() + "&nbsp;Refresh</span>", true, new RefreshCommand(this, images));
                } else if (isTrash) {
                        contextMenu.addItem("<span>" + newImages.versions().getHTML() + "&nbsp;Restore</span>", true, new RestoreTrashCommand(this));
@@ -149,7 +151,7 @@ public class FileContextMenu extends PopupPanel implements ClickListener {
                        cutItem = new MenuItem("<span>" + newImages.cut().getHTML() + "&nbsp;Cut</span>", true, new CutCommand(this));
                        copyItem = new MenuItem("<span>" + newImages.copy().getHTML() + "&nbsp;Copy</span>", true, new CopyCommand(this));
 
-                       updateItem = new MenuItem("<span>" + newImages.fileUpdate().getHTML() + "&nbsp;Upload</span>", true, new UploadFileCommand(this, images));
+                       updateItem = new MenuItem("<span>" + newImages.fileUpdate().getHTML() + "&nbsp;Upload</span>", true, new UploadFileCommand(this));
 
                        trashItem = new MenuItem("<span>" + newImages.emptyTrash().getHTML() + "&nbsp;Move to Trash</span>", true, new ToTrashCommand(this));
                        deleteItem = new MenuItem("<span>" + newImages.delete().getHTML() + "&nbsp;Delete</span>", true, new DeleteCommand(this, images));
@@ -161,9 +163,12 @@ public class FileContextMenu extends PopupPanel implements ClickListener {
                        if(currentFolder!=null && currentFolder.getUserObject() instanceof FolderResource)
                                contextMenu.addItem(updateItem);
                        String[] link = {"", ""};
-                       gss.getTopPanel().getFileMenu().createDownloadLink(link);
+                       gss.getTopPanel().getFileMenu().createDownloadLink(link, false);
                        downloadItem = new MenuItem("<span>" + link[0] + newImages.download().getHTML() + " Download" + link[1] + "</span>", true, downloadCmd);
                        contextMenu.addItem(downloadItem);
+                       gss.getTopPanel().getFileMenu().createDownloadLink(link, true);
+                       saveAsItem = new MenuItem("<span>" + link[0] + newImages.download().getHTML() + " Save As" + link[1] + "</span>", true, downloadCmd);
+                       contextMenu.addItem(saveAsItem);
                        contextMenu.addItem(cutItem);
                        contextMenu.addItem(copyItem);
                        if(currentFolder!=null && currentFolder.getUserObject() instanceof FolderResource)