public void clear() { Iterator<OgemaWidget> it = items.iterator(); while (it.hasNext()) { OgemaWidget w = it.next(); w.destroyWidget(); } items.clear(); }
/** * Remove the subwidget from the items list, and destroy it * @param widget * @return */ public boolean removeItem(OgemaWidget widget) { if (widget == null) return false; boolean result = items.remove(widget); widget.destroyWidget(); removeCSSItems("#" + widget.getId() + ".ogema-widget"); return result; }
public OgemaWidget removeItem(int position) throws IndexOutOfBoundsException { OgemaWidget w = items.remove(position); if (w != null) { w.destroyWidget(); removeCSSItems("#" + w.getId() + ".ogema-widget"); } return w; }
boolean deleteItem(OgemaWidget item) { writeLock(); try { for (List<Content> col: items) { final Iterator<Content> it = col.iterator(); while (it.hasNext()) { final Content item2 = it.next(); if (item.equals(item2.getContent())) { it.remove(); item.destroyWidget(); return true; } } } } finally { writeUnlock(); } return false; }
@Override protected void removeSubWidgets() { final List<OgemaWidget> w = new ArrayList<>(); writeLock(); try { // super.removeSubWidgets(); w.addAll(subwidgets.values()); Iterator<HtmlItem> it = htmlItems.values().iterator(); while(it.hasNext()) { Collection<OgemaWidget> subs = it.next().getSubWidgets(); for (OgemaWidget sw : subs ) { w.add(sw); } } clear(); } finally { writeUnlock(); } for (OgemaWidget widget: w) { widget.destroyWidget(); } }
/** * This method must be implemented, it is used by the session management upon removal of the WidgetOptions object */ protected void removeSubWidgets() { writeLock(); List<OgemaWidget> subwidgets; try { subwidgets = new ArrayList<>(getSubWidgets()); getSubWidgets().clear(); } finally { writeUnlock(); } // System.out.println(" Calling removeSubwidgets for " + id+ ", subwidgets = " + getSubWidgets()); Iterator<OgemaWidget> it = subwidgets.iterator(); while (it.hasNext()) { OgemaWidget sw = it.next(); sw.destroyWidget(); } }