equal
deleted
inserted
replaced
259 */ |
259 */ |
260 protected void checkPainter() { |
260 protected void checkPainter() { |
261 if (painter == null) { |
261 if (painter == null) { |
262 if (defaultPainter == null) { |
262 if (defaultPainter == null) { |
263 // the classname should probably come from a property file. |
263 // the classname should probably come from a property file. |
264 String classname = "javax.swing.text.GlyphPainter1"; |
264 defaultPainter = new GlyphPainter1(); |
265 try { |
|
266 Class<?> c; |
|
267 ClassLoader loader = getClass().getClassLoader(); |
|
268 if (loader != null) { |
|
269 c = loader.loadClass(classname); |
|
270 } else { |
|
271 c = Class.forName(classname); |
|
272 } |
|
273 Object o = c.newInstance(); |
|
274 if (o instanceof GlyphPainter) { |
|
275 defaultPainter = (GlyphPainter) o; |
|
276 } |
|
277 } catch (Throwable e) { |
|
278 throw new StateInvariantError("GlyphView: Can't load glyph painter: " |
|
279 + classname); |
|
280 } |
|
281 } |
265 } |
282 setGlyphPainter(defaultPainter.getPainter(this, getStartOffset(), |
266 setGlyphPainter(defaultPainter.getPainter(this, getStartOffset(), |
283 getEndOffset())); |
267 getEndOffset())); |
284 } |
268 } |
285 } |
269 } |