I would like to have fixed-size dockables, which are automatically padded
by “invisible” flexible-size dockables; so from the user perspecitve, she
can see just a fixed-size widget which can be moved around and landed
only on some permitted stations; can be grouped with other widgets, etc.
resize by user is permitted; resize by framework - not permitted;
visual metaphor: a card game, when cards are not permitted to overlap,
and cards have a fixed size;
what is the best way to achieve this in “docking-frames”?
which of the existing “docking-frames” examples are a good start for this?
are there some third-party application using “docking-frames” that resemble this?
As I understand your requirements, the Dockables would float around as if they were JInternalFrames; they just can be grouped and do not overlap? I think that would mean to implement a new DockStation. That is quite some work, but the framework is designed to allow such things. Have a look at the “Chess” Demonstration, it shows how far customisation can go.
If I misunderstood: in Common each CDockable offers the methods “setResizeLocked”. The framework will try not to change the size of such a dockable, although you can always create a layout where the framework has no other choice than to resize. You might want to have a look at the “Size & Color” Demonstration, you can lock the size there (each panel has some checkboxes “width/height locked during resize”).
Preventing some grouping is not an issue, the interface “DockAcceptance” can accomplish that.
c) I would expect “green” and “blue” stay same size, and shift left, since they are “frozen”
and have station to adjust “grey1” width instead since it is not “frozen”;
d) another option would be to put an “invisible” placeholder instead of
just-removed “red” dockable - with the same size;
is it something available out of the box?
Hm, there was an event missing that tells the LayoutManager to take special care of such a situation. I’ll have a bugfix uploaded soon (crappy internet connection… always takes some time).
The invisible placeholder does not exist out of the box and it would be hard to create one, actually the SplitDockStation would need to be modified (and this class already is very complex).
Only by editing your first post, and posts can only be edited for an hour or so.
(The restriction exists because of some idiots which constantly edited their posts such that noone understood the initial problem nor the discussion or solution)