Hello,
I have some problem with the layout. My application has three dockables (I use Core), two of them are identical. When application closes I save the layout and restore it on load. My default layout is to have two identical dockables in stack on top taking most of the application real estate and the third to be beneath of them. Unfortunately, when I load this layout the result is as in the following image
Two top dockables are collapsed. If I close one of them, the layout automatically becomes the one that I want
.
The same result I get when I save layout in this state, without stacked dockables - it restores perfectly. This leads me to conclusion, that the problem is not with dockable itself (minimum / preferred sizes) but with the framework or more probably with the way that I use it. I was unable to find what causes this behavior and maybe you can help. Here is the layout with stacked dockables:[XML]<?xml version='1.0'?>
true
0
dock.PlaceholderList
1
0
dock.PlaceholderList
true
id
index
0
0
true
id
index
1
1
0
dock.PlaceholderList
[/XML]
And this is what I get with one of the dockables closed:[XML]<?xml version='1.0'?>
true
0
dock.PlaceholderList
0
dock.PlaceholderList
1
[/XML]
I use 1.1.0 version (tried the latest 1.1.1 as well). The relevant code is:
dockFrontend.setDefaultHideable(true);
ScreenDockStation screenDockStation = new ScreenDockStation( dockFrontend.getOwner() );
SplitDockStation splitDockStation = new SplitDockStation();
dockFrontend.addRoot("root", splitDockStation);
dockFrontend.addRoot("floating", screenDockStation);
screenDockStation.setShowing(true);
dockFrontend.getController().setTheme(new EclipseTheme());
dockFrontend.setShowHideAction(true);
contentPane.add(splitDockStation, BorderLayout.CENTER);
//Create dockables
eventsPanel = new EventsDockable();
dockFrontend.addDockable("Events", eventsPanel);
customerPositionsPanel = new CustomerPositionsPanel();
customerPositionDockable = new DefaultDockable(customerPositionsPanel, "Customer Positions", icon);
dockFrontend.addDockable("Customer", customerPositionDockable);
globalPositionPanel = new GlobalPositionsPanel();
globalPositionDockable = new DefaultDockable(globalPositionPanel, "Currency Pair Positions", icon);
dockFrontend.addDockable("Global", globalPositionDockable);