Elin Decompiled Documentation EA 23.235 Nightly Patch 1
Loading...
Searching...
No Matches
WidgetRoster Class Reference
Inheritance diagram for WidgetRoster:
Widget EMono IChangeResolution ISkinRoot

Classes

class  Extra
 

Public Member Functions

override object CreateExtra ()
 
override void OnActivate ()
 
void OnMoveZone ()
 
void Build ()
 
void Refresh ()
 
void Add (Chara c)
 
void Remove (Chara c)
 
void OnAddMember (Chara c)
 
void OnRemoveMember (Chara c)
 
override void OnSetContextMenu (UIContextMenu m)
 
- Public Member Functions inherited from Widget
void Test ()
 
bool IsInRightMode ()
 
void Activate ()
 
void RefreshOrder ()
 
virtual void OnActivate ()
 
virtual object CreateExtra ()
 
void Deactivate ()
 
virtual void OnDeactivate ()
 
void Close ()
 
void Reactivate ()
 
virtual void OnManagerActivate ()
 
virtual void OnManagerDeactivate ()
 
void SetAnchor (RectPosition p)
 
void SetPivot (RectPosition p)
 
virtual void OnChangePivot ()
 
void UpdateConfig ()
 
virtual void OnUpdateConfig ()
 
void ClampToScreen ()
 
virtual void OnChangeResolution ()
 
void OnChangePosition ()
 
virtual void OnChangeActionMode ()
 
virtual void OnFlip ()
 
bool IsAlignTop ()
 
Layer AddLayer (Layer l, Transform trans)
 
void RefreshTipPivotPosition ()
 
SkinSet GetSkin ()
 
SkinConfig GetSkinConfig ()
 
void SetSkin (int id, int v=0)
 
void TestSkin ()
 
virtual void ApplySkin ()
 
virtual void OnApplySkin ()
 
void InstantiateDeco (SkinDeco deco)
 
void AddDeco (SkinDeco deco)
 
void RemoveDeco (SkinDeco deco)
 
virtual bool CanShowContextMenu ()
 
void ShowContextMenu ()
 
void SetBaseContextMenu (UIContextMenu m)
 
virtual void OnSetContextMenu (UIContextMenu m)
 
void SetGridContextMenu (UIContextMenu m)
 
void SoundActivate ()
 
void OnChangeResolution ()
 
SkinSet GetSkin ()
 
SkinConfig GetSkinConfig ()
 

Static Public Member Functions

static void SetDirty ()
 
- Static Public Member Functions inherited from EMono
static int rnd (int a)
 

Public Attributes

GridLayoutGroup layout
 
ButtonRoster mold
 
RawImage imageGrid
 
Dictionary< Chara, ButtonRosterbuttons = new Dictionary<Chara, ButtonRoster>()
 
UIButton moldDropperLeft
 
UIButton moldDropperRight
 
bool showName
 
bool dirty
 
int maxWidth
 
- Public Attributes inherited from Widget
Image imageBG
 
SoundData soundActivate
 
UIDragPanel dragPanel
 
RectTransform tipPivotLeft
 
RectTransform tipPivotRight
 

Static Public Attributes

static WidgetRoster Instance
 
- Static Public Attributes inherited from EMono
static Core core
 

Properties

Extra extra [get]
 
override bool AlwaysBottom [get]
 
override Type SetSiblingAfter [get]
 
- Properties inherited from Widget
string ID [get]
 
Config config [get]
 
SkinRoot skinRoot [get]
 
bool IsSealed [get]
 
virtual bool ShowStyleMenu [get]
 
virtual bool AlwaysTop [get]
 
virtual bool IsStaticPosition [get]
 
virtual bool AlwaysBottom [get]
 
virtual Type SetSiblingAfter [get]
 
virtual bool ShowInBuildMode [get]
 
virtual bool RightClickToClose [get]
 
virtual bool AllowRightClickToClose [get]
 
- Properties inherited from EMono
static Game game [get]
 
static bool AdvMode [get]
 
static Player player [get]
 
static Chara pc [get]
 
static UI ui [get]
 
static Map _map [get]
 
static Zone _zone [get]
 
static FactionBranch Branch [get]
 
static FactionBranch BranchOrHomeBranch [get]
 
