]> git.argeo.org Git - gpl/argeo-jcr.git/blob - VerticalMenu.java
7f846c93242bb36bd6835feb0fb33088fa1706ba
[gpl/argeo-jcr.git] / VerticalMenu.java
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.swt.CmsSwtUtils;
10 import org.argeo.cms.ui.CmsUiProvider;
11 import org.eclipse.swt.SWT;
12 import org.eclipse.swt.layout.GridData;
13 import org.eclipse.swt.widgets.Composite;
14 import org.eclipse.swt.widgets.Control;
15
16 public class VerticalMenu implements CmsUiProvider {
17 private List<CmsUiProvider> items = new ArrayList<CmsUiProvider>();
18
19 @Override
20 public Control createUi(Composite parent, Node context) throws RepositoryException {
21 Composite part = new Composite(parent, SWT.NONE);
22 part.setLayoutData(new GridData(SWT.LEAD, SWT.TOP, false, false));
23 // part.setData(RWT.CUSTOM_VARIANT, custom);
24 part.setLayout(CmsSwtUtils.noSpaceGridLayout());
25 for (CmsUiProvider uiProvider : items) {
26 Control subPart = uiProvider.createUi(part, context);
27 subPart.setLayoutData(new GridData(SWT.LEAD, SWT.TOP, false, false));
28 }
29 return part;
30 }
31
32 public void add(CmsUiProvider uiProvider) {
33 items.add(uiProvider);
34 }
35
36 public List<CmsUiProvider> getItems() {
37 return items;
38 }
39
40 public void setItems(List<CmsUiProvider> items) {
41 this.items = items;
42 }
43
44 }