29 lines
956 B
C#
29 lines
956 B
C#
//MIT License
|
|
//Copyright (c) 2020 Mohammed Iqubal Hussain
|
|
//Website : Polyandcode.com
|
|
|
|
|
|
using System.Collections;
|
|
using UnityEngine;
|
|
namespace PolyAndCode.UI
|
|
{
|
|
/// <summary>
|
|
/// Absract Class for creating a Recycling system.
|
|
/// </summary>
|
|
public abstract class RecyclingSystem
|
|
{
|
|
public IRecyclableScrollRectDataSource DataSource;
|
|
|
|
protected RectTransform Viewport, Content;
|
|
protected RectTransform PrototypeCell;
|
|
protected bool IsGrid;
|
|
|
|
protected float MinPoolCoverage = 1.5f; // The recyclable pool must cover (viewPort * _poolCoverage) area.
|
|
protected int MinPoolSize = 10; // Cell pool must have a min size
|
|
protected float RecyclingThreshold = .2f; //Threshold for recycling above and below viewport
|
|
|
|
public abstract IEnumerator InitCoroutine(System.Action onInitialized = null);
|
|
|
|
public abstract Vector2 OnValueChangedListener(Vector2 direction);
|
|
}
|
|
} |