12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- using System;
- using UnityEngine;
- namespace COM3D2.MeidoPhotoStudio.Plugin
- {
- public class TabsPane : BasePane
- {
- private static SelectionGrid Tabs;
- private static Constants.Window selectedTab;
- public static Constants.Window SelectedTab
- {
- get => selectedTab;
- set => Tabs.SelectedItem = (int)value;
- }
- public static event EventHandler TabChange;
- private static new bool updating;
- private static readonly string[] tabNames = { "call", "pose", "face", "bg", "bg2" };
- static TabsPane()
- {
- Translation.ReloadTranslationEvent += (s, a) => ReloadTranslation();
- Tabs = new SelectionGrid(Translation.GetArray("tabs", tabNames));
- Tabs.ControlEvent += (s, a) => OnChangeTab();
- }
- protected static new void ReloadTranslation()
- {
- updating = true;
- Tabs.SetItems(Translation.GetArray("tabs", tabNames), Tabs.SelectedItem);
- updating = false;
- }
- private static void OnChangeTab()
- {
- if (updating) return;
- selectedTab = (Constants.Window)Tabs.SelectedItem;
- TabChange?.Invoke(null, EventArgs.Empty);
- }
- public static void Draw()
- {
- Tabs.Draw(GUILayout.ExpandWidth(false));
- MiscGUI.BlackLine();
- }
- }
- }
|