1 #include <cspi/spi-private.h>
4 svalue_set_from_float (Accessibility_SValue *sval, float newValue)
8 case Accessibility_SHORTVAL:
9 sval->_u.val_short = CLAMP (newValue, G_MINSHORT, G_MAXSHORT);
11 case Accessibility_USHORTVAL:
12 sval->_u.val_ushort = CLAMP (newValue, 0, G_MAXUSHORT);
14 case Accessibility_LONGVAL:
15 sval->_u.val_long = CLAMP (newValue, G_MINLONG, G_MAXLONG);
17 case Accessibility_ULONGVAL:
18 sval->_u.val_ulong = CLAMP (newValue, 0, G_MAXULONG);
20 case Accessibility_FLOATVAL:
21 sval->_u.val_float = newValue;
23 case Accessibility_DOUBLEVAL:
24 sval->_u.val_double = newValue;
31 svalue_to_float (Accessibility_SValue *sval)
36 case Accessibility_SHORTVAL:
37 retval = sval->_u.val_short;
39 case Accessibility_USHORTVAL:
40 retval = sval->_u.val_ushort;
42 case Accessibility_LONGVAL:
43 retval = sval->_u.val_long;
45 case Accessibility_ULONGVAL:
46 retval = sval->_u.val_ulong;
48 case Accessibility_FLOATVAL:
49 retval = sval->_u.val_float;
51 case Accessibility_DOUBLEVAL:
52 retval = sval->_u.val_double;
61 * AccessibleValue_ref:
62 * @obj: a pointer to the #AccessibleValue implementor on which to operate.
64 * Increment the reference count for an #AccessibleValue object.
67 AccessibleValue_ref (AccessibleValue *obj)
69 cspi_object_ref (obj);
73 * AccessibleValue_unref:
74 * @obj: a pointer to the #AccessibleValue implementor on which to operate.
76 * Decrement the reference count for an #AccessibleValue object.
79 AccessibleValue_unref (AccessibleValue *obj)
81 cspi_object_unref (obj);
85 * AccessibleValue_getMinimumValue:
86 * @obj: a pointer to the #AccessibleValue implementor on which to operate.
88 * Get the minimum allowed value for an #AccessibleValue.
90 * Returns: the minimum allowed value for this object.
94 AccessibleValue_getMinimumValue (AccessibleValue *obj)
96 Accessibility_SValue sval;
98 cspi_return_val_if_fail (obj != NULL, 0.0);
101 Accessibility_Value__get_minimumValue (CSPI_OBJREF (obj), cspi_ev ());
103 cspi_return_val_if_ev ("getMinimumValue", 0.0);
105 return svalue_to_float (&sval);
109 * AccessibleValue_getCurrentValue:
110 * @obj: a pointer to the #AccessibleValue implementor on which to operate.
112 * Get the current value for an #AccessibleValue.
114 * Returns: the current value for this object.
117 AccessibleValue_getCurrentValue (AccessibleValue *obj)
119 Accessibility_SValue sval;
121 cspi_return_val_if_fail (obj != NULL, 0.0);
124 Accessibility_Value__get_currentValue (CSPI_OBJREF (obj), cspi_ev ());
126 cspi_return_val_if_ev ("getCurrentValue", 0.0);
128 return svalue_to_float (&sval);
132 * AccessibleValue_getMaximumValue:
133 * @obj: a pointer to the #AccessibleValue implementor on which to operate.
135 * Get the maximum allowed value for an #AccessibleValue.
137 * Returns: the maximum allowed value for this object.
140 AccessibleValue_getMaximumValue (AccessibleValue *obj)
142 Accessibility_SValue sval;
144 cspi_return_val_if_fail (obj != NULL, 0.0);
147 Accessibility_Value__get_maximumValue (CSPI_OBJREF (obj), cspi_ev ());
149 cspi_return_val_if_ev ("getMaximumValue", 0.0);
151 return svalue_to_float (&sval);
155 * AccessibleValue_setCurrentValue:
156 * @obj: a pointer to the #AccessibleValue implementor on which to operate.
157 * @newValue: a #float value which is the desired new value of the object.
159 * Set the current value of an #AccessibleValue.
161 * Returns: #TRUE if the value could be assigned the specified value,
165 AccessibleValue_setCurrentValue (AccessibleValue *obj,
168 Accessibility_SValue sval;
169 cspi_return_val_if_fail (obj != NULL, FALSE);
171 /* erk, this is ugly */
172 sval = Accessibility_Value__get_currentValue (
173 CSPI_OBJREF (obj), cspi_ev ());
175 svalue_set_from_float (&sval, newValue);
177 Accessibility_Value__set_currentValue (
178 CSPI_OBJREF (obj), &sval, cspi_ev ());
180 cspi_return_val_if_ev ("setCurrentValue", FALSE);