+ }
+
+ /**
+ * <pre>
+ * Assign specific colors to:
+ * Directory
+ * Executable file
+ * Non executable file
+ * </pre>
+ */
+ private static Color getFileColor(final File file, final boolean selected) {
+ if (file.isDirectory())
+ if (selected)
+ return BUTTON_BG_DIRECTORY_SELECTED;
+ else
+ return BUTTON_BG_DIRECTORY;
+
+ if (file.isFile())
+ if (file.canExecute()) {
+ if (selected)
+ return BUTTON_BG_EXECUTABLE_FILE_SELECTED;
+ else
+ return BUTTON_BG_EXECUTABLE_FILE;
+ } else if (selected)
+ return BUTTON_BG_NONEXECUTABLE_FILE_SELECTED;
+ else
+ return BUTTON_BG_NONEXECUTABLE_FILE;
+
+ if (selected)
+ return BUTTON_BG_LINK_SELECTED;
+ else
+ return BUTTON_BG_LINK;
+ }