From 304dc77941fcf6d304566588be9c74eb7651d027 Mon Sep 17 00:00:00 2001 From: Markus Kreth Date: Sun, 9 Sep 2018 01:17:48 +0200 Subject: [PATCH] Grid selection working - disabled selection listener while switching event. --- .project | 24 ++++--------------- .../vaadinclubhelper/ui/MainUi.java | 7 +++--- .../ui/components/CalendarComponent.java | 10 -------- .../ui/components/PersonEditDialog.java | 1 + .../ui/components/PersonGrid.java | 18 ++++++++------ src/main/resources/hibernate.cfg.xml | 2 ++ src/main/resources/simplelogger.properties | 1 + .../VaadinClubhelperApplicationTests.java | 5 ---- .../dao/ClubEventDaoTest.java | 5 ++-- .../dao/DatabaseTestBean.java | 1 - 10 files changed, 25 insertions(+), 49 deletions(-) diff --git a/.project b/.project index f2d33e4..227202e 100644 --- a/.project +++ b/.project @@ -15,48 +15,34 @@ - - org.eclipse.ui.externaltools.ExternalToolBuilder - full,incremental, - - - LaunchConfigHandle - <project>/.externalToolBuilders/org.eclipse.babel.editor.rbeBuilder.launch - - - org.eclipse.wst.validation.validationbuilder - org.eclipse.ui.externaltools.ExternalToolBuilder - full,incremental, + org.springframework.ide.eclipse.boot.validation.springbootbuilder - - LaunchConfigHandle - <project>/.externalToolBuilders/org.hibernate.eclipse.console.hibernateBuilder.launch - - org.springframework.ide.eclipse.boot.validation.springbootbuilder + org.springframework.ide.eclipse.core.springbuilder - org.springframework.ide.eclipse.core.springbuilder + org.eclipse.m2e.core.maven2Builder - org.eclipse.m2e.core.maven2Builder + org.fusesource.ide.project.RiderProjectBuilder + org.fusesource.ide.project.RiderProjectNature org.springframework.ide.eclipse.core.springnature org.eclipse.jem.workbench.JavaEMFNature org.eclipse.wst.common.modulecore.ModuleCoreNature diff --git a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/MainUi.java b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/MainUi.java index 30ccf0e..f7fc60d 100644 --- a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/MainUi.java +++ b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/MainUi.java @@ -112,11 +112,10 @@ public class MainUi extends UI { contentLayout.removeComponent(personGrid); contentLayout.addComponent(personGrid); - - personGrid.setCaption(ev.getCaption()); - personGrid.setTitle(ev.getCaption()); + + eventBusiness.setSelected(null); personGrid.setEnabled(false); - personGrid.selectItems(ev.getPersons()); + personGrid.setEvent(ev); personGrid.setVisible(true); personGrid.setEnabled(true); eventBusiness.setSelected(ev); diff --git a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/CalendarComponent.java b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/CalendarComponent.java index 56f3a41..e6542c5 100644 --- a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/CalendarComponent.java +++ b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/CalendarComponent.java @@ -8,10 +8,8 @@ import java.util.Collection; import org.vaadin.addon.calendar.Calendar; import org.vaadin.addon.calendar.item.BasicItemProvider; -import org.vaadin.addon.calendar.ui.CalendarComponentEvents.BackwardEvent; import org.vaadin.addon.calendar.ui.CalendarComponentEvents.BackwardHandler; import org.vaadin.addon.calendar.ui.CalendarComponentEvents.DateClickHandler; -import org.vaadin.addon.calendar.ui.CalendarComponentEvents.ForwardEvent; import org.vaadin.addon.calendar.ui.CalendarComponentEvents.ForwardHandler; import org.vaadin.addon.calendar.ui.CalendarComponentEvents.ItemClickHandler; @@ -53,14 +51,6 @@ public class CalendarComponent extends CustomComponent { setCompositionRoot(layout); } - private void onNextMonth(ForwardEvent h) { - updateMonthText(h.getComponent().getStartDate()); - } - - private void onPrevMonth(BackwardEvent h) { - updateMonthText(h.getComponent().getStartDate()); - } - private void updateMonthText(ZonedDateTime startDate) { monthName.setValue(dfMonth.format(startDate)); } diff --git a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/PersonEditDialog.java b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/PersonEditDialog.java index 6632d17..6290d9d 100644 --- a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/PersonEditDialog.java +++ b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/PersonEditDialog.java @@ -66,6 +66,7 @@ public class PersonEditDialog extends Window { ok.addClickListener(ev -> { binder.writeBeanIfValid(person); dao.update(person); + PersonEditDialog.this.close(); }); VerticalLayout layout = new VerticalLayout(); layout.addComponents(textPrename, textSureName, birthday, groupPanel, close, ok); diff --git a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/PersonGrid.java b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/PersonGrid.java index eb2d445..f3e5e8c 100644 --- a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/PersonGrid.java +++ b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/PersonGrid.java @@ -2,6 +2,7 @@ package de.kreth.vaadin.clubhelper.vaadinclubhelper.ui.components; import java.text.DateFormat; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.HashSet; import java.util.List; @@ -32,6 +33,7 @@ import com.vaadin.ui.VerticalLayout; import com.vaadin.ui.themes.ValoTheme; import de.kreth.vaadin.clubhelper.vaadinclubhelper.dao.GroupDao; +import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.ClubEvent; import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.GroupDef; import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.Person; @@ -160,7 +162,8 @@ public class PersonGrid extends CustomComponent { grid.addSelectionListener(listener); } - public void selectItems(Person... items) { + private void selectItems(Person... items) { + log.debug("Selecting Persons: {}", Arrays.asList(items)); MultiSelect asMultiSelect = grid.asMultiSelect(); asMultiSelect.deselectAll(); asMultiSelect.select(items); @@ -188,7 +191,7 @@ public class PersonGrid extends CustomComponent { updateFilter(); } - public void setTitle(String value) { + private void setTitle(String value) { if (value == null) { value = ""; } @@ -207,13 +210,14 @@ public class PersonGrid extends CustomComponent { void closed(); } - public void selectItems(Collection persons) { - log.debug("Selecting now: {}" + persons); - selectItems(persons.toArray(new Person[0])); - } - public void onPersonEdit(Consumer function) { this.onPersonEdit = function; } + public void setEvent(ClubEvent ev) { + setCaption(ev.getCaption()); + setTitle(ev.getCaption()); + selectItems(ev.getPersons().toArray(new Person[0])); + } + } diff --git a/src/main/resources/hibernate.cfg.xml b/src/main/resources/hibernate.cfg.xml index 7c0393c..136231d 100644 --- a/src/main/resources/hibernate.cfg.xml +++ b/src/main/resources/hibernate.cfg.xml @@ -13,6 +13,8 @@ java:comp/env/jdbc/clubhelperbackend org.hibernate.NoCacheProvider true + true + true org.hibernate.context.internal.ThreadLocalSessionContext diff --git a/src/main/resources/simplelogger.properties b/src/main/resources/simplelogger.properties index 8bcfaec..4f66717 100644 --- a/src/main/resources/simplelogger.properties +++ b/src/main/resources/simplelogger.properties @@ -1 +1,2 @@ org.slf4j.simpleLogger.defaultLogLevel = trace +log4j.logger.org.hibernate.type=trace \ No newline at end of file diff --git a/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/VaadinClubhelperApplicationTests.java b/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/VaadinClubhelperApplicationTests.java index 3307bca..86ddeec 100644 --- a/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/VaadinClubhelperApplicationTests.java +++ b/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/VaadinClubhelperApplicationTests.java @@ -1,10 +1,5 @@ package de.kreth.vaadin.clubhelper.vaadinclubhelper; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.test.context.junit4.SpringRunner; - //@RunWith(SpringRunner.class) //@SpringBootTest public class VaadinClubhelperApplicationTests { diff --git a/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/dao/ClubEventDaoTest.java b/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/dao/ClubEventDaoTest.java index a184077..94caf42 100644 --- a/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/dao/ClubEventDaoTest.java +++ b/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/dao/ClubEventDaoTest.java @@ -13,7 +13,6 @@ import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; -import org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager; import org.springframework.test.context.junit4.SpringRunner; import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.ClubEvent; @@ -28,8 +27,8 @@ public class ClubEventDaoTest extends AbstractDatabaseTest { @Autowired private ClubEventDao dao; - @Autowired - private TestEntityManager entityManager; +// @Autowired +// private TestEntityManager entityManager; @Test public void storeEvent() { diff --git a/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/dao/DatabaseTestBean.java b/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/dao/DatabaseTestBean.java index b1fc5cf..bc472f6 100644 --- a/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/dao/DatabaseTestBean.java +++ b/src/test/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/dao/DatabaseTestBean.java @@ -8,7 +8,6 @@ import org.hibernate.cfg.Configuration; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringBootConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager; import org.springframework.context.annotation.Bean; import org.springframework.core.io.Resource; import org.springframework.core.io.ResourceLoader;