SDL_Android/SmartDeviceLinkAndroidProxy - added the correct version of the proxy
[profile/ivi/smartdevicelink.git] / SDL_Android / SmartDeviceLinkProxyAndroid / src / com / smartdevicelink / proxy / rpc / Slider.java
1 package com.smartdevicelink.proxy.rpc;\r
2 \r
3 import java.util.Hashtable;\r
4 import java.util.Vector;\r
5 \r
6 import com.smartdevicelink.proxy.RPCRequest;\r
7 import com.smartdevicelink.proxy.constants.Names;\r
8 \r
9 /**\r
10  * Creates a full screen or pop-up overlay (depending on platform) with a single\r
11  * user controlled slider\r
12  * <p>\r
13  * Function Group: Base\r
14  * <p>\r
15  * <b>HMILevel needs to be FULL</b>\r
16  * <p>\r
17  * \r
18  * @since SmartDeviceLink 2.0\r
19  * \r
20  */\r
21 public class Slider extends RPCRequest {\r
22 \r
23         /**\r
24          * Constructs a new Slider object\r
25          */\r
26     public Slider() {\r
27         super("Slider");\r
28     }\r
29 \r
30         /**\r
31          * Constructs a new Slider object indicated by the Hashtable parameter\r
32          * <p>\r
33          * \r
34          * @param hash\r
35          *            The Hashtable to use\r
36          */\r
37     public Slider(Hashtable hash) {\r
38         super(hash);\r
39     }\r
40 \r
41         /**\r
42          * Sets a number of selectable items on a horizontal axis\r
43          * \r
44          * @param numTicks\r
45          *            an Integer value representing a number of selectable items on\r
46          *            a horizontal axis\r
47          *            <p>\r
48          *            <b>Notes: </b>Minvalue=2; Maxvalue=26\r
49          */\r
50     public void setNumTicks(Integer numTicks) {\r
51         if (numTicks != null) {\r
52                 parameters.put(Names.numTicks, numTicks);\r
53         } else {\r
54                 parameters.remove(Names.numTicks);\r
55         }\r
56     }\r
57 \r
58         /**\r
59          * Gets a number of selectable items on a horizontal axis\r
60          * \r
61          * @return Integer -an Integer value representing a number of selectable\r
62          *         items on a horizontal axis\r
63          */\r
64     public Integer getNumTicks() {\r
65         return (Integer) parameters.get(Names.numTicks);\r
66     }\r
67 \r
68         /**\r
69          * Sets an Initial position of slider control\r
70          * \r
71          * @param position\r
72          *            an Integer value representing an Initial position of slider\r
73          *            control\r
74          *            <p>\r
75          *            <b>Notes: </b>Minvalue=1; Maxvalue=26\r
76          */\r
77     public void setPosition(Integer position) {\r
78         if (position != null) {\r
79                 parameters.put(Names.position, position);\r
80         } else {\r
81                 parameters.remove(Names.position);\r
82         }\r
83     }\r
84 \r
85         /**\r
86          * Gets an Initial position of slider control\r
87          * \r
88          * @return Integer -an Integer value representing an Initial position of\r
89          *         slider control\r
90          */\r
91     public Integer getPosition() {\r
92         return (Integer) parameters.get(Names.position);\r
93     }\r
94 \r
95         /**\r
96          * Sets a text header to display\r
97          * \r
98          * @param sliderHeader\r
99          *            a String value\r
100          *            <p>\r
101          *            <b>Notes: </b>Maxlength=500\r
102          */\r
103     public void setSliderHeader(String sliderHeader) {\r
104         if (sliderHeader != null) {\r
105                 parameters.put(Names.sliderHeader, sliderHeader);\r
106         } else {\r
107                 parameters.remove(Names.sliderHeader);\r
108         }\r
109     }\r
110 \r
111         /**\r
112          * Gets a text header to display\r
113          * \r
114          * @return String -a String value representing a text header to display\r
115          */\r
116     public String getSliderHeader() {\r
117         return (String) parameters.get(Names.sliderHeader);\r
118     }\r
119 \r
120         /**\r
121          * Sets a text footer to display\r
122          * \r
123          * @param sliderFooter\r
124          *            a Vector<String> value representing a text footer to display\r
125          *            <p>\r
126          *            <b>Notes: </b>Maxlength=500; Minvalue=1; Maxvalue=26\r
127          */\r
128     public void setSliderFooter(Vector<String> sliderFooter) {\r
129         if (sliderFooter != null) {\r
130                 parameters.put(Names.sliderFooter, sliderFooter);\r
131         } else {\r
132                 parameters.remove(Names.sliderFooter);\r
133         }\r
134     }\r
135 \r
136         /**\r
137          * Gets a text footer to display\r
138          * \r
139          * @return String -a String value representing a text footer to display\r
140          */\r
141     public Vector<String> getSliderFooter() {\r
142         if (parameters.get(Names.sliderFooter) instanceof Vector<?>) {\r
143                 Vector<?> list = (Vector<?>)parameters.get(Names.sliderFooter);\r
144                 if (list != null && list.size()>0) {\r
145                         Object obj = list.get(0);\r
146                         if (obj instanceof String) {\r
147                                 return (Vector<String>) list;\r
148                         }\r
149                 }\r
150         }\r
151         return null;\r
152     }\r
153 \r
154         /**\r
155          * Sets an App defined timeout\r
156          * \r
157          * @param timeout\r
158          *            an Integer value representing an App defined timeout\r
159          *            <p>\r
160          *            <b>Notes: </b>Minvalue=0; Maxvalue=65535; Defvalue=10000\r
161          */\r
162     public void setTimeout(Integer timeout) {\r
163         if (timeout != null) {\r
164                 parameters.put(Names.timeout, timeout);\r
165         } else {\r
166                 parameters.remove(Names.timeout);\r
167         }\r
168     }\r
169 \r
170         /**\r
171          * Gets an App defined timeout\r
172          * @return Integer -an Integer value representing an App defined timeout\r
173          */\r
174     public Integer getTimeout() {\r
175         return (Integer) parameters.get(Names.timeout);\r
176     }\r
177 }\r