History

My first initial commit with all of mine experimental changes.

Dmitry Kabak (userdima committed 13 years ago

Commit d37b88d1 parent 3f5b46618352 files · +2598093 −-8690Browse files

Showing the changes to java/pkg/sun/awt/shell/DefaultShellFolder.java (1 of 18352 files). Show all

Unified · Split

java/pkg/sun/awt/shell/DefaultShellFolder.java+123−0
@@ -0,0 +1,123 @@
1/*
2 * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26package sun.awt.shell;
27
28import java.io.File;
29import java.security.AccessController;
30import javax.swing.Icon;
31import sun.security.action.GetPropertyAction;
32
33/**
34 * @author Michael Martak
35 * @since 1.4
36 */
37
38class DefaultShellFolder extends ShellFolder {
39
40 /**
41 * Create a file system shell folder from a file
42 */
43 DefaultShellFolder(ShellFolder parent, File f) {
44 super(parent, f.getAbsolutePath());
45 }
46
47 /**
48 * This method is implemented to make sure that no instances
49 * of <code>ShellFolder</code> are ever serialized. An instance of
50 * this default implementation can always be represented with a
51 * <code>java.io.File</code> object instead.
52 *
53 * @returns a <code>java.io.File</code> replacement object.
54 */
55 protected Object writeReplace() throws java.io.ObjectStreamException {
56 return new File(getPath());
57 }
58
59 /**
60 * @return An array of shell folders that are children of this shell folder
61 * object, null if this shell folder is empty.
62 */
63 public File[] listFiles() {
64 File[] files = super.listFiles();
65 if (files != null) {
66 for (int i = 0; i < files.length; i++) {
67 files[i] = new DefaultShellFolder(this, files[i]);
68 }
69 }
70 return files;
71 }
72
73 /**
74 * @return Whether this shell folder is a link
75 */
76 public boolean isLink() {
77 return false; // Not supported by default
78 }
79
80 /**
81 * @return Whether this shell folder is marked as hidden
82 */
83 public boolean isHidden() {
84 String fileName = getName();
85 if (fileName.length() > 0) {
86 return (fileName.charAt(0) == '.');
87 }
88 return false;
89 }
90
91 /**
92 * @return The shell folder linked to by this shell folder, or null
93 * if this shell folder is not a link
94 */
95 public ShellFolder getLinkLocation() {
96 return null; // Not supported by default
97 }
98
99 /**
100 * @return The name used to display this shell folder
101 */
102 public String getDisplayName() {
103 return getName();
104 }
105
106 /**
107 * @return The type of shell folder as a string
108 */
109 public String getFolderType() {
110 if (isDirectory()) {
111 return "File Folder"; // TODO : LOCALIZE THIS STRING!!!
112 } else {
113 return "File"; // TODO : LOCALIZE THIS STRING!!!
114 }
115 }
116
117 /**
118 * @return The executable type as a string
119 */
120 public String getExecutableType() {
121 return null; // Not supported by default
122 }
123}