/** * Adds the given module to the menu structure. If the module is not visible (i.e., {@link * ModuleInfo#isVisible()} returns false), it is ignored. * * <p>{@inheritDoc} */ @Override public boolean add(final ModuleInfo o) { if (!o.isVisible()) return false; final ShadowMenu node = addInternal(o); if (node == null) return false; if (es != null) es.publish(new MenusAddedEvent(node)); return true; }
/** * Adds the given modules to the menu structure. If a module is not visible (i.e., {@link * ModuleInfo#isVisible()} returns false), it is ignored. * * <p>{@inheritDoc} */ @Override public boolean addAll(final Collection<? extends ModuleInfo> c) { final HashSet<ShadowMenu> nodes = new HashSet<>(); for (final ModuleInfo info : c) { if (!info.isVisible()) continue; final ShadowMenu node = addInternal(info); if (node != null) nodes.add(node); } if (nodes.isEmpty()) return false; if (es != null) es.publish(new MenusAddedEvent(nodes)); return true; }