org.wicketstuff.yui.markup.html.list
Class YuiDDListView<T>

java.lang.Object
  extended by org.apache.wicket.Component
      extended by org.apache.wicket.MarkupContainer
          extended by org.apache.wicket.markup.html.WebMarkupContainer
              extended by org.apache.wicket.markup.repeater.AbstractRepeater
                  extended by org.apache.wicket.markup.html.list.ListView<T>
                      extended by org.wicketstuff.yui.markup.html.list.YuiDDListView<T>
Type Parameters:
T -
All Implemented Interfaces:
Serializable, org.apache.wicket.IClusterable, org.apache.wicket.IConverterLocator

public abstract class YuiDDListView<T>
extends org.apache.wicket.markup.html.list.ListView<T>

A ListView with each li bounded to a YuiListDD which will make it reorderable. Note :- the javascript works only with <li>

onAjaxUpdate needs to be called to update the container since AjaxUpdate cannot be called on ListView

 
 Example HTML:
 
                <ul>
                    <li wicket:id="items" >
                        <label wicket:id="item">label</label>
                    </li>
                </ul>
 
 Example Java:
 
                add(new YuiDDListView("items", listData)
                {
                        public void populateItem(final ListItem item)
                        {
                                super.populateItem(item); 
                                item.add(new Label("item", item.getModelObjectAsString()));
                        }
                });
 
 

Author:
josh
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.wicket.Component
org.apache.wicket.Component.ComponentModelChange, org.apache.wicket.Component.EnabledChange, org.apache.wicket.Component.IVisitor<T extends org.apache.wicket.Component>, org.apache.wicket.Component.VisibilityChange
 
Field Summary
 
Fields inherited from class org.apache.wicket.Component
ENABLE, FLAG_CONFIGURED, FLAG_INITIALIZED, FLAG_REMOVING_FROM_HIERARCHY, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED6, FLAG_RESERVED7, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER
 
Constructor Summary
YuiDDListView(String id, org.apache.wicket.model.IModel<List<T>> model)
           
YuiDDListView(String id, List<T> list)
           
 
Method Summary
protected  String getGroupId()
          two lists of the same group can interact with each
protected abstract  void onAjaxUpdate(org.apache.wicket.ajax.AjaxRequestTarget target)
          IMPT : to refresh the containing markup this is called when a item is dropped on a list and also when it is removed from a list
protected  void onDrop(int pos, T destItem)
          when an Item is dropped on the list, it could be a new item or it could be an existing item.
protected  void populateItem(org.apache.wicket.markup.html.list.ListItem<T> item)
           
protected  void removeItem(org.apache.wicket.markup.html.list.ListItem<T> item)
          from removeLink()
protected  void visitTarget(org.apache.wicket.Component dragOverItem, int pos, T item)
           
 
Methods inherited from class org.apache.wicket.markup.html.list.ListView
getList, getListItemModel, getModel, getModelObject, getReuseItems, getStartIndex, getViewSize, iterator, moveDownLink, moveUpLink, newItem, onBeginPopulateItem, onPopulate, removeLink, renderChild, renderItem, renderIterator, setList, setModel, setModelObject, setReuseItems, setStartIndex, setViewSize
 
Methods inherited from class org.apache.wicket.markup.repeater.AbstractRepeater
onBeforeRender, onRender
 
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getMarkupType, getWebPage, getWebRequest
 
Methods inherited from class org.apache.wicket.MarkupContainer
add, addOrReplace, autoAdd, autoAdd, contains, findMarkupStream, get, get, getAssociatedMarkupStream, getMarkupStream, hasAssociatedMarkup, internalAdd, isTransparentResolver, iterator, newMarkupResourceStream, onAfterRenderChildren, onComponentTagBody, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderComponentTagBody, renderNext, replace, setDefaultModel, setMarkupStream, size, swap, toString, toString, visitChildren, visitChildren
 
Methods inherited from class org.apache.wicket.Component
add, addStateChange, afterRender, beforeRender, callOnBeforeRenderIfNotVisible, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, configure, continueToOriginalDestination, debug, detach, detachBehaviors, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviors, getBehaviors, getBehaviorsRawList, getClassRelativePath, getComponentBorder, getConverter, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessage, getFlag, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdImpl, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getResponse, getSession, getSizeInBytes, getStatelessHint, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, initModel, internalAttach, internalDetach, internalOnAttach, internalOnDetach, internalOnModelChanged, isActionAuthorized, isAncestorOf, isAttached, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isRenderAllowed, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, locateMarkupStream, markAttached, markRendering, modelChanged, modelChanging, onAfterRender, onAttach, onBeginRequest, onComponentTag, onConfigure, onDetach, onEndRequest, onInitialize, onModelChanged, onModelChanging, onRemove, prepareForRender, prepareForRender, redirectToInterceptPage, remove, remove, render, render, renderComponent, renderComponent, renderComponentTag, rendered, renderHead, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, setAuto, setComponentBorder, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setFlag, setIgnoreAttributeModifier, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setRedirect, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, urlFor, urlFor, urlFor, urlFor, urlFor, urlFor, visitParents, warn, wrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

YuiDDListView

public YuiDDListView(String id,
                     List<T> list)

YuiDDListView

public YuiDDListView(String id,
                     org.apache.wicket.model.IModel<List<T>> model)
Method Detail

populateItem

protected void populateItem(org.apache.wicket.markup.html.list.ListItem<T> item)
Specified by:
populateItem in class org.apache.wicket.markup.html.list.ListView<T>

visitTarget

protected void visitTarget(org.apache.wicket.Component dragOverItem,
                           int pos,
                           T item)
Parameters:
dragOverItem -
pos -
item -

getGroupId

protected String getGroupId()
two lists of the same group can interact with each

Returns:

removeItem

protected void removeItem(org.apache.wicket.markup.html.list.ListItem<T> item)
from removeLink()


onDrop

protected void onDrop(int pos,
                      T destItem)
when an Item is dropped on the list, it could be a new item or it could be an existing item.

Parameters:
pos -
destItem -

onAjaxUpdate

protected abstract void onAjaxUpdate(org.apache.wicket.ajax.AjaxRequestTarget target)
IMPT : to refresh the containing markup this is called when a item is dropped on a list and also when it is removed from a list

Parameters:
target -


Copyright © 2006-2012 Wicket developers. All Rights Reserved.