[Paid] PieMenuX A dynamic radial pie menu component that features customizable slices with adjustable sizes, colors, and animation effects

🧩 PieMenuX

An extension for MIT App Inventor 2.
A dynamic radial pie menu component that features customizable slices with adjustable sizes, colors, and animation effects. Incorporate the ability to add multiple menu items, which should be displayed evenly in a circular layout around the center. The design should resemble a game power menu, with an emphasis on intuitive interaction and smooth visual transitions. Ensure the component is flexible enough to modify the number of slices, their appearance, and animation styles, all while maintaining a clean, user-friendly interface suitable for integration into interactive applications or game UIs.Developed by TechHamara.
Find More Extension
Terms & Conditions
Find More On BuyMeCoffee Page

:memo: Specifications


:package: Package: io.th.piemenux
:floppy_disk: Size: 21.57 KB
:gear: Version: 1.0
:mobile_phone: Minimum API Level: 14
:date: Updated On: 2026-01-10T18:30:00Z
:laptop: Built & documented using: FAST v5.3.2
:puzzle_piece: Buy Aix Price 4USD​:heavy_dollar_sign:, INR 360rs UPI. here on BuyMeCoffee
Find more Info on GitHub

Demo



Blocks



Events:

PieMenuX has total 4 events.

1. ItemSelected

Event fired when the user selects a menu item.

Parameter Type
index number
label text

2. ItemHighlighted

Event fired when the user touches a menu item.

Parameter Type
index number
label text

3. MenuOpened

Event fired when the menu finishes its opening animation.

4. MenuClosed

Event fired when the menu finishes its closing animation.

Methods:

PieMenuX has total 12 methods.

1. ShowNearWithPadding

Shows the pie menu near the specified component with custom padding. Padding values offset the menu position: positive left moves right, positive top moves down, positive right moves left, positive bottom moves up.

Parameter Type
component component
paddingLeft number
paddingTop number
paddingRight number
paddingBottom number

2. AddItem

Adds a menu item with the given label.

Parameter Type
label text

3. AddItemWithIcon

Adds a menu item with a label and icon from assets.

Parameter Type
label text
iconPath text

4. RemoveItem

Removes the menu item at the given index (0-based).

Parameter Type
index number

5. ClearItems

Removes all menu items.

6. ItemCount

Returns the number of menu items.

  • Return type: number

7. SelectItem

Programmatically selects the item at the given index.

Parameter Type
index number

8. GetSelectedIndex

Returns the currently selected index, or -1 if none selected.

  • Return type: number

9. Open

Opens the pie menu with animation.

10. Close

Closes the pie menu with animation.

11. Toggle

Toggles the pie menu between open and closed.

12. IsOpen

Returns true if the menu is currently fully open.

  • Return type: boolean

Designer:

PieMenuX has total 15 designer properties.

1. Radius

  • Input type: non_negative_integer
  • Default value: 200

2. InnerRadiusPercent

  • Input type: float
  • Default value: 0.3

3. StartAngle

  • Input type: float
  • Default value: -90

4. TotalDegrees

  • Input type: float
  • Default value: 360

5. SliceColor

  • Input type: color
  • Default value: 3498DB

6. AlternateSliceColor

  • Input type: color
  • Default value: 2980B9

7. SelectedColor

  • Input type: color
  • Default value: 27AE60

8. HighlightColor

  • Input type: color
  • Default value: E74C3C

9. BorderColor

  • Input type: color
  • Default value: FFFFFF

10. BorderWidth

  • Input type: float
  • Default value: 2

11. SeparatorColor

  • Input type: color
  • Default value: FFFFFF

12. SeparatorWidth

  • Input type: float
  • Default value: 2

13. AnimationDuration

  • Input type: non_negative_integer
  • Default value: 300

14. TextSize

  • Input type: float
  • Default value: 32

15. TextColor

  • Input type: color
  • Default value: FFFFFF

Setters:

PieMenuX has total 15 setter properties.

1. Radius

The radius of the pie menu in pixels.

  • Input type: number

2. InnerRadiusPercent

The percentage of the radius that forms the inner hole (0.0 to 1.0).

  • Input type: number

3. StartAngle

The starting angle offset in degrees. -90 starts from the top.

  • Input type: number

4. TotalDegrees

Total degrees to draw (360 for full circle, less for partial arc).

  • Input type: number

5. SliceColor

The default color for menu slices.

  • Input type: number

6. AlternateSliceColor

The alternate color for odd-indexed slices.

  • Input type: number

7. SelectedColor

The color for the currently selected slice.

  • Input type: number

8. HighlightColor

The color for the slice being touched.

  • Input type: number

9. BorderColor

The color of the outer and inner circular borders.

  • Input type: number

10. BorderWidth

The width of the circular borders in pixels.

  • Input type: number

11. SeparatorColor

The color of the lines separating slices.

  • Input type: number

12. SeparatorWidth

The width of the separator lines in pixels.

  • Input type: number

13. AnimationDuration

Duration of open/close animations in milliseconds.

  • Input type: number

14. TextSize

The text size for item labels in pixels.

  • Input type: number

15. TextColor

The color for item labels.

  • Input type: number

Getters:

PieMenuX has total 13 getter properties.

1. Radius

The radius of the pie menu in pixels.

  • Return type: number

2. InnerRadiusPercent

The percentage of the radius that forms the inner hole (0.0 to 1.0).

  • Return type: number

3. StartAngle

The starting angle offset in degrees. -90 starts from the top.

  • Return type: number

4. TotalDegrees

Total degrees to draw (360 for full circle, less for partial arc).

  • Return type: number

5. SliceColor

The default color for menu slices.

  • Return type: number

6. AlternateSliceColor

The alternate color for odd-indexed slices.

  • Return type: number

7. SelectedColor

The color for the currently selected slice.

  • Return type: number

8. HighlightColor

The color for the slice being touched.

  • Return type: number

9. BorderColor

The color of the outer and inner circular borders.

  • Return type: number

10. BorderWidth

The width of the circular borders in pixels.

  • Return type: number

11. SeparatorColor

The color of the lines separating slices.

  • Return type: number

12. SeparatorWidth

The width of the separator lines in pixels.

  • Return type: number

13. AnimationDuration

Duration of open/close animations in milliseconds.

  • Return type: number

Thanks

TechHamara

3 Likes