Revision cf2dddff
b/web_client/src/gr/grnet/pithos/web/client/Clipboard.java | ||
---|---|---|
81 | 81 |
folder = null; |
82 | 82 |
files = null; |
83 | 83 |
} |
84 |
|
|
85 |
public boolean isEmpty() { |
|
86 |
return (files == null || files.isEmpty()) && folder == null; |
|
87 |
} |
|
88 |
|
|
89 |
public boolean hasFiles() { |
|
90 |
return files != null && !files.isEmpty(); |
|
91 |
} |
|
84 | 92 |
} |
b/web_client/src/gr/grnet/pithos/web/client/FileContextMenu.java | ||
---|---|---|
137 | 137 |
images = newImages; |
138 | 138 |
MenuBar contextMenu = new MenuBar(true); |
139 | 139 |
|
140 |
pasteItem = new MenuItem("<span>" + AbstractImagePrototype.create(images.paste()).getHTML() + " Paste</span>", true, new PasteCommand(GSS.get(), this, selectedFolder)); |
|
141 |
contextMenu.addItem(pasteItem); |
|
142 |
|
|
143 |
MenuItem upload = new MenuItem("<span>" + AbstractImagePrototype.create(images.fileUpdate()).getHTML() + " Upload</span>", true, new UploadFileCommand(this, selectedFolder)); |
|
144 |
contextMenu.addItem(upload); |
|
145 |
|
|
146 |
MenuItem refresh = new MenuItem("<span>" + AbstractImagePrototype.create(images.refresh()).getHTML() + " Refresh</span>", true, new RefreshCommand(this, images)); |
|
147 |
contextMenu.addItem(refresh); |
|
148 |
|
|
149 |
if (isTrash) { |
|
150 |
MenuItem restore = new MenuItem("<span>" + AbstractImagePrototype.create(images.versions()).getHTML() + " Restore</span>", true, new RestoreTrashCommand(this)); |
|
151 |
contextMenu.addItem(restore); |
|
152 |
|
|
153 |
MenuItem delete = new MenuItem("<span>" + AbstractImagePrototype.create(images.delete()).getHTML() + " Delete</span>", true, new DeleteCommand(this, null, images)); |
|
154 |
contextMenu.addItem(delete); |
|
155 |
} else { |
|
140 |
if (GSS.get().getClipboard().hasFiles()) { |
|
141 |
pasteItem = new MenuItem("<span>" + AbstractImagePrototype.create(images.paste()).getHTML() + " Paste</span>", true, new PasteCommand(GSS.get(), this, selectedFolder)); |
|
142 |
contextMenu.addItem(pasteItem); |
|
143 |
} |
|
144 |
|
|
145 |
// MenuItem upload = new MenuItem("<span>" + AbstractImagePrototype.create(images.fileUpdate()).getHTML() + " Upload</span>", true, new UploadFileCommand(this, selectedFolder)); |
|
146 |
// contextMenu.addItem(upload); |
|
147 |
|
|
148 |
// MenuItem refresh = new MenuItem("<span>" + AbstractImagePrototype.create(images.refresh()).getHTML() + " Refresh</span>", true, new RefreshCommand(this, images)); |
|
149 |
// contextMenu.addItem(refresh); |
|
150 |
|
|
151 |
// if (isTrash) { |
|
152 |
// MenuItem restore = new MenuItem("<span>" + AbstractImagePrototype.create(images.versions()).getHTML() + " Restore</span>", true, new RestoreTrashCommand(this)); |
|
153 |
// contextMenu.addItem(restore); |
|
154 |
// |
|
155 |
// MenuItem delete = new MenuItem("<span>" + AbstractImagePrototype.create(images.delete()).getHTML() + " Delete</span>", true, new DeleteCommand(this, null, images)); |
|
156 |
// contextMenu.addItem(delete); |
|
157 |
// } else { |
|
156 | 158 |
cutItem = new MenuItem("<span id='fileContextMenu.cut'>" + AbstractImagePrototype.create(newImages.cut()).getHTML() + " Cut</span>", true, new CutCommand(GSS.get(), this, selectedFiles)); |
157 | 159 |
contextMenu.addItem(cutItem); |
158 | 160 |
|
... | ... | |
165 | 167 |
deleteItem = new MenuItem("<span>" + AbstractImagePrototype.create(newImages.delete()).getHTML() + " Delete</span>", true, new DeleteCommand(this, selectedFiles, images)); |
166 | 168 |
contextMenu.addItem(deleteItem); |
167 | 169 |
|
168 |
sharingItem = new MenuItem("<span>" + AbstractImagePrototype.create(newImages.sharing()).getHTML() + " Sharing</span>", true, new PropertiesCommand(this, images, 1)); |
|
169 |
contextMenu.addItem(sharingItem); |
|
170 |
// sharingItem = new MenuItem("<span>" + AbstractImagePrototype.create(newImages.sharing()).getHTML() + " Sharing</span>", true, new PropertiesCommand(this, images, 1));
|
|
171 |
// contextMenu.addItem(sharingItem);
|
|
170 | 172 |
|
171 |
propItem = new MenuItem("<span>" + AbstractImagePrototype.create(newImages.viewText()).getHTML() + " Properties</span>", true, new PropertiesCommand(this, images, 0)); |
|
172 |
contextMenu.addItem(propItem); |
|
173 |
// propItem = new MenuItem("<span>" + AbstractImagePrototype.create(newImages.viewText()).getHTML() + " Properties</span>", true, new PropertiesCommand(this, images, 0));
|
|
174 |
// contextMenu.addItem(propItem);
|
|
173 | 175 |
|
174 |
downloadItem = new MenuItem("<span><a class='hidden-link' href='" + GSS.get().getApiPath() + GSS.get().getUsername() + selectedFiles.get(0).getUri() + "?X-Auth-Token=" + GSS.get().getToken() + "' target='_blank'>" + AbstractImagePrototype.create(newImages.download()).getHTML() + " Download</a></span>", true, new Command() { |
|
175 |
@Override |
|
176 |
public void execute() { |
|
177 |
} |
|
178 |
}); |
|
179 |
contextMenu.addItem(downloadItem); |
|
176 |
// downloadItem = new MenuItem("<span><a class='hidden-link' href='" + GSS.get().getApiPath() + GSS.get().getUsername() + selectedFiles.get(0).getUri() + "?X-Auth-Token=" + GSS.get().getToken() + "' target='_blank'>" + AbstractImagePrototype.create(newImages.download()).getHTML() + " Download</a></span>", true, new Command() {
|
|
177 |
// @Override
|
|
178 |
// public void execute() {
|
|
179 |
// }
|
|
180 |
// });
|
|
181 |
// contextMenu.addItem(downloadItem);
|
|
180 | 182 |
|
181 |
final Command unselectAllCommand = new Command() { |
|
182 |
|
|
183 |
@Override |
|
184 |
public void execute() { |
|
185 |
hide(); |
|
186 |
if(GSS.get().isFileListShowing()) |
|
187 |
GSS.get().getFileList().clearSelectedRows(); |
|
188 |
} |
|
189 |
}; |
|
190 |
MenuItem unSelect = new MenuItem("<span>" + AbstractImagePrototype.create(images.unselectAll()).getHTML() + " Unselect</span>", true, unselectAllCommand); |
|
191 |
contextMenu.addItem(unSelect); |
|
192 |
|
|
193 |
} |
|
183 |
// final Command unselectAllCommand = new Command() {
|
|
184 |
// |
|
185 |
// @Override
|
|
186 |
// public void execute() {
|
|
187 |
// hide();
|
|
188 |
// if(GSS.get().isFileListShowing())
|
|
189 |
// GSS.get().getFileList().clearSelectedRows();
|
|
190 |
// }
|
|
191 |
// };
|
|
192 |
// MenuItem unSelect = new MenuItem("<span>" + AbstractImagePrototype.create(images.unselectAll()).getHTML() + " Unselect</span>", true, unselectAllCommand);
|
|
193 |
// contextMenu.addItem(unSelect);
|
|
194 |
|
|
195 |
// }
|
|
194 | 196 |
add(contextMenu); |
195 |
|
|
196 |
// if (gss.getClipboard().hasFileItem()) |
|
197 |
// pasteItem.setVisible(true); |
|
198 |
// else |
|
199 |
// pasteItem.setVisible(false); |
|
200 | 197 |
} |
201 | 198 |
} |
b/web_client/src/gr/grnet/pithos/web/client/FolderContextMenu.java | ||
---|---|---|
98 | 98 |
MenuItem newFolder = new MenuItem("<span id = 'folderContextMenu.newFolder'>" + AbstractImagePrototype.create(newImages.folderNew()).getHTML() + " New Folder</span>", true, new NewFolderCommand(this, folder, images)); |
99 | 99 |
contextMenu.addItem(newFolder); |
100 | 100 |
|
101 |
// do not show the copy & cut option for the user's root folder |
|
102 |
MenuItem cut = new MenuItem("<span id = 'folderContextMenu.cut'>" + AbstractImagePrototype.create(newImages.cut()).getHTML() + " Cut</span>", true, new CutCommand(GSS.get(), this, folder)); |
|
103 |
contextMenu.addItem(cut); |
|
101 |
if (!folder.isContainer()) { |
|
102 |
MenuItem cut = new MenuItem("<span id = 'folderContextMenu.cut'>" + AbstractImagePrototype.create(newImages.cut()).getHTML() + " Cut</span>", true, new CutCommand(GSS.get(), this, folder)); |
|
103 |
contextMenu.addItem(cut); |
|
104 |
} |
|
104 | 105 |
|
105 | 106 |
MenuItem copy = new MenuItem("<span id = 'folderContextMenu.copy'>" + AbstractImagePrototype.create(newImages.copy()).getHTML() + " Copy</span>", true, new CopyCommand(GSS.get(), this, folder)); |
106 | 107 |
contextMenu.addItem(copy); |
107 | 108 |
|
108 |
pasteItem = new MenuItem("<span id = 'folderContextMenu.paste'>" + AbstractImagePrototype.create(newImages.paste()).getHTML() + " Paste</span>", true, new PasteCommand(GSS.get(), this, folder)); |
|
109 |
contextMenu.addItem(pasteItem); |
|
109 |
if (!GSS.get().getClipboard().isEmpty()) { |
|
110 |
pasteItem = new MenuItem("<span id = 'folderContextMenu.paste'>" + AbstractImagePrototype.create(newImages.paste()).getHTML() + " Paste</span>", true, new PasteCommand(GSS.get(), this, folder)); |
|
111 |
contextMenu.addItem(pasteItem); |
|
112 |
} |
|
110 | 113 |
|
111 |
// do not show delete options for the user's root folder
|
|
112 |
MenuItem moveToTrash = new MenuItem("<span id = 'folderContextMenu.moveToTrash'>" + AbstractImagePrototype.create(newImages.emptyTrash()).getHTML() + " Move to Trash</span>", true, new ToTrashCommand(GSS.get(), this, folder)); |
|
113 |
contextMenu.addItem(moveToTrash); |
|
114 |
if (!folder.isContainer()) {
|
|
115 |
MenuItem moveToTrash = new MenuItem("<span id = 'folderContextMenu.moveToTrash'>" + AbstractImagePrototype.create(newImages.emptyTrash()).getHTML() + " Move to Trash</span>", true, new ToTrashCommand(GSS.get(), this, folder));
|
|
116 |
contextMenu.addItem(moveToTrash);
|
|
114 | 117 |
|
115 |
MenuItem delete = new MenuItem("<span id = 'folderContextMenu.delete'>" + AbstractImagePrototype.create(newImages.delete()).getHTML() + " Delete</span>", true, new DeleteCommand(this, folder, newImages)); |
|
116 |
contextMenu.addItem(delete); |
|
118 |
MenuItem delete = new MenuItem("<span id = 'folderContextMenu.delete'>" + AbstractImagePrototype.create(newImages.delete()).getHTML() + " Delete</span>", true, new DeleteCommand(this, folder, newImages)); |
|
119 |
contextMenu.addItem(delete); |
|
120 |
} |
|
117 | 121 |
|
118 |
MenuItem refresh = new MenuItem("<span id = 'folderContextMenu.refresh'>" + AbstractImagePrototype.create(images.refresh()).getHTML() + " Refresh</span>", true, new RefreshCommand(this, images)); |
|
119 |
contextMenu.addItem(refresh); |
|
122 |
// MenuItem refresh = new MenuItem("<span id = 'folderContextMenu.refresh'>" + AbstractImagePrototype.create(images.refresh()).getHTML() + " Refresh</span>", true, new RefreshCommand(this, images));
|
|
123 |
// contextMenu.addItem(refresh);
|
|
120 | 124 |
|
121 |
MenuItem sharing = new MenuItem("<span id = 'folderContextMenu.sharing'>" + AbstractImagePrototype.create(newImages.sharing()).getHTML() + " Sharing</span>", true, new PropertiesCommand(this, newImages, 1)); |
|
122 |
contextMenu.addItem(sharing); |
|
125 |
// MenuItem sharing = new MenuItem("<span id = 'folderContextMenu.sharing'>" + AbstractImagePrototype.create(newImages.sharing()).getHTML() + " Sharing</span>", true, new PropertiesCommand(this, newImages, 1));
|
|
126 |
// contextMenu.addItem(sharing);
|
|
123 | 127 |
|
124 |
MenuItem properties = new MenuItem("<span id = 'folderContextMenu.properties'>" + AbstractImagePrototype.create(newImages.viewText()).getHTML() + " Properties</span>", true, new PropertiesCommand(this, newImages, 0)); |
|
125 |
contextMenu.addItem(properties); |
|
128 |
// MenuItem properties = new MenuItem("<span id = 'folderContextMenu.properties'>" + AbstractImagePrototype.create(newImages.viewText()).getHTML() + " Properties</span>", true, new PropertiesCommand(this, newImages, 0));
|
|
129 |
// contextMenu.addItem(properties);
|
|
126 | 130 |
|
127 | 131 |
add(contextMenu); |
128 | 132 |
} |
b/web_client/src/gr/grnet/pithos/web/client/foldertree/Folder.java | ||
---|---|---|
233 | 233 |
public boolean isInTrash() { |
234 | 234 |
return inTrash; |
235 | 235 |
} |
236 |
|
|
237 |
public boolean isContainer() { |
|
238 |
return parent == null; |
|
239 |
} |
|
236 | 240 |
} |
Also available in: Unified diff