static Faction Home [get]
 
static Scene scene [get]
 
static BaseGameScreen screen [get]
 
static GameSetting setting [get]
 
static GameData gamedata [get]
 
static ColorProfile Colors [get]
 
static World world [get]
 
static SoundManager Sound [get]
 
static SourceManager sources [get]
 
static SourceManager editorSources [get]
 
static CoreDebug debug [get]
 

Private Member Functions

void OnEnable ()
 
void OnDisable ()
 

Additional Inherited Members

- Public Types inherited from Widget
enum  WidgetType { Default , ZoomMenu }
 
enum  State { Active , Inactive }
 
- Protected Member Functions inherited from Widget
void ClampToScreenEnsured (Component c, Vector2 anchoredPos)
 
void ClampToScreen (RectTransform rect, float margin=10f)
 
- Protected Attributes inherited from Widget
bool flip
 

Detailed Description

Definition at line 8 of file WidgetRoster.cs.

Member Function Documentation

◆ Add()

void WidgetRoster.Add ( Chara  c)
inline

Definition at line 151 of file WidgetRoster.cs.

152 {
153 ButtonRoster buttonRoster = Util.Instantiate(mold, layout);
154 buttonRoster.SetChara(c);
155 buttons.Add(c, buttonRoster);
156 }
void SetChara(Chara c)
Definition: ButtonRoster.cs:23
Definition: Util.cs:10
static Transform Instantiate(string path, Component parent=null)
Definition: Util.cs:67
Dictionary< Chara, ButtonRoster > buttons
Definition: WidgetRoster.cs:45
GridLayoutGroup layout
Definition: WidgetRoster.cs:39
ButtonRoster mold
Definition: WidgetRoster.cs:41

References buttons, layout, mold, ButtonRoster.SetChara(), and Util.

Referenced by Build(), and OnAddMember().

◆ Build()

void WidgetRoster.Build ( )
inline

Definition at line 97 of file WidgetRoster.cs.

98 {
99 buttons.Clear();
100 layout.DestroyChildren();
101 layout.constraint = (extra.vertical ? GridLayoutGroup.Constraint.FixedColumnCount : GridLayoutGroup.Constraint.FixedRowCount);
102 layout.startCorner = (extra.reverse ? GridLayoutGroup.Corner.LowerRight : GridLayoutGroup.Corner.UpperLeft);
103 layout.cellSize = new Vector2(extra.width * 4 / 5, extra.onlyName ? 32 : extra.width);
104 layout.spacing = new Vector2(extra.margin, extra.margin);
105 List<Chara> list = EMono.pc.party.members.ToList();
106 if (!extra.pc)
107 {
108 list.Remove(EMono.pc);
109 }
110 list.Sort(delegate(Chara a, Chara b)
111 {
112 int @int = a.GetInt(19);
113 int int2 = b.GetInt(19);
114 return (@int == int2) ? (EMono.pc.party.members.IndexOf(a) - EMono.pc.party.members.IndexOf(b)) : (int2 * 1000 - @int * 1000);
115 });
116 foreach (Chara item in list)
117 {
118 Add(item);
119 }
120 if (buttons.Count == 0)
121 {
122 Add(EMono.pc);
123 }
124 layout.RebuildLayout();
125 this.RebuildLayout();
128 }
int GetInt(int id, int? defaultInt=null)
Definition: BaseCard.cs:25
Definition: Chara.cs:10
Party party
Definition: Chara.cs:43
Definition: EMono.cs:4
static Chara pc
Definition: EMono.cs:13
List< Chara > members
Definition: Party.cs:19
void Add(Chara c)
virtual void OnChangeResolution()
Definition: Widget.cs:457
void ClampToScreen()
Definition: Widget.cs:437

References Add(), buttons, Widget.ClampToScreen(), extra, BaseCard.GetInt(), item, layout, WidgetRoster.Extra.margin, Party.members, Widget.OnChangeResolution(), WidgetRoster.Extra.onlyName, Chara.party, EMono.pc, WidgetRoster.Extra.pc, and WidgetRoster.Extra.width.

Referenced by OnActivate(), OnMoveZone(), OnSetContextMenu(), and Refresh().

◆ CreateExtra()

override object WidgetRoster.CreateExtra ( )
inlinevirtual

