Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
Widget Class Reference
Inheritance diagram for Widget:
EMono IChangeResolution ISkinRoot BaseWidgetNotice WidgetArtTool WidgetBottomBar WidgetCodex WidgetCurrentTool WidgetDate WidgetDebug WidgetEquip WidgetExp WidgetExpHome WidgetExplorer WidgetFeed WidgetHP WidgetHotbar WidgetInspector WidgetMainText WidgetMascot WidgetMemo WidgetMenuPanel WidgetMinimap WidgetMouseover WidgetNeeds WidgetPopText WidgetPopup WidgetQuestTracker WidgetRoster WidgetSceneCustomizer WidgetSideMenu WidgetSideScreen WidgetStatsBar WidgetSticky WidgetStockTracker WidgetSystemIndicator WidgetTracker WidgetTutorial WidgetUnityChan

Classes

class  Config
 
class  Meta
 

Public Types

enum  WidgetType { Default , ZoomMenu }
 
enum  State { Active , Inactive }
 

Public Member Functions

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 ()
 

Public Attributes

Image imageBG
 
SoundData soundActivate
 
UIDragPanel dragPanel
 
RectTransform tipPivotLeft
 
RectTransform tipPivotRight
 

Protected Member Functions

void ClampToScreenEnsured (Component c, Vector2 anchoredPos)
 
void ClampToScreen (RectTransform rect, float margin=10f)
 

Protected Attributes

bool flip
 

Properties

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 Attributes

string _ID
 
Config _config
 
RectTransform _rect
 
SkinRoot _skinRoot
 
GameObject goCover
 

Additional Inherited Members

- Static Public Member Functions inherited from EMono
static int rnd (int a)
 
- Static Public Attributes inherited from EMono
static Core core
 

Detailed Description

Definition at line 6 of file Widget.cs.

Member Enumeration Documentation

◆ State

Enumerator
Active 
Inactive 

Definition at line 140 of file Widget.cs.

141 {
142 Active,
144 }

◆ WidgetType

Enumerator
Default 
ZoomMenu 

Definition at line 31 of file Widget.cs.

Member Function Documentation

◆ Activate()

void Widget.Activate ( )
inline

Definition at line 225 of file Widget.cs.

226 {
227 _rect = this.Rect();
228 config.state = State.Active;
229 if (config.extra == null)
230 {
231 config.extra = CreateExtra();
232 }
233 if (!dragPanel)
234 {
235 dragPanel = GetComponentInChildren<UIDragPanel>();
236 }
238 {
239 dragPanel.enable = false;
240 }
241 else
242 {
243 dragPanel.autoAnchor = config.userAnchor == RectPosition.Auto;
244 if (config.userAnchor != 0)
245 {
246 _rect.SetAnchor(config.userAnchor);
247 }
248 else
249 {
250 _rect.SetAnchor(config.anchor);
251 }
252 _rect.anchoredPosition = new Vector2(config.x, config.y);
253 dragPanel.onDrag = OnChangePosition;
254 }
256 OnActivate();
257 if (this == null)
258 {
259 return;
260 }
261 flip = _rect.position.x > (float)Screen.width * 0.5f;
262 OnFlip();
265 foreach (SkinDeco deco in config.skin.decos)
266 {
267 InstantiateDeco(deco);
268 }
269 RefreshOrder();
270 }
RectPosition
Definition: RectPosition.cs:2
List< SkinDeco > decos
Definition: SkinConfig.cs:9
RectPosition anchor
Definition: Widget.cs:41
float y
Definition: Widget.cs:53
object extra
Definition: Widget.cs:59
SkinConfig skin
Definition: Widget.cs:61
float x
Definition: Widget.cs:51
RectPosition userAnchor
Definition: Widget.cs:43
RectPosition pivot
Definition: Widget.cs:45
virtual void OnActivate()
Definition: Widget.cs:298
void OnChangePosition()
Definition: Widget.cs:462
bool flip
Definition: Widget.cs:164
UIDragPanel dragPanel
Definition: Widget.cs:154
virtual bool IsStaticPosition
Definition: Widget.cs:200
void SetPivot(RectPosition p)
Definition: Widget.cs:368
void InstantiateDeco(SkinDeco deco)
Definition: Widget.cs:575
State
Definition: Widget.cs:141
void ClampToScreen()
Definition: Widget.cs:437
RectTransform _rect
Definition: Widget.cs:156
virtual object CreateExtra()
Definition: Widget.cs:302
Config config
Definition: Widget.cs:180
void RefreshOrder()
Definition: Widget.cs:272
virtual void OnFlip()
Definition: Widget.cs:478

