30 lines
594 B
C#
30 lines
594 B
C#
using System;
|
|
using System.Reflection;
|
|
using JetBrains.Annotations;
|
|
|
|
namespace F10.StreamDeckIntegration {
|
|
internal class StreamDeckButtonData {
|
|
|
|
public string Id { get; private set; }
|
|
|
|
public object Target { get; private set; }
|
|
|
|
public MemberInfo Member { get; private set; }
|
|
|
|
public StreamDeckButtonData(object target, [NotNull] MemberInfo member, string id = null) {
|
|
if (id == null) {
|
|
id = member.Name;
|
|
}
|
|
|
|
Id = id;
|
|
Target = target;
|
|
Member = member;
|
|
}
|
|
|
|
public void SetCallback(Action action) {
|
|
Target = action.Target;
|
|
Member = action.Method;
|
|
}
|
|
|
|
}
|
|
} |