Skip to content

Commit ca722f1

Browse files
committed
各セルのSetupModelにおいてCleanup処理を先頭に持ってくるように修正
1 parent dac2bbc commit ca722f1

File tree

11 files changed

+36
-14
lines changed

11 files changed

+36
-14
lines changed

Assets/UnityDebugSheet/Runtime/Core/Scripts/DefaultImpl/Cells/ButtonCell.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@ protected override void SetModel(ButtonCellModel model)
2020
{
2121
_contentsCanvasGroup.alpha = model.Interactable ? 1.0f : 0.3f;
2222

23+
// Cleanup
24+
button.onClick.RemoveAllListeners();
25+
2326
// Icon
2427
icon.Setup(model.Icon);
2528
icon.gameObject.SetActive(model.Icon.Sprite != null);
@@ -32,7 +35,6 @@ protected override void SetModel(ButtonCellModel model)
3235

3336
// Button
3437
button.interactable = model.Interactable;
35-
button.onClick.RemoveAllListeners();
3638
button.onClick.AddListener(model.InvokeClicked);
3739

3840
// Height

Assets/UnityDebugSheet/Runtime/Core/Scripts/DefaultImpl/Cells/EnumMultiPickerCell.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,9 @@ protected override void SetModel(EnumMultiPickerCellModel model)
5151

5252
_contentsCanvasGroup.alpha = model.Interactable ? 1.0f : 0.3f;
5353

54+
// Cleanup
55+
button.onClick.RemoveAllListeners();
56+
5457
// Icon
5558
icon.Setup(model.Icon);
5659
icon.gameObject.SetActive(model.Icon.Sprite != null);
@@ -63,7 +66,6 @@ protected override void SetModel(EnumMultiPickerCellModel model)
6366

6467
// Button
6568
button.interactable = model.Interactable;
66-
button.onClick.RemoveAllListeners();
6769
button.onClick.AddListener(() => OnClicked(model));
6870

6971
// Reload the picking page if it is already created.

Assets/UnityDebugSheet/Runtime/Core/Scripts/DefaultImpl/Cells/EnumPickerCell.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,9 @@ protected override void SetModel(EnumPickerCellModel model)
4242
}
4343

4444
_contentsCanvasGroup.alpha = model.Interactable ? 1.0f : 0.3f;
45+
46+
// Cleanup
47+
button.onClick.RemoveAllListeners();
4548

4649
// Icon
4750
icon.Setup(model.Icon);
@@ -55,7 +58,6 @@ protected override void SetModel(EnumPickerCellModel model)
5558

5659
// Button
5760
button.interactable = model.Interactable;
58-
button.onClick.RemoveAllListeners();
5961
button.onClick.AddListener(() => OnClicked(model));
6062

6163
// Refresh the picking page if needed.