References _rect, Widget.Config.anchor, ClampToScreen(), config, CreateExtra(), SkinConfig.decos, dragPanel, Widget.Config.extra, flip, InstantiateDeco(), IsStaticPosition, OnActivate(), OnChangePosition(), OnFlip(), Widget.Config.pivot, RefreshOrder(), SetPivot(), Widget.Config.skin, Widget.Config.userAnchor, Widget.Config.x, and Widget.Config.y.

Referenced by WidgetManager.ActivateWidget().

◆ AddDeco()

void Widget.AddDeco ( SkinDeco  deco)
inline

Definition at line 584 of file Widget.cs.

585 {
586 config.skin.decos.Add(deco);
587 InstantiateDeco(deco);
588 }

References config, SkinConfig.decos, InstantiateDeco(), and Widget.Config.skin.

Referenced by LayerSkinDeco.OnUpdateInput().

◆ AddLayer()

Layer Widget.AddLayer ( Layer  l,
Transform  trans 
)
inline

Definition at line 492 of file Widget.cs.

493 {
495 l.gameObject.SetActive(value: true);
496 l.transform.SetParent(trans, worldPositionStays: false);
497 l.Init();
498 l.OnAfterAddLayer();
499 Window window = l.windows[0];
500 RectTransform rectTransform = l.Rect();
501 RectTransform rectTransform2 = window.Rect();
502 rectTransform.sizeDelta = window.Rect().sizeDelta;
503 rectTransform.SetPivot(0.5f, 0.5f);
504 rectTransform.SetAnchor(0.5f, 0.5f, 0.5f, 0.5f);
505 rectTransform2.SetPivot(0.5f, 0.5f);
506 rectTransform2.SetAnchor(0.5f, 0.5f, 0.5f, 0.5f);
507 rectTransform2.anchoredPosition = Vector2.zero;
508 window.setting.allowMove = (window.setting.allowResize = false);
509 window.setting.saveWindow = false;
510 window.bgCollider.SetActive(enable: false);
511 return l;
512 }
virtual void OnAfterAddLayer()
Definition: Layer.cs:379
virtual void Init()
Definition: Layer.cs:163
virtual void OnBeforeAddLayer()
Definition: Layer.cs:375
List< Window > windows
Definition: Layer.cs:116
Definition: Window.cs:13
UICollider bgCollider
Definition: Window.cs:670
void SetAnchor()
Definition: Window.cs:1594

References Window.bgCollider, Layer.Init(), Layer.OnAfterAddLayer(), Layer.OnBeforeAddLayer(), Window.SetAnchor(), and Layer.windows.

Referenced by WidgetEquip.OnActivate().

◆ ApplySkin()

virtual void Widget.ApplySkin ( )
inlinevirtual

Definition at line 556 of file Widget.cs.

557 {
558 SkinRoot component = GetComponent<SkinRoot>();
559 if ((bool)component)
560 {
561 component.Reset();
562 IUISkin[] componentsInChildren = GetComponentsInChildren<IUISkin>(includeInactive: true);
563 for (int i = 0; i < componentsInChildren.Length; i++)
564 {
565 componentsInChildren[i].ApplySkin();
566 }
567 OnApplySkin();
568 }
569 }
virtual void OnApplySkin()
Definition: Widget.cs:571
void ApplySkin()

References IUISkin.ApplySkin(), OnApplySkin(), and SkinRoot.Reset().

Referenced by WidgetCurrentTool.OnActivate(), BaseWidgetNotice.OnSetContextMenu(), WidgetInspector.OnSetContextMenu(), WidgetMenuPanel.OnSetContextMenu(), WidgetRoster.OnSetContextMenu(), WidgetSideMenu.OnSetContextMenu(), WidgetSticky.OnSetContextMenu(), SetBaseContextMenu(), SetGridContextMenu(), SetSkin(), and TestSkin().

◆ CanShowContextMenu()

virtual bool Widget.CanShowContextMenu ( )
inlinevirtual

Reimplemented in WidgetCurrentTool, WidgetEquip, and WidgetHotbar.

Definition at line 596 of file Widget.cs.

597 {
598 return true;
599 }

Referenced by ActionMode.TryShowWidgetMenu().

◆ ClampToScreen() [1/2]

◆ ClampToScreen() [2/2]

void Widget.ClampToScreen ( RectTransform  rect,
float  margin = 10f 
)
inlineprotected

Definition at line 442 of file Widget.cs.

443 {
445 {
446 Vector3 position = rect.position;
447 Vector2 vector = new Vector2(margin, margin);
448 Vector2 vector2 = new Vector2((float)Screen.width - margin, (float)Screen.height - margin);
449 Vector3 vector3 = vector - rect.rect.min;
450 Vector3 vector4 = vector2 - rect.rect.max;
451 position.x = Mathf.Clamp(position.x, vector3.x - 20f, vector4.x + 20f);
452 position.y = Mathf.Clamp(position.y, vector3.y - 20f, vector4.y + 20f);
453 rect.position = position;
454 }
455 }

