This commit is contained in:
2025-06-16 15:14:23 +02:00
committed by devbeni
parent 60fe4620ff
commit 4ff561284f
3174 changed files with 428263 additions and 0 deletions

View File

@ -0,0 +1,70 @@
#if UNITY_EDITOR
using System;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace Edgegap.Editor
{
public class CustomPopupContent : PopupWindowContent
{
private Vector2 scrollPos;
private List<string> _btnNames;
private Action<string> _onBtnClick;
private string _defaultValue = "";
private float _minHeight = 25;
private float _maxHeight = 100;
private float _width;
public CustomPopupContent(
List<string> btnNames,
Action<string> btnCallback,
string defaultValue,
float width = 400
)
{
_btnNames = btnNames;
_onBtnClick = btnCallback;
_width = width;
_defaultValue = defaultValue;
}
public override Vector2 GetWindowSize()
{
float height = _minHeight;
if (_btnNames.Count > 0)
{
height *= _btnNames.Count;
}
return new Vector2(_width, height <= _maxHeight ? height : _maxHeight);
}
public override void OnGUI(Rect rect)
{
scrollPos = EditorGUILayout.BeginScrollView(scrollPos);
foreach (string name in _btnNames)
{
if (GUILayout.Button(name, GUILayout.Width(_width - 25)))
{
if (name == "Create New Application")
{
_onBtnClick(_defaultValue);
}
else
{
_onBtnClick(name);
}
editorWindow.Close();
}
}
EditorGUILayout.EndScrollView();
}
}
}
#endif