224 |
224 |
|
225 |
225 |
private final MultiSelectionModel<File> selectionModel;
|
226 |
226 |
|
|
227 |
Column<File, String> pathColumn;
|
|
228 |
|
227 |
229 |
protected final List<SortableHeader> allHeaders = new ArrayList<SortableHeader>();
|
228 |
230 |
|
229 |
231 |
SortableHeader nameHeader;
|
230 |
232 |
|
231 |
|
FolderTreeView treeView;
|
|
233 |
SortableHeader pathHeader;
|
232 |
234 |
|
233 |
235 |
protected Pithos app;
|
234 |
236 |
|
... | ... | |
240 |
242 |
*
|
241 |
243 |
* @param _images
|
242 |
244 |
*/
|
243 |
|
public FileList(final Pithos _app, Images _images, FolderTreeView _treeView) {
|
|
245 |
public FileList(final Pithos _app, Images _images) {
|
244 |
246 |
app = _app;
|
245 |
247 |
images = _images;
|
246 |
|
this.treeView = _treeView;
|
247 |
248 |
|
248 |
249 |
final CellTable.Resources resources = GWT.create(TableResources.class);
|
249 |
250 |
|
... | ... | |
285 |
286 |
@Override
|
286 |
287 |
public SafeHtml getValue(File object) {
|
287 |
288 |
SafeHtmlBuilder sb = new SafeHtmlBuilder();
|
288 |
|
sb.append(Templates.INSTANCE.filenameSpan(object.getName()));
|
289 |
|
if (object.getContentType() != null && (object.getContentType().endsWith("png") || object.getContentType().endsWith("gif") || object.getContentType().endsWith("jpeg"))) {
|
290 |
|
sb.appendHtmlConstant(" ")
|
291 |
|
.append(Templates.INSTANCE.viewLink(app.getApiPath() + object.getOwner() + object.getUri(), object.getName()));
|
|
289 |
if (!app.getSelectedTree().equals(app.mysharedTreeView)) {
|
|
290 |
sb.append(Templates.INSTANCE.filenameSpan(object.getName()));
|
|
291 |
if (object.getContentType() != null && (object.getContentType().endsWith("png") || object.getContentType().endsWith("gif") || object.getContentType().endsWith("jpeg"))) {
|
|
292 |
sb.appendHtmlConstant(" ")
|
|
293 |
.append(Templates.INSTANCE.viewLink(app.getApiPath() + object.getOwner() + object.getUri(), object.getName()));
|
|
294 |
}
|
|
295 |
}
|
|
296 |
else {
|
|
297 |
String name = object.getPath();
|
|
298 |
if (name.lastIndexOf("/") != -1) {
|
|
299 |
name = name.substring(name.lastIndexOf("/") + 1, name.length());
|
|
300 |
}
|
|
301 |
sb.append(Templates.INSTANCE.filenameSpan(name));
|
292 |
302 |
}
|
293 |
303 |
|
294 |
304 |
return sb.toSafeHtml();
|
... | ... | |
303 |
313 |
|
304 |
314 |
celltable.redrawHeaders();
|
305 |
315 |
|
|
316 |
pathColumn = new Column<File, String>(new TextCell()) {
|
|
317 |
|
|
318 |
@Override
|
|
319 |
public String getValue(File f) {
|
|
320 |
String path;
|
|
321 |
if (!app.getSelectedTree().equals(app.mysharedTreeView)) {
|
|
322 |
path = f.getParent().getPrefix();
|
|
323 |
if (path.length() == 0)
|
|
324 |
path = "/";
|
|
325 |
}
|
|
326 |
else {
|
|
327 |
path = f.getPath();
|
|
328 |
if (path.lastIndexOf("/") != -1)
|
|
329 |
path = path.substring(0, path.lastIndexOf("/"));
|
|
330 |
else
|
|
331 |
path = "/";
|
|
332 |
}
|
|
333 |
return path;
|
|
334 |
}
|
|
335 |
};
|
|
336 |
pathHeader = new SortableHeader("Path", "path");
|
|
337 |
celltable.addColumn(pathColumn, pathHeader);
|
|
338 |
allHeaders.add(pathHeader);
|
|
339 |
pathHeader.setUpdater(new FileValueUpdater(pathHeader));
|
|
340 |
|
306 |
341 |
Column<File,String> aColumn = new Column<File,String>(new TextCell()) {
|
307 |
342 |
@Override
|
308 |
343 |
public String getValue(File object) {
|
... | ... | |
473 |
508 |
* Fill the file cache with data.
|
474 |
509 |
*/
|
475 |
510 |
public void setFiles(final List<File> _files) {
|
|
511 |
if (!app.getSelectedTree().equals(app.mysharedTreeView)) {
|
|
512 |
if (celltable.getColumnIndex(pathColumn) != -1)
|
|
513 |
celltable.removeColumn(pathColumn);
|
|
514 |
}
|
|
515 |
else {
|
|
516 |
if (celltable.getColumnIndex(pathColumn) == -1)
|
|
517 |
celltable.insertColumn(2, pathColumn, pathHeader);
|
|
518 |
}
|
476 |
519 |
files = new ArrayList<File>();
|
477 |
520 |
for (File fres : _files) {
|
478 |
521 |
files.add(fres);
|