by JIDE Support » Mon Nov 23, 2009 11:31 pm
The split rate has to saved somewhere, right? I wonder if it is saved on dockable frame itself or on the actual JideSplitPane. I also wonder how they handle the case that the two frames are tab-docked as a tabbed pane, if the two dockable frames have different split rate while they are on the same tabbed pane. Lastly, if the frame is moved to another place, doesn't the split rate goes with it? When user drags to rearrange the layout, what split rate should it use? I guess my questions lead to the conclusion that the split rate has to be saved on the DockableFrame which further leads to the preferred size solution we are taking.
If the split rate is saved on the split pane, what to do when another dockable frame is added to the same split pane (one split pane that spits into three pieces)? We will have to somehow redistribute the split rates so that they add up to 1.0.
It is interesting that you bring up the moveFrame method. When we original designed the JIDE Docking Framework, moveFrame is not even there. In our design, the developer controls the initial layout. Then the application is shipped, the user will control the layout they want to use. Developer should not try to control where a frame should be, thus the moveFrame method was not in the picture at all. I still believe in this as I saw most of some nice implemented docking frameworks such as Eclipse and VSNET, they don't try to control a frame position except when it is shown for the first time. But later on we added moveFrame as the developer wants to have more control over over the user's preference. Anyway, just a little background thought you might be interested.
Thanks,
JIDE Software Technical Support Team