scijava / ui-behaviour

Configurable input handling, via mapped behaviours
Other
4 stars 2 forks source link

A visual editor for an InputTriggerConfig object. #8

Closed tinevez closed 6 years ago

tinevez commented 6 years ago

The editor looks like this: inputtriggerconfig_editor_01 and is largely inspired by Eclipse key editor.

The main GUI class itself lives in the org.scijava.ui.behaviour.io package, to be able to access the actionToInputsMap default field of InputTriggerConfig. Other GUI classes are in the gui subpackage of this one.

It features:

ctrueden commented 6 years ago

Awesome.

I would like to discuss this project at the upcoming MPI-CBG hackathon. It would be amazing if all of ImageJ could leverage this UI. As things stand, I am guessing it is limited to BDV and MaMuT? I did a lot of work to create a UI-framework-agnostic set of UI events in SciJava, and map multiple framework event styles (including Swing and AWT) to these UI events. But the ui-behaviour library is hardcoded to Swing, no? (Relatedly: I saw that @hanslovsky was going to replicate ui-behaviour to work with JavaFX also?) My really strong intuition now is that there must be a better way!

I understand that this particular visual editor is itself written in Swing, and there is no way to get a UI-agnostic visual editor "for free." But I am worried about the fragmentation/divergence between ui-behaviour and the SciJava event mechanism. I'd like to make a best effort to unify the design here. Again, if ImageJ could gain a key-mapping editor in the process, that would be huge.

hanslovsky commented 6 years ago

@ctrueden I think I was not perfectly clear on gitter: What I meant to say is that I replicated some of ui-behaviour to have a more BigDataViewer like navigation in my JavaFX application. I agree, however, that an agnostic ui-behaviour would be great to have!

tpietzsch commented 6 years ago

@tinevez ❤️