Reimplemented from Widget.

Definition at line 63 of file WidgetRoster.cs.

64 {
65 return new Extra();
66 }

◆ OnActivate()

override void WidgetRoster.OnActivate ( )
inlinevirtual

Reimplemented from Widget.

Definition at line 68 of file WidgetRoster.cs.

69 {
70 if (Mathf.Abs(extra.margin) > 100)
71 {
72 extra.margin = 0;
73 extra.width = 40;
74 extra.portrait = false;
75 extra.onlyName = true;
76 }
77 Instance = this;
78 mold = layout.CreateMold<ButtonRoster>();
79 Build();
80 }
static WidgetRoster Instance
Definition: WidgetRoster.cs:37
void Build()
Definition: WidgetRoster.cs:97

References Build(), extra, Instance, layout, WidgetRoster.Extra.margin, and mold.

◆ OnAddMember()

void WidgetRoster.OnAddMember ( Chara  c)
inline

Definition at line 164 of file WidgetRoster.cs.

165 {
166 if (!buttons.ContainsKey(c))
167 {
168 Add(c);
169 }
170 }

References Add(), and buttons.

◆ OnDisable()

void WidgetRoster.OnDisable ( )
inlineprivate

Definition at line 87 of file WidgetRoster.cs.

88 {
89 CancelInvoke();
90 }

◆ OnEnable()

void WidgetRoster.OnEnable ( )
inlineprivate

Definition at line 82 of file WidgetRoster.cs.

83 {
84 InvokeRepeating("Refresh", 0.2f, 0.2f);
85 }

◆ OnMoveZone()

void WidgetRoster.OnMoveZone ( )
inline

Definition at line 92 of file WidgetRoster.cs.

93 {
94 Build();
95 }

References Build().

Referenced by Player.MoveZone().

◆ OnRemoveMember()

void WidgetRoster.OnRemoveMember ( Chara  c)
inline

Definition at line 172 of file WidgetRoster.cs.

173 {
174 if (buttons.ContainsKey(c))
175 {
176 Remove(c);
177 }
178 }
void Remove(Chara c)

References buttons, and Remove().

◆ OnSetContextMenu()

override void WidgetRoster.OnSetContextMenu ( UIContextMenu  m)
inlinevirtual

Reimplemented from Widget.

Definition at line 180 of file WidgetRoster.cs.

181 {
182 ButtonRoster b = InputModuleEX.GetComponentOf<ButtonRoster>();
183 if ((bool)b)
184 {
185 m.AddSlider("priority_hint", (float a) => a.ToString() ?? "", b.chara.GetInt(19), delegate(float a)
186 {
187 b.chara.SetInt(19, (int)a);
188 Build();
189 }, 0f, 20f, isInt: true, hideOther: false);
190 }
191 UIContextMenu uIContextMenu = m.AddChild("setting");
192 uIContextMenu.AddSlider("width", (float a) => a.ToString() ?? "", extra.width, delegate(float a)
193 {
194 extra.width = (int)a;
195 Build();
196 }, 30f, 160f, isInt: true);
197 uIContextMenu.AddSlider("margin", (float a) => a.ToString() ?? "", extra.margin, delegate(float a)
198 {
199 extra.margin = (int)a;
200 Build();
201 }, -50f, 50f, isInt: true);
202 uIContextMenu.AddToggle("roster_pc", extra.pc, delegate(bool a)
203 {
204 extra.pc = a;
205 Build();
206 });
207 uIContextMenu.AddToggle("vertical", extra.vertical, delegate(bool a)
208 {
209 extra.vertical = a;
210 Build();
211 });
212 uIContextMenu.AddToggle("roster_portrait", extra.portrait, delegate(bool a)
213 {
214 extra.portrait = a;
215 Build();
216 });
217 uIContextMenu.AddToggle("roster_onlyname", extra.onlyName, delegate(bool a)
218 {
219 extra.onlyName = a;
220 Build();
221 });
222 uIContextMenu.AddToggle("reverseOrder", extra.reverse, delegate(bool a)
223 {
224 extra.reverse = a;
225 Build();
226 });
227 m.AddChild("style").AddSlider("toggleButtonBG", (float a) => a.ToString() ?? "", base.config.skin.button, delegate(float a)
228 {
229 base.config.skin.button = (int)a;
230 ApplySkin();
231 }, 0f, base.config.skin.Skin.buttons.Count - 1, isInt: true);
233 }
void SetInt(int id, int value=0)
Definition: BaseCard.cs:39
UIContextMenuItem AddToggle(string idLang="", bool isOn=false, UnityAction< bool > action=null)
UIContextMenuItem AddSlider(string text, Func< float, string > textFunc, float value, Action< float > action, float min=0f, float max=1f, bool isInt=false, bool hideOther=true, bool useInput=false)
UIContextMenu AddChild(string idLang, TextAnchor anchor)
virtual void ApplySkin()
Definition: Widget.cs:556
void SetBaseContextMenu(UIContextMenu m)
Definition: Widget.cs:608

