X-Git-Url: https://git.argeo.org/?p=gpl%2Fargeo-suite.git;a=blobdiff_plain;f=org.argeo.suite.ui%2Fsrc%2Forg%2Fargeo%2Fsuite%2Fui%2FDefaultHeader.java;fp=org.argeo.suite.ui%2Fsrc%2Forg%2Fargeo%2Fsuite%2Fui%2FDefaultHeader.java;h=0000000000000000000000000000000000000000;hp=a251e14c78ffa0de572f661a56c524e106e11e9a;hb=418ea1efbf3f0d6b706603c6ff1c0fdd17314773;hpb=70010c4afc5799622fcad5b075740d94da074798 diff --git a/org.argeo.suite.ui/src/org/argeo/suite/ui/DefaultHeader.java b/org.argeo.suite.ui/src/org/argeo/suite/ui/DefaultHeader.java deleted file mode 100644 index a251e14..0000000 --- a/org.argeo.suite.ui/src/org/argeo/suite/ui/DefaultHeader.java +++ /dev/null @@ -1,97 +0,0 @@ -package org.argeo.suite.ui; - -import java.util.Dictionary; -import java.util.Map; -import java.util.TreeMap; - -import javax.jcr.Node; -import javax.jcr.RepositoryException; - -import org.argeo.cms.LocaleUtils; -import org.argeo.cms.auth.CurrentUser; -import org.argeo.cms.ui.CmsTheme; -import org.argeo.cms.ui.CmsUiProvider; -import org.argeo.cms.ui.CmsView; -import org.argeo.cms.ui.util.CmsUiUtils; -import org.argeo.util.LangUtils; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; -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 DefaultHeader implements CmsUiProvider, ManagedService { - public final static String TITLE_PROPERTY = "argeo.suite.ui.header.title"; - private Map properties; - - @Override - public Control createUi(Composite parent, Node context) throws RepositoryException { - CmsView cmsView = CmsView.getCmsView(parent); - CmsTheme theme = CmsTheme.getCmsTheme(parent); - - parent.setLayout(CmsUiUtils.noSpaceGridLayout(new GridLayout(3, true))); - - // TODO right to left - Composite lead = new Composite(parent, SWT.NONE); - CmsUiUtils.style(lead, SuiteStyle.header); - lead.setLayoutData(new GridData(SWT.LEAD, SWT.CENTER, true, false)); - lead.setLayout(new GridLayout()); - Label lbl = new Label(lead, SWT.NONE); - String title = properties.get(TITLE_PROPERTY); - lbl.setText(LocaleUtils.isLocaleKey(title) ? LocaleUtils.local(title, getClass().getClassLoader()).toString() - : title); - CmsUiUtils.style(lbl, SuiteStyle.headerTitle); - lbl.setLayoutData(CmsUiUtils.fillWidth()); - - Composite middle = new Composite(parent, SWT.NONE); - CmsUiUtils.style(middle, SuiteStyle.header); - middle.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, true, false)); - middle.setLayout(new GridLayout()); - - Composite end = new Composite(parent, SWT.NONE); - CmsUiUtils.style(end, SuiteStyle.header); - end.setLayoutData(new GridData(SWT.END, SWT.CENTER, true, false)); - - if (!cmsView.isAnonymous()) { - end.setLayout(new GridLayout(2, false)); - Label userL = new Label(end, SWT.NONE); - CmsUiUtils.style(userL, SuiteStyle.header); - userL.setText(CurrentUser.getDisplayName()); - Button logoutB = new Button(end, SWT.FLAT); -// CmsUiUtils.style(logoutB, SuiteStyle.header); - logoutB.setImage(SuiteIcon.logout.getSmallIcon(theme)); - logoutB.addSelectionListener(new SelectionAdapter() { - private static final long serialVersionUID = 7116760083964201233L; - - @Override - public void widgetSelected(SelectionEvent e) { - cmsView.logout(); - } - - }); - } else { - end.setLayout(new GridLayout(1, false)); - // required in order to avoid wrong height after logout - new Label(end, SWT.NONE).setText(""); - - } - return lbl; - } - - public void init(Map properties) { - this.properties = new TreeMap<>(properties); - } - - @Override - public void updated(Dictionary properties) throws ConfigurationException { - if (properties != null) - this.properties.putAll(LangUtils.dictToStringMap(properties)); - } - -}