You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by gm...@apache.org on 2007/03/30 00:23:43 UTC

svn commit: r523853 - in /myfaces/tomahawk/trunk/sandbox: core/src/main/resources/org/apache/myfaces/custom/ppr/resource/ examples/src/main/java/org/apache/myfaces/examples/ppr/ examples/src/main/webapp/

Author: gmuellan
Date: Thu Mar 29 15:23:42 2007
New Revision: 523853

URL: http://svn.apache.org/viewvc?view=rev&rev=523853
Log:
applied patch https://issues.apache.org/jira/browse/TOMAHAWK-945, Thx to Ernst Fastl

Added:
    myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupCommandLink.jsp
    myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupDataScroller.jsp
    myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupLoadingMessage.jsp
    myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupMultiple.jsp
    myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupOnChange.jsp
    myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggerPattern.jsp
    myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggers.jsp
Removed:
    myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroup.jsp
Modified:
    myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/ppr/resource/ppr.js
    myfaces/tomahawk/trunk/sandbox/examples/src/main/java/org/apache/myfaces/examples/ppr/PPRExampleBean.java
    myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/home.jsp

Modified: myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/ppr/resource/ppr.js
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/ppr/resource/ppr.js?view=diff&rev=523853&r1=523852&r2=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/ppr/resource/ppr.js (original)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/ppr/resource/ppr.js Thu Mar 29 15:23:42 2007
@@ -210,12 +210,12 @@
         }
         else
         {
-            this.form.submit_orig();
+            this.form.submit_orig(triggerElement);
         }
     }
     else
     {
-        this.form.submit_orig();
+        this.form.submit_orig(triggerElement);
     }
 }
 

Modified: myfaces/tomahawk/trunk/sandbox/examples/src/main/java/org/apache/myfaces/examples/ppr/PPRExampleBean.java
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/java/org/apache/myfaces/examples/ppr/PPRExampleBean.java?view=diff&rev=523853&r1=523852&r2=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/java/org/apache/myfaces/examples/ppr/PPRExampleBean.java (original)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/java/org/apache/myfaces/examples/ppr/PPRExampleBean.java Thu Mar 29 15:23:42 2007
@@ -22,8 +22,9 @@
 import org.apache.myfaces.examples.inputSuggestAjax.Address;
 
 import javax.faces.event.ValueChangeEvent;
-import java.util.List;
 import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
 
 /**
  * @author Ernst Fastl
@@ -31,14 +32,26 @@
 public class PPRExampleBean
 {
     private String _textField;
-    
+
     private String _message;
-    
-    private Boolean _partialUpdateConfiguredButton;
-    
-    private Boolean _partialChangeCheckBox=Boolean.FALSE;
-    
-    private String _partialChangeDropDown;
+
+    private Boolean _checkBoxValue =Boolean.FALSE;
+
+    private String _dropDownValue;
+
+    private List _names;
+
+    public List getNames()
+    {
+        if(_names == null)
+            _names = getListMasterData();
+        return _names;
+    }
+
+    public void setNames(List names)
+    {
+        _names = names;
+    }
 
     public String getTextField()
     {
@@ -50,29 +63,31 @@
         this._textField = textField;
     }
 
-	public Boolean getPartialUpdateConfiguredButton() {
-		return _partialUpdateConfiguredButton;
-	}
-
-	public void setPartialUpdateConfiguredButton(
-			Boolean partialUpdateConfiguredButton) {
-		this._partialUpdateConfiguredButton = partialUpdateConfiguredButton;
-	}
-    
-	public String testAction() {
-		setMessage("testAction called");
-		return "test";
-	}
+    public String searchNames() {
+        List _names = getListMasterData();
+        for (Iterator iterator = _names.iterator(); iterator.hasNext();)
+        {
+            Object o = iterator.next();
+            String currentName = (String) o;
+            if( _textField != null &&
+                !_textField.equals("") &&
+                ! currentName.contains(_textField))
+            {
+                iterator.remove();
+            }
+        }
+        return null;
+    }
 
     public String doTimeConsumingStuff()
     {
         try
         {
-            Thread.sleep(7000L);
+            Thread.sleep(4000L);
         }
         catch (InterruptedException e)
         {
-            e.printStackTrace();  
+            e.printStackTrace();
         }
         return null;
     }
@@ -91,38 +106,57 @@
         return refreshList;
     }
 
+    private List getListMasterData()
+    {
+        List refreshList = new ArrayList();
+
+        refreshList.add("robert johnson");
+        refreshList.add("alpha romeo");
+        refreshList.add("bernd billinger");
+        refreshList.add("alfred wine");
+        refreshList.add("gino lamberti");
+        refreshList.add("michael jackson");
+        refreshList.add("michael jordon");
+        refreshList.add("arnold schwarzenegger");
+        refreshList.add("richard gere");
+        refreshList.add("scooby doo");
+        refreshList.add("spider man");
+
+        return refreshList;
+    }
+
     public void testValueChangeListener(ValueChangeEvent event){
-		
-		_message = "Value Change to: ";
-		if(event.getNewValue()!=null)
-		{
-			_message += event.getNewValue().toString();
-		}
-	}
-
-	public Boolean getPartialChangeCheckBox() {
-		return _partialChangeCheckBox;
-	}
-
-	public void setPartialChangeCheckBox(Boolean changeCheckBox) {
-		_partialChangeCheckBox = changeCheckBox;
-	}
-
-	public String getPartialChangeDropDown() {
-		return _partialChangeDropDown;
-	}
-
-	public void setPartialChangeDropDown(String changeDropDown) {
-		_partialChangeDropDown = changeDropDown;
-	}
-
-	public String getMessage() {
-		return _message;
-	}
-
-	public void setMessage(String message) {
-		this._message = message;
-	}
-    
-	
+
+        _message = "Value Change to: ";
+        if(event.getNewValue()!=null)
+        {
+            _message += event.getNewValue().toString();
+        }
+    }
+
+    public Boolean getCheckBoxValue() {
+        return _checkBoxValue;
+    }
+
+    public void setCheckBoxValue(Boolean changeCheckBox) {
+        _checkBoxValue = changeCheckBox;
+    }
+
+    public String getDropDownValue() {
+        return _dropDownValue;
+    }
+
+    public void setDropDownValue(String changeDropDown) {
+        _dropDownValue = changeDropDown;
+    }
+
+    public String getMessage() {
+        return _message;
+    }
+
+    public void setMessage(String message) {
+        this._message = message;
+    }
+
+
 }

Modified: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/home.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/home.jsp?view=diff&rev=523853&r1=523852&r2=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/home.jsp (original)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/home.jsp Thu Mar 29 15:23:42 2007
@@ -37,8 +37,13 @@
             <f:verbatim><a name="partialPageRendering" /></f:verbatim>
             <h:outputText value="Partial Page Rendering"/>
             <h:panelGrid style="padding-left:25px">
-	            <h:outputLink value="pprPanelGroup.jsf" ><f:verbatim>PPRPanelGroup - parts of a page are getting manually refreshed by AJAX-Calls</f:verbatim></h:outputLink>
-                <h:outputLink value="pprScroller.jsf" ><f:verbatim>PPRPanelGroup - another example where a scrollable table gets refreshed</f:verbatim></h:outputLink>
+	            <h:outputLink value="pprPanelGroupPartialTriggers.jsf" ><f:verbatim>PPRPanelGroup - parts of a page are getting manually refreshed by AJAX-Calls (basic partial Trigger example)</f:verbatim></h:outputLink>
+	            <h:outputLink value="pprPanelGroupMultiple.jsf" ><f:verbatim>PPRPanelGroup - using multiple pprPanelGroups and triggering Components</f:verbatim></h:outputLink>
+	            <h:outputLink value="pprPanelGroupPartialTriggerPattern.jsf" ><f:verbatim>PPRPanelGroup - update components which ids match a regular expression</f:verbatim></h:outputLink>
+	            <h:outputLink value="pprPanelGroupCommandLink.jsf" ><f:verbatim>PPRPanelGroup - using a command Link for triggering an action via AJAX</f:verbatim></h:outputLink>
+	            <h:outputLink value="pprPanelGroupLoadingMessage.jsf" ><f:verbatim>PPRPanelGroup - displaying an inline Loading Message during AJAX requests</f:verbatim></h:outputLink>
+	            <h:outputLink value="pprPanelGroupOnChange.jsf" ><f:verbatim>PPRPanelGroup - using PPR with drop-down and checkbox onChange handlers</f:verbatim></h:outputLink>
+	            <h:outputLink value="pprPanelGroupDataScroller.jsf" ><f:verbatim>PPRPanelGroup - ajaxifying a datatable using PPR with partialTriggerPattern</f:verbatim></h:outputLink>
                 <h:outputLink value="pprPanelGroupPeriodicalUpdate.jsf" ><f:verbatim>PPRPanelGroup - parts of a page are getting automatically refreshed by AJAX-Calls (through periodic intervals)</f:verbatim></h:outputLink>
             </h:panelGrid>
             <h:outputText value="Resource Serving"/>

Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupCommandLink.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupCommandLink.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupCommandLink.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupCommandLink.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,85 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Example - using a command Link for triggering an action via AJAX</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+    var sec=0;
+    function counter(){
+        setTimeout("counter();",1000);
+        document.getElementById("cnt").innerHTML = sec++;
+    }
+    counter();
+</script>
+
+<f:view>
+
+    <h:form id="mainform">
+
+        <t:commandLink id="searchLink" action="#{pprExampleBean.searchNames}" value="Filter the list"/>
+        <f:verbatim><br /></f:verbatim>
+        <f:verbatim><br /></f:verbatim>
+
+        <h:outputText value="Filter the Names:" />
+        <h:inputText value="#{pprExampleBean.textField}" />
+
+        <f:verbatim><br /></f:verbatim>
+        <f:verbatim><br /></f:verbatim>
+
+        <s:pprPanelGroup id="nameList" partialTriggers="serachLink">
+            <t:dataList var="name" value="#{pprExampleBean.names}" layout="list">
+                <h:outputText value="#{name}" />
+                <f:verbatim><br /></f:verbatim>
+            </t:dataList>
+        </s:pprPanelGroup>
+
+        <s:fieldset legend="about this example">
+            <f:verbatim>
+                 <br />
+                 <br />
+                This example demonstrates that also actions can be invoked via AJAX <br />
+                when using PPR.
+            </f:verbatim>
+        </s:fieldset>
+    </h:form>
+
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+

Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupDataScroller.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupDataScroller.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupDataScroller.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupDataScroller.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,144 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Example - ajaxifying a datatable using PPR with partialTriggerPattern</h1>
+<f:view>
+
+	<h:form id="mainform">
+
+
+            <h:panelGrid>
+
+                <s:pprPanelGroup id="dataTableArea" partialTriggerPattern="mainform:.*">
+                    <t:dataTable var="address" value="#{pprExampleBean.periodicalUpdatedValues}"
+                            rows="5"
+                            styleClass="standardTable"
+                            headerClass="standardTable_SortHeader"
+                            footerClass="standardTable_Footer"
+                            rowClasses="standardTable_Row1,standardTable_Row2"
+                            id="data"
+                            sortable="true"
+                            preserveDataModel="true"
+                            preserveSort="true">
+                        <t:column>
+                            <f:facet name="header">
+                                <h:outputText value="streetnumber"/>
+                            </f:facet>
+                            <h:outputText value="#{address.streetNumber}"/>
+                        </t:column>
+                        <t:column defaultSorted="true">
+                            <f:facet name="header">
+                                <h:outputText value="streetname"/>
+                            </f:facet>
+                            <h:outputText value="#{address.streetName}"/>
+                        </t:column>
+                        <t:column>
+                            <f:facet name="header">
+                                <h:outputText value="zip"/>
+                            </f:facet>
+                            <h:outputText value="#{address.zip}"/>
+                        </t:column>
+                        <t:column>
+                            <f:facet name="header">
+                                <h:outputText value="state"/>
+                            </f:facet>
+                            <h:outputText value="#{address.state}"/>
+                        </t:column>
+                    </t:dataTable>
+                    <h:panelGrid columns="1" styleClass="scrollerTable2" columnClasses="standardTable_ColumnCentered" >
+                    <t:dataScroller id="scroll_1"
+                                    for="data"
+                                    fastStep="10"
+                                    pageCountVar="pageCount"
+                                    pageIndexVar="pageIndex"
+                                    styleClass="scroller"
+                                    paginator="true"
+                                    paginatorMaxPages="9"
+                                    paginatorTableClass="paginator"
+                                    paginatorActiveColumnStyle="font-weight:bold;">
+                        <f:facet name="first" >
+                            <t:graphicImage url="images/arrow-first.gif" border="1" />
+                        </f:facet>
+                        <f:facet name="last">
+                            <t:graphicImage url="images/arrow-last.gif" border="1" />
+                        </f:facet>
+                        <f:facet name="previous">
+                            <t:graphicImage url="images/arrow-previous.gif" border="1" />
+                        </f:facet>
+                        <f:facet name="next">
+                            <t:graphicImage url="images/arrow-next.gif" border="1" />
+                        </f:facet>
+                        <f:facet name="fastforward">
+                            <t:graphicImage url="images/arrow-ff.gif" border="1" />
+                        </f:facet>
+                        <f:facet name="fastrewind">
+                            <t:graphicImage url="images/arrow-fr.gif" border="1" />
+                        </f:facet>
+                    </t:dataScroller>
+                </h:panelGrid>
+                </s:pprPanelGroup>
+            </h:panelGrid>
+
+            <s:fieldset legend="about this example">
+         <f:verbatim>
+             <br />
+             <br />
+            The partialTriggerPattern attribute takes a regular expression  <br />
+            (JavaScript regular expression). All input components which     <br />
+             clientIds match this regular expression trigger AJAX updates   <br />
+             of this pprPanelGroup. <br />
+             <br />
+             In this example inputs for sorting and scrolling the datatable  <br />
+             sit in -mainform-. Therefore all clientIds of this inputs          <br />
+             will start with -mainform:-. (A client id is the HTML-ID     <br />
+             attribute the HTML-element rendered by a component has set)  <br />
+             Therefore the clientIds of all buttons match the pattern specified <br />
+             in the pprPanelGroup and so all of them trigger AJAX updates  <br />
+             of the group.    <br />
+              <br />
+             In order not to interfere with other possible components on the <br />
+             page the table could also be placed inside a naming container <br />
+             like f:subview.
+        </f:verbatim>
+    </s:fieldset>
+    </h:form>
+
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+

Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupLoadingMessage.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupLoadingMessage.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupLoadingMessage.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupLoadingMessage.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,86 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Examples - displaying an inline Loading Message during AJAX requests</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+    var sec=0;
+    function counter(){
+        setTimeout("counter();",1000);
+        document.getElementById("cnt").innerHTML = sec++;
+    }
+    counter();
+</script>
+
+<f:view>
+
+	<h:form id="mainform">
+
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Enter the value for update:" />
+			<h:inputText value="#{pprExampleBean.textField}" />
+			
+			<h:outputText value="partial update button:" />
+			<h:commandButton id="pprSubmitButton" value="PPR Submit" action="#{pprExampleBean.doTimeConsumingStuff}"/>
+
+			<h:outputText value="PPRPanelGroup:" />
+			<s:pprPanelGroup id="ppr1"
+				partialTriggers="pprSubmitButton" inlineLoadingMessage="Loading...">
+				<h:outputText value="#{pprExampleBean.textField}" />
+			</s:pprPanelGroup>
+		</h:panelGrid>
+
+        <s:fieldset legend="about this example">
+            <f:verbatim>
+                <br/>
+                <br/>
+                The inlineLoadingMessage attribute contains a message as a String   <br/>
+                which is displayed instead of the pprPanelGroup during the AJAX <br/>
+                request.<br />
+                <br/>
+                This example shows a loading message while executing a 4 seconds  <br/>
+                timeout within the called action.    <br/>
+            </f:verbatim>
+        </s:fieldset>
+    </h:form>
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+

Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupMultiple.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupMultiple.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupMultiple.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupMultiple.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,94 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Examples - using multiple pprPanelGroups and triggering Components</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+    var sec=0;
+    function counter(){
+        setTimeout("counter();",1000);
+        document.getElementById("cnt").innerHTML = sec++;
+    }
+    counter();
+</script>
+
+<f:view>
+
+	<h:form id="mainform">
+
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Enter the value for update:" />
+			<h:inputText value="#{pprExampleBean.textField}" />
+			
+			<h:outputText value="Update panelGroup 1:" />
+			<h:commandButton id="pprSubmitButton1" value="update" />
+
+            <h:outputText value="Update panelGroup 2:" />
+			<h:commandButton id="pprSubmitButton2" value="update" />
+
+            <h:outputText value="Update both panelGroups:" />
+			<h:commandButton id="pprSubmitButtonBoth" value="update" />
+
+            <h:outputText value="PPRPanelGroup 1:" />
+			<s:pprPanelGroup id="ppr1"
+				partialTriggers="pprSubmitButton1,pprSubmitButtonBoth">
+				<h:outputText value="#{pprExampleBean.textField}" />
+			</s:pprPanelGroup>
+            <h:outputText value="PPRPanelGroup 2:" />
+			<s:pprPanelGroup id="ppr2"
+				partialTriggers="pprSubmitButton2,pprSubmitButtonBoth">
+				<h:outputText value="#{pprExampleBean.textField}" />
+			</s:pprPanelGroup>
+        </h:panelGrid>
+        <s:fieldset legend="about this example">
+            <f:verbatim>
+                <br />
+                <br />
+                The partial Triggers Attribute of the PPRPanelGroup contains <br />
+                a comma separated list of component ids. This example shows <br />
+                how multiple partialTriggers can be used in more than one <br />
+                pprPanelGroup.
+            </f:verbatim>
+        </s:fieldset>
+    </h:form>
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+

Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupOnChange.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupOnChange.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupOnChange.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupOnChange.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,100 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Example - using PPR with drop-down and checkbox onChange handlers</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+    var sec=0;
+    function counter(){
+        setTimeout("counter();",1000);
+        document.getElementById("cnt").innerHTML = sec++;
+    }
+    counter();
+</script>
+
+<f:view>
+
+	<h:form id="mainform">
+        <t:commandLink />
+		<h:panelGrid columns="2">
+
+			<h:outputText value="update group by checking:" />
+			<h:selectBooleanCheckbox id="checkbox"
+                    value="#{pprExampleBean.checkBoxValue}"
+			        onclick="submit(this);"/>
+			
+			<h:outputText value="update group by changing the value:" />
+			<h:selectOneMenu id="dropDown" onchange="submit(this);"
+				value="#{pprExampleBean.dropDownValue}"	>
+				<f:selectItem itemLabel="test1" itemValue="value1"/>
+				<f:selectItem itemLabel="test2" itemValue="value2"/>
+				<f:selectItem itemLabel="test3" itemValue="value3"/>
+			</h:selectOneMenu>
+			
+			<h:outputText value="Checkbox is:" />
+			<s:pprPanelGroup id="pprCheckBoxValue"
+				partialTriggers="checkbox">
+				<h:outputText value="#{pprExampleBean.checkBoxValue ? 'checked' : 'not checked'}" />
+			</s:pprPanelGroup>
+
+            <h:outputText value="Drop Down value is:" />
+			<s:pprPanelGroup id="dropDownPPR"
+				partialTriggers="dropDown">
+				<h:outputText value="#{pprExampleBean.dropDownValue}" />
+			</s:pprPanelGroup>
+        </h:panelGrid>
+
+        <s:fieldset legend="about this example">
+         <f:verbatim>
+             <br />
+             <br />
+            This example shows how onClick-Handlers of checkboxes or dropdowns <br />
+            can be used to update page regions via AJAX.<br />
+            It is vital, that the this element is included as parameter in the call <br />
+            of the submit function so the PPRCtrl knows which element tries to submit <br />
+            and therefore is able to determine wheather or not matching partialTriggers <br />
+            and/or partialTriggerPatterns are present.
+        </f:verbatim>
+    </s:fieldset>
+
+    </h:form>
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+

Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggerPattern.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggerPattern.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggerPattern.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggerPattern.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,93 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Example - update components which ids match a regular expression</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+    var sec=0;
+    function counter(){
+        setTimeout("counter();",1000);
+        document.getElementById("cnt").innerHTML = sec++;
+    }
+    counter();
+</script>
+
+<f:view>
+
+	<h:form id="mainform">
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Enter the value for update:" />
+			<h:inputText value="#{pprExampleBean.textField}" />
+			
+			<h:outputText value="partial update button:" />
+			<h:commandButton value="button 1" />
+
+            <h:outputText value="partial update button:" />
+			<h:commandButton value="button 2" />
+
+
+			<h:outputText value="PPRPanelGroup:" />
+			<s:pprPanelGroup id="ppr"
+				partialTriggerPattern="mainform:.*">
+				<h:outputText value="#{pprExampleBean.textField}" />
+			</s:pprPanelGroup>
+		</h:panelGrid>
+	</h:form>
+    <s:fieldset legend="about this example">
+         <f:verbatim>
+             <br />
+             <br />
+            The partialTriggerPattern attribute takes a regular expression  <br />
+            (JavaScript regular expression). All input components which     <br />
+             clientIds match this regular expression trigger AJAX updates   <br />
+             of this pprPanelGroup. <br />
+             <br />
+             In this example all buttons sit within the form with the id  <br />
+             -mainform-. Therefore all clientIds of this buttons          <br />
+             will start with -mainform:-. (A client id is the HTML-ID     <br />
+             attribute the HTML-element rendered by a component has set)  <br />
+             Therefore the clientIds of all buttons match the pattern specified <br />
+             in the pprPanelGroup and so all of them trigger AJAX updates  <br />
+             of the group.
+        </f:verbatim>
+    </s:fieldset>
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+

Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggers.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggers.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggers.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggers.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,86 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Examples - using partialTriggers</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+    var sec=0;
+    function counter(){
+        setTimeout("counter();",1000);
+        document.getElementById("cnt").innerHTML = sec++;
+    }
+    counter();
+</script>
+
+<f:view>
+
+	<h:form id="mainform">
+
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Enter the value for update:" />
+			<h:inputText value="#{pprExampleBean.textField}" />
+			
+			<h:outputText value="partial update button:" />
+			<h:commandButton id="pprSubmitButton" value="PPR Submit" />
+
+			<h:outputText value="PPRPanelGroup:" />
+			<s:pprPanelGroup id="ppr1"
+				partialTriggers="pprSubmitButton">
+				<h:outputText value="#{pprExampleBean.textField}" />
+			</s:pprPanelGroup>
+		</h:panelGrid>
+        <s:fieldset legend="about this example">
+            <f:verbatim>
+                <br />
+                <br />
+                The partial Triggers Attribute of the PPRPanelGroup contains  <br />
+                a comma separated list of component ids. These Component <br />
+                ids should reference input components like the commandButton   <br />
+                in this example. When any of the referenced input components <br />
+                is activated ( clicked or submission using an onChange-Event Handler <br />
+                which would normally cause a submit ) an AJAX request is performed  <br />
+                which updates all components within the pprPanelGroup  <br />
+            </f:verbatim>
+        </s:fieldset>
+    </h:form>
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+