1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.myfaces.tobago.internal.renderkit.renderer;
21
22 import org.apache.myfaces.tobago.internal.component.AbstractUICommandBase;
23 import org.apache.myfaces.tobago.internal.component.AbstractUIEvent;
24
25 import javax.faces.component.UIComponent;
26 import javax.faces.event.ActionEvent;
27
28 public class RowRenderer<T extends AbstractUICommandBase> extends DecodingCommandRendererBase<T> {
29
30
31 @Override
32 protected void commandActivated(final T component) {
33
34 AbstractUIEvent event = null;
35 for (final UIComponent uiComponent : component.getChildren()) {
36 if (uiComponent instanceof AbstractUIEvent) {
37 AbstractUIEvent abstractUIEvent = (AbstractUIEvent) uiComponent;
38 if (abstractUIEvent.isRendered() && !abstractUIEvent.isDisabled()) {
39 event = (AbstractUIEvent) uiComponent;
40 break;
41 }
42 }
43 }
44 if (event != null) {
45 event.queueEvent(new ActionEvent(event));
46 } else {
47 component.queueEvent(new ActionEvent(component));
48 }
49 }
50 }