References config, IsStaticPosition, and Widget.Config.userAnchor.

◆ ClampToScreenEnsured()

void Widget.ClampToScreenEnsured ( Component  c,
Vector2  anchoredPos 
)
inlineprotected

Definition at line 424 of file Widget.cs.

425 {
426 RectTransform rectTransform = c.Rect();
427 rectTransform.anchoredPosition = anchoredPos;
428 rectTransform.RebuildLayout();
429 rectTransform.ForceUpdateRectTransforms();
430 ClampToScreen(rectTransform);
431 rectTransform.anchoredPosition = anchoredPos;
432 rectTransform.RebuildLayout();
433 rectTransform.ForceUpdateRectTransforms();
434 ClampToScreen(rectTransform);
435 }

References ClampToScreen().

Referenced by WidgetMascot.Say().

◆ Close()

void Widget.Close ( )
inline

Definition at line 319 of file Widget.cs.

320 {
321 EMono.ui.widgets.DeactivateWidget(this);
322 }
Definition: EMono.cs:4
static UI ui
Definition: EMono.cs:15

References EMono.ui.

Referenced by WidgetPopup.Discard(), WidgetInspector.Hide(), WidgetTracker.Toggle(), ActionMode.TryRightClickCloseWidget(), ActionMode.TryShowWidgetMenu(), and WidgetCodex.Update().

◆ CreateExtra()

virtual object Widget.CreateExtra ( )
inlinevirtual

◆ Deactivate()

void Widget.Deactivate ( )
inline

Definition at line 307 of file Widget.cs.

308 {
309 OnDeactivate();
310 config.state = State.Inactive;
311 UpdateConfig();
312 UnityEngine.Object.DestroyImmediate(base.gameObject);
313 }
void UpdateConfig()
Definition: Widget.cs:412
virtual void OnDeactivate()
Definition: Widget.cs:315

References OnDeactivate(), and UpdateConfig().

Referenced by WidgetManager.DeactivateWidget().

◆ GetSkin()

SkinSet Widget.GetSkin ( )
inline

Implements ISkinRoot.

Definition at line 527 of file Widget.cs.

528 {
530 }
List< SkinSet > skinSets
Definition: SkinManager.cs:49
static SkinManager Instance
Definition: SkinManager.cs:78

References config, SkinConfig.id, SkinManager.Instance, Widget.Config.skin, and SkinManager.skinSets.

◆ GetSkinConfig()

SkinConfig Widget.GetSkinConfig ( )
inline

Implements ISkinRoot.

Definition at line 532 of file Widget.cs.

533 {
534 return config.skin;
535 }

References config, and Widget.Config.skin.

◆ InstantiateDeco()

void Widget.InstantiateDeco ( SkinDeco  deco)
inline

Definition at line 575 of file Widget.cs.

576 {
577 SkinDecoActor skinDecoActor = (deco.actor = Util.Instantiate<SkinDecoActor>("UI/Widget/SkinDecoActor", base.transform));
578 skinDecoActor.owner = deco;
579 skinDecoActor.image.sprite = ResourceCache.Load<Sprite>("Media/Graphics/Deco/deco" + deco.id);
580 skinDecoActor.Rect().anchoredPosition = new Vector2(deco.x, deco.y);
581 skinDecoActor.Refresh();
582 }
int id
Definition: SkinDeco.cs:16
int x
Definition: SkinDeco.cs:28
int y
Definition: SkinDeco.cs:40
Definition: Util.cs:10
static Transform Instantiate(string path, Component parent=null)
Definition: Util.cs:67

References SkinDeco.id, SkinDecoActor.Refresh(), Util, SkinDeco.x, and SkinDeco.y.

Referenced by Activate(), and AddDeco().

◆ IsAlignTop()

bool Widget.IsAlignTop ( )
inline

Definition at line 482 of file Widget.cs.

483 {
484 RectPosition anchor = this.Rect().GetAnchor();
485 if (anchor != RectPosition.TopCenter && anchor != RectPosition.TopLEFT)
486 {
487 return anchor == RectPosition.TopRIGHT;
488 }
489 return true;
490 }

◆ IsInRightMode()

bool Widget.IsInRightMode ( )
inline

Definition at line 216 of file Widget.cs.

217 {
219 {
220 return true;
221 }
222 return config.IsInRightMode();
223 }
virtual bool ShowBuildWidgets
Definition: ActionMode.cs:183
static Scene scene
Definition: EMono.cs:27
ActionMode actionMode
Definition: Scene.cs:77
bool IsInRightMode()
Definition: Widget.cs:101
virtual bool ShowInBuildMode
Definition: Widget.cs:206

References Scene.actionMode, config, Widget.Config.IsInRightMode(), EMono.scene, ActionMode.ShowBuildWidgets, and ShowInBuildMode.

Referenced by OnChangeActionMode().

◆ OnActivate()

◆ OnApplySkin()

virtual void Widget.OnApplySkin ( )
inlinevirtual

Reimplemented in BaseWidgetNotice, and WidgetStatsBar.

Definition at line 571 of file Widget.cs.

572 {
573 }

Referenced by ApplySkin().

◆ OnChangeActionMode()

virtual void Widget.OnChangeActionMode ( )
inlinevirtual

Reimplemented in WidgetHotbar.

Definition at line 473 of file Widget.cs.

474 {
475 this.SetActive(IsInRightMode());
476 }
bool IsInRightMode()
Definition: Widget.cs:216

References IsInRightMode().

◆ OnChangePivot()

virtual void Widget.OnChangePivot ( )
inlinevirtual

Reimplemented in WidgetDate.

Definition at line 408 of file Widget.cs.

409 {
410 }

Referenced by SetPivot().

◆ OnChangePosition()

void Widget.OnChangePosition ( )
inline

Definition at line 462 of file Widget.cs.

463 {
464 bool flag = this.Rect().position.x > (float)Screen.width * 0.5f;
465 if (flip != flag)
466 {
467 flip = flag;
468 OnFlip();
469 }
471 }
if(item3.idFile==idFirstFile &&item3.id==idFirstTopic)
Definition: UIBook.cs:627
void RefreshTipPivotPosition()
Definition: Widget.cs:514

References flip, if(), OnFlip(), and RefreshTipPivotPosition().

Referenced by Activate(), OnManagerActivate(), and WidgetMascot.Update().

◆ OnChangeResolution()

virtual void Widget.OnChangeResolution ( )
inlinevirtual

Implements IChangeResolution.

Reimplemented in WidgetBottomBar, WidgetMainText, WidgetMenuPanel, and WidgetSideScreen.

Definition at line 457 of file Widget.cs.

458 {
459 ClampToScreen(this.Rect());
460 }

References ClampToScreen().

Referenced by WidgetRoster.Build().

◆ OnDeactivate()

virtual void Widget.OnDeactivate ( )
inlinevirtual

Reimplemented in WidgetFeed, WidgetInspector, WidgetMemo, and WidgetSearch.

Definition at line 315 of file Widget.cs.

316 {
317 }

Referenced by Deactivate().

◆ OnFlip()

virtual void Widget.OnFlip ( )
inlinevirtual

Reimplemented in BaseWidgetNotice, WidgetMascot, and WidgetSystemIndicator.

Definition at line 478 of file Widget.cs.

479 {
480 }

Referenced by Activate(), and OnChangePosition().

◆ OnManagerActivate()

virtual void Widget.OnManagerActivate ( )
inlinevirtual

Reimplemented in WidgetMouseover.

Definition at line 330 of file Widget.cs.

331 {
332 goCover = Util.Instantiate("UI/Widget/CoverWidget", base.transform).gameObject;
333 RectTransform rectTransform = goCover.transform.Rect();
334 RectTransform rectTransform2 = dragPanel.Rect();
335 if ((bool)rectTransform && (bool)rectTransform2)
336 {
337 rectTransform.pivot = rectTransform2.pivot;
338 rectTransform.anchorMin = rectTransform2.anchorMin;
339 rectTransform.anchorMax = rectTransform2.anchorMax;
340 rectTransform.anchoredPosition = rectTransform2.anchoredPosition;
341 rectTransform.sizeDelta = rectTransform2.sizeDelta;
342 }
343 UIDragPanel componentInChildren = goCover.GetComponentInChildren<UIDragPanel>();
344 componentInChildren.autoAnchor = config.userAnchor == RectPosition.Auto;
345 componentInChildren.onDrag = OnChangePosition;
346 componentInChildren.container = dragPanel.container;
347 componentInChildren.target = dragPanel.target;
348 componentInChildren.bound = dragPanel.bound;
349 if (this is WidgetSideScreen)
350 {
351 componentInChildren.enable = false;
352 }
353 goCover.GetComponentInChildren<UIText>().SetText(("Widget" + ID).lang());
354 }
RectTransform bound
Definition: UIDragPanel.cs:15
RectTransform target
Definition: UIDragPanel.cs:13
RectTransform container
Definition: UIDragPanel.cs:17
Definition: UIText.cs:6
GameObject goCover
Definition: Widget.cs:166
string ID
Definition: Widget.cs:169

References UIDragPanel.bound, UIDragPanel.container, dragPanel, goCover, ID, OnChangePosition(), UIDragPanel.target, and Util.

Referenced by WidgetManager.ActivateWidget().

◆ OnManagerDeactivate()

virtual void Widget.OnManagerDeactivate ( )
inlinevirtual

Reimplemented in WidgetMouseover.

Definition at line 356 of file Widget.cs.

357 {
358 UnityEngine.Object.DestroyImmediate(goCover);
359 }

References goCover.

◆ OnSetContextMenu()

◆ OnUpdateConfig()

virtual void Widget.OnUpdateConfig ( )
inlinevirtual

Reimplemented in WidgetMemo.

Definition at line 420 of file Widget.cs.

421 {
422 }

Referenced by UpdateConfig().

◆ Reactivate()

void Widget.Reactivate ( )
inline

Definition at line 324 of file Widget.cs.

325 {
326 EMono.ui.widgets.DeactivateWidget(this);
327 EMono.ui.widgets.ActivateWidget(config);
328 }

References config, and EMono.ui.

Referenced by WidgetSceneCustomizer.OnClickReset().

◆ RefreshOrder()

void Widget.RefreshOrder ( )
inline

Definition at line 272 of file Widget.cs.

273 {
274 if (!AlwaysBottom)
275 {
276 return;
277 }
278 Type setSiblingAfter = SetSiblingAfter;
279 bool flag = false;
280 if (setSiblingAfter != null)
281 {
282 foreach (Widget item in EMono.ui.widgets.list)
283 {
284 if (item.GetType() == setSiblingAfter)
285 {
286 base.transform.SetSiblingIndex(item.transform.GetSiblingIndex() + 1);
287 flag = true;
288 break;
289 }
290 }
291 }
292 if (!flag)
293 {
294 base.transform.SetAsFirstSibling();
295 }
296 }
Definition: Widget.cs:7
virtual Type SetSiblingAfter
Definition: Widget.cs:204
virtual bool AlwaysBottom
Definition: Widget.cs:202

References AlwaysBottom, item, SetSiblingAfter, and EMono.ui.

Referenced by Activate(), and LayerSkinDeco.OnKill().

◆ RefreshTipPivotPosition()

void Widget.RefreshTipPivotPosition ( )
inline

Definition at line 514 of file Widget.cs.

515 {
516 bool flag = (float)(Screen.width / 2 - 40) > base.transform.position.x;
517 if ((bool)tipPivotLeft)
518 {
519 tipPivotLeft.SetActive(!flag || !tipPivotRight);
520 }
521 if ((bool)tipPivotRight)
522 {
523 tipPivotRight.SetActive(flag || !tipPivotLeft);
524 }
525 }
RectTransform tipPivotLeft
Definition: Widget.cs:158
RectTransform tipPivotRight
Definition: Widget.cs:160

References tipPivotLeft, and tipPivotRight.

Referenced by OnChangePosition().

◆ RemoveDeco()

void Widget.RemoveDeco ( SkinDeco  deco)
inline

Definition at line 590 of file Widget.cs.

591 {
592 config.skin.decos.Remove(deco);
593 UnityEngine.Object.DestroyImmediate(deco.actor.gameObject);
594 }
SkinDecoActor actor
Definition: SkinDeco.cs:8

References SkinDeco.actor, config, SkinConfig.decos, and Widget.Config.skin.

Referenced by LayerSkinDeco.OnUpdateInput().

◆ SetAnchor()

void Widget.SetAnchor ( RectPosition  p)
inline

Definition at line 361 of file Widget.cs.

362 {
363 config.userAnchor = p;
364 dragPanel.autoAnchor = p == RectPosition.Auto;
365 _rect.SetAnchor(p);
366 }

References _rect.

◆ SetBaseContextMenu()

void Widget.SetBaseContextMenu ( UIContextMenu  m)
inline

Definition at line 608 of file Widget.cs.

