2 * Copyright (C) 2017 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
9 package eu
.etaxonomy
.cdm
.vaadin
.ui
;
11 import org
.springframework
.beans
.factory
.annotation
.Autowired
;
12 import org
.springframework
.context
.ApplicationEventPublisher
;
14 import com
.vaadin
.annotations
.Theme
;
15 import com
.vaadin
.annotations
.Title
;
16 import com
.vaadin
.annotations
.Viewport
;
17 import com
.vaadin
.annotations
.Widgetset
;
18 import com
.vaadin
.devday
.ui
.MainMenu
;
19 import com
.vaadin
.devday
.ui
.UIInitializedEvent
;
20 import com
.vaadin
.devday
.ui
.navigation
.NavigationEvent
;
21 import com
.vaadin
.navigator
.ViewDisplay
;
22 import com
.vaadin
.server
.FontAwesome
;
23 import com
.vaadin
.server
.Responsive
;
24 import com
.vaadin
.server
.VaadinRequest
;
25 import com
.vaadin
.spring
.annotation
.SpringUI
;
26 import com
.vaadin
.ui
.Component
;
27 import com
.vaadin
.ui
.UI
;
28 import com
.vaadin
.ui
.themes
.ValoTheme
;
30 import eu
.etaxonomy
.cdm
.vaadin
.view
.phycobank
.TestView1
;
31 import eu
.etaxonomy
.cdm
.vaadin
.view
.phycobank
.TestView2
;
34 * @author a.kohlbecker
39 @Title("Registration")
40 @SpringUI(path
="registration")
41 @Viewport("width=device-width, initial-scale=1")
42 @Widgetset("eu.etaxonomy.cdm.vaadin.AppWidgetSet")
45 public class RegistrationUI
extends UI
{
47 private static final long serialVersionUID
= -8626236111335323691L;
50 private ViewDisplay viewDisplay
;
53 * this HACKY solution forces the bean to be instantiated, TODO do it properly
56 // MenuBeanDiscoveryBean bean;
59 private MainMenu mainMenu
;
62 ApplicationEventPublisher eventBus
;
64 public RegistrationUI() {
69 protected void init(VaadinRequest request
) {
70 addStyleName(ValoTheme
.UI_WITH_MENU
);
71 Responsive
.makeResponsive(this);
73 setContent((Component
) viewDisplay
);
75 mainMenu
.addMenuItem(TestView1
.NAME
, FontAwesome
.AMBULANCE
, TestView1
.NAME
);
76 mainMenu
.addMenuItem(TestView2
.NAME
, FontAwesome
.APPLE
, TestView2
.NAME
);
78 eventBus
.publishEvent(new UIInitializedEvent());
80 //navigate to initial view
81 eventBus
.publishEvent(new NavigationEvent(TestView1
.NAME
));