jdk/src/java.desktop/share/classes/javax/swing/text/GlyphView.java
changeset 40719 4ae72a69bd3b
parent 32865 f9cb6e427f9e
child 47020 2c55106dc37b
equal deleted inserted replaced
40718:fe2adbe4d101 40719:4ae72a69bd3b
   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     }