Exemple #1
0
        public void Common_methods()
        {
            Global.Driver.wait(5);
            //Click on the Owners tab
            Tenanttab.Click();

            //Click MyRequest tab
            MyRequesttab.Click();
            //click add request tab
            Addrequesttab.Click();
            //click Select property
            SelectProperty.Click();
            //select dropdown
            SelectPropertydropdown.Click();
            //Type dropdown
            TypeDropDown.Click();
            TypeOption.Click();
            Message.SendKeys(ExcelLib.ReadData(3, "TestData"));
            SaveButton.Click();
            Tenanttab2.Click();
            MyRequesttab2.Click();
            //Enter the value in the search bar
            SearchBar.SendKeys("automate test for verification");
            Global.Driver.wait(5);

            //Click on the search button
            SearchButton.Click();
        }
        public AdvancedBindingEditorDialog(PluginSettingStore currentBinding = null)
        {
            Title   = "Advanced Binding Editor";
            Result  = currentBinding;
            Padding = 5;

            this.Content = new StackLayout
            {
                HorizontalContentAlignment = HorizontalAlignment.Stretch,
                Width  = 500,
                Height = 450,
                Items  =
                {
                    new StackLayoutItem
                    {
                        Expand  = true,
                        Control = new StackLayout
                        {
                            HorizontalContentAlignment = HorizontalAlignment.Stretch,
                            Items =
                            {
                                new Group
                                {
                                    Text    = "Type",
                                    Content = bindingTypeDropDown = new TypeDropDown <IBinding>()
                                },
                                settingStoreEditor
                            }
                        }
                    },
                    new StackLayoutItem
                    {
                        Control = new StackLayout
                        {
                            Orientation = Orientation.Horizontal,
                            Spacing     = 5,
                            Items       =
                            {
                                new StackLayoutItem
                                {
                                    Expand  = true,
                                    Control = new Button(ClearBinding)
                                    {
                                        Text = "Clear"
                                    }
                                },
                                new StackLayoutItem
                                {
                                    Expand  = true,
                                    Control = new Button(ApplyBinding)
                                    {
                                        Text = "Apply"
                                    }
                                }
                            }
                        }
                    }
                }
            };

            bindingTypeDropDown.SelectedItemBinding.Convert(t => new PluginSettingStore(t)).Bind(settingStoreEditor.StoreBinding);
            bindingTypeDropDown.SelectedItem = currentBinding?.GetPluginReference().GetTypeReference();
        }
            public DeviceIdentifierEntry()
            {
                this.Content = layout = new StackLayout
                {
                    HorizontalContentAlignment = HorizontalAlignment.Stretch,
                    Padding = 5,
                    Spacing = 5,
                    Items   =
                    {
                        new Group
                        {
                            Text        = "Vendor ID",
                            Orientation = Orientation.Horizontal,
                            Content     = vendorId = new HexNumberBox()
                        },
                        new Group
                        {
                            Text        = "Product ID",
                            Orientation = Orientation.Horizontal,
                            Content     = productId = new HexNumberBox()
                        },
                        new Group
                        {
                            Text        = "Input Report Length",
                            Orientation = Orientation.Horizontal,
                            Content     = inputReportLength = new UnsignedIntegerNumberBox()
                        },
                        new Group
                        {
                            Text        = "Output Report Length",
                            Orientation = Orientation.Horizontal,
                            Content     = outputReportLength = new UnsignedIntegerNumberBox()
                        },
                        new Group
                        {
                            Text        = "Report Parser",
                            Orientation = Orientation.Horizontal,
                            Content     = reportParser = new TypeDropDown <IReportParser <IDeviceReport> >()
                        },
                        new Expander
                        {
                            Header  = "Feature Initialization Report",
                            Padding = 5,
                            Content = featureInitReport = new ReportEditor()
                        },
                        new Expander
                        {
                            Header  = "Output Initialization Report",
                            Padding = 5,
                            Content = outputInitReport = new ReportEditor()
                        },
                        new Expander
                        {
                            Header  = "Device Strings",
                            Padding = 5,
                            Content = deviceStrings = new DeviceStringEditor()
                        },
                        new Expander
                        {
                            Header  = "Initialization String Indexes",
                            Padding = 5,
                            Content = initializationStrings = new ByteListEditor()
                        }
                    }
                };

                vendorId.ValueBinding.Bind(EntryBinding.Child(e => e.VendorID));
                productId.ValueBinding.Bind(EntryBinding.Child(e => e.ProductID));

                inputReportLength.ValueBinding.Bind(
                    EntryBinding.Child(e => e.InputReportLength).Convert <uint>(
                        c => c ?? 0,
                        v => v
                        )
                    );

                outputReportLength.ValueBinding.Bind(
                    EntryBinding.Child(e => e.OutputReportLength).Convert <uint>(
                        c => c ?? 0,
                        v => v
                        )
                    );

                reportParser.SelectedKeyBinding.Bind(EntryBinding.Child(e => e.ReportParser));

                featureInitReport.ItemSourceBinding.Bind(EntryBinding.Child <IList <byte[]> >(e => e.FeatureInitReport));
                outputInitReport.ItemSourceBinding.Bind(EntryBinding.Child <IList <byte[]> >(e => e.OutputInitReport));
                deviceStrings.ItemSourceBinding.Bind(EntryBinding.Child <IDictionary <byte, string> >(e => e.DeviceStrings));
                initializationStrings.ItemSourceBinding.Bind(EntryBinding.Child <IList <byte> >(e => e.InitializationStrings));
            }
