List of usage examples for com.vaadin.navigator Navigator removeViewChangeListener
@Deprecated public void removeViewChangeListener(ViewChangeListener listener)
From source file:me.uni.emuseo.view.menu.MenuView.java
License:Open Source License
public void setNavigator(final Navigator navigator) { this.navigator = navigator; final ViewChangeListener viewChangeListener = new ViewChangeListener() { private static final long serialVersionUID = -4564885643037277448L; @Override//w w w . j ava 2 s. c om public boolean beforeViewChange(final ViewChangeEvent event) { return true; } @Override public void afterViewChange(final ViewChangeEvent event) { for (final Iterator<Component> it = menuItemsLayout.iterator(); it.hasNext();) { it.next().removeStyleName("selected"); } String fullViewName = event.getViewName() + '/' + event.getParameters(); for (final Entry<String, String> item : menuItems.entrySet()) { if (fullViewName.equals(item.getKey())) { for (final Iterator<Component> it = menuItemsLayout.iterator(); it.hasNext();) { final Component c = it.next(); if (c.getCaption() != null && c.getCaption().startsWith(item.getValue())) { c.addStyleName("selected"); break; } } break; } } menu.removeStyleName("valo-menu-visible"); } }; navigator.addViewChangeListener(viewChangeListener); addDetachListener(new DetachListener() { private static final long serialVersionUID = -8082565032894897397L; @Override public void detach(DetachEvent event) { navigator.removeViewChangeListener(viewChangeListener); } }); }