summaryrefslogtreecommitdiff
path: root/Client/Assets/Scripts/XMainClient/UI/ArtifactOneKeyHandler.cs
blob: 9e47cbe928be61a2067d4cff02f2178e038803f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
using System;
using System.Collections.Generic;
using UILib;
using UnityEngine;

namespace XMainClient.UI
{
	internal class ArtifactOneKeyHandler : DlgHandlerBase
	{
		protected override string FileName
		{
			get
			{
				return "ItemNew/ArtifactOneKeyFrame";
			}
		}

		private ArtifactComposeDocument m_doc;

		private IXUIButton m_closedBtn;

		private IXUIButton m_oneKeyBtn;

		private IXUICheckBox m_checkBoxB;

		private IXUICheckBox m_checkBoxA;

		private float m_delayTime = 0.5f;

		private float m_fLastClickBtnTime = 0f;

		private List<uint> m_selectLst = new List<uint>();

		protected override void Init()
		{
			base.Init();
			this.m_doc = ArtifactComposeDocument.Doc;
			this.m_closedBtn = (base.PanelObject.transform.Find("Bg/Close").GetComponent("XUIButton") as IXUIButton);
			this.m_oneKeyBtn = (base.PanelObject.transform.Find("BtnOneKeyCompose").GetComponent("XUIButton") as IXUIButton);
			this.m_checkBoxB = (base.PanelObject.transform.Find("Bg/All_B/Category/Normal").GetComponent("XUICheckBox") as IXUICheckBox);
			this.m_checkBoxA = (base.PanelObject.transform.Find("Bg/All_A/Category/Normal").GetComponent("XUICheckBox") as IXUICheckBox);
		}

		public override void RegisterEvent()
		{
			base.RegisterEvent();
			this.m_closedBtn.RegisterClickEventHandler(new ButtonClickEventHandler(this.OnClickClosed));
			this.m_oneKeyBtn.RegisterClickEventHandler(new ButtonClickEventHandler(this.OnClickOneKeyCompose));
			this.m_checkBoxB.RegisterOnCheckEventHandler(new CheckBoxOnCheckEventHandler(this.OnClickCheckBox));
			this.m_checkBoxB.ID = 2UL;
			this.m_checkBoxA.RegisterOnCheckEventHandler(new CheckBoxOnCheckEventHandler(this.OnClickCheckBox));
			this.m_checkBoxA.ID = 3UL;
		}

		protected override void OnShow()
		{
			base.OnShow();
			this.FillContent();
		}

		protected override void OnHide()
		{
			base.OnHide();
		}

		public override void StackRefresh()
		{
			base.StackRefresh();
		}

		public override void OnUnload()
		{
			base.OnUnload();
		}

		private void FillContent()
		{
			this.m_selectLst.Clear();
			this.m_checkBoxB.ForceSetFlag(false);
			this.m_checkBoxB.ForceSetFlag(true);
			this.m_checkBoxA.ForceSetFlag(false);
		}

		private bool OnClickClosed(IXUIButton btn)
		{
			base.SetVisible(false);
			return true;
		}

		private bool OnClickOneKeyCompose(IXUIButton btn)
		{
			bool flag = this.SetButtonCool(this.m_delayTime);
			bool result;
			if (flag)
			{
				result = true;
			}
			else
			{
				this.m_doc.ReqOneKeyCompose(this.m_selectLst);
				result = true;
			}
			return result;
		}

		private bool OnClickCheckBox(IXUICheckBox box)
		{
			bool flag = !box.bChecked;
			if (flag)
			{
				this.m_selectLst.Remove((uint)box.ID);
			}
			else
			{
				uint item = (uint)box.ID;
				bool flag2 = !this.m_selectLst.Contains(item);
				if (flag2)
				{
					this.m_selectLst.Add(item);
				}
			}
			return true;
		}

		private bool SetButtonCool(float time)
		{
			float num = Time.realtimeSinceStartup - this.m_fLastClickBtnTime;
			bool flag = num < time;
			bool result;
			if (flag)
			{
				result = true;
			}
			else
			{
				this.m_fLastClickBtnTime = Time.realtimeSinceStartup;
				result = false;
			}
			return result;
		}
	}
}