Mercurial > projects > dwt-addons
annotate dwtx/jface/resource/FileImageDescriptor.d @ 90:7ffeace6c47f
Update 3.4M7 to 3.4
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Sun, 06 Jul 2008 23:30:07 +0200 |
parents | 6787ae179808 |
children |
rev | line source |
---|---|
4 | 1 /******************************************************************************* |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
2 * Copyright (c) 2000, 2008 IBM Corporation and others. |
4 | 3 * All rights reserved. This program and the accompanying materials |
4 * are made available under the terms of the Eclipse Public License v1.0 | |
5 * which accompanies this distribution, and is available at | |
6 * http://www.eclipse.org/legal/epl-v10.html | |
7 * | |
8 * Contributors: | |
9 * IBM Corporation - initial API and implementation | |
10 * Port to the D programming language: | |
11 * Frank Benoit <benoit@tionex.de> | |
12 *******************************************************************************/ | |
13 module dwtx.jface.resource.FileImageDescriptor; | |
14 | |
15 import dwtx.jface.resource.ImageDescriptor; | |
16 | |
17 // import java.io.BufferedInputStream; | |
18 // import java.io.FileInputStream; | |
19 // import java.io.FileNotFoundException; | |
20 // import java.io.IOException; | |
21 // import java.io.InputStream; | |
22 | |
23 import dwt.DWT; | |
24 import dwt.DWTException; | |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
25 import dwt.graphics.Device; |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
26 import dwt.graphics.Image; |
4 | 27 import dwt.graphics.ImageData; |
90 | 28 // import dwtx.core.runtime.FileLocator; |
29 // import dwtx.core.runtime.Path; | |
4 | 30 |
31 import dwt.dwthelper.utils; | |
32 import dwt.dwthelper.InputStream; | |
33 import dwt.dwthelper.FileInputStream; | |
34 import dwt.dwthelper.BufferedInputStream; | |
38
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
35 import dwt.dwthelper.ByteArrayInputStream; |
4 | 36 |
40
da5ad8eedf5d
debug prints, dwt.dwthelper restructure, ...
Frank Benoit <benoit@tionex.de>
parents:
38
diff
changeset
|
37 import tango.util.log.Trace; |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
38 import tango.text.convert.Format; |
40
da5ad8eedf5d
debug prints, dwt.dwthelper restructure, ...
Frank Benoit <benoit@tionex.de>
parents:
38
diff
changeset
|
39 |
4 | 40 /** |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
41 * An image descriptor that loads its image information from a file. |
4 | 42 */ |
43 class FileImageDescriptor : ImageDescriptor { | |
44 | |
45 /** | |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
46 * The class whose resource directory contain the file, or <code>null</code> |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
47 * if none. |
4 | 48 */ |
38
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
49 // private ClassInfo location; |
4 | 50 |
51 /** | |
52 * The name of the file. | |
53 */ | |
40
da5ad8eedf5d
debug prints, dwt.dwthelper restructure, ...
Frank Benoit <benoit@tionex.de>
parents:
38
diff
changeset
|
54 private String name; |
38
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
55 private void[] importdata; |
4 | 56 |
57 /** | |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
58 * Creates a new file image descriptor. The file has the given file name and |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
59 * is located in the given class's resource directory. If the given class is |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
60 * <code>null</code>, the file name must be absolute. |
4 | 61 * <p> |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
62 * Note that the file is not accessed until its <code>getImageDate</code> |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
63 * method is called. |
4 | 64 * </p> |
71 | 65 * |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
66 * @param clazz |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
67 * class for resource directory, or <code>null</code> |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
68 * @param filename |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
69 * the name of the file |
4 | 70 */ |
40
da5ad8eedf5d
debug prints, dwt.dwthelper restructure, ...
Frank Benoit <benoit@tionex.de>
parents:
38
diff
changeset
|
71 this(ImportData importdata) { |
38
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
72 // this.location = clazz; |
40
da5ad8eedf5d
debug prints, dwt.dwthelper restructure, ...
Frank Benoit <benoit@tionex.de>
parents:
38
diff
changeset
|
73 this.name = importdata.name; |
da5ad8eedf5d
debug prints, dwt.dwthelper restructure, ...
Frank Benoit <benoit@tionex.de>
parents:
38
diff
changeset
|
74 this.importdata = importdata.data; |
4 | 75 } |
76 | |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
77 /* |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
78 * (non-Javadoc) Method declared on Object. |
4 | 79 */ |
43
ea8ff534f622
Fix override and super aliases
Frank Benoit <benoit@tionex.de>
parents:
40
diff
changeset
|
80 public override int opEquals(Object o) { |
4 | 81 if (!( cast(FileImageDescriptor)o )) { |
82 return false; | |
83 } | |
84 FileImageDescriptor other = cast(FileImageDescriptor) o; | |
38
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
85 // if (location !is null) { |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
86 // if ( location.name != other.location.name ) { |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
87 // return false; |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
88 // } |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
89 // } else { |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
90 // if (other.location !is null) { |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
91 // return false; |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
92 // } |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
93 // } |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
94 return importdata == other.importdata; |
4 | 95 } |
96 | |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
97 /** |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
98 * @see dwtx.jface.resource.ImageDescriptor#getImageData() The |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
99 * FileImageDescriptor implementation of this method is not used by |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
100 * {@link ImageDescriptor#createImage(bool, Device)} as of version |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
101 * 3.4 so that the DWT OS optimised loading can be used. |
4 | 102 */ |
43
ea8ff534f622
Fix override and super aliases
Frank Benoit <benoit@tionex.de>
parents:
40
diff
changeset
|
103 public override ImageData getImageData() { |
4 | 104 InputStream in_ = getStream(); |
105 ImageData result = null; | |
106 if (in_ !is null) { | |
107 try { | |
108 result = new ImageData(in_); | |
109 } catch (DWTException e) { | |
40
da5ad8eedf5d
debug prints, dwt.dwthelper restructure, ...
Frank Benoit <benoit@tionex.de>
parents:
38
diff
changeset
|
110 if (e.code !is DWT.ERROR_INVALID_IMAGE /+&& e.code !is DWT.ERROR_UNSUPPORTED_FORMAT+/) { |
da5ad8eedf5d
debug prints, dwt.dwthelper restructure, ...
Frank Benoit <benoit@tionex.de>
parents:
38
diff
changeset
|
111 Trace.formatln( "FileImageDescriptor getImageData DWTException for name={}", name ); |
4 | 112 throw e; |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
113 // fall through otherwise |
4 | 114 } |
115 } finally { | |
116 in_.close(); | |
117 } | |
118 } | |
119 return result; | |
120 } | |
121 | |
122 /** | |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
123 * Returns a stream on the image contents. Returns null if a stream could |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
124 * not be opened. |
4 | 125 * |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
126 * @return the buffered stream on the file or <code>null</code> if the |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
127 * file cannot be found |
4 | 128 */ |
129 private InputStream getStream() { | |
130 InputStream is_ = null; | |
131 | |
38
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
132 // if (location !is null) { |
40
da5ad8eedf5d
debug prints, dwt.dwthelper restructure, ...
Frank Benoit <benoit@tionex.de>
parents:
38
diff
changeset
|
133 // Trace.formatln( "FileImageDescriptor getStream importdata.length={} name={}",importdata.length, name ); |
38
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
134 is_ = new ByteArrayInputStream(cast(byte[]) importdata); |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
135 // is_ = ClassInfoGetResourceAsStream( location, name); |
4 | 136 |
38
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
137 // } else { |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
138 // try { |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
139 // is_ = new FileInputStream(name); |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
140 // } catch (/+FileNotFoundException+/ IOException e) { |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
141 // return null; |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
142 // } |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
143 // } |
4 | 144 if (is_ is null) { |
145 return null; | |
146 } | |
71 | 147 return new BufferedInputStream(is_); |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
148 |
4 | 149 } |
150 | |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
151 /* |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
152 * (non-Javadoc) Method declared on Object. |
4 | 153 */ |
154 public override hash_t toHash() { | |
38
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
155 int code = dwt.dwthelper.utils.toHash(cast(char[])importdata/+name+/); |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
156 // if (location !is null) { |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
157 // code += location.toHash(); |
c884a1ab6db3
resource loading, fix type in image names
Frank Benoit <benoit@tionex.de>
parents:
4
diff
changeset
|
158 // } |
4 | 159 return code; |
160 } | |
161 | |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
162 /* |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
163 * (non-Javadoc) Method declared on Object. |
4 | 164 */ |
165 /** | |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
166 * The <code>FileImageDescriptor</code> implementation of this |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
167 * <code>Object</code> method returns a string representation of this |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
168 * object which is suitable only for debugging. |
4 | 169 */ |
170 public override String toString() { | |
72
5df4896124c7
JFace and its examples do compile
Frank Benoit <benoit@tionex.de>
parents:
71
diff
changeset
|
171 return Format("FileImageDescriptor(name={})", name );//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$ |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
172 } |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
173 |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
174 /* |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
175 * (non-Javadoc) |
71 | 176 * |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
177 * @see dwtx.jface.resource.ImageDescriptor#createImage(bool, |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
178 * dwt.graphics.Device) |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
179 */ |
73
6787ae179808
Fix FileImageDescriptor to work with compiletime data
Frank Benoit <benoit@tionex.de>
parents:
72
diff
changeset
|
180 public override Image createImage(bool returnMissingImageOnError, Device device) { |
6787ae179808
Fix FileImageDescriptor to work with compiletime data
Frank Benoit <benoit@tionex.de>
parents:
72
diff
changeset
|
181 if( importdata.length is 0 ){ |
6787ae179808
Fix FileImageDescriptor to work with compiletime data
Frank Benoit <benoit@tionex.de>
parents:
72
diff
changeset
|
182 String path = getFilePath(); |
6787ae179808
Fix FileImageDescriptor to work with compiletime data
Frank Benoit <benoit@tionex.de>
parents:
72
diff
changeset
|
183 if (path is null ) |
6787ae179808
Fix FileImageDescriptor to work with compiletime data
Frank Benoit <benoit@tionex.de>
parents:
72
diff
changeset
|
184 return createDefaultImage(returnMissingImageOnError, device); |
6787ae179808
Fix FileImageDescriptor to work with compiletime data
Frank Benoit <benoit@tionex.de>
parents:
72
diff
changeset
|
185 try { |
6787ae179808
Fix FileImageDescriptor to work with compiletime data
Frank Benoit <benoit@tionex.de>
parents:
72
diff
changeset
|
186 return new Image(device, path); |
6787ae179808
Fix FileImageDescriptor to work with compiletime data
Frank Benoit <benoit@tionex.de>
parents:
72
diff
changeset
|
187 } catch (DWTException exception) { |
6787ae179808
Fix FileImageDescriptor to work with compiletime data
Frank Benoit <benoit@tionex.de>
parents:
72
diff
changeset
|
188 //if we fail try the default way using a stream |
6787ae179808
Fix FileImageDescriptor to work with compiletime data
Frank Benoit <benoit@tionex.de>
parents:
72
diff
changeset
|
189 } |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
190 } |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
191 return super.createImage(returnMissingImageOnError, device); |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
192 } |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
193 |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
194 /** |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
195 * Return default image if returnMissingImageOnError is true. |
71 | 196 * |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
197 * @param device |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
198 * @return Image or <code>null</code> |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
199 */ |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
200 private Image createDefaultImage(bool returnMissingImageOnError, |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
201 Device device) { |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
202 try { |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
203 if (returnMissingImageOnError) |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
204 return new Image(device, DEFAULT_IMAGE_DATA); |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
205 } catch (DWTException nextException) { |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
206 return null; |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
207 } |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
208 return null; |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
209 } |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
210 |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
211 /** |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
212 * Returns the filename for the ImageData. |
71 | 213 * |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
214 * @return {@link String} or <code>null</code> if the file cannot be found |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
215 */ |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
216 private String getFilePath() { |
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
217 |
72
5df4896124c7
JFace and its examples do compile
Frank Benoit <benoit@tionex.de>
parents:
71
diff
changeset
|
218 // if (location is null) |
5df4896124c7
JFace and its examples do compile
Frank Benoit <benoit@tionex.de>
parents:
71
diff
changeset
|
219 // return (new Path(name)).toOSString(); |
5df4896124c7
JFace and its examples do compile
Frank Benoit <benoit@tionex.de>
parents:
71
diff
changeset
|
220 // |
5df4896124c7
JFace and its examples do compile
Frank Benoit <benoit@tionex.de>
parents:
71
diff
changeset
|
221 // URL resource = location.getResource(name); |
5df4896124c7
JFace and its examples do compile
Frank Benoit <benoit@tionex.de>
parents:
71
diff
changeset
|
222 // |
5df4896124c7
JFace and its examples do compile
Frank Benoit <benoit@tionex.de>
parents:
71
diff
changeset
|
223 // if (resource is null) |
5df4896124c7
JFace and its examples do compile
Frank Benoit <benoit@tionex.de>
parents:
71
diff
changeset
|
224 // return null; |
90 | 225 // try { |
226 // if (JFaceActivator.getBundleContext() is null) {// Stand-alone case | |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
227 // |
90 | 228 // return new Path(resource.getFile()).toOSString(); |
229 // } | |
230 // return new Path(FileLocator.toFileURL(resource).getPath()).toOSString(); | |
231 // } catch (IOException e) { | |
232 // Policy.logException(e); | |
70
46a6e0e6ccd4
Merge with d-fied sources of 3.4M7
Frank Benoit <benoit@tionex.de>
parents:
43
diff
changeset
|
233 return null; |
90 | 234 // } |
4 | 235 } |
236 } |