References UIContextMenu.AddChild(), UIContextMenu.AddSlider(), UIContextMenu.AddToggle(), Widget.ApplySkin(), Build(), ButtonRoster.chara, extra, BaseCard.GetInt(), WidgetRoster.Extra.margin, WidgetRoster.Extra.onlyName, WidgetRoster.Extra.pc, WidgetRoster.Extra.portrait, WidgetRoster.Extra.reverse, Widget.SetBaseContextMenu(), BaseCard.SetInt(), WidgetRoster.Extra.vertical, and WidgetRoster.Extra.width.

◆ Refresh()

void WidgetRoster.Refresh ( )
inline

Definition at line 138 of file WidgetRoster.cs.

139 {
140 if (dirty)
141 {
142 Build();
143 }
144 foreach (ButtonRoster value in buttons.Values)
145 {
146 value.Refresh();
147 }
148 dirty = false;
149 }
void Refresh()
Definition: ButtonRoster.cs:35

References Build(), buttons, dirty, and ButtonRoster.Refresh().

◆ Remove()

void WidgetRoster.Remove ( Chara  c)
inline

Definition at line 158 of file WidgetRoster.cs.

159 {
160 UnityEngine.Object.DestroyImmediate(buttons[c].gameObject);
161 buttons.Remove(c);
162 }

References buttons.

Referenced by OnRemoveMember().

◆ SetDirty()

static void WidgetRoster.SetDirty ( )
inlinestatic

Member Data Documentation

◆ buttons

Dictionary<Chara, ButtonRoster> WidgetRoster.buttons = new Dictionary<Chara, ButtonRoster>()

Definition at line 45 of file WidgetRoster.cs.

Referenced by Add(), Build(), OnAddMember(), OnRemoveMember(), Refresh(), and Remove().

◆ dirty

bool WidgetRoster.dirty

Definition at line 53 of file WidgetRoster.cs.

Referenced by Refresh().

◆ imageGrid

RawImage WidgetRoster.imageGrid

Definition at line 43 of file WidgetRoster.cs.

◆ Instance

WidgetRoster WidgetRoster.Instance
static

Definition at line 37 of file WidgetRoster.cs.

Referenced by Player.MoveZone(), OnActivate(), and SetDirty().

◆ layout

GridLayoutGroup WidgetRoster.layout

Definition at line 39 of file WidgetRoster.cs.

Referenced by Add(), Build(), and OnActivate().

◆ maxWidth

int WidgetRoster.maxWidth

Definition at line 55 of file WidgetRoster.cs.

◆ mold

ButtonRoster WidgetRoster.mold

Definition at line 41 of file WidgetRoster.cs.

Referenced by Add(), and OnActivate().

◆ moldDropperLeft

UIButton WidgetRoster.moldDropperLeft

Definition at line 47 of file WidgetRoster.cs.

◆ moldDropperRight

UIButton WidgetRoster.moldDropperRight

Definition at line 49 of file WidgetRoster.cs.

◆ showName

bool WidgetRoster.showName

Definition at line 51 of file WidgetRoster.cs.

Property Documentation

◆ AlwaysBottom

override bool WidgetRoster.AlwaysBottom
get

Definition at line 59 of file WidgetRoster.cs.

◆ extra

Extra WidgetRoster.extra
get

◆ SetSiblingAfter

override Type WidgetRoster.SetSiblingAfter
get

Definition at line 61 of file WidgetRoster.cs.


The documentation for this class was generated from the following file: