Mobile View supports menubar also

master
Markus Kreth 6 years ago
parent ca46824dc9
commit a2db9eb07d
  1. 14
      src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/navigation/MainView.java
  2. 13
      src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/navigation/MainViewDesktop.java
  3. 5
      src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/navigation/MainViewMobile.java

@ -32,6 +32,9 @@ import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.ClubhelperErrorDialog;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.ClubEventProvider; import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.ClubEventProvider;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.PersonGrid; import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.PersonGrid;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.SingleEventView; import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.SingleEventView;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.menu.ClubhelperMenuBar;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.menu.MenuItemState;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.menu.MenuItemStateFactory;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.navigation.ClubhelperNavigation.ClubNavigator; import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.navigation.ClubhelperNavigation.ClubNavigator;
import net.sf.jasperreports.engine.JRException; import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperExportManager; import net.sf.jasperreports.engine.JasperExportManager;
@ -61,6 +64,10 @@ public abstract class MainView extends VerticalLayout implements View {
protected ClubEventProvider dataProvider; protected ClubEventProvider dataProvider;
private ClubhelperMenuBar menuBar;
private MenuItemStateFactory menuStateFactory;
public MainView(ApplicationContext context2, GroupDao groupDao, EventBusiness eventBusiness, public MainView(ApplicationContext context2, GroupDao groupDao, EventBusiness eventBusiness,
PersonBusiness personBusiness, PersonBusiness personBusiness,
SecurityVerifier securityGroupVerifier) { SecurityVerifier securityGroupVerifier) {
@ -71,6 +78,7 @@ public abstract class MainView extends VerticalLayout implements View {
this.securityVerifier = securityGroupVerifier; this.securityVerifier = securityGroupVerifier;
dataProvider = context2.getBean(ClubEventProvider.class); dataProvider = context2.getBean(ClubEventProvider.class);
menuStateFactory = context.getBean(MenuItemStateFactory.class);
} }
@Override @Override
@ -91,10 +99,15 @@ public abstract class MainView extends VerticalLayout implements View {
} }
} }
MenuItemState state = menuStateFactory.currentState();
menuBar.applyState(state);
} }
public void initUI(ViewChangeEvent event) { public void initUI(ViewChangeEvent event) {
MenuItemState state = menuStateFactory.currentState();
menuBar = new ClubhelperMenuBar(state);
navigator = (ClubNavigator) event.getNavigator(); navigator = (ClubNavigator) event.getNavigator();
eventView = new SingleEventView(false); eventView = new SingleEventView(false);
@ -107,6 +120,7 @@ public abstract class MainView extends VerticalLayout implements View {
personGrid.onPersonSelect(ev -> personSelectionChange(ev)); personGrid.onPersonSelect(ev -> personSelectionChange(ev));
personGrid.setVisible(false); personGrid.setVisible(false);
addComponent(menuBar);
} }
public ApplicationContext getContext() { public ApplicationContext getContext() {

@ -21,9 +21,6 @@ import de.kreth.vaadin.clubhelper.vaadinclubhelper.dao.GroupDao;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.ClubEvent; import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.ClubEvent;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.security.SecurityVerifier; import de.kreth.vaadin.clubhelper.vaadinclubhelper.security.SecurityVerifier;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.CalendarComponent; import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.CalendarComponent;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.menu.ClubhelperMenuBar;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.menu.MenuItemState;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components.menu.MenuItemStateFactory;
public class MainViewDesktop extends MainView { public class MainViewDesktop extends MainView {
@ -37,25 +34,18 @@ public class MainViewDesktop extends MainView {
private CalendarComponent calendar; private CalendarComponent calendar;
private ClubhelperMenuBar menuBar;
private DesktopHeadView head; private DesktopHeadView head;
private MenuItemStateFactory menuStateFactory;
public MainViewDesktop(ApplicationContext context, PersonBusiness personDao, GroupDao groupDao, public MainViewDesktop(ApplicationContext context, PersonBusiness personDao, GroupDao groupDao,
EventBusiness eventBusiness, EventBusiness eventBusiness,
SecurityVerifier securityGroupVerifier) { SecurityVerifier securityGroupVerifier) {
super(context, groupDao, eventBusiness, personDao, securityGroupVerifier); super(context, groupDao, eventBusiness, personDao, securityGroupVerifier);
calendar = new CalendarComponent(dataProvider); calendar = new CalendarComponent(dataProvider);
menuStateFactory = context.getBean(MenuItemStateFactory.class);
} }
@Override @Override
public void initUI(ViewChangeEvent event) { public void initUI(ViewChangeEvent event) {
super.initUI(event); super.initUI(event);
MenuItemState state = menuStateFactory.currentState();
menuBar = new ClubhelperMenuBar(state);
calendar = new CalendarComponent(dataProvider); calendar = new CalendarComponent(dataProvider);
calendar.setSizeFull(); calendar.setSizeFull();
calendar.setId("main.calendar"); calendar.setId("main.calendar");
@ -89,7 +79,6 @@ public class MainViewDesktop extends MainView {
eastLayout = new VerticalLayout(); eastLayout = new VerticalLayout();
eastLayout.addComponents(eventView, personGrid, eventButtonLayout); eastLayout.addComponents(eventView, personGrid, eventButtonLayout);
addComponent(menuBar);
addComponent(head); addComponent(head);
addComponent(mainLayout); addComponent(mainLayout);
setExpandRatio(mainLayout, 1f); setExpandRatio(mainLayout, 1f);
@ -124,8 +113,6 @@ public class MainViewDesktop extends MainView {
public void enter(ViewChangeEvent event) { public void enter(ViewChangeEvent event) {
super.enter(event); super.enter(event);
head.updateLoggedinPerson(); head.updateLoggedinPerson();
MenuItemState state = menuStateFactory.currentState();
menuBar.applyState(state);
reloadEvents(); reloadEvents();
} }

@ -22,6 +22,7 @@ import com.vaadin.ui.Grid;
import com.vaadin.ui.Grid.SelectionMode; import com.vaadin.ui.Grid.SelectionMode;
import com.vaadin.ui.HorizontalLayout; import com.vaadin.ui.HorizontalLayout;
import com.vaadin.ui.Label; import com.vaadin.ui.Label;
import com.vaadin.ui.UI;
import com.vaadin.ui.Window; import com.vaadin.ui.Window;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.business.EventBusiness; import de.kreth.vaadin.clubhelper.vaadinclubhelper.business.EventBusiness;
@ -44,6 +45,7 @@ public class MainViewMobile extends MainView {
EventBusiness eventBusiness, EventBusiness eventBusiness,
SecurityVerifier securityGroupVerifier) { SecurityVerifier securityGroupVerifier) {
super(context, groupDao, eventBusiness, personDao, securityGroupVerifier); super(context, groupDao, eventBusiness, personDao, securityGroupVerifier);
} }
@Override @Override
@ -128,7 +130,8 @@ public class MainViewMobile extends MainView {
DateField dateField = new DateField(); DateField dateField = new DateField();
window.setContent(dateField); window.setContent(dateField);
source.getUI().addWindow(window); UI ui = source.getUI();
ui.addWindow(window);
LocalDate value = dateField.getValue(); LocalDate value = dateField.getValue();
return ZonedDateTime.from(value); return ZonedDateTime.from(value);

Loading…
Cancel
Save