internal UCIOption(int index, int v, int minv, int maxv, OnChangeUCIOption fn) : this(index, fn) { type = "spin"; min = minv; max = maxv; defaultValue = currentValue = v.ToString(); }
internal UCIOption(int index, string v, OnChangeUCIOption fn) : this(index, fn) { type = "string"; defaultValue = currentValue = v; }
internal UCIOption(int index, bool v, OnChangeUCIOption fn) : this(index, fn) { type = "check"; defaultValue = currentValue = (v ? "true" : "false"); }
internal UCIOption(int index, OnChangeUCIOption fn) { type = "button"; idx = index; on_change = fn; }