4ff9c4ab2384f68d9b329b835e1583122b127b44
[cdmlib.git] / cdmlib-remote / src / main / java / eu / etaxonomy / cdm / remote / vaadin / uiset / redlist / views / DistributionSelectorView.java
1 package eu.etaxonomy.cdm.remote.vaadin.uiset.redlist.views;
2
3 import javax.annotation.PostConstruct;
4
5 import org.springframework.beans.factory.annotation.Autowired;
6 import org.springframework.context.annotation.Scope;
7 import org.springframework.stereotype.Component;
8
9 import ru.xpoft.vaadin.VaadinView;
10
11 import com.vaadin.annotations.Theme;
12 import com.vaadin.navigator.View;
13 import com.vaadin.navigator.ViewChangeListener.ViewChangeEvent;
14 import com.vaadin.server.Page;
15 import com.vaadin.ui.Alignment;
16 import com.vaadin.ui.CustomComponent;
17 import com.vaadin.ui.HorizontalLayout;
18 import com.vaadin.ui.Panel;
19 import com.vaadin.ui.VerticalLayout;
20
21 import eu.etaxonomy.cdm.remote.vaadin.components.DistributionSelectionForm;
22 import eu.etaxonomy.cdm.remote.vaadin.service.VaadinAuthenticationService;
23
24 @Component
25 @Scope("prototype")
26 @Theme("mytheme")
27 @VaadinView(DistributionSelectorView.NAME)
28 public class DistributionSelectorView extends CustomComponent implements View {
29
30 private static final long serialVersionUID = 1L;
31 public static final String NAME = "DistributionSelector";
32 @Autowired
33 private transient VaadinAuthenticationService authenticationService;
34 @Autowired
35 private transient DistributionSelectionForm distributionSelectionForm;
36
37 @PostConstruct
38 public void PostConstruct(){
39 if(authenticationService.isAuthenticated()){
40 VerticalLayout layout = new VerticalLayout();
41 layout.setWidth("100%");
42 layout.setHeight("100%");
43 Page page = Page.getCurrent();
44
45 HorizontalLayout hLayout = new HorizontalLayout();
46 //FIXME: Quick'n'dirty hack
47 int hh = Page.getCurrent().getBrowserWindowHeight()-300;
48 setHeight(hh +"px");
49
50
51 Panel panel = new Panel();
52 panel.setSizeUndefined();
53 panel.setContent(distributionSelectionForm);
54 panel.setStyleName("login");
55
56 layout.addComponent(hLayout);
57 layout.addComponent(panel);
58
59 layout.setSizeFull();
60 layout.setComponentAlignment(panel, Alignment.MIDDLE_CENTER);
61
62 setCompositionRoot(layout);
63 }
64 }
65
66
67 @Override
68 public void enter(ViewChangeEvent event) {
69
70 }
71 }