59 lines
1.5 KiB
C#
59 lines
1.5 KiB
C#
|
|
using System;
|
||
|
|
using System.Collections;
|
||
|
|
using System.Collections.Generic;
|
||
|
|
using System.Threading;
|
||
|
|
using System.Threading.Tasks;
|
||
|
|
using UnityEngine;
|
||
|
|
|
||
|
|
namespace UnityAsyncAwaitUtil
|
||
|
|
{
|
||
|
|
public class TestButtonHandler
|
||
|
|
{
|
||
|
|
readonly Settings _settings;
|
||
|
|
|
||
|
|
int _buttonVCount;
|
||
|
|
int _buttonHCount;
|
||
|
|
|
||
|
|
public TestButtonHandler(Settings settings)
|
||
|
|
{
|
||
|
|
_settings = settings;
|
||
|
|
}
|
||
|
|
|
||
|
|
public void Restart()
|
||
|
|
{
|
||
|
|
_buttonVCount = 0;
|
||
|
|
_buttonHCount = 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
public bool Display(string text)
|
||
|
|
{
|
||
|
|
if (_buttonVCount > _settings.NumPerColumn)
|
||
|
|
{
|
||
|
|
_buttonHCount++;
|
||
|
|
_buttonVCount = 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
var result = GUI.Button(
|
||
|
|
new Rect(
|
||
|
|
_settings.HorizontalMargin + _buttonHCount * (_settings.ButtonWidth + _settings.HorizontalSpacing),
|
||
|
|
_settings.VerticalMargin + _buttonVCount * (_settings.ButtonHeight + _settings.VerticalSpacing),
|
||
|
|
_settings.ButtonWidth, _settings.ButtonHeight), text);
|
||
|
|
|
||
|
|
_buttonVCount++;
|
||
|
|
|
||
|
|
return result;
|
||
|
|
}
|
||
|
|
|
||
|
|
[Serializable]
|
||
|
|
public class Settings
|
||
|
|
{
|
||
|
|
public int NumPerColumn = 6;
|
||
|
|
public float VerticalMargin = 50;
|
||
|
|
public float VerticalSpacing = 50;
|
||
|
|
public float HorizontalSpacing = 50;
|
||
|
|
public float HorizontalMargin = 50;
|
||
|
|
public float ButtonWidth = 50;
|
||
|
|
public float ButtonHeight = 50;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|