Exemple #4
0
        protected virtual IEnumerable <Control> GetControls()
        {
            yield return(new InputBox("Vendor ID",
                                      () => GetCurrent().VendorID.ToString(),
                                      (o) => ModifyCurrent(id => id.VendorID = ToInt(o))
                                      ));

            yield return(new InputBox("Product ID",
                                      () => GetCurrent().ProductID.ToString(),
                                      (o) => ModifyCurrent(id => id.ProductID = ToInt(o))
                                      ));

            yield return(new InputBox("Input Report Length",
                                      () => GetCurrent().InputReportLength.ToString(),
                                      (o) => ModifyCurrent(id => id.InputReportLength = ToNullableUInt(o))
                                      ));

            yield return(new InputBox("Output Report Length",
                                      () => GetCurrent().OutputReportLength.ToString(),
                                      (o) => ModifyCurrent(id => id.OutputReportLength = ToNullableUInt(o))
                                      ));

            var reportParser = new TypeDropDown <IReportParser <IDeviceReport> >();

            reportParser.SelectedKeyBinding.Bind(
                () => GetCurrent().ReportParser,
                (o) => ModifyCurrent(id => id.ReportParser = o)
                );
            yield return(new Group
            {
                Orientation = Orientation.Horizontal,
                Text = "Report Parser",
                Content = new StackLayout
                {
                    Orientation = Orientation.Horizontal,
                    HorizontalContentAlignment = Eto.Forms.HorizontalAlignment.Right,
                    Items =
                    {
                        new PaddingSpacerItem(),
                        reportParser
                    }
                }
            });

            yield return(new InputBox("Feature Initialization Report",
                                      () => ToHexString(GetCurrent().FeatureInitReport),
                                      (o) => ModifyCurrent(id => id.FeatureInitReport = ToByteArray(o))
                                      ));

            yield return(new InputBox("Output Initialization Report",
                                      () => ToHexString(GetCurrent().OutputInitReport),
                                      (o) => ModifyCurrent(id => id.OutputInitReport = ToByteArray(o))
                                      ));

            yield return(new DictionaryEditor("Device Strings",
                                              () =>
            {
                var dictionaryBuffer = new Dictionary <string, string>();
                foreach (var pair in GetCurrent().DeviceStrings)
                {
                    dictionaryBuffer.Add($"{pair.Key}", pair.Value);
                }
                return dictionaryBuffer;
            },
                                              (o) =>
            {
                ModifyCurrent(id =>
                {
                    id.DeviceStrings.Clear();
                    foreach (KeyValuePair <string, string> pair in o)
                    {
                        if (byte.TryParse(pair.Key, out var keyByte))
                        {
                            id.DeviceStrings.Add(keyByte, pair.Value);
                        }
                    }
                });
            }
                                              ));

            yield return(new ListEditor("Initialization String Indexes",
                                        () =>
            {
                var listBuffer = new List <string>();
                foreach (var value in GetCurrent().InitializationStrings)
                {
                    listBuffer.Add($"{value}");
                }
                return listBuffer;
            },
                                        (o) =>
            {
                ModifyCurrent(id =>
                {
                    id.InitializationStrings.Clear();
                    foreach (string value in o)
                    {
                        if (byte.TryParse(value, out var byteValue))
                        {
                            id.InitializationStrings.Add(byteValue);
                        }
                        else
                        {
                            id.InitializationStrings.Add(0);
                        }
                    }
                });
            }
                                        ));
        }
Exemple #5
0
        public AdvancedBindingEditorDialog(PluginSettingStore currentBinding = null)
        {
            Title   = "Advanced Binding Editor";
            Result  = currentBinding;
            Padding = 5;

            bindingPropertyGroup = new Group
            {
                Text = "Property"
            };

            this.Content = new StackLayout
            {
                HorizontalContentAlignment = HorizontalAlignment.Stretch,
                Width  = 300,
                Height = 250,
                Items  =
                {
                    new StackLayoutItem
                    {
                        Expand  = true,
                        Control = new StackLayout
                        {
                            HorizontalContentAlignment = HorizontalAlignment.Stretch,
                            Items =
                            {
                                new Group
                                {
                                    Text    = "Type",
                                    Content = bindingTypeDropDown = new TypeDropDown <IBinding>()
                                },
                                bindingPropertyGroup
                            }
                        }
                    },
                    new StackLayoutItem
                    {
                        Control = new StackLayout
                        {
                            Orientation = Orientation.Horizontal,
                            Spacing     = 5,
                            Items       =
                            {
                                new StackLayoutItem
                                {
                                    Expand  = true,
                                    Control = new Button(ClearBinding)
                                    {
                                        Text = "Clear"
                                    }
                                },
                                new StackLayoutItem
                                {
                                    Expand  = true,
                                    Control = new Button(ApplyBinding)
                                    {
                                        Text = "Apply"
                                    }
                                }
                            }
                        }
                    }
                }
            };

            bindingTypeDropDown.SelectedValueChanged += (sender, e) => bindingPropertyGroup.Content = GetPropertyControl();
            bindingTypeDropDown.SelectedType          = currentBinding?.GetPluginReference().GetTypeReference();

            string bindingProperty = currentBinding?["Property"]?.GetValue <string>();

            switch (bindingPropertyGroup.Content)
            {
            case BindingPropertyDropDown bindingPropertyDropDown:
            {
                bindingPropertyDropDown.SelectedKey = bindingProperty;
                break;
            }

            case TextControl textControl:
            {
                textControl.Text = bindingProperty;
                break;
            }

            default:
            {
                bindingPropertyGroup.Content = GetPropertyControl();
                break;
            }
            }
            ;
        }