Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Run original ImageJ commands directly #286

Open
ctrueden opened this issue Jul 26, 2023 · 3 comments
Open

Run original ImageJ commands directly #286

ctrueden opened this issue Jul 26, 2023 · 3 comments

Comments

@ctrueden
Copy link
Member

I can't remember why we decided that original ImageJ commands should fail when you try to run them, instead telling you that you must run them from the ImageJ GUI. But it sure is annoying. (Maybe we did that because we don't want to let the user run them in headless mode? That's OK, but then why impose the restriction while in interactive mode?) It would be much better if they just ran directly—I can't think of a reason why not.

@ctrueden ctrueden changed the title Consider just running original ImageJ commands as is Run original ImageJ commands directly Jul 26, 2023
@gselzer
Copy link
Collaborator

gselzer commented Jul 26, 2023

I can't remember why we decided that original ImageJ commands should fail when you try to run them, instead telling you that you must run them from the ImageJ GUI. But it sure is annoying.

We did that because it is extremely difficult to get original ImageJ commands to work headlessly - see #207.

That's OK, but then why impose the restriction while in interactive mode?) It would be much better if they just ran directly—I can't think of a reason why not.

What I don't want happening is people trying to run a original ImageJ command from within the napari-imagej search results, and then finding out that things don't work because they didn't export their Layers to napari first. I think it's really confusing to run this and not see the Layers you want in the GenericDialogs, or see those no active Image dialogs, etc. If you have a better solution here, then I'm all ears, but know that while this seems doable to run them from napari, I've tried before and didn't come up with a nice solution.

@ctrueden
Copy link
Member Author

while this seems doable to run them from napari, I've tried before and didn't come up with a nice solution.

Makes sense, thanks for the explanation. I think we can try again before giving up completely, though. For example, napari-imagej could perform a proactive layer sync when the user launches an original ImageJ command (or maybe any command or op? what's the downside?). And if PyImageJ and/or imagej-legacy do not yet have sufficient infrastructure for proactive syncing across the three paradigms (Python/ImageJ/ImgLib2), we can improve it.

@gselzer
Copy link
Collaborator

gselzer commented Jul 26, 2023

For example, napari-imagej could perform a proactive layer sync when the user launches an original ImageJ command (or maybe any command or op? what's the downside?)

Note that this was basically what was done in #205 - see that discussion for the issues. Of course, maybe I did something wrong there - if you have ideas, then let me know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants