diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/TabsRegistry.java b/ganttzk/src/main/java/org/zkoss/ganttz/TabsRegistry.java index 309f2fb05..c00635059 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/TabsRegistry.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/TabsRegistry.java @@ -57,6 +57,13 @@ public class TabsRegistry { activateMenuIfRegistered(tab); } + public void loadNewName(ITab tab) { + if (fromTabToMenuKey.containsKey(tab)) { + Object key = fromTabToMenuKey.get(tab); + menu.renameMenuItem(key, tab.getName()); + } + } + private void activateMenuIfRegistered(ITab tab) { if (fromTabToMenuKey.containsKey(tab)) { menu.activateMenuItem(fromTabToMenuKey.get(tab)); @@ -90,4 +97,5 @@ public class TabsRegistry { fromTabToMenuKey.put(t, key); } } + } diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/MultipleTabsPlannerController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/MultipleTabsPlannerController.java index 08cfdbc0f..4fe7b44f9 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/MultipleTabsPlannerController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/tabs/MultipleTabsPlannerController.java @@ -35,6 +35,7 @@ import org.navalplanner.web.planner.CompanyPlanningController; import org.navalplanner.web.planner.IOrderPlanningGate; import org.navalplanner.web.planner.OrderPlanningController; import org.navalplanner.web.planner.tabs.CreatedOnDemandTab.IComponentCreator; +import org.navalplanner.web.planner.tabs.Mode.ModeTypeChangedListener; import org.navalplanner.web.resourceload.ResourceLoadController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.config.BeanDefinition; @@ -143,6 +144,15 @@ public class MultipleTabsPlannerController implements Composer { public TabsConfiguration getTabs() { if (tabsConfiguration == null) { tabsConfiguration = buildTabsConfiguration(); + mode.addListener(new ModeTypeChangedListener() { + + @Override + public void typeChanged(ModeType oldType, ModeType newType) { + for (ITab tab : tabsConfiguration.getTabs()) { + tabsSwitcher.getTabsRegistry().loadNewName(tab); + } + } + }); } return tabsConfiguration; }