X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.suite.ui%2Fsrc%2Forg%2Fargeo%2Fsuite%2Fui%2FDefaultLeadPane.java;h=1f371823aa1211c958d4ae27377b6041298cec5d;hb=20dc399b50c00d9334211d95bc1519f512d6c296;hp=73b81b0248105b4788ca99195b1745e652fdccde;hpb=5ace611de7a12d74a6b606861b89a2d3517514b0;p=gpl%2Fargeo-suite.git diff --git a/org.argeo.suite.ui/src/org/argeo/suite/ui/DefaultLeadPane.java b/org.argeo.suite.ui/src/org/argeo/suite/ui/DefaultLeadPane.java index 73b81b0..1f37182 100644 --- a/org.argeo.suite.ui/src/org/argeo/suite/ui/DefaultLeadPane.java +++ b/org.argeo.suite.ui/src/org/argeo/suite/ui/DefaultLeadPane.java @@ -1,36 +1,63 @@ package org.argeo.suite.ui; -import java.util.Dictionary; +import java.util.Map; import javax.jcr.Node; import javax.jcr.RepositoryException; +import org.argeo.cms.Localized; +import org.argeo.cms.ui.CmsTheme; import org.argeo.cms.ui.CmsUiProvider; +import org.argeo.cms.ui.CmsView; +import org.argeo.cms.ui.util.CmsIcon; import org.argeo.cms.ui.util.CmsUiUtils; import org.eclipse.swt.SWT; +import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; +import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Label; -import org.osgi.service.cm.ConfigurationException; -import org.osgi.service.cm.ManagedService; -public class DefaultLeadPane implements CmsUiProvider, ManagedService { +/** Side pane listing various perspectives. */ +public class DefaultLeadPane implements CmsUiProvider { + // private final static Log log = LogFactory.getLog(DefaultLeadPane.class); @Override - public Control createUi(Composite parent, Node context) throws RepositoryException { - parent.setLayout(new GridLayout()); + public Control createUi(Composite parent, Node node) throws RepositoryException { + CmsView cmsView = CmsView.getCmsView(parent); + GridLayout layout = new GridLayout(); + layout.verticalSpacing = 10; + layout.marginTop = 10; + layout.marginLeft = 10; + layout.marginRight = 10; + parent.setLayout(layout); + + Button dashboardB = createButton(parent, SuiteMsg.dashboard.name(), SuiteMsg.dashboard, SuiteIcon.dashboard); + if (!cmsView.isAnonymous()) { +// createButton(parent, SuiteMsg.documents.name(), SuiteMsg.documents, SuiteIcon.documents); +// createButton(parent, SuiteMsg.people.name(), SuiteMsg.people, SuiteIcon.people); +// createButton(parent, SuiteMsg.locations.name(), SuiteMsg.locations, SuiteIcon.location); + } + return dashboardB; + } - Label dashboard = new Label(parent, SWT.NONE); - CmsUiUtils.style(dashboard, WorkStyles.leadPane); - dashboard.setText(WorkMsg.dashboard.lead()); - return dashboard; + protected Button createButton(Composite parent, String layer, Localized msg, CmsIcon icon) { + CmsTheme theme = CmsTheme.getCmsTheme(parent); + Button button = new Button(parent, SWT.PUSH); + CmsUiUtils.style(button, SuiteStyle.leadPane); + button.setImage(icon.getBigIcon(theme)); + button.setLayoutData(new GridData(SWT.CENTER, SWT.BOTTOM, true, false)); + // button.setToolTipText(msg.lead()); + Label lbl = new Label(parent, SWT.NONE); + CmsUiUtils.style(lbl, SuiteStyle.leadPane); + lbl.setText(msg.lead()); + lbl.setLayoutData(new GridData(SWT.CENTER, SWT.TOP, true, false)); + CmsUiUtils.sendEventOnSelect(button, SuiteEvent.switchLayer.topic(), SuiteEvent.LAYER, layer); + return button; } - @Override - public void updated(Dictionary properties) throws ConfigurationException { - // TODO Auto-generated method stub + public void init(Map properties) { } - }