+ bool IsDisabled() const;
+
+ /**
+ * @brief Sets the \e autorepeating property.
+ * @param[in] autoRepeating \e autorepeating property
+ */
+ void SetAutoRepeating( bool autoRepeating );
+
+ /**
+ * @brief Sets the initial autorepeating delay.
+ * @param[in] initialAutoRepeatingDelay in seconds
+ */
+ void SetInitialAutoRepeatingDelay( float initialAutoRepeatingDelay );
+
+ /**
+ * @brief Sets the next autorepeating delay.
+ * @param[in] nextAutoRepeatingDelay in seconds
+ */
+ void SetNextAutoRepeatingDelay( float nextAutoRepeatingDelay );
+
+ /**
+ * @brief Sets the \e togglable property.
+ * @param[in] togglable Togglable property
+ */
+ void SetTogglableButton( bool togglable );
+
+ /**
+ * @brief Sets the button as selected or unselected.
+ * @param[in] selected Selected property
+ */
+ void SetSelected( bool selected );
+
+ /**
+ * @brief Returns if the selected property is set and the button is togglable.
+ * @return \e true if the button is \e selected
+ */
+ bool IsSelected() const;
+
+ /**
+ * @brief Produces a Property::Map of Text properties to create a Text Visual, merging existing properties with supplied map
+ * If the label does not exist yet, it is created.
+ * The derived buttons are notified if any properties are changed.
+ * @param[in] properties A Property::Map of key-value pairs of properties to set.
+ * @param[out] properties A Property::Map of text visual properties to set after merging inMap with existing maps
+ */
+ void MergeWithExistingLabelProperties( const Property::Map& inMap, Property::Map& outMap );
+
+ /**
+ * Performs actions as requested using the action name.
+ * @param[in] object The object on which to perform the action.
+ * @param[in] actionName The action to perform.
+ * @param[in] attributes The attributes with which to perfrom this action.
+ * @return true if action has been accepted by this control
+ */
+ static bool DoAction( BaseObject* object, const std::string& actionName, const Property::Map& attributes );