mpicbg-scicomp / halcyon

Halcyon is JavaFX framework for designing dockable multiple window applications
GNU General Public License v2.0
5 stars 1 forks source link

Grouped Panel #7

Closed royerloic closed 8 years ago

royerloic commented 8 years ago

Problem:

Right now, if you open two lasers, you cant easily see both of them when they are docked, that's because they are in separate tabs:

image

Ideally, we should be able to open multiple tabs into the same panel. Right click on device category (Lasers) to open a panel with all corresponding devices in a single tab. Better: we can select different devices and open a panel that shows these device panels together one after the other (vertically) in the same tab.

Because such grouped panels can be quite large, we need to have a smart way to handle this problem. Here is an approach:

There are two cases: the grouped panel is opened outside (externally) or not.

If it is opened externally: check the prefered size of each panel of the group, if the total height is more than what the screen offers (screen where main window is, or max height for all available screens) then you put the panels of the group in a TabPane. If, the total height is manageable (less than the screen height), then you can just group them top to bottom - in that case you can still have a ScrollPane to enable scrolling if the window is made smaller - but make sure the window is initially opened to the total prefered size of the individual panels of the group.

If the group is opened as a docked pane, then you don't want to have a TabPane at all, only a scroll pane.