bff003051655ed8a914b8f4042b3fb5266e98693
[jalviewjs.git] / site / swingjs / j2s / jssun / awt / shell / ShellFolder.js
1 Clazz.declarePackage ("jssun.awt.shell");\r
2 Clazz.load (["java.io.File"], "jssun.awt.shell.ShellFolder", ["java.io.FileNotFoundException", "java.lang.Error", "java.util.Vector", "java.awt.Toolkit", "jssun.awt.shell.ShellFolderManager"], function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.parent = null;\r
5 Clazz.instantialize (this, arguments);\r
6 }, jssun.awt.shell, "ShellFolder", java.io.File);\r
7 Clazz.makeConstructor (c$, \r
8 function (parent, pathname) {\r
9 Clazz.superConstructor (this, jssun.awt.shell.ShellFolder, [(pathname != null) ? pathname : "ShellFolder"]);\r
10 this.parent = parent;\r
11 }, "jssun.awt.shell.ShellFolder,~S");\r
12 Clazz.defineMethod (c$, "isFileSystem", \r
13 function () {\r
14 return (!this.getPath ().startsWith ("ShellFolder"));\r
15 });\r
16 Clazz.defineMethod (c$, "getParent", \r
17 function () {\r
18 if (this.parent == null && this.isFileSystem ()) {\r
19 return Clazz.superCall (this, jssun.awt.shell.ShellFolder, "getParent", []);\r
20 }if (this.parent != null) {\r
21 return (this.parent.getPath ());\r
22 } else {\r
23 return null;\r
24 }});\r
25 Clazz.defineMethod (c$, "getParentFile", \r
26 function () {\r
27 if (this.parent != null) {\r
28 return this.parent;\r
29 } else if (this.isFileSystem ()) {\r
30 return Clazz.superCall (this, jssun.awt.shell.ShellFolder, "getParentFile", []);\r
31 } else {\r
32 return null;\r
33 }});\r
34 Clazz.defineMethod (c$, "listFiles", \r
35 function () {\r
36 return this.listFiles (true);\r
37 });\r
38 Clazz.defineMethod (c$, "listFiles", \r
39 function (includeHiddenFiles) {\r
40 var files = Clazz.superCall (this, jssun.awt.shell.ShellFolder, "listFiles", []);\r
41 if (!includeHiddenFiles) {\r
42 var v =  new java.util.Vector ();\r
43 var nameCount = (files == null) ? 0 : files.length;\r
44 for (var i = 0; i < nameCount; i++) {\r
45 if (!files[i].isHidden ()) {\r
46 v.addElement (files[i]);\r
47 }}\r
48 files = v.toArray ( new Array (v.size ()));\r
49 }return files;\r
50 }, "~B");\r
51 Clazz.defineMethod (c$, "compareTo", \r
52 function (file2) {\r
53 if (file2 == null || !(Clazz.instanceOf (file2, jssun.awt.shell.ShellFolder)) || ((Clazz.instanceOf (file2, jssun.awt.shell.ShellFolder)) && (file2).isFileSystem ())) {\r
54 if (this.isFileSystem ()) {\r
55 return Clazz.superCall (this, jssun.awt.shell.ShellFolder, "compareTo", [file2]);\r
56 } else {\r
57 return -1;\r
58 }} else {\r
59 if (this.isFileSystem ()) {\r
60 return 1;\r
61 } else {\r
62 return this.getName ().compareTo (file2.getName ());\r
63 }}}, "java.io.File");\r
64 Clazz.defineMethod (c$, "getIcon", \r
65 function (getLargeIcon) {\r
66 return null;\r
67 }, "~B");\r
68 c$.getShellFolder = Clazz.defineMethod (c$, "getShellFolder", \r
69 function (file) {\r
70 if (Clazz.instanceOf (file, jssun.awt.shell.ShellFolder)) {\r
71 return file;\r
72 }if (!file.exists ()) {\r
73 throw  new java.io.FileNotFoundException ();\r
74 }return jssun.awt.shell.ShellFolder.shellFolderManager.createShellFolder (file);\r
75 }, "java.io.File");\r
76 c$.get = Clazz.defineMethod (c$, "get", \r
77 function (key) {\r
78 return jssun.awt.shell.ShellFolder.shellFolderManager.get (key);\r
79 }, "~S");\r
80 c$.isComputerNode = Clazz.defineMethod (c$, "isComputerNode", \r
81 function (dir) {\r
82 return jssun.awt.shell.ShellFolder.shellFolderManager.isComputerNode (dir);\r
83 }, "java.io.File");\r
84 c$.isFileSystemRoot = Clazz.defineMethod (c$, "isFileSystemRoot", \r
85 function (dir) {\r
86 return jssun.awt.shell.ShellFolder.shellFolderManager.isFileSystemRoot (dir);\r
87 }, "java.io.File");\r
88 c$.getNormalizedFile = Clazz.defineMethod (c$, "getNormalizedFile", \r
89 function (f) {\r
90 var canonical = f.getCanonicalFile ();\r
91 if (f.equals (canonical)) {\r
92 return canonical;\r
93 }return  new java.io.File (f.toURI ().normalize ());\r
94 }, "java.io.File");\r
95 c$.sortFiles = Clazz.defineMethod (c$, "sortFiles", \r
96 function (files) {\r
97 jssun.awt.shell.ShellFolder.shellFolderManager.sortFiles (files);\r
98 }, "java.util.List");\r
99 Clazz.defineMethod (c$, "isAbsolute", \r
100 function () {\r
101 return (!this.isFileSystem () || Clazz.superCall (this, jssun.awt.shell.ShellFolder, "isAbsolute", []));\r
102 });\r
103 Clazz.defineMethod (c$, "getAbsoluteFile", \r
104 function () {\r
105 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "getAbsoluteFile", []) : this);\r
106 });\r
107 Clazz.defineMethod (c$, "canRead", \r
108 function () {\r
109 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "canRead", []) : true);\r
110 });\r
111 Clazz.defineMethod (c$, "canWrite", \r
112 function () {\r
113 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "canWrite", []) : false);\r
114 });\r
115 Clazz.defineMethod (c$, "exists", \r
116 function () {\r
117 return (!this.isFileSystem () || jssun.awt.shell.ShellFolder.isFileSystemRoot (this) || Clazz.superCall (this, jssun.awt.shell.ShellFolder, "exists", []));\r
118 });\r
119 Clazz.defineMethod (c$, "isDirectory", \r
120 function () {\r
121 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "isDirectory", []) : true);\r
122 });\r
123 Clazz.defineMethod (c$, "isFile", \r
124 function () {\r
125 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "isFile", []) : !this.isDirectory ());\r
126 });\r
127 Clazz.defineMethod (c$, "lastModified", \r
128 function () {\r
129 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "lastModified", []) : 0);\r
130 });\r
131 Clazz.defineMethod (c$, "length", \r
132 function () {\r
133 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "length", []) : 0);\r
134 });\r
135 Clazz.defineMethod (c$, "createNewFile", \r
136 function () {\r
137 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "createNewFile", []) : false);\r
138 });\r
139 Clazz.defineMethod (c$, "$delete", \r
140 function () {\r
141 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "delete", []) : false);\r
142 });\r
143 Clazz.defineMethod (c$, "deleteOnExit", \r
144 function () {\r
145 if (this.isFileSystem ()) {\r
146 Clazz.superCall (this, jssun.awt.shell.ShellFolder, "deleteOnExit", []);\r
147 } else {\r
148 }});\r
149 Clazz.defineMethod (c$, "mkdir", \r
150 function () {\r
151 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "mkdir", []) : false);\r
152 });\r
153 Clazz.defineMethod (c$, "mkdirs", \r
154 function () {\r
155 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "mkdirs", []) : false);\r
156 });\r
157 Clazz.defineMethod (c$, "renameTo", \r
158 function (dest) {\r
159 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "renameTo", [dest]) : false);\r
160 }, "java.io.File");\r
161 Clazz.defineMethod (c$, "setLastModified", \r
162 function (time) {\r
163 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "setLastModified", [time]) : false);\r
164 }, "~N");\r
165 Clazz.defineMethod (c$, "setReadOnly", \r
166 function () {\r
167 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "setReadOnly", []) : false);\r
168 });\r
169 Clazz.defineMethod (c$, "toString", \r
170 function () {\r
171 return (this.isFileSystem () ? Clazz.superCall (this, jssun.awt.shell.ShellFolder, "toString", []) : this.getDisplayName ());\r
172 });\r
173 c$.getFolderColumns = Clazz.defineMethod (c$, "getFolderColumns", \r
174 function (dir) {\r
175 return jssun.awt.shell.ShellFolder.shellFolderManager.getFolderColumns (dir);\r
176 }, "java.io.File");\r
177 c$.getFolderColumnValue = Clazz.defineMethod (c$, "getFolderColumnValue", \r
178 function (file, column) {\r
179 return jssun.awt.shell.ShellFolder.shellFolderManager.getFolderColumnValue (file, column);\r
180 }, "java.io.File,~N");\r
181 Clazz.defineMethod (c$, "getFolderColumns", \r
182 function () {\r
183 return null;\r
184 });\r
185 Clazz.defineMethod (c$, "getFolderColumnValue", \r
186 function (column) {\r
187 return null;\r
188 }, "~N");\r
189 Clazz.defineStatics (c$,\r
190 "shellFolderManager", null);\r
191 {\r
192 var managerClass = java.awt.Toolkit.getDefaultToolkit ().getDesktopProperty ("Shell.shellFolderManager");\r
193 if (managerClass == null) {\r
194 managerClass = jssun.awt.shell.ShellFolderManager;\r
195 }try {\r
196 jssun.awt.shell.ShellFolder.shellFolderManager = managerClass.newInstance ();\r
197 } catch (e$$) {\r
198 if (Clazz.exceptionOf (e$$, InstantiationException)) {\r
199 var e = e$$;\r
200 {\r
201 throw  new Error ("Could not instantiate Shell Folder Manager: " + managerClass.getName ());\r
202 }\r
203 } else if (Clazz.exceptionOf (e$$, IllegalAccessException)) {\r
204 var e = e$$;\r
205 {\r
206 throw  new Error ("Could not access Shell Folder Manager: " + managerClass.getName ());\r
207 }\r
208 } else {\r
209 throw e$$;\r
210 }\r
211 }\r
212 }});\r