609 {
610 SkinConfig cfg = config.skin;
611 if (!(this is WidgetSideScreen))
612 {
613 UIContextMenu uIContextMenu = m.AddChild("anchor");
614 foreach (RectPosition p2 in Util.EnumToList<RectPosition>())
615 {
616 uIContextMenu.AddButton(((config.userAnchor == p2) ? "★ " : "") + p2.ToString().lang(), delegate
617 {
618 SetAnchor(p2);
619 SE.ClickGeneral();
620 m.Hide();
621 });
622 }
623 uIContextMenu = m.AddChild("pivot");
624 foreach (RectPosition p in Util.EnumToList<RectPosition>())
625 {
626 uIContextMenu.AddButton(((config.pivot == p) ? "★ " : "") + p.ToString().lang(), delegate
627 {
628 SetPivot(p);
629 SE.ClickGeneral();
630 m.Hide();
631 });
632 }
633 }
634 UIContextMenuItem sliderB = null;
635 Action Refresh = delegate
636 {
637 int num = EMono.ui.skins.skinSets[cfg.id].bgs.Count - 1;
638 sliderB.slider.maxValue = num;
639 sliderB.slider.value = cfg.bg;
640 sliderB.textSlider.text = cfg.bg + "/" + (EMono.ui.skins.skinSets[cfg.id].bgs.Count - 1);
641 };
642 if (ShowStyleMenu)
643 {
644 UIContextMenu uIContextMenu2 = m.AddOrGetChild("style");
645 sliderB = uIContextMenu2.AddSlider("changeBG", (float n) => n + "/" + (EMono.ui.skins.skinSets[cfg.id].bgs.Count - 1), cfg.bg, delegate(float a)
646 {
647 SetSkin(cfg.id, (int)a);
648 Refresh();
649 }, 0f, EMono.ui.skins.skinSets[cfg.id].bgs.Count - 1, isInt: true);
650 uIContextMenu2.AddSlider("bgSize", (float n) => n.ToString() ?? "", cfg.bgSize, delegate(float a)
651 {
652 cfg.bgSize = (int)a;
653 ApplySkin();
654 }, -50f, 50f, isInt: true);
655 uIContextMenu2.AddButton("colorBG", delegate
656 {
657 if (EMono.ui.skins.skinSets[cfg.id].bgs[cfg.bg].redirect != 0)
658 {
659 SE.Beep();
660 }
661 else
662 {
663 EMono.ui.AddLayer<LayerColorPicker>().SetColor(cfg.bgColor, EMono.ui.skins.skinSets[cfg.id].bgs[cfg.bg].color, delegate(PickerState state, Color _c)
664 {
665 cfg.bgColor = _c;
666 ApplySkin();
667 });
668 }
669 });
670 uIContextMenu2.AddButton("editDeco", delegate
671 {
672 EMono.ui.AddLayer<LayerSkinDeco>().SetWidget(this);
673 });
674 }
676 {
677 m.AddToggle("RC_widget", config.RC, delegate(bool a)
678 {
679 config.RC = a;
680 });
681 }
682 m.AddButton(() => (config.locked ? "unlockWidget" : "lockWidget").lang(), delegate
683 {
684 EMono.ui.widgets.ToggleLock(config);
685 SE.ClickGeneral();
686 m.Hide();
687 EMono.ui.GetLayer<LayerWidget>()?.Refresh();
688 });
689 if (IsSealed)
690 {
691 return;
692 }
693 m.AddButton("closeWidget", delegate
694 {
695 if (this is WidgetQuestTracker)
696 {
697 EMono.player.questTracker = false;
698 }
699 EMono.ui.widgets.DeactivateWidget(this);
700 EMono.ui.GetLayer<LayerWidget>()?.Refresh();
701 });
702 }
PickerState
Definition: PickerState.cs:2
list. Refresh()
Color bgColor
Definition: SkinConfig.cs:67
int bgSize
Definition: SkinConfig.cs:31
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 AddOrGetChild(string idLang="Child")
void AddButton(Func< string > funcText, UnityAction action=null)
UIContextMenu AddChild(string idLang, TextAnchor anchor)
bool RC
Definition: Widget.cs:57
virtual void ApplySkin()
Definition: Widget.cs:556
bool IsSealed
Definition: Widget.cs:185
void SetSkin(int id, int v=0)
Definition: Widget.cs:537
virtual bool AllowRightClickToClose
Definition: Widget.cs:210
virtual bool ShowStyleMenu
Definition: Widget.cs:196

References UIContextMenu.AddButton(), UIContextMenu.AddChild(), UIContextMenu.AddOrGetChild(), UIContextMenu.AddSlider(), UIContextMenu.AddToggle(), AllowRightClickToClose, ApplySkin(), SkinConfig.bg, SkinConfig.bgColor, SkinConfig.bgSize, Color, config, UIContextMenu.Hide(), SkinConfig.id, IsSealed, Widget.Config.pivot, Widget.Config.RC, Refresh(), SetSkin(), ShowStyleMenu, Widget.Config.skin, EMono.ui, Widget.Config.userAnchor, and Util.

Referenced by BaseWidgetNotice.OnSetContextMenu(), OnSetContextMenu(), WidgetCurrentTool.OnSetContextMenu(), WidgetDate.OnSetContextMenu(), WidgetEquip.OnSetContextMenu(), WidgetFeed.OnSetContextMenu(), WidgetHotbar.OnSetContextMenu(), WidgetHP.OnSetContextMenu(), WidgetInspector.OnSetContextMenu(), WidgetMainText.OnSetContextMenu(), WidgetMascot.OnSetContextMenu(), WidgetMenuPanel.OnSetContextMenu(), WidgetMinimap.OnSetContextMenu(), WidgetRoster.OnSetContextMenu(), WidgetSideMenu.OnSetContextMenu(), WidgetSideScreen.OnSetContextMenu(), WidgetSticky.OnSetContextMenu(), WidgetTracker.OnSetContextMenu(), and WidgetUnityChan.OnSetContextMenu().

