Revision e2920e8d

b/src/gr/grnet/pithos/web/client/FileList.java
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("&nbsp;")
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("&nbsp;")
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);
b/src/gr/grnet/pithos/web/client/Pithos.java
356 356
        folderTreeView = new FolderTreeView(folderTreeViewModel);
357 357
        treeViews.add(folderTreeView);
358 358
        
359
        fileList = new FileList(this, images, folderTreeView);
359
        fileList = new FileList(this, images);
360 360
        inner.add(fileList);
361 361

  
362 362
        trees = new VerticalPanel();

Also available in: Unified diff