Author: Alex.Kolonitsky
Date: 2011-02-10 09:52:12 -0500 (Thu, 10 Feb 2011)
New Revision: 21607
Modified:
trunk/examples/output-demo/src/main/webapp/qunit/panelMenu.xhtml
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuGroupRenderer.java
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuItemRenderer.java
trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuItem.js
Log:
RF-10438 Panel Menu Group - @action, @actionListenr does not work
Modified: trunk/examples/output-demo/src/main/webapp/qunit/panelMenu.xhtml
===================================================================
--- trunk/examples/output-demo/src/main/webapp/qunit/panelMenu.xhtml 2011-02-10 14:51:51
UTC (rev 21606)
+++ trunk/examples/output-demo/src/main/webapp/qunit/panelMenu.xhtml 2011-02-10 14:52:12
UTC (rev 21607)
@@ -66,22 +66,22 @@
execute="date-p" render="date-p"
- <pn:panelMenuGroup label="Group 1"
selectable="true" execute="date-g1" render="date-g1"
mode="server">
+ <pn:panelMenuGroup label="Group 1"
selectable="true" execute="date-g1" render="date-g1"
mode="ajax" action="#{modalPanel.action}">
<f:param name="alexParam01"
value="alexValue01" />
<f:param name="alexParam02"
value="alexValue02" />
<f:param name="alexParam03"
value="alexValue03" />
<f:param name="alexParam04"
value="alexValue04" />
- <pn:panelMenuItem execute="date-i"
render="date-i" mode="server">
+ <pn:panelMenuItem execute="date-i"
render="date-i" mode="server"
action="#{modalPanel.action}">
<f:param name="alexParam11"
value="alexValue11"/>
<f:param name="alexParam12"
value="alexValue12"/>
<f:param name="alexParam13"
value="alexValue13"/>
<f:param name="alexParam14"
value="alexValue14"/>
Item 1.1
</pn:panelMenuItem>
- <pn:panelMenuItem execute="date-i"
render="date-i">Item 1.2</pn:panelMenuItem>
- <pn:panelMenuItem execute="date-i"
render="date-i">Item 1.3</pn:panelMenuItem>
+ <pn:panelMenuItem execute="date-i"
render="date-i" mode="server"
action="#{modalPanel.action}">Item 1.2</pn:panelMenuItem>
+ <pn:panelMenuItem execute="date-i"
render="date-i" mode="server"
action="#{modalPanel.action}">Item 1.3</pn:panelMenuItem>
</pn:panelMenuGroup>
<pn:panelMenuGroup
label="Group 2"
Modified:
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuGroupRenderer.java
===================================================================
---
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuGroupRenderer.java 2011-02-10
14:51:51 UTC (rev 21606)
+++
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuGroupRenderer.java 2011-02-10
14:52:12 UTC (rev 21607)
@@ -36,6 +36,7 @@
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
+import javax.faces.event.ActionEvent;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
@@ -83,6 +84,8 @@
String clientId = component.getClientId(context);
if (requestMap.get(clientId) != null) {
+ new ActionEvent(component).queue();
+
context.getPartialViewContext().getRenderIds().add(clientId);
//TODO nick - this should be done on encode, not on decode
Modified:
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuItemRenderer.java
===================================================================
---
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuItemRenderer.java 2011-02-10
14:51:51 UTC (rev 21606)
+++
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuItemRenderer.java 2011-02-10
14:52:12 UTC (rev 21607)
@@ -66,16 +66,15 @@
String compClientId = component.getClientId(context);
if (requestMap.get(compClientId) != null) {
- AbstractPanelMenuItem panelItem = (AbstractPanelMenuItem) component;
- new ActionEvent(panelItem).queue();
+ new ActionEvent(component).queue();
if (context.getPartialViewContext().isPartialRequest()) {
//TODO nick - why render item by default?
-
context.getPartialViewContext().getRenderIds().add(panelItem.getClientId(context));
+
context.getPartialViewContext().getRenderIds().add(component.getClientId(context));
//TODO nick - this should be done on encode, not on decode
- addOnCompleteParam(context, panelItem.getClientId(context));
+ addOnCompleteParam(context, component.getClientId(context));
}
}
}
Modified:
trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuItem.js
===================================================================
---
trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuItem.js 2011-02-10
14:51:51 UTC (rev 21606)
+++
trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuItem.js 2011-02-10
14:52:12 UTC (rev 21607)
@@ -63,7 +63,9 @@
//TODO nick - 'target' attribute?
var params = {};
- params[item.__panelMenu().id] = item.itemName;
+ params[item.__panelMenu().id] = item.itemName; // TODO
+ params[item.id] = item.id;
+
$.extend(params, item.options["ajax"]["parameters"] ||
{});
rf.submitForm(this.__getParentForm(item), params);