1 package org.glassbox.gui;
2
3 /***
4 Extension of a visible group which supports multiple layers.
5 */
6 public interface LayeredGroup extends VisibleGroup {
7 public interface Layer extends Visible {
8 /***
9 Add a visible to the layer.
10 */
11 void addVisible(Visible view, Object constraints);
12 /***
13 Add a visible to the layer.
14 */
15 void addVisible(Visible view);
16 /***
17 Remove a visible from the layer.
18 */
19 void removeVisible(Visible view);
20 }
21
22 /***
23 Add a visible member to the group on the specified layer.
24 */
25 void addMember(VisibleMember member, int position);
26 /***
27 Add a visible member to the group on the specified layer using the specified constraints.
28 */
29 void addMember(VisibleMember member, int position, Object constraints);
30 /***
31 Add a layer to this group.
32 Layers with higher position overlap layers with lower position.
33 */
34 void addLayer(int position, Layer layer);
35 /***
36 Move a member to the top of it's layer.
37 */
38 void moveToFront(VisibleMember member);
39 /***
40 Move a member to the bottom of it's layer.
41 */
42 void moveToBack(VisibleMember member);
43 }