The SLIDER control represents a slider. The main use of the slider is to limit the user input to specific values. It uses a number representation for its values, but the numbers can also be used to express string values.
The following topics are covered below:
The XML layout definition is:
<rowarea name="Number Output"> <itr> <slider valueprop="slider1" from="13" to="60" showrange="true" showcurrentvalue="false"> </slider> </itr> </rowarea>
The control can be customized by setting its start value, end value and a step. The start and end values form a closed interval. The step defines the distance between two valid values represented by the slider in this interval.
In the above example, the value for the step is the default value
"1". The possible values represented by the slider
are the integers from "13" to
"60". It is possible to specify a floating-point
number as a step, for example "0,25". The slider can
be further customized by setting the properties
showrange
and
showcurrentvalue
which show the range (start and
end value) and the current value of the slider while the user is moving it. The
width and height of the slider point is adjustable. The slider point is the
element which the user drags and drops. The colors, the borders of the slider,
the point, the line, the range and the current value can also be
customized.
The Java code of the adapter is:
package com.softwareag.cis.test22; // This class is a generated one. import com.softwareag.cis.server.*; import com.softwareag.cis.server.util.*; public class SliderAdapter extends Adapter { public class NumberSLIDERInfo extends SLIDERInfo { public void trigger() { m_fieldNumber = this.giveFormattedSliderValueAsInt(); } } public class StringSLIDERInfo extends SLIDERInfo { public void trigger() { int inpValue = this.giveFormattedSliderValueAsInt(); if(inpValue == 1) m_fieldString = "very bad"; else if(inpValue == 2) m_fieldString = "bad"; else if(inpValue == 3) m_fieldString = "ok"; else if(inpValue == 4) m_fieldString = "good"; else if(inpValue == 5) m_fieldString = "very good"; } } // property >fieldNumber< int m_fieldNumber; public int getFieldNumber() { return m_fieldNumber; } public void setFieldNumber(int value) { m_fieldNumber = value; } // property >slider1< NumberSLIDERInfo m_slider1=new NumberSLIDERInfo(); public NumberSLIDERInfo getSlider1() { return m_slider1; } public void setSlider1(NumberSLIDERInfo value) { m_slider1 = value; } // property >fieldString< String m_fieldString; public String getFieldString() { return m_fieldString; } public void setFieldString(String value) { m_fieldString = value; } // property >slider2< StringSLIDERInfo m_slider2=new StringSLIDERInfo(); public StringSLIDERInfo getSlider2() { return m_slider2; } public void setSlider2(StringSLIDERInfo value) { m_slider2 = value; } // property >slider3< SLIDERInfo m_slider3=new SLIDERInfo(); public SLIDERInfo getSlider3() { return m_slider3; } public void setSlider3(SLIDERInfo value) { m_slider3 = value; } /** initialisation - called when creating this instance*/ public void init() { m_slider1.setSliderValue(18); m_slider2.setSliderValue(3); } /** */ public void onEnterNumber() { m_slider1.setSliderValue(m_fieldNumber); m_fieldNumber = m_slider1.giveFormattedSliderValueAsInt(); } }
Every slider is bound to a SLIDERInfo
object.
Calling the setSliderValue()
method sets the value of
the slider which automatically moves it. However, the slider is not set to
every given value, but to one valid value which fits in the given interval. The
valid value to which the slider is currently set can be obtained by calling the
giveFormattedSliderValueAsInt()
or
giveFormattedSliderValueAsFloat()
method. When the
user drops the slider, the method trigger()
is called.
This can be used to define specific behavior when the value in the user
interface is changed. As in the example above, the
SLIDERInfo
can be extended, and the
trigger()
method can be overwritten to define specific
behavior. You can show the new value in another control or use it for other
purposes.
Basic | |||
valueprop |
Server side property representation of the control. |
Obligatory | |
Appearance | |||
width |
Width of the slider. Can be given in pixels or percentage. |
Optional |
100 120 140 160 180 200 50% 100% |
displayonly |
If set to true, the SLIDER will not be accessible for input. It is just used as an output. |
Optional |
true false |
showrange |
Boolean value. Whether to show the range of the slider. The range is the "from" and "to" values. |
Optional |
true false |
showcurrentvalue |
Boolean value. Whether to show the current value of the slider while it is moving. |
Optional |
true false |
mainbgcolor |
Background color of the slider container. This should be a valid CSS color value. For example a name(blue, red), a hexadecimal value(#99CCFF) or others. |
Optional |
#FF0000 #00FF00 #0000FF #FFFFFF #808080 #000000 |
mainbordercolor |
Border color of the slider container. This should be a valid CSS border-color value. You can specify a different color for the top, right, bottom and left border in this sequence. For example: #BBBBBB #666666 #666666 #BBBBBB |
Optional |
#bbb #666 #666 #bbb #BFCFFF #00248F #00248F #BFCFFF |
mainborderwidth |
Border width of the slider container. |
Optional |
thin medium thick 1px 2px 5px 10px |
pointbgcolor |
Background color of the slider point. This should be a valid CSS color value. For example a name(blue, red), a hexadecimal value(#99CCFF) or others. |
Optional |
#FF0000 #00FF00 #0000FF #FFFFFF #808080 #000000 |
pointbordercolor |
Border color of the slider point. This should be a valid CSS border-color value. You can specify a different color for the top, right, bottom and left border in this sequence. For example: #BBBBBB #666666 #666666 #BBBBBB |
Optional |
#bbb #666 #666 #bbb #BFCFFF #00248F #00248F #BFCFFF |
pointborderwidth |
Border width of the slider point. |
Optional |
thin medium thick 1px 2px 5px 10px |
pointwidth |
Width of the slider point in pixels. The value must be an integer value. |
Optional |
10 20 40 100 300 |
pointheight |
Height of the slider point in pixels. The value must be an integer value. |
Optional |
10 20 40 100 300 |
linebgcolor |
Background color of the slider line. This should be a valid CSS color value. For example a name(blue, red), a hexadecimal value(#99CCFF) or others. |
Optional |
#FF0000 #00FF00 #0000FF #FFFFFF #808080 #000000 |
linebordercolor |
Border color of the slider line. This should be a valid CSS border-color value. You can specify a different color for the top, right, bottom and left border in this sequence. For example: #BBBBBB #666666 #666666 #BBBBBB |
Optional |
#bbb #666 #666 #bbb #BFCFFF #00248F #00248F #BFCFFF |
lineborderwidth |
Border width of the slider line. |
Optional |
thin medium thick 1px 2px 5px 10px |
rangefontsize |
Font size of the slider range. |
Optional |
xx-small x-small small medium large x-large xx-large smaller larger 150% |
valuebgcolor |
Background color of the slider current value which is shown if the "showcurrentvalue" property is set to true. This should be a valid CSS color value. For example a name(blue, red), a hexadecimal value(#99CCFF) or others. |
Optional |
#FF0000 #00FF00 #0000FF #FFFFFF #808080 #000000 |
valuebordercolor |
Background color of the slider current value which is shown if the "showcurrentvalue" property is set to true. This should be a valid CSS border-color value. You can specify a different color for the top, right, bottom and left border in this sequence. For example: #bbb #666 #666 #bbb |
Optional |
#bbb #666 #666 #bbb #BFCFFF #00248F #00248F #BFCFFF |
valueborderwidth |
Border width of the slider current value which is shown if the "showcurrentvalue" property is set to true. |
Optional |
thin medium thick 1px 2px 5px 10px |
valuefontsize |
Font size of the slider current value which is shown if the "showcurrentvalue" property is set to true. |
Optional |
xx-small x-small small medium large x-large xx-large smaller larger 150% |