Ticket #1019 (closed feature: wontfix)

Opened 6 years ago

Last modified 3 years ago

Reimplement IJ1 features that the legacy layer cannot support

Reported by: curtis Owned by: bdezonia
Priority: critical Milestone: imagej-2.0.0
Component: Plugins Version:
Severity: non-issue Keywords:
Cc: Blocked By: #1171, #1172, #1366, #1456
Blocking: #1010

Description

For a variety of reasons, IJ has some functions that cannot be supported via the legacy layer. In particular, highly UI-interactive plugins (such as the Shadows Demo; see ticket #647) may be infeasible to support. Fortunately, these sorts of plugins are also unlikely to be part of automated macro and script workflows. So we should be able to provide backwards compatibility by reimplementing them in the IJ2 framework instead.

Change History

comment:1 Changed 6 years ago by curtis

  • Blocking 1010 added

comment:2 Changed 6 years ago by curtis

  • Blocked By 904 added

comment:3 Changed 6 years ago by curtis

  • Blocked By 865 added

comment:4 Changed 6 years ago by curtis

  • Blocked By 564 added

comment:5 Changed 6 years ago by curtis

  • Blocked By 547 added

comment:6 Changed 6 years ago by curtis

  • Blocked By 585 added

comment:7 Changed 6 years ago by curtis

  • Blocked By 649 added

comment:8 Changed 6 years ago by curtis

  • Blocked By 406 added

comment:9 Changed 6 years ago by curtis

  • Blocked By 790 added

comment:10 Changed 6 years ago by curtis

  • Blocked By 973 added

comment:11 Changed 6 years ago by curtis

  • Blocked By 756 added

(In #756) Due to restrictions in the legacy layer, the solution is to implement a pure IJ2 version of Threshold.

comment:12 Changed 6 years ago by bdezonia

  • Blocked By 1171 added

comment:13 Changed 6 years ago by bdezonia

  • Blocked By 1172 added

comment:14 Changed 6 years ago by bdezonia

  • Blocked By 406 removed

comment:15 Changed 6 years ago by bdezonia

  • Blocked By 564 removed

comment:16 Changed 6 years ago by bdezonia

  • Blocked By 756 removed

comment:17 Changed 6 years ago by bdezonia

  • Blocked By 790 removed

comment:18 Changed 6 years ago by bdezonia

  • Blocked By 865 removed

comment:19 Changed 6 years ago by bdezonia

  • Blocked By 903 removed

comment:20 Changed 6 years ago by bdezonia

  • Blocked By 904 removed

comment:21 Changed 6 years ago by bdezonia

  • Blocked By 973 removed

comment:22 Changed 6 years ago by bdezonia

  • Blocked By 547 removed

comment:23 Changed 6 years ago by bdezonia

  • Blocked By 585 removed

comment:24 Changed 6 years ago by bdezonia

  • Blocked By 649 removed

comment:25 Changed 5 years ago by curtis

  • Blocked By 1366 added

comment:26 Changed 5 years ago by bdezonia

  • Blocked By 1456 added

(In #1456) Some IJ1 plugins cannot be fully supported by our legacy layer data translation approach. Rewrite such (usually gui enhanced) plugins as pure IJ2 implementations.
See blocked ticket #1010 for further description

Last edited 3 years ago by curtis (previous) (diff)

comment:27 Changed 3 years ago by curtis

  • Status changed from new to closed
  • Resolution set to wontfix

As I wrote in ticket #1456:

We are no longer supporting use of ImageJ 1.x commands from modern ImageJ2 UIs. These plugins work fine in the legacy ImageJ 1.x UI, and adding them to ImageJ2 is not urgent.

Of course, we would love to have all of this functionality available as "pure IJ2" commands, so that they are usable headless and from the variety of contexts IJ2 makes possible: e.g., CellProfiler, OMERO and KNIME. But in practice, most of these commands are interactive in some way and will need to be reconsidered and recast into the headless paradigm (i.e., parameterized inputs and outputs). We will tackle this work on an as-needed basis, with help from the community over a course of years. But first the ImageJ2 core needs further stabilization. So the goal of porting IJ1 plugins to IJ2 is, in general, on pause for the time being.

Also worth noting that in many (most?) cases, we will want to make image processing functionality available as  ImageJ OPS Op plugins, rather than vanilla SJC Commands, to maximize their usability and interoperability.

Last edited 3 years ago by curtis (previous) (diff)
Note: See TracTickets for help on using tickets.