Esempio n. 1
0
        public Activity Create(System.Windows.DependencyObject target)
        {
            var fef = new GetElement();
            var aa  = new ActivityAction <JavaElement>();
            var da  = new DelegateInArgument <JavaElement>();

            da.Name     = "item";
            fef.Body    = aa;
            aa.Argument = da;
            return(fef);
        }
Esempio n. 2
0
        private void Hook_OnMouseClicked(int vmID, WindowsAccessBridgeInterop.AccessibleContextNode ac)
        {
            lastElement = new JavaElement(ac);
            lastElement.SetPath();
            Log.Debug("OnMouseClicked: " + lastElement.id + " " + lastElement.role + " " + lastElement.Name);
            if (lastElement == null)
            {
                return;
            }

            var re = new RecordEvent(); re.Button = MouseButton.Left;
            var a  = new GetElement {
                DisplayName = lastElement.title
            };
            var sw = new System.Diagnostics.Stopwatch();

            sw.Start();
            JavaSelector sel = null;

            // sel = new JavaSelector(e.Element.rawElement, null, true);
            sel = new JavaSelector(lastElement, null, true);
            if (sel == null)
            {
                return;
            }
            if (sel.Count < 2)
            {
                return;
            }
            a.Selector      = sel.ToString();
            a.Image         = lastElement.ImageString();
            a.MaxResults    = 1;
            re.Element      = lastElement;
            re.Selector     = sel;
            re.X            = lastElement.X;
            re.Y            = lastElement.Y;
            re.a            = new GetElementResult(a);
            re.SupportInput = lastElement.SupportInput;

            Log.Debug(string.Format("Java.Recording::OnMouseClicked::end {0:mm\\:ss\\.fff}", sw.Elapsed));
            OnUserAction?.Invoke(this, re);
        }
Esempio n. 3
0
        public bool parseUserAction(ref IRecordEvent e)
        {
            if (lastElement == null)
            {
                return(false);
            }
            if (e.UIElement == null)
            {
                return(false);
            }

            if (e.UIElement.ClassName == null || !e.UIElement.ClassName.StartsWith("SunAwt"))
            {
                if (e.UIElement.ProcessId < 1)
                {
                    return(false);
                }
                var p = System.Diagnostics.Process.GetProcessById(e.UIElement.ProcessId);
                if (p.ProcessName.ToLower() != "java")
                {
                    return(false);
                }
            }
            var selector = new JavaSelector(lastElement, null, true);
            var a        = new GetElement {
                DisplayName = lastElement.id + " " + lastElement.role + " " + lastElement.Name
            };

            a.Selector   = selector.ToString();
            a.Image      = lastElement.ImageString();
            a.MaxResults = 1;

            e.a            = new GetElementResult(a);
            e.SupportInput = lastElement.SupportInput;
            e.ClickHandled = true;
            e.Selector     = selector;
            e.Element      = lastElement;
            lastElement.Click(true, e.Button, 0, 0);
            return(true);
        }
Esempio n. 4
0
 public GetElementResult(GetElement activity)
 {
     Activity = activity;
 }