public void BookmarkByOverview(string BookmarkName) { IMemoryMeasurement measurement; WindowMotor motor = new WindowMotor(EveMainWindow.Value); Sanderling.Motor.WindowMotor.EnsureWindowIsForeground(EveMainWindow.Value); var response = sensor?.MeasurementTakeNewRequest(EveClientId.Value); do { response = sensor?.MeasurementTakeNewRequest(EveClientId.Value); } while (null == response); measurement = response?.MemoryMeasurement?.Value; var overview = measurement.WindowOverview.FirstOrDefault(); var entry = overview.ListView.Entry.FirstOrDefault(); var motionParam = entry.MouseClick(MouseButtonIdEnum.Right); motor.ActSequenceMotion(motionParam.AsSequenceMotion(measurement)); do { response = sensor?.MeasurementTakeNewRequest(EveClientId.Value); } while (null == response); measurement = response?.MemoryMeasurement?.Value; Sanderling.Interface.MemoryStruct.IMenu menu = measurement.Menu.FirstOrDefault(); BookmarkByMenu(measurement, menu, "Save Location", BookmarkName); }
public Menu(MemoryStruct.IMenu raw) { this.raw = raw; Entry = raw?.Entry?.Select(entry => entry?.Parse())?.ToArray(); }
static public IMenu Parse(this MemoryStruct.IMenu raw) => null == raw ? null : new Menu(raw);
static public MemoryStruct.IMenuEntry EntryFirstMatchingRegexPattern( this MemoryStruct.IMenu menu, string regexPattern, RegexOptions regexOptions = RegexOptions.None) => null == regexPattern ? null : menu?.Entry?.FirstOrDefault(entry => entry?.Text?.RegexMatchSuccess(regexPattern, regexOptions) ?? false);
public Menu(MemoryStruct.IMenu raw) { this.raw = raw; Entry = raw?.Entry?.Select(entry => entry?.Parse())?.ToArray(); }