SusInventoryTabBar

Полоса вкладок сетки — одна вкладка на InventoryGridDef, click переключает ActiveGridId, hover поддерживает смену вкладки при drag-over.
Пакет
SusGame · Инвентарь (коммерческий)
SusGame · Inventory
Свойства
Публичных свойств нет.
Слоты
Слотов нет.
События
| Имя | Поле | Payload |
|---|---|---|
GridChanged | OnGridChanged | string |
TabHover | OnTabHover | string |
Хуки стиля
Контракт USS-классов — внешний вид переопределяется без правки C#. Состояния переключаются этими классами:
sus-inventory-tabbarsus-inventory-tabbar__tabsus-inventory-tabbar__tab--activesus-inventory-tabbar__tab-iconsus-inventory-tabbar__tab-label
Использование
Управляется списком: назначьте GridDefs, задайте ActiveGridId, вызовите RebuildTabs (Mounted тоже пересобирает). Подключайте в кастомную оболочку, когда нужны явные вкладки сумки.
csharp
var tabs = new SusInventoryTabBar();
tabs.GridDefs = new List<InventoryGridDef>
{
new() { Id = "bag", Name = "Backpack", Icon = "backpack", Width = 10, Height = 8 },
new() { Id = "loot", Name = "Loot", Icon = "chest", Width = 6, Height = 4 },
};
tabs.ActiveGridId = "bag";
tabs.OnGridChanged += id => { /* SusInventory.SetActiveGrid(id) */ };
tabs.OnTabHover += id => { /* drag-over switch */ };
tabs.RebuildTabs();xml
<template>
<sus:SusInventoryTabBar />
</template>
<script>
// No Prop<> — fill GridDefs / ActiveGridId from C#, then RebuildTabs.
void OnGridChanged(string gridId) { /* … */ }
void OnTabHover(string gridId) { /* … */ }
</script>| Prop / API | Роль |
|---|---|
GridDefs | Источник вкладок (Id, Name, опционально Icon) |
ActiveGridId | Выбранная вкладка (USS --active) |
RebuildTabs() | Очистить + пересобрать кнопки вкладок |
OnGridChanged | Клик → новый id сетки |
OnTabHover | Наведение указателя (drag-over) |
Заметки
- Текущая раскладка сумки
SusInventoryиспользует двойные сетки (основная + вторичная по SortOrder) — вкладок в шаблоне нет.TabBarHost(.sus-inventory__tabs) может быть null; монтируйте эту полосу сами, если нужны вкладки нескольких сумок. - Опциональный
def.Iconотрисовывает маленькийSusIconперед подписью. - Предпочитайте Session
SetActiveGrid/OnTabChanged, когда переключением владеет shell.