Hello,
Modified the drag-n-drop example from the demo a bit and the following question occured:
How do I find out the drag source (dataTable or panel is or any string) if I drag a panel around?
I tried to use the actionParameter tag but it is called after the drop event so it will not work this way.
Every panel should support both drag and drop. I want to put back an element from php stack back
to the first panel and it should be possible to drop each item into any of the panels. So I need to know
where the item comes from to remove it from the list.
<rich:panel styleClass="dropTargetPanel">
<f:facet name="header">
<h:outputText value="PHP Frameworks" />
</f:facet>
<rich:dropSupport id="php" acceptedTypes="PHP,CF,DNET" dropValue="PHP"
dropListener="#{eventBean.processDrop}" reRender="phptable, src">
</rich:dropSupport>
<h:dataTable id="phptable" columns="1" value="#{dndBean.containerPHP}" var="fm">
<h:column>
<a4j:outputPanel style="border:1px solid gray;padding:2px;" layout="block">
<rich:dragSupport dragType="#{fm.family}" dragValue="#{fm}">
<rich:dndParam name="label" value="#{fm.name}" />
<a4j:actionparam name="source" value="PHP-STACK" assignTo="#{dndBean.source}"/>
</rich:dragSupport>
<h:outputText value="#{fm.name}"></h:outputText>
</a4j:outputPanel>
</h:column>
</h:dataTable>
</rich:panel>
I suppose the solution is quite easy but I do not know how. The setter of the source property
is called after the processDrop method is called.
Thanks for every help
Regards
Matt