◆ SetGridContextMenu()

void Widget.SetGridContextMenu ( UIContextMenu  m)
inline

Definition at line 709 of file Widget.cs.

710 {
711 SkinConfig cfg = config.skin;
712 m.AddSlider("skinGrid", (float n) => n.ToString() ?? "", cfg.grid, delegate(float a)
713 {
714 cfg.grid = (int)a;
715 cfg.gridColor = cfg.Grid.color;
716 ApplySkin();
717 }, 0f, cfg.Skin.bgGrid.Count - 1, isInt: true);
718 m.AddButton("colorGrid", delegate
719 {
720 EMono.ui.AddLayer<LayerColorPicker>().SetColor(cfg.gridColor, cfg.Grid.color, delegate(PickerState state, Color _c)
721 {
722 cfg.gridColor = _c;
723 ApplySkin();
724 });
725 });
726 }
SpriteAsset Grid
Definition: SkinConfig.cs:106
Color gridColor
Definition: SkinConfig.cs:79
Color color
Definition: SpriteAsset.cs:7

References UIContextMenu.AddButton(), UIContextMenu.AddSlider(), ApplySkin(), Color, SpriteAsset.color, config, SkinConfig.grid, SkinConfig.Grid, SkinConfig.gridColor, Widget.Config.skin, and EMono.ui.

Referenced by WidgetCurrentTool.OnSetContextMenu(), WidgetHotbar.OnSetContextMenu(), and WidgetMenuPanel.OnSetContextMenu().

◆ SetPivot()

void Widget.SetPivot ( RectPosition  p)
inline

Definition at line 368 of file Widget.cs.

369 {
370 config.pivot = p;
371 RectTransform rectTransform = this.Rect();
372 Vector3 position = base.transform.position;
373 switch (p)
374 {
375 case RectPosition.TopCenter:
376 rectTransform.pivot = new Vector2(0.5f, 1f);
377 break;
378 case RectPosition.BottomCenter:
379 rectTransform.pivot = new Vector2(0.5f, 0f);
380 break;
381 case RectPosition.TopLEFT:
382 rectTransform.pivot = new Vector2(0f, 1f);
383 break;
384 case RectPosition.BottomLEFT:
385 rectTransform.pivot = new Vector2(0f, 0f);
386 break;
387 case RectPosition.TopRIGHT:
388 rectTransform.pivot = new Vector2(1f, 1f);
389 break;
390 case RectPosition.BottomRIGHT:
391 rectTransform.pivot = new Vector2(1f, 0f);
392 break;
393 case RectPosition.Left:
394 rectTransform.pivot = new Vector2(0f, 0.5f);
395 break;
396 case RectPosition.Right:
397 rectTransform.pivot = new Vector2(1f, 0.5f);
398 break;
399 default:
400 rectTransform.pivot = new Vector2(0.5f, 0.5f);
401 break;
402 }
403 base.transform.position = position;
406 }
virtual void OnChangePivot()
Definition: Widget.cs:408

References ClampToScreen(), and OnChangePivot().

Referenced by Activate().

◆ SetSkin()

void Widget.SetSkin ( int  id,
int  v = 0 
)
inline

Definition at line 537 of file Widget.cs.

538 {
539 SkinConfig skin = config.skin;
540 if (skin.id != id)
541 {
542 skin.SetID(id);
543 }
544 skin.id = id;
545 skin.bg = v;
546 skin.bgColor = skin.BG.color;
547 ApplySkin();
548 }
SkinAsset_BG BG
Definition: SkinConfig.cs:93
void SetID(int _id)
Definition: SkinConfig.cs:133

References ApplySkin(), SkinConfig.BG, SkinAsset_Sprite.color, config, SkinConfig.id, SkinConfig.SetID(), and Widget.Config.skin.

Referenced by SetBaseContextMenu().

◆ ShowContextMenu()

void Widget.ShowContextMenu ( )
inline

Definition at line 601 of file Widget.cs.

602 {
603 UIContextMenu uIContextMenu = EMono.ui.CreateContextMenu();
604 OnSetContextMenu(uIContextMenu);
605 uIContextMenu.Show();
606 }
void Show(UIItem i)
virtual void OnSetContextMenu(UIContextMenu m)
Definition: Widget.cs:704

References OnSetContextMenu(), UIContextMenu.Show(), and EMono.ui.

Referenced by HotItem.OnRightClick(), WidgetHotbar.OnSetContextMenu(), LayerWidget.OnUpdateInput(), and ActionMode.TryShowWidgetMenu().

◆ SoundActivate()

void Widget.SoundActivate ( )
inline

Definition at line 728 of file Widget.cs.

729 {
731 }
static SoundManager Sound
Definition: EMono.cs:39
SoundData soundActivate
Definition: Widget.cs:152

References EMono.Sound, and soundActivate.

Referenced by LayerWidget.OnInit().

◆ Test()

void Widget.Test ( )
inline

Definition at line 212 of file Widget.cs.

213 {
214 }

◆ TestSkin()

void Widget.TestSkin ( )
inline

Definition at line 550 of file Widget.cs.

551 {
552 config.skin.SetID();
553 ApplySkin();
554 }

References ApplySkin(), config, SkinConfig.SetID(), and Widget.Config.skin.

◆ UpdateConfig()

void Widget.UpdateConfig ( )
inline

Definition at line 412 of file Widget.cs.

413 {
414 config.anchor = _rect.GetAnchor();
415 config.x = _rect.anchoredPosition.x;
416 config.y = _rect.anchoredPosition.y;
418 }
virtual void OnUpdateConfig()
Definition: Widget.cs:420

References _rect, and OnUpdateConfig().

Referenced by Deactivate().

Member Data Documentation

◆ _config

Config Widget._config
private

Definition at line 148 of file Widget.cs.

◆ _ID

string Widget._ID
private

Definition at line 146 of file Widget.cs.

◆ _rect

RectTransform Widget._rect
private

Definition at line 156 of file Widget.cs.

Referenced by Activate(), SetAnchor(), and UpdateConfig().

◆ _skinRoot

SkinRoot Widget._skinRoot
private

Definition at line 162 of file Widget.cs.

◆ dragPanel

◆ flip

bool Widget.flip
protected

◆ goCover

GameObject Widget.goCover
private

Definition at line 166 of file Widget.cs.

Referenced by OnManagerActivate(), and OnManagerDeactivate().

◆ imageBG

Image Widget.imageBG

◆ soundActivate

SoundData Widget.soundActivate

Definition at line 152 of file Widget.cs.

Referenced by SoundActivate().

◆ tipPivotLeft

RectTransform Widget.tipPivotLeft

Definition at line 158 of file Widget.cs.

Referenced by RefreshTipPivotPosition().

◆ tipPivotRight

RectTransform Widget.tipPivotRight

Definition at line 160 of file Widget.cs.

Referenced by RefreshTipPivotPosition().

Property Documentation

◆ AllowRightClickToClose

virtual bool Widget.AllowRightClickToClose
get

Definition at line 210 of file Widget.cs.

Referenced by SetBaseContextMenu().

◆ AlwaysBottom

virtual bool Widget.AlwaysBottom
get

Definition at line 202 of file Widget.cs.

Referenced by RefreshOrder().

◆ AlwaysTop

virtual bool Widget.AlwaysTop
get

Definition at line 198 of file Widget.cs.

◆ config

◆ ID

string Widget.ID
get

Definition at line 168 of file Widget.cs.

169 {
170 get
171 {
172 if (_ID == null)
173 {
174 return _ID = base.name.Replace("Widget", "").Replace("(Clone)", "");
175 }
176 return _ID;
177 }
178 }
string _ID
Definition: Widget.cs:146

Referenced by OnManagerActivate().

◆ IsSealed

bool Widget.IsSealed
get

Definition at line 184 of file Widget.cs.

185 {
186 get
187 {
188 if (config.meta.system)
189 {
191 }
192 return false;
193 }
194 }
CoreConfig config
Definition: Core.cs:70
static Core core
Definition: EMono.cs:5
Meta meta
Definition: Widget.cs:70
bool system
Definition: Widget.cs:19

Referenced by ButtonHotItem.RefreshItem(), and SetBaseContextMenu().

◆ IsStaticPosition

virtual bool Widget.IsStaticPosition
get

Definition at line 200 of file Widget.cs.

Referenced by Activate(), and ClampToScreen().

◆ RightClickToClose

virtual bool Widget.RightClickToClose
get

Definition at line 208 of file Widget.cs.

Referenced by ActionMode.TryRightClickCloseWidget(), and ActionMode.TryShowWidgetMenu().

◆ SetSiblingAfter

virtual Type Widget.SetSiblingAfter
get

Definition at line 204 of file Widget.cs.

Referenced by RefreshOrder().

◆ ShowInBuildMode

virtual bool Widget.ShowInBuildMode
get

Definition at line 206 of file Widget.cs.

Referenced by IsInRightMode().

◆ ShowStyleMenu

virtual bool Widget.ShowStyleMenu
get

Definition at line 196 of file Widget.cs.

Referenced by SetBaseContextMenu().

◆ skinRoot

SkinRoot Widget.skinRoot
get

Definition at line 182 of file Widget.cs.


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