You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jd...@apache.org on 2009/04/08 10:00:12 UTC

svn commit: r763136 - /wicket/trunk/wicket/src/main/java/org/apache/wicket/util/tester/FormTester.java

Author: jdonnerstag
Date: Wed Apr  8 08:00:11 2009
New Revision: 763136

URL: http://svn.apache.org/viewvc?rev=763136&view=rev
Log:
fixed WICKET-2104 FormTester does not toggle selected values when using selectMultiple
Issue: WICKET-2104

Modified:
    wicket/trunk/wicket/src/main/java/org/apache/wicket/util/tester/FormTester.java

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/util/tester/FormTester.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/util/tester/FormTester.java?rev=763136&r1=763135&r2=763136&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/util/tester/FormTester.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/util/tester/FormTester.java Wed Apr  8 08:00:11 2009
@@ -543,8 +543,34 @@
 	 */
 	public void selectMultiple(String formComponentId, int[] indexes)
 	{
+		selectMultiple(formComponentId, indexes, false);
+	}
+
+	/**
+	 * A convenience method to select multiple options for the <code>FormComponent</code>. The
+	 * method only support multiple selectable <code>FormComponent</code>s.
+	 * 
+	 * @see #select(String, int)
+	 * 
+	 * @param formComponentId
+	 *            relative path (from <code>Form</code>) to the selectable
+	 *            <code>FormComponent</code>
+	 * @param indexes
+	 *            index of the selectable option, starting from 0
+	 * @param replace
+	 *            If true, than all previous selects are first reset, thus existing selects are
+	 *            replaced. If false, than the new indexes will be added.
+	 */
+	public void selectMultiple(String formComponentId, int[] indexes, final boolean replace)
+	{
 		checkClosed();
 
+		if (replace == true)
+		{
+			// Reset first
+			setValue(formComponentId, "");
+		}
+
 		ChoiceSelector choiceSelector = choiceSelectorFactory.createForMultiple((FormComponent<?>)workingForm.get(formComponentId));
 
 		for (int index : indexes)