Aetheria/Assets/Plugins/AsyncAwaitUtil/Tests/Util/TestButtonHandler.cs

59 lines
1.5 KiB
C#
Raw Normal View History

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;
}
}
}