Files
crtr/Assets/Cryville/Common/Unity/Input/PointerHandler.cs
2022-09-30 17:32:21 +08:00

58 lines
1.3 KiB
C#

using System;
using UnityEngine;
namespace Cryville.Common.Unity.Input {
#if false
[Obsolete]
public abstract class PointerHandler {
protected Func<int> newIdCallback;
protected Action<int, PointerInfo> callback;
public PointerHandler(Func<int> newIdCallback, Action<int, PointerInfo> callback) {
this.newIdCallback = newIdCallback;
this.callback = callback;
}
public abstract void Activate();
public abstract void Deactivate();
public abstract void Dispose();
public abstract double GetCurrentTimestamp();
}
[Obsolete]
public struct PointerInfo {
public int Id;
public double EventTime;
public double ProcessTime;
public PointerPhase Phase;
public PointerType Type;
public Vector2 Position;
public Vector2? ContactSize;
public uint? Orientation;
public uint? Pressure;
public double Time {
// get { return EventTime == 0 ? ProcessTime : EventTime; }
get { return ProcessTime; }
}
public void OffsetTime(double originTime) {
if (EventTime != 0) EventTime -= originTime;
if (ProcessTime != 0) ProcessTime -= originTime;
}
}
[Obsolete]
public enum PointerPhase {
Begin = 0,
Update = 2, Stationary = 3,
End = 4, Cancel = 5
}
[Obsolete]
public enum PointerType {
Unknown, Mouse, Touch, Pen, TouchPad
}
#endif
}