diff --git a/pom.xml b/pom.xml index 577ab6f69d842a8ceb2717e110ece7fd14a9a0cd..251c30042c9a9b8e7c35a5bbbf78c994f9bd05e0 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ <groupId>sc.fiji</groupId> <artifactId>bigdataviewer_fiji</artifactId> - <version>3.0.2-SNAPSHOT</version> + <version>4.0.0-SNAPSHOT</version> <name>BigDataViewer Fiji</name> <description>Fiji plugins for starting BigDataViewer and exporting data.</description> diff --git a/src/main/java/bdv/ij/BigDataBrowserPlugIn.java b/src/main/java/bdv/ij/BigDataBrowserPlugIn.java index 98ce4413d1d87d59534badee709c6217052d4eb8..f2607f25e4d3cde7b25fa17f910868b29b9a8838 100644 --- a/src/main/java/bdv/ij/BigDataBrowserPlugIn.java +++ b/src/main/java/bdv/ij/BigDataBrowserPlugIn.java @@ -27,19 +27,22 @@ import javax.swing.JOptionPane; import javax.swing.JScrollPane; import org.apache.commons.lang.StringUtils; +import org.scijava.command.Command; +import org.scijava.plugin.Plugin; import bdv.BigDataViewer; import bdv.ij.util.ProgressWriterIJ; import bdv.viewer.ViewerOptions; import ij.IJ; import ij.ImageJ; -import ij.plugin.PlugIn; import mpicbg.spim.data.SpimDataException; /** * @author HongKee Moon <moon@mpi-cbg.de> */ -public class BigDataBrowserPlugIn implements PlugIn +@Plugin(type = Command.class, + menuPath = "Plugins>BigDataViewer>Browse BigDataServer") +public class BigDataBrowserPlugIn implements Command { private final Map< String, ImageIcon > imageMap = new HashMap<>(); @@ -48,7 +51,7 @@ public class BigDataBrowserPlugIn implements PlugIn public static String serverUrl = "http://"; @Override - public void run( final String arg ) + public void run() { BufferedImage image = null; try @@ -198,6 +201,6 @@ public class BigDataBrowserPlugIn implements PlugIn public static void main( final String[] args ) { ImageJ.main( args ); - new BigDataBrowserPlugIn().run( null ); + new BigDataBrowserPlugIn().run(); } } diff --git a/src/main/java/bdv/ij/BigDataViewerPlugIn.java b/src/main/java/bdv/ij/BigDataViewerPlugIn.java index 0267908e864b632a171afa12ac990946095e5917..f37c3de3516fca75724bb04f639cfc3ac7b20f59 100644 --- a/src/main/java/bdv/ij/BigDataViewerPlugIn.java +++ b/src/main/java/bdv/ij/BigDataViewerPlugIn.java @@ -10,18 +10,21 @@ import java.util.concurrent.atomic.AtomicBoolean; import javax.swing.JFileChooser; import javax.swing.filechooser.FileFilter; +import org.scijava.command.Command; +import org.scijava.plugin.Plugin; + import bdv.BigDataViewer; import bdv.ij.util.ProgressWriterIJ; import bdv.viewer.ViewerOptions; import ij.Prefs; -import ij.plugin.PlugIn; -public class BigDataViewerPlugIn implements PlugIn +@Plugin(type = Command.class, menuPath = "Plugins>BigDataViewer>Open XML/HDF5") +public class BigDataViewerPlugIn implements Command { static String lastDatasetPath = "./export.xml"; @Override - public void run( final String arg ) + public void run() { File file = null; diff --git a/src/main/java/bdv/ij/ExportCellVoyagerPlugIn.java b/src/main/java/bdv/ij/ExportCellVoyagerPlugIn.java index eaf88e1b961ea87f150779a8f8c094fd0ec231e8..0ff922bc39c9c79626e3d1ba570de21cbd9e3fbb 100644 --- a/src/main/java/bdv/ij/ExportCellVoyagerPlugIn.java +++ b/src/main/java/bdv/ij/ExportCellVoyagerPlugIn.java @@ -14,6 +14,9 @@ import java.io.FilenameFilter; import javax.swing.JFileChooser; import javax.swing.filechooser.FileFilter; +import org.scijava.command.Command; +import org.scijava.plugin.Plugin; + import bdv.export.ProgressWriter; import bdv.ij.export.tiles.CellVoyagerDataExporter; import bdv.ij.util.PluginHelper; @@ -21,9 +24,10 @@ import bdv.ij.util.ProgressWriterIJ; import fiji.util.gui.GenericDialogPlus; import ij.IJ; import ij.ImageJ; -import ij.plugin.PlugIn; -public class ExportCellVoyagerPlugIn implements PlugIn +@Plugin(type = Command.class, + menuPath = "Plugins>BigDataViewer>Export CellVoyager dataset as XML/HDF5") +public class ExportCellVoyagerPlugIn implements Command { protected static class Parameters @@ -56,11 +60,18 @@ public class ExportCellVoyagerPlugIn implements PlugIn static String sourceFolderStr; + private String sourcePath; + + public void setSourcePath( final String sourcePath ) + { + this.sourcePath = sourcePath; + } + @Override - public void run( final String arg ) + public void run() { - final Parameters params = getParameters( arg ); + final Parameters params = getParameters( sourcePath ); if ( params == null ) return; @@ -248,6 +259,7 @@ public class ExportCellVoyagerPlugIn implements PlugIn final ExportCellVoyagerPlugIn plugin = new ExportCellVoyagerPlugIn(); final File file = new File( "/Users/tinevez/Desktop/Data/1_7_6_1_2/20130703T145244/" ); - plugin.run( file.getAbsolutePath() ); + plugin.setSourcePath( file.getAbsolutePath() ); + plugin.run(); } } diff --git a/src/main/java/bdv/ij/ExportImagePlusPlugIn.java b/src/main/java/bdv/ij/ExportImagePlusPlugIn.java index 124579b4c5cc2d67d8886e93f4631564c05d62f5..3297fbced20d150e38a3fddf7382e4c931dde114 100644 --- a/src/main/java/bdv/ij/ExportImagePlusPlugIn.java +++ b/src/main/java/bdv/ij/ExportImagePlusPlugIn.java @@ -14,6 +14,9 @@ import net.imglib2.FinalDimensions; import net.imglib2.RandomAccessibleInterval; import net.imglib2.realtransform.AffineTransform3D; +import org.scijava.command.Command; +import org.scijava.plugin.Plugin; + import bdv.export.ExportMipmapInfo; import bdv.export.ProgressWriter; import bdv.export.ProposeMipmaps; @@ -37,7 +40,6 @@ import ij.ImagePlus; import ij.WindowManager; import ij.gui.DialogListener; import ij.gui.GenericDialog; -import ij.plugin.PlugIn; import mpicbg.spim.data.generic.sequence.BasicViewSetup; import mpicbg.spim.data.registration.ViewRegistration; import mpicbg.spim.data.registration.ViewRegistrations; @@ -51,17 +53,19 @@ import mpicbg.spim.data.sequence.TimePoints; * * @author Tobias Pietzsch <tobias.pietzsch@gmail.com> */ -public class ExportImagePlusPlugIn implements PlugIn +@Plugin(type = Command.class, + menuPath = "Plugins>BigDataViewer>Export Current Image as XML/HDF5") +public class ExportImagePlusPlugIn implements Command { public static void main( final String[] args ) { new ImageJ(); IJ.run("Confocal Series (2.2MB)"); - new ExportImagePlusPlugIn().run( null ); + new ExportImagePlusPlugIn().run(); } @Override - public void run( final String arg ) + public void run() { // get the current image final ImagePlus imp = WindowManager.getCurrentImage(); diff --git a/src/main/java/bdv/ij/ExportSpimFusionPlugIn.java b/src/main/java/bdv/ij/ExportSpimFusionPlugIn.java index e313cde1a4dd2c31530ccb29214aba8e235f28ad..6f37e879e2eea2446b80b1729e0063dba35d5246 100644 --- a/src/main/java/bdv/ij/ExportSpimFusionPlugIn.java +++ b/src/main/java/bdv/ij/ExportSpimFusionPlugIn.java @@ -23,6 +23,9 @@ import net.imglib2.realtransform.AffineTransform3D; import net.imglib2.util.Pair; import net.imglib2.util.ValuePair; +import org.scijava.command.Command; +import org.scijava.plugin.Plugin; + import bdv.export.ExportMipmapInfo; import bdv.export.ProgressWriter; import bdv.export.ProposeMipmaps; @@ -47,7 +50,6 @@ import ij.IJ; import ij.ImagePlus; import ij.gui.DialogListener; import ij.gui.GenericDialog; -import ij.plugin.PlugIn; import mpicbg.spim.data.SpimDataException; import mpicbg.spim.data.generic.sequence.BasicImgLoader; import mpicbg.spim.data.generic.sequence.BasicSetupImgLoader; @@ -66,7 +68,9 @@ import mpicbg.spim.io.SPIMConfiguration; import mpicbg.spim.io.TextFileAccess; import spimopener.SPIMExperiment; -public class ExportSpimFusionPlugIn implements PlugIn +@Plugin(type = Command.class, + menuPath = "Plugins>BigDataViewer>Export Fused Sequence as XML/HDF5") +public class ExportSpimFusionPlugIn implements Command { static double minValueStatic = 0; @@ -91,7 +95,7 @@ public class ExportSpimFusionPlugIn implements PlugIn static String autoChunkSizes = "{16,16,16}"; @Override - public void run( final String arg0 ) + public void run() { final Parameters params = getParameters(); @@ -1057,6 +1061,6 @@ public class ExportSpimFusionPlugIn implements PlugIn public static void main(final String[] args) { - new ExportSpimFusionPlugIn().run( null ); + new ExportSpimFusionPlugIn().run(); } } diff --git a/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java b/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java index 39b70b0bbcee418e1a144f448f142c7dce507ffb..b3808eaf2bdd816ff9f65d2e142aab419260323c 100644 --- a/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java +++ b/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java @@ -15,6 +15,9 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import org.scijava.command.Command; +import org.scijava.plugin.Plugin; + import bdv.export.ExportMipmapInfo; import bdv.export.ProgressWriter; import bdv.export.ProposeMipmaps; @@ -34,7 +37,6 @@ import fiji.util.gui.GenericDialogPlus; import ij.IJ; import ij.gui.DialogListener; import ij.gui.GenericDialog; -import ij.plugin.PlugIn; import mpicbg.spim.data.generic.sequence.BasicViewSetup; import mpicbg.spim.data.sequence.TimePoint; import mpicbg.spim.io.ConfigurationParserException; @@ -43,10 +45,12 @@ import mpicbg.spim.io.SPIMConfiguration; import mpicbg.spim.io.TextFileAccess; import spimopener.SPIMExperiment; -public class ExportSpimSequencePlugIn implements PlugIn +@Plugin(type = Command.class, + menuPath = "Plugins>BigDataViewer>Export Spim Sequence as XML/HDF5") +public class ExportSpimSequencePlugIn implements Command { @Override - public void run( final String arg0 ) + public void run() { final Parameters params = getParameters(); @@ -713,6 +717,6 @@ public class ExportSpimSequencePlugIn implements PlugIn Bead_Registration.fileNamePattern = "spim_TL{tt}_Angle{a}.tif"; Bead_Registration.timepoints = "0"; Bead_Registration.angles = "0"; - new ExportSpimSequencePlugIn().run( null ); + new ExportSpimSequencePlugIn().run(); } } diff --git a/src/main/java/bdv/ij/ImportPlugIn.java b/src/main/java/bdv/ij/ImportPlugIn.java index d3338964760ae8c27c5860438a85466e593d7d5f..2dbe3e32da728f65389782b4191bb1beeea636e2 100644 --- a/src/main/java/bdv/ij/ImportPlugIn.java +++ b/src/main/java/bdv/ij/ImportPlugIn.java @@ -13,6 +13,9 @@ import java.util.List; import net.imglib2.RandomAccessibleInterval; import net.imglib2.type.numeric.NumericType; +import org.scijava.command.Command; +import org.scijava.plugin.Plugin; + import bdv.ViewerImgLoader; import bdv.spimdata.SequenceDescriptionMinimal; import bdv.spimdata.SpimDataMinimal; @@ -24,7 +27,6 @@ import ij.ImagePlus; import ij.gui.DialogListener; import ij.gui.GenericDialog; import ij.measure.Calibration; -import ij.plugin.PlugIn; import mpicbg.spim.data.SpimDataException; import mpicbg.spim.data.generic.sequence.BasicImgLoader; import mpicbg.spim.data.generic.sequence.BasicMultiResolutionImgLoader; @@ -38,7 +40,8 @@ import mpicbg.spim.data.sequence.VoxelDimensions; * * @author Tobias Pietzsch <tobias.pietzsch@gmail.com> */ -public class ImportPlugIn implements PlugIn +@Plugin(type = Command.class, menuPath = "File>Import>BigDataViewer...") +public class ImportPlugIn implements Command { public static String xmlFile = ""; public static int timepoint = 0; @@ -59,7 +62,7 @@ public class ImportPlugIn implements PlugIn } @Override - public void run( final String arg0 ) + public void run() { final GenericDialogPlus gd = new GenericDialogPlus( "Import from BigDataViewer file" ); gd.addFileField( "xml file", xmlFile ); @@ -219,6 +222,6 @@ public class ImportPlugIn implements PlugIn public static void main( final String[] args ) { new ImageJ(); - new ImportPlugIn().run( null ); + new ImportPlugIn().run(); } } diff --git a/src/main/java/bdv/ij/OpenImagePlusPlugIn.java b/src/main/java/bdv/ij/OpenImagePlusPlugIn.java index 402b6dc152dedc039620e007e8e987ed5724666e..ba265551a302ee4c2032c71bd64fecba4abdacb0 100644 --- a/src/main/java/bdv/ij/OpenImagePlusPlugIn.java +++ b/src/main/java/bdv/ij/OpenImagePlusPlugIn.java @@ -8,6 +8,9 @@ import net.imglib2.FinalDimensions; import net.imglib2.realtransform.AffineTransform3D; import net.imglib2.type.numeric.ARGBType; +import org.scijava.command.Command; +import org.scijava.plugin.Plugin; + import bdv.BigDataViewer; import bdv.ij.util.ProgressWriterIJ; import bdv.img.imagestack.ImageStackImageLoader; @@ -25,7 +28,6 @@ import ij.IJ; import ij.ImageJ; import ij.ImagePlus; import ij.WindowManager; -import ij.plugin.PlugIn; import ij.process.LUT; import mpicbg.spim.data.generic.sequence.BasicImgLoader; import mpicbg.spim.data.generic.sequence.BasicViewSetup; @@ -41,7 +43,9 @@ import mpicbg.spim.data.sequence.TimePoints; * * @author Tobias Pietzsch <tobias.pietzsch@gmail.com> */ -public class OpenImagePlusPlugIn implements PlugIn +@Plugin(type = Command.class, + menuPath = "Plugins>BigDataViewer>Open Current Image") +public class OpenImagePlusPlugIn implements Command { public static void main( final String[] args ) { @@ -49,11 +53,11 @@ public class OpenImagePlusPlugIn implements PlugIn new ImageJ(); IJ.run("Confocal Series (2.2MB)"); // IJ.run("Fly Brain (1MB)"); - new OpenImagePlusPlugIn().run( null ); + new OpenImagePlusPlugIn().run(); } @Override - public void run( final String arg ) + public void run() { // get the current image final ImagePlus imp = WindowManager.getCurrentImage(); diff --git a/src/main/java/bdv/ij/OpenImarisPlugIn.java b/src/main/java/bdv/ij/OpenImarisPlugIn.java index 0e1d4507df30030e16f499cf170d02c27866eb2e..9db0ce1137e3a04061e11efdfe988c6a6080cde3 100644 --- a/src/main/java/bdv/ij/OpenImarisPlugIn.java +++ b/src/main/java/bdv/ij/OpenImarisPlugIn.java @@ -10,6 +10,9 @@ import java.util.concurrent.atomic.AtomicBoolean; import javax.swing.JFileChooser; import javax.swing.filechooser.FileFilter; +import org.scijava.command.Command; +import org.scijava.plugin.Plugin; + import bdv.BigDataViewer; import bdv.ij.util.ProgressWriterIJ; import bdv.img.imaris.Imaris; @@ -17,19 +20,20 @@ import bdv.spimdata.SpimDataMinimal; import bdv.viewer.ViewerOptions; import ij.ImageJ; import ij.Prefs; -import ij.plugin.PlugIn; -public class OpenImarisPlugIn implements PlugIn +@Plugin(type = Command.class, + menuPath = "Plugins>BigDataViewer>Open Imaris (experimental)") +public class OpenImarisPlugIn implements Command { static String lastDatasetPath = ""; public static void main( final String[] args ) { ImageJ.main( args ); - new OpenImarisPlugIn().run( null ); + new OpenImarisPlugIn().run(); } @Override - public void run( final String arg ) + public void run() { File file = null; diff --git a/src/main/resources/plugins.config b/src/main/resources/plugins.config deleted file mode 100644 index 2807a76d99315e407e329b6bcbe85023e5a61044..0000000000000000000000000000000000000000 --- a/src/main/resources/plugins.config +++ /dev/null @@ -1,20 +0,0 @@ -# Name: BigDataViewer -# Author: Tobias Pietzsch -# Version: 1.0.0 - -# A single .jar file can contain multiple plugins, specified in separate lines. -# -# The format is: <menu>, "<menu label>", <class name> -# -# If something like ("<arg>") is appended to the class name, the setup() method -# will get that as arg parameter; otherwise arg is simply the empty string. - -Plugins>BigDataViewer, "Open XML/HDF5", bdv.ij.BigDataViewerPlugIn -Plugins>BigDataViewer, "Open Current Image", bdv.ij.OpenImagePlusPlugIn -Plugins>BigDataViewer, "Browse BigDataServer", bdv.ij.BigDataBrowserPlugIn -Plugins>BigDataViewer, "Export Current Image as XML/HDF5", bdv.ij.ExportImagePlusPlugIn -Plugins>BigDataViewer, "Export Spim Sequence as XML/HDF5", bdv.ij.ExportSpimSequencePlugIn -Plugins>BigDataViewer, "Export Fused Sequence as XML/HDF5", bdv.ij.ExportSpimFusionPlugIn -Plugins>BigDataViewer, "Export CellVoyager dataset as XML/HDF5", bdv.ij.ExportCellVoyagerPlugIn -Plugins>BigDataViewer, "Open Imaris (experimental)", bdv.ij.OpenImarisPlugIn -File>Import, "BigDataViewer...", bdv.ij.ImportPlugIn \ No newline at end of file