public bool parseUserAction(ref IRecordEvent e) { if (e.UIElement == null) { return(false); } if (e.UIElement.Type != "Pane") { return(false); } var element = e.UIElement.RawElement; var p = System.Diagnostics.Process.GetProcessById(e.UIElement.ProcessId); var Processname = p.ProcessName; FlaUI.Core.Shapes.Point point = new FlaUI.Core.Shapes.Point(e.X - 80, e.Y - 80); if (point.X < 0) { point.X = e.X + 80; } if (point.Y < 0) { point.Y = e.Y + 80; } FlaUI.Core.Input.Mouse.MoveTo(point); var a = new GetElement(); a.Threshold = 0.9; a.Processname = Processname; e.SupportInput = false; int newOffsetX; int newOffsetY; System.Drawing.Rectangle resultrect; var image = getrectangle.GuessContour(element, e.OffsetX, e.OffsetY, out newOffsetX, out newOffsetY, out resultrect); if (image == null) { var tip = new Interfaces.Overlay.TooltipWindow("Failed Guessing Contour, please select manually"); tip.SetTimeout(TimeSpan.FromSeconds(2)); e.OffsetX = 10; e.OffsetY = 10; e.a = new GetElementResult(a); return(true); } e.OffsetX = newOffsetX; e.OffsetY = newOffsetY; e.Element = new ImageElement(resultrect, image); a.Image = Interfaces.Image.Util.Bitmap2Base64(image); e.a = new GetElementResult(a); point.X = e.X; point.Y = e.Y; FlaUI.Core.Input.Mouse.MoveTo(point); return(true); }
public bool ParseUserAction(ref IRecordEvent e) { if (e.UIElement == null) { return(false); } if (e.UIElement.Type != "Pane") { return(false); } var element = e.UIElement.RawElement; string Processname = ""; if (e.UIElement.ProcessId > 0) { var p = System.Diagnostics.Process.GetProcessById(e.UIElement.ProcessId); if (p.ProcessName == "iexplore" || p.ProcessName == "iexplore.exe") { return(false); } if (p.ProcessName.ToLower() == "chrome" || p.ProcessName.ToLower() == "firefox") { return(false); } Processname = p.ProcessName; } NativeMethods.SetCursorPos(e.X - 80, e.Y - 80); var a = new GetElement { Threshold = 0.9, Processname = Processname }; e.SupportInput = false; e.SupportSelect = false; var image = getrectangle.GuessContour(element, e.OffsetX, e.OffsetY, out int newOffsetX, out int newOffsetY, out System.Drawing.Rectangle resultrect); if (image == null) { var tip = new Interfaces.Overlay.TooltipWindow("Failed Guessing Contour, please select manually"); tip.SetTimeout(TimeSpan.FromSeconds(2)); e.OffsetX = 10; e.OffsetY = 10; e.a = new GetElementResult(a); return(true); } e.OffsetX = newOffsetX; e.OffsetY = newOffsetY; e.Element = new ImageElement(resultrect, image); a.Image = Interfaces.Image.Util.Bitmap2Base64(image); e.a = new GetElementResult(a); NativeMethods.SetCursorPos(e.X, e.Y); return(true); }