Protected_ReadonlyselectStaticdefaultReadonlypropertiesProtected ReadonlysizeEach entry's measured size along the wheel's axis, indexed by entry position. Refreshed by GradumSelectWheel.reloadEntrySizes.
Protected ReadonlypositionProtectedtotalHow long the wheel stays open after the last interaction, in milliseconds, unless GradumSelectWheel.alwaysOpen is set.
ProtecteddraggingProtectedopenThe pending timer that will close the wheel once GradumSelectWheel.openTimeout elapses.
ReadonlyonReadonlyonReadonlyonReadonlytagReadonlyinitializedThe properties passed on to children created through feedforward, letting a parent seed its descendants with shared defaults.
ReadonlydataFractional index — integer when snapped, fractional mid-drag.
ProtectedbeforeThe newly selected entry.
ProtectedafterThe entry that is now selected.
ProtectedcomputeProtected Function
computeDragDelta
The pointer's movement.
The distance to scroll, in pixels.
ProtectedreloadProtectedindexProtectedpositionProtectedsnapProtectedapplyProtectedapplyProtectedcomputeProtected Function
computeAndApplyStyling
The entry to style.
The entry's offset from the centre, in pixels.
Optionalsize: Record<Range, number> = ...
The wheel's extent, used to scale the falloff.
Optionalinstant: boolean = false
Whether to set the styles directly, skipping the CSS transition.
Compute an entry's opacity, scale, and transform from how far it sits from the wheel's centre, and apply them. Defers to GradumSelectWheel.generateCustomStyling when one is set.
ProtectedclearProtectedsetProtected Function
setOpenTimer
Restart the timer that closes the wheel once GradumSelectWheel.openTimeout elapses.
StaticcreateFunction
create
The class create was called on.
Inferred from properties.view.
Inferred from properties.data.
Inferred from properties.model.
Inferred from properties.emitter.
Optionalproperties: This["prototype"]["properties"] & ElementTagDefinition<"div"> & Omit<Properties to set on the new instance.
The created instance, typed as the class this was called on.
Instantiate this class with the given properties. Defaults declared by every class in the
inheritance chain are applied first, nearest ancestor last, so a subclass' defaultProperties win over
its parent's. The return type follows the class it is called on, and the MVC type parameters are read
back off the properties — passing model: MyModel types .model as MyModel without a cast.
Note: the callee is read through this["prototype"] rather than InstanceType<this>, because the
latter instantiates a generic class' parameters with their constraints instead of their defaults,
which is what forced casts at call sites.
Protected StaticcustomProtected Function
Properties to set on the new instance, defaults already merged in.
The created instance.
The construction step behind create. Override it to change how instances of a class
are built — to route through a factory, or to wrap the instance — while keeping the default-merging that
create performs.
ProtectedsetupProtectedsetupProtectedsetupProtectedsetupFunction
feedforward
Optionalproperties: FeedforwardProperties
Properties to feed forward. Defaults to
defaultFeedforwardProperties.
Itself, allowing for method chaining.
Function
clone
Optionaloptions: CloneElementOptions
What to carry over to the copy.
The cloned element.
GradumSelectWheel
Description
A swipeable selection wheel. Entries are always position absolute, fanned out by a continuous pixel offset. Dragging moves all entries in real time; releasing snaps to the nearest. The container sizes to the selected entry. Visual state is driven by
entryTransitionReifect(CSS transitions) andcomputeAndApplyStyling(per-entry opacity/scale/transform).