[ImageJ-devel] [fiji-devel] Re: Move of the Fiji Updater into ImageJ complete

Johannes Schindelin Johannes.Schindelin at gmx.de
Wed Jul 25 14:31:24 CDT 2012


Hi Simon,

On Wed, 25 Jul 2012, simon.ochsenreither at googlemail.com wrote:

> Does this have any short-term impact on Fiji or will it just mean that
> Fiji won't need to ship with its own updater when Fiji is ported to
> ImageJ2?

It means exactly that. The short-term impact is that there might be the
occasional hiccups, unfortunately.

> I have seen that a lot of changes and improvements have gone into
> ImageJ2 and I wonder how many changes will Fiji need to run on the new
> version? I guess it will require more than just a recompile? :-)

In general, yes, a lot of the stuff in Fiji will need to be ported to the
ImageJ2 architecture.

> ImageJ2 also uses Swing instead of AWT, so do plugins with a GUI need to
> update or is the move handled transparently (and people can just keep
> using e. g. GenericDialogPlus, etc.?)

ImageJ2 tries to be as GUI-agnostic as possible, wrapping the GUI-specific
parts in individual components. This allows other software to write
adapters to run ImageJ2 plugins within their framework. For example,
CellProfiler runs ImageJ2 plugins and it is not even a Java program but a
Python one.

The way plugins try to get their input is no longer by creating a dialog
explicitly. This is a nightmare if you want to run the same plugin
unchanged on a cluster. The way to interact with the user in ImageJ2 is by
annotating the fields you require as parameters. Example:

	@Plugin
	public class MyPlugin implements ImageJPlugin {
		@Parameter
		double value;

		public void run() {
			System.err.println("The value is " + value);
		}
	}

ImageJ will figure out how to construct a dialog from the annotated
fields. Parameters do not need to be information to be gathered via a
dialog, though. For example, if you want to interact with a service (such
as the log service to report exceptions) you also add them as fields
annotated as a parameter.

> I searched for information on the website, but maybe you have a hint
> where I can find more information about it?

Well, a couple of things might still be moving around, that's why we have
not yet written extensive documentation. But I will, promise.

Ciao,
Johannes



More information about the ImageJ-devel mailing list