using UnityEditor; using UnityEngine; namespace VketCloudGUITools.Runtime { public class GUIActionEditorRectHelpder { static float CheckRectWidth = EditorGUIUtility.singleLineHeight * 3f; Rect _rect; Rect _rectRemain; public GUIActionEditorRectHelpder(Rect rect) { _rect = rect; _rect.y = 0f; _rect.x = 0f; _rectRemain = _rect; } public void Space(float height) { _rectRemain.yMin += height; } public void GetTypeRectAndCheckRect(out Rect typeRect, out Rect checkRect) { typeRect = new Rect(_rectRemain); typeRect.x = 0f; typeRect.y = 0f; typeRect.width = _rectRemain.width - CheckRectWidth; typeRect.height = EditorGUIUtility.singleLineHeight; checkRect = new Rect(_rectRemain); checkRect.x = typeRect.width + 2f; checkRect.y = 0f; checkRect.width = CheckRectWidth; checkRect.height = typeRect.height; _rectRemain.yMin += typeRect.height; } public Rect ContentRect(int lines, float offset = 0) { var contentRect = new Rect(_rectRemain); contentRect.height = EditorGUIUtility.singleLineHeight * lines + offset; _rectRemain.yMin += contentRect.height; return contentRect; } } }