Changeset 2744


Ignore:
Timestamp:
05/03/07 16:42:26 (13 years ago)
Author:
curtis
Message:

Use reflection to construct CompositeImage -- otherwise class loader
dies loading Importer if ImageJ version is below 1.38n.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/loci/plugins/Importer.java

    r2725 r2744  
    8181 
    8282  private Vector imps = new Vector(); 
     83  private boolean quiet; 
    8384 
    8485  // -- Constructor -- 
     
    99100    } 
    100101 
    101     boolean quiet = arg != null && 
    102       !arg.equals("") && arg.indexOf("open=") == -1; 
     102    quiet = arg != null && !arg.equals("") && arg.indexOf("open=") == -1; 
    103103 
    104104    // -- Step 1: get filename to open -- 
     
    11961196        } 
    11971197        else { 
    1198           imp = new CompositeImage(imp, r.getSizeC()); 
     1198          // use reflection to construct CompositeImage, 
     1199          // in case ImageJ version is too old 
     1200          ReflectedUniverse ru = new ReflectedUniverse(); 
     1201          try { 
     1202            ru.exec("import ij.CompositeImage"); 
     1203            ru.setVar("imp", imp); 
     1204            ru.setVar("sizeC", r.getSizeC()); 
     1205            imp = (ImagePlus) ru.exec("new CompositeImage(imp, sizeC)"); 
     1206          } 
     1207          catch (ReflectException exc) { 
     1208            exc.printStackTrace(); 
     1209            if (!quiet) { 
     1210              String msg = exc.getMessage(); 
     1211              IJ.error("Bio-Formats", "Sorry, there was a problem " + 
     1212                "constructing the composite image"); 
     1213            } 
     1214            return; 
     1215          } 
    11991216        } 
    12001217      } 
Note: See TracChangeset for help on using the changeset viewer.