Richfaces 3.1.4.GA,JBOS 4.2.2,Seam 2.0.1.GA
Is there a way to emulate an "onContextMenu" event for a row in rich:dataTable?
I want to use onRowClick for something else, and I don't know how to tell if a mouseDown
event was from the left or right button...
I would like this to work in the same way as it does for treeNode,
i.e., I would like to have an "onRowContextMenu" which is
distinguished (exclusive) from "onRowClick".
I saw the topic:
http://www.jboss.com/index.html?module=bb&op=viewtopic&t=126928
which advises one to put the component control inside the columns.
However, putting componentControl inside the rich:column does not make
the event "oncontextmenu" work. The menu does not appear. To test, I
tried with the "onmousedown" event, which is OK, so I am assuming that the contextMenu event is not supported.
Here is my componentControl:
<rich:dataTable rowClasses="alarmRowOdd, alarmRowEven" onRowClick="fselect('#{networkElement.id}', ctrlkey )" value="#{nodeList}" var="networkElement" rendered="true" > <c:forEach items="#{nodeRowFormats.columnDataModel}" var="column"> <rich:column sortable="false" styleClass="#{(nodeTable.nodeSelections[networkElement.id]) ? 'selectedrow' : ( (column=='connectionState') ? networkElement.styleClass : 'unselectedrow' ) }" > <f:facet name="header"> <h:outputText class="sortLink" title="#{nodeRowFormats.titleMap[column]}" value="#{nodeRowFormats.labelMap[column]}" onclick="fsort('#{column}')" /> </f:facet> <h:outputText value="#{networkElement[column]}"/> </rich:column> </c:forEach> <rich:componentControl event="onRowMouseDown" for="menu" operation="show"> <f:param value="#{networkElement.id}" name="neId"/> <f:param value="#{networkElement.name}" name="name"/> </rich:componentControl> </rich:dataTable>