Skip to main content

Behaviors 3.13

ListBehavior::TouchMode moved.

"enum CgiStudioControl::ListBehavior::TouchMode" has been moved from Behaviors/Scroll/List/ListBehavior.h to Behaviors/Scroll/List/ListTouchMode.h and renamed to "enum CgiStudioControl::ListTouchMode::Enum". The enum values CgiStudioControl::ListBehavior::Idle, CgiStudioControl::ListBehavior::Down, CgiStudioControl::ListBehavior::Scrolling and CgiStudioControl::ListBehavior::Flicked are therefore now available as CgiStudioControl::ListTouchMode::Idle, CgiStudioControl::ListTouchMode::Down, CgiStudioControl::ListTouchMode::Scrolling and CgiStudioControl::ListTouchMode::Flicked.

ScrollableEvent new flag

The ScrollableEvent has been extended with the additional flag TreatAnimationDurationZeroAsNotSet.

Use false to gain the same behavior as before (a duration value of 0 is considered as an animation duration of 0). When set to true the provided animation duration with the value 0 is treated as not set and the receiving scrollable control will use its own animation duration instead (when the provided animation duration is not 0 then there is no change in behavior). Also the ScrollableEventActionBehavior reflects that change with its new configuration property TreatAnimationDurationZeroAsNotSet. The default value for this property is true (because it is more likely that that already centrally configured animation duration shall be taken than a real 0 time animation duration).

Scrollable new callback

The Scrollable interface has been extended with the interface SetScrolling. The external caller will indicate with the call of SetScrolling if the object is currently scrolled (e.g. by a scrollbar with ongoing user input) and when this scrolling stops.

ListBehaviorExtension interface added

The ListBehavior functionality can now be extended by implementing the ListBehaviorExtension interface and apply the extension to a list. In addition an extension has been added that allows to snap the selected list item to an aligned snap position (combined snap positions of the list and the item). The new SnapListItemExtensionBehavior can be used to deploy this extension on a node with an attached ListBehavior and configure the general snapping functionality. The SnapListItemConfigurationBehavior can be used to configure individual setting for each item that will override the central configuration at the list node.

SliderBehavior added

Added a SliderBehavior, which does the layout of the background, fill area and knob nodes. It expects a ProcessValueEvent with a normalized value between 0.0 and 1.0.