]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.eclipse.ui/src/org/argeo/eclipse/ui/fs/FileIconNameLabelProvider.java
Improve Javadoc
[lgpl/argeo-commons.git] / org.argeo.eclipse.ui / src / org / argeo / eclipse / ui / fs / FileIconNameLabelProvider.java
1 package org.argeo.eclipse.ui.fs;
2
3 import java.nio.file.Files;
4 import java.nio.file.Path;
5
6 import org.eclipse.jface.resource.ImageDescriptor;
7 import org.eclipse.jface.viewers.ColumnLabelProvider;
8 import org.eclipse.swt.graphics.Image;
9
10 /** Basic label provider with icon for NIO file viewers */
11 public class FileIconNameLabelProvider extends ColumnLabelProvider {
12 private static final long serialVersionUID = 8187902187946523148L;
13
14 private Image folderIcon;
15 private Image fileIcon;
16
17 public FileIconNameLabelProvider() {
18 // if (!PlatformUI.isWorkbenchRunning()) {
19 folderIcon = ImageDescriptor.createFromFile(getClass(), "fldr_obj.gif").createImage();
20 fileIcon = ImageDescriptor.createFromFile(getClass(), "file_obj.gif").createImage();
21 // }
22 }
23
24 @Override
25 public void dispose() {
26 if (folderIcon != null)
27 folderIcon.dispose();
28 if (fileIcon != null)
29 fileIcon.dispose();
30 super.dispose();
31 }
32
33 @Override
34 public String getText(Object element) {
35 if (element instanceof Path) {
36 Path curr = ((Path) element);
37 Path name = curr.getFileName();
38 if (name == null)
39 return "[No name]";
40 else
41 return name.toString();
42 }
43 return null;
44 }
45
46 @Override
47 public Image getImage(Object element) {
48 if (element instanceof Path) {
49 Path curr = ((Path) element);
50 if (Files.isDirectory(curr))
51 // if (folderIcon != null)
52 return folderIcon;
53 // else
54 // return
55 // PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER);
56 // else if (fileIcon != null)
57 return fileIcon;
58 // else
59 // return
60 // PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FILE);
61 }
62 return null;
63 }
64 }