View Javadoc

1   /*
2       Jiffie Plugin for Jameleon - An Internet Explorer plug-in for Jameleon
3       Copyright (C) 2004-2006 Christian W. Hargraves (engrean@hotmail.com) 
4                          and Matthias Marschall (matthias@marschalls.de)
5   
6       This program is free software; you can redistribute it and/or modify
7       it under the terms of the GNU General Public License as published by
8       the Free Software Foundation; either version 2 of the License, or
9       (at your option) any later version.
10  
11      This program is distributed in the hope that it will be useful,
12      but WITHOUT ANY WARRANTY; without even the implied warranty of
13      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14      GNU General Public License for more details.
15  
16      You should have received a copy of the GNU General Public License
17      along with this program; if not, write to the Free Software
18      Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  */
20  package net.sf.jameleon.plugin.jiffie.tags;
21  
22  /***
23   * This action point sets the value of any radio button.
24   * 
25   * Some example uses might be:
26   * 
27   * Selecting a radio button <input type="radio" name="radioButton" value="radio1"><input type="radio" name="radioButton" value="radio2">
28   * <pre><source>
29   *  &lt;ie-set-radiobutton functionId="Check the second radio button" 
30   *       name="radioButton" 
31   *       value="radio2"
32   *       form="testForm"/&gt;
33   * </source></pre>
34   *
35   * NOTE: <b>This tag does not currently support the xpath attribute nor the nested ie-attribute tags.</b>
36   * @jameleon.function name="ie-set-radiobutton" type="action"
37   * @jameleon.step Find the given form and set it as the working form
38   * @jameleon.step Find the given radio button and check it
39   */
40  public class IESetRadiobuttonTag extends IEFireEventTag {
41  
42      /***
43       * The name of the radio button
44       * @jameleon.attribute required="true" contextName="ieSetRadiobuttonName"
45       */
46      protected String name;
47  
48      /***
49       * Check the radio button with given value.
50       * @jameleon.attribute required="true" contextName="ieSetRadiobuttonValue"
51       */
52      protected String value;
53  
54      /***
55       * The name, id or index of the field
56       * @jameleon.attribute contextName="ieSetRadiobuttonForm"
57       */
58      protected String form;
59  
60      public void testBlock() {
61          if (htmlElement != null ||
62              xpath != null ||
63              getParamLength() > 0) {
64              throw new RuntimeException("htmlElement, xpath and ie-attribute are not supported by this tag");
65          }
66          setWorkingForm(form);
67          fireEvent(setRadioButtonValue(name, value));
68  
69      }
70  }