SusRadialMenu

Круговое action-меню — центральный activator + items по Radius.
Пакет
SusKit · Молекулы (коммерческий)
SusKit · Molecules
Свойства
| Имя | Тип | По умолчанию | |
|---|---|---|---|
Model | Prop<bool> | false | v-model |
Disabled | Prop<bool> | false | v-model |
CenterText | Prop<string> | "+" | v-model |
Radius | Prop<float> | 72f | v-model |
Слоты
| Имя |
|---|
activator |
События
| Имя | Поле | Payload |
|---|---|---|
Select | OnSelect | string |
Open | OnOpen | — |
Close | OnClose | — |
Хуки стиля
Контракт USS-классов — внешний вид переопределяется без правки C#. Состояния переключаются этими классами:
sus-radial-menusus-radial-menu__centersus-radial-menu__itemsus-radial-menu__itemssus-radial-menu--disabledsus-radial-menu--opensus-slot
Использование
Items задаются в коде (List<RadialMenuItem>). Открытие переключается через Model или центральный activator.
csharp
var radial = new SusRadialMenu();
radial.Items.Value = new List<SusRadialMenu.RadialMenuItem>
{
new() { Label = "Home", Value = "home", Icon = "home" },
new() { Label = "Party", Value = "party", Icon = "users" },
new() { Label = "Shop", Value = "shop", Icon = "shop" },
new() { Label = "Map", Value = "map", Icon = "map" },
};
radial.CenterText.Value = "+";
radial.Radius.Value = 72f;
radial.Model.Value = true; // open — segments visible
radial.OnSelect += value => { /* … */ };xml
<template>
<sus:SusRadialMenu :Model="Open.Value"
CenterText="+"
:Radius="Radius.Value"
:Disabled="Disabled.Value"
@select="OnSelect"
@open="OnOpen"
@close="OnClose" />
</template>
<script>
public Prop<bool> Open = new(false);
public Prop<float> Radius = new(72f);
public Prop<bool> Disabled = new(false);
void OnSelect(string value) { /* … */ }
void OnOpen() { }
void OnClose() { }
// Populate Items in code.
</script>| Prop | Role |
|---|---|
Items | List<RadialMenuItem> — кнопки-сегменты |
Model | Открыто (true) / закрыто |
CenterText | Подпись activator по умолчанию (слот activator переопределяет) |
Radius | Расстояние от центра до items |
Disabled | Блокирует открытие / выбор |
Заметки
- Поля элемента:
Label,Value,Icon,Disabled. - Выбор элемента вызывает
OnSelectи закрывает меню (Model = false). - Кастомный activator: разместите контент в слоте
activatorвместоCenterText.