[ImageJ-devel] Legacy Mode work

Curtis Rueden ctrueden at wisc.edu
Wed Dec 19 15:55:09 CST 2012


Hi Dscho,

Thanks for the update; that is great news. Barry & I did some testing, and
found a few issues, but given the time constraints we are going to go ahead
with the beta6 release this week.

One big issue I found is that ImageDisplays that originate in IJ2 land
(e.g., from File > Open) do not get translated to IJ1 mode unless you
execute a legacy command on them first. That is, more generally, the
command for switching to legacy mode apparently does not explicitly invoke
any IJ2<->IJ1 synchronization, meaning they can be out of sync with ImageJ1.

I took a look at adding some sort of legacyService.sync() call, but the
LegacyService API still needs work. Currently there is a lot of logic
taking place in LegacyCommand.LegacyCommandThread.run(), which should
ultimately get factored out to be more accessible from the LegacyService
itself. But that work will have to wait until after the holidays.

So anyway, we will note this limitation in the release announcement, for
now.

Another problem which I would like to see fixed before release is that on
OS X, when starting up ImageJ2 now, there is a VerifyError with class
MacAdapter that was not previously present. I hope to track this down
tomorrow morning and fix before cutting the release.

Thanks again for your efforts on this, safe travels, and happy holidays!

Regards,
Curtis


On Tue, Dec 18, 2012 at 11:31 PM, Johannes Schindelin <
Johannes.Schindelin at gmx.de> wrote:

> Hi Barry & Curtis,
>
> with great satisfaction I report that the Legacy Mode branch has reached a
> beta stage. That is, I consider this functionality to be at a stage where
> we can include it in a beta version.
>
> Sadly, I did not manage to think of a way to test this functionality
> automatically yet, mainly because most of it is purely in the GUI: images
> shown in IJ2 will be hidden and the IJ1 ImageWindows displayed when
> switching to the legacy mode, and vice versa when switching back.
>
> It is all in the 'legacy' branch, and I would appreciate a good look-over
> by both of you.
>
> The menu item it adds is in Help>Start ImageJ 1.x Legacy Mode, and when
> you switch to that mode, you will get a Help>Stop ImageJ 1.x Legacy Mode
> in the ImageJ 1.x GUI.
>
> There is one commit that is reverted right away, this is the change I
> intended originally to make it possible to have multiple legacy services
> running in parallel. Alas, it interferes with normal operation; you would
> not be able to instantiate an ImagePlus and pass it to the legacy service,
> since your class loader and the legacy service's class loader would have
> incompatible versions of the ImagePlus *class*. The reason why I left it
> in was for education and to remember what did not work, so that I would
> keep thinking of better ways.
>
> Once that legacy mode is in, and robust, I plan to integrate it into Fiji
> by adding the "Stop Legacy Mode" as a Help>Try ImageJ2 or some such.
>
> Ciao & merry Christmas,
> Dscho
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://imagej.net/pipermail/imagej-devel/attachments/20121219/f0b933c7/attachment.html>


More information about the ImageJ-devel mailing list