Assets/UnityDebugSheet/Runtime/Core/Scripts/DefaultImpl/Cells/InputFieldCell.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@ protected override void SetModel(InputFieldCellModel model)
2020
{
2121
_contentsCanvasGroup.alpha = model.Interactable ? 1.0f : 0.3f;
2222

23+
// Cleanup
24+
inputField.onValueChanged.RemoveAllListeners();
25+
2326
// Icon
2427
icon.Setup(model.Icon);
2528
icon.gameObject.SetActive(model.Icon.Sprite != null);
@@ -36,7 +39,6 @@ protected override void SetModel(InputFieldCellModel model)
3639
inputField.interactable = model.Interactable;
3740
inputField.SetTextWithoutNotify(model.Value);
3841

39-
inputField.onValueChanged.RemoveAllListeners();
4042
inputField.onValueChanged.AddListener(x =>
4143
{
4244
model.Value = x;

Assets/UnityDebugSheet/Runtime/Core/Scripts/DefaultImpl/Cells/MultiPickerCell.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@ public sealed class MultiPickerCell : Cell<MultiPickerCellModel>
2626
protected override void SetModel(MultiPickerCellModel model)
2727
{
2828
_contentsCanvasGroup.alpha = model.Interactable ? 1.0f : 0.3f;
29+
30+
// Cleanup
31+
button.onClick.RemoveAllListeners();
2932

3033
// Icon
3134
icon.Setup(model.Icon);
@@ -39,7 +42,6 @@ protected override void SetModel(MultiPickerCellModel model)
3942

4043
// Button
4144
button.interactable = model.Interactable;
42-
button.onClick.RemoveAllListeners();
4345
button.onClick.AddListener(() => OnClicked(model));
4446

4547
// Reload the picking page if it is already created.

Assets/UnityDebugSheet/Runtime/Core/Scripts/DefaultImpl/Cells/PageLinkButtonCell.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@ protected override void SetModel(PageLinkButtonCellModel model)
2121
var pageType = model.PageType ?? typeof(DebugPage);
2222

2323
_contentsCanvasGroup.alpha = model.Interactable ? 1.0f : 0.3f;
24+
25+
// Cleanup
26+
button.onClick.RemoveAllListeners();
2427

2528
// Icon
2629
icon.Setup(model.Icon);
@@ -34,7 +37,6 @@ protected override void SetModel(PageLinkButtonCellModel model)
3437

3538
// Button
3639
button.interactable = model.Interactable;
37-
button.onClick.RemoveAllListeners();
3840
button.onClick.AddListener(() =>
3941
{
4042
if (model.Prefab == null)

Assets/UnityDebugSheet/Runtime/Core/Scripts/DefaultImpl/Cells/PickerCell.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,15 @@ public sealed class PickerCell : Cell<PickerCellModel>
2525
protected override void SetModel(PickerCellModel model)
2626
{
2727
_contentsCanvasGroup.alpha = model.Interactable ? 1.0f : 0.3f;
28+
29+
// Cleanup
30+
button.onClick.RemoveAllListeners();
2831

2932
// Icon
3033
icon.Setup(model.Icon);
3134
icon.gameObject.SetActive(model.Icon.Sprite != null);
3235

33-
//Texts
36+
// Texts
3437
cellTexts.Text = model.Text;
3538
var option = model.Options[model.ActiveOptionIndex];
3639
cellTexts.SubText = option;
@@ -39,7 +42,6 @@ protected override void SetModel(PickerCellModel model)
3942

4043
// Button
4144
button.interactable = model.Interactable;
42-
button.onClick.RemoveAllListeners();
4345
button.onClick.AddListener(() => OnClicked(model));
4446

4547
// Refresh the picking page if needed.

Assets/UnityDebugSheet/Runtime/Core/Scripts/DefaultImpl/Cells/PickerOptionCell.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@ public sealed class PickerOptionCell : Cell<PickerOptionCellModel>
1818
protected override void SetModel(PickerOptionCellModel model)
1919
{
2020
_contentsCanvasGroup.alpha = model.Interactable ? 1.0f : 0.3f;
21+
22+
// Cleanup
23+
toggle.onValueChanged.RemoveAllListeners();
2124

2225
// Icon
2326
icon.Setup(model.Icon);
@@ -29,7 +32,6 @@ protected override void SetModel(PickerOptionCellModel model)
2932
// Toggle
3033
toggle.interactable = model.Interactable;
3134
toggle.SetIsOnWithoutNotify(model.IsOn);
32-
toggle.onValueChanged.RemoveAllListeners();
3335
toggle.onValueChanged.AddListener(x =>
3436
{
3537
model.IsOn = x;

Assets/UnityDebugSheet/Runtime/Core/Scripts/DefaultImpl/Cells/SearchFieldCell.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,12 @@ public sealed class SearchFieldCell : Cell<SearchFieldCellModel>
1111

1212
protected override void SetModel(SearchFieldCellModel model)
1313
{
14-
_inputField.interactable = model.Interactable;
14+
// Cleanup
1515
_inputField.onValueChanged.RemoveAllListeners();
16-
_inputField.onValueChanged.AddListener(model.InvokeValueChanged);
1716
_inputField.onEndEdit.RemoveAllListeners();
17+
18+
_inputField.interactable = model.Interactable;
19+
_inputField.onValueChanged.AddListener(model.InvokeValueChanged);
1820
_inputField.onEndEdit.AddListener(model.InvokeSubmitted);
1921

2022
_placeholderText.text = model.Placeholder;

Assets/UnityDebugSheet/Runtime/Core/Scripts/DefaultImpl/Cells/SliderCell.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,10 @@ public sealed class SliderCell : Cell<SliderCellModel>
2121
protected override void SetModel(SliderCellModel model)
2222
{
2323
_contentsCanvasGroup.alpha = model.Interactable ? 1.0f : 0.3f;
24+
25+
// Cleanup
26+
valueField.onValueChanged.RemoveAllListeners();
27+
slider.onValueChanged.RemoveAllListeners();
2428

2529
// Icon
2630
icon.Setup(model.Icon);
@@ -33,7 +37,6 @@ protected override void SetModel(SliderCellModel model)
3337

3438
// TextField
3539
var valueTextFormat = string.IsNullOrEmpty(model.ValueTextFormat) ? "F2" : model.ValueTextFormat;
36-
valueField.onValueChanged.RemoveAllListeners();
3740
valueField.gameObject.SetActive(model.ShowValueText);
3841
valueField.SetTextWithoutNotify(value.ToString(valueTextFormat));
3942
valueField.keyboardType = TouchScreenKeyboardType.DecimalPad;
@@ -51,7 +54,6 @@ protected override void SetModel(SliderCellModel model)
5154

5255
// Slider
5356
slider.interactable = model.Interactable;
54-
slider.onValueChanged.RemoveAllListeners();
5557
slider.minValue = model.MinValue;
5658
slider.maxValue = model.MaxValue;
5759
slider.SetValueWithoutNotify(value);

0 commit comments

Comments
 (0)