View Javadoc
1   package org.argeo.cms.ui.util;
2   
3   import java.util.ArrayList;
4   import java.util.List;
5   
6   import javax.jcr.Node;
7   import javax.jcr.RepositoryException;
8   
9   import org.argeo.cms.ui.CmsUiProvider;
10  import org.eclipse.swt.SWT;
11  import org.eclipse.swt.layout.GridData;
12  import org.eclipse.swt.widgets.Composite;
13  import org.eclipse.swt.widgets.Control;
14  
15  public class VerticalMenu implements CmsUiProvider {
16  	private List<CmsUiProvider> items = new ArrayList<CmsUiProvider>();
17  
18  	@Override
19  	public Control createUi(Composite parent, Node context) throws RepositoryException {
20  		Composite part = new Composite(parent, SWT.NONE);
21  		part.setLayoutData(new GridData(SWT.LEAD, SWT.TOP, false, false));
22  //		part.setData(RWT.CUSTOM_VARIANT, custom);
23  		part.setLayout(CmsUiUtils.noSpaceGridLayout());
24  		for (CmsUiProvider uiProvider : items) {
25  			Control subPart = uiProvider.createUi(part, context);
26  			subPart.setLayoutData(new GridData(SWT.LEAD, SWT.TOP, false, false));
27  		}
28  		return part;
29  	}
30  
31  	public void add(CmsUiProvider uiProvider) {
32  		items.add(uiProvider);
33  	}
34  
35  	public List<CmsUiProvider> getItems() {
36  		return items;
37  	}
38  
39  	public void setItems(List<CmsUiProvider> items) {
40  		this.items = items;
41  	}
42  
43  }