|
Space Plunder
|
#include <WheelMenu.h>
Public Member Functions | |
| UWheelMenu (const FObjectInitializer &ObjectInitializer) | |
| virtual void | SetWheelData (const FRadialMenuData &Data) override |
| virtual bool | GetCurrentIndex (int32 &Value) const override |
| virtual void | StartUpdateInput () override |
| virtual void | CenterMousePosition () override |
| FVector2D | GetJoystickDirection (const bool bLeft) const |
Protected Member Functions | |
| virtual bool | Initialize () override |
| virtual void | NativePreConstruct () override |
| virtual void | NativeConstruct () override |
| virtual void | UpdateInput () |
| void | SetIndex (const int32 Value) |
| FVector2D | FixInputRotation (const FVector2D &Input) const |
| void | SetInDeadZone (const bool bValue) |
| FVector2D | GetScreenCenter () const |
| float | GetSectionDegreeSize () const |
| float | GetSectionDegreeSizeUp () const |
| FVector | GetSegmentDirection (const int32 SegmentIndex) const |
| void | UpdateChildPositions () const |
| void | SetBackgroundRotation () const |
| void | UpdateDirectionWithMouseCursor () |
| void | UpdateDirectionWithJoystick () |
| void | SetInputDirection (const FVector2D Direction) |
Protected Attributes | |
| class UOverlay * | RootOverlay = nullptr |
| class UImage * | RadialBackground = nullptr |
| class UImage * | RadialDebug = nullptr |
| class UTextBlock * | TitleTextBlock = nullptr |
| class UTextBlock * | DescriptionTextBlock = nullptr |
| class USizeBox * | SizeBox = nullptr |
| float | UpdateSpeed = 1.0f |
| bool | bNormalize = false |
| float | ItemOffsetRadius = 180.0f |
| bool | bAutoRotateForUp = true |
| bool | bUseCustomInput = false |
| float | MouseDeadZone = 0.2f |
| float | JoystickDeadZone = 0.3f |
| UMaterialInterface * | MaterialBase = nullptr |
| FName | MaterialParamSegments = FName("Segments") |
| FName | MaterialParamIndex = FName("Index") |
| FName | MaterialParamDeadZone = FName("Deadzone") |
| FName | MaterialParamRadialTexture = FName("RadialTexture") |
| bool | bUseCustomTexture = false |
| UTexture2D * | RadialTexture = nullptr |
| bool | bUseCustomColors = false |
| FName | MaterialParamOuterRingColor = FName("OuterRingColor") |
| FName | MaterialParamInnerRingColor = FName("InnerRingColor") |
| FName | MaterialParamRingMainColor = FName("RingMainColor") |
| FName | MaterialParamUnhighlightColor = FName("UnhighlightColor") |
| FLinearColor | OuterRingColorDefault = FLinearColor(0.0f,0.25641f, 1.0f) |
| FLinearColor | InnerRingColorDefault = FLinearColor(0.369792f,0.369792f, 0.369792f) |
| FLinearColor | RingMainColorDefault = FLinearColor(1.0f,1.0f, 1.0f) |
| FLinearColor | UnhighlightColorDefault = FLinearColor(0.291667f, 0.291667f, 0.291667f) |
| FVector2D | MenuSizeDefault = FVector2D(512.0f, 512.0f) |
| bool | bUseDeadZoneEvents = false |
| float | IndexRaw = 0.0f |
| int32 | Index = -1 |
| int32 | Segments = 2 |
| bool | bInDeadZone = false |
| FVector2D | CurrentInput = FVector2D::ZeroVector |
| UMaterialInstanceDynamic * | DynamicMaterial = nullptr |
| FRadialMenuData | MenuData |
Private Member Functions | |
| virtual bool | GetCurrentSegmentData (FRadialSegmentData &Data) const |
| void | SetDescriptionText (const FRadialSegmentData &SegmentData) const |
| void | SetCancelText () const |
| void | ClearDescriptionText () const |
| void | SetColors (const FLinearColor &OuterRing, const FLinearColor &InnerRing, const FLinearColor &RingMain, const FLinearColor &UnHighlight) |
| void | SetColorsToDefault () |
| void | SetMenuSize () const |
| void | CreateMaterial () |
| void | UpdateMaterials () const |
| void | UpdateMaterialVisuals () const |
| void | SetMaterialSegments () const |
| void | Setup () |
| void | SetSegmentData (const TArray< FRadialSegmentData > &Selections, const bool bShowDescription) const |
Private Attributes | |
| FTimerHandle | UpdateSpeedTimer |
| TSubclassOf< UUserWidget > | RadialSegmentClass |
| FLinearColor | OuterRingColor = FLinearColor(0.0f,0.25641f, 1.0f) |
| FLinearColor | InnerRingColor = FLinearColor(0.369792f,0.369792f, 0.369792f) |
| FLinearColor | RingMainColor = FLinearColor(1.0f,1.0f, 1.0f) |
| FLinearColor | UnhighlightColor = FLinearColor(0.291667f, 0.291667f, 0.291667f) |
|
explicit |
|
overridevirtual |
Implements IRadialMenu.
|
private |
|
private |
|
protected |
|
overridevirtual |
Implements IRadialMenu.
|
privatevirtual |
| FVector2D UWheelMenu::GetJoystickDirection | ( | const bool | bLeft | ) | const |
|
protected |
|
protected |
|
protected |
|
protected |
|
overrideprotectedvirtual |
|
overrideprotectedvirtual |
|
overrideprotectedvirtual |
|
protected |
|
private |
|
private |
|
private |
|
private |
|
protected |
|
protected |
|
protected |
|
private |
|
private |
|
private |
|
private |
|
overridevirtual |
Implements IRadialMenu.
|
overridevirtual |
Implements IRadialMenu.
|
protected |
|
protected |
|
protected |
|
protectedvirtual |
|
private |
|
private |
|
protected |
Have a main Slice at the top
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
The current truncated index of the user's selection
|
protected |
Raw index is useful for converting back to a direction and getting in between values.
|
private |
|
protected |
|
protected |
How far from the center should the widgets be placed? NOTE: The square seen in the viewport is there to debug this,
|
protected |
How far should the stick be pressed before being used as input.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
private |
|
protected |
|
protected |
|
protected |
|
private |
|
protected |
|
private |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
private |
|
protected |
|
protected |
|
private |