Exemple #1
0
        public static void CreateAndRenameLocalLibraryFolder(GuiWidget container, double secondsBetweenClicks = .1)
        {
            AutomationRunner testrunner;
            DrawEventHandler beforeDraw = null;

            beforeDraw = (sender, e) =>
            {
                testrunner = new AutomationRunner();
                Task.Run(() =>
                {
                    testrunner.ClickByName("Library Tab");
                    NavigateToFolder(testrunner, "Local Library Row Item Collection");
                    testrunner.ClickByName("Create Folder From Library Button");
                    testrunner.Wait(2);
                    testrunner.Type("New Folder");
                    testrunner.ClickByName("Create Folder Button");
                    testrunner.ClickByName("Library Edit Button");
                    testrunner.ClickByName("Row Item New Folder");
                    testrunner.ClickByName("Rename From Library Button");
                    testrunner.Wait(2);
                    testrunner.Type("Renamed Folder");
                    testrunner.ClickByName("Rename Button");
                });
                container.DrawBefore -= beforeDraw;
            };
            container.DrawBefore += beforeDraw;
        }
Exemple #2
0
        public static void RenameLibraryItem(GuiWidget container, double secondsBetweenClicks = .1)
        {
            AutomationRunner testRunner;
            DrawEventHandler beforeDraw = null;

            beforeDraw = (sender, e) =>
            {
                testRunner = new AutomationRunner();
                Task.Run(() =>
                {
                    testRunner.ClickByName("Library Tab");
                    NavigateToFolder(testRunner, "Local Library Row Item Collection");

                    testRunner.ClickByName("Library Edit Button");
                    testRunner.ClickByName("Row Item Calibration - Box");
                    testRunner.Wait(.5);
                    MatterControlUtilities.LibraryRenameSelectedItem(testRunner);
                    testRunner.Wait(.5);
                    testRunner.Type("Renamed Calibration Cube");
                    testRunner.ClickByName("Rename Button");
                });
                container.BeforeDraw -= beforeDraw;
            };
            container.BeforeDraw += beforeDraw;
        }
Exemple #3
0
        /// <summary>
        /// Инициализация узла отображения текста
        /// </summary>
        /// <param name="customizingView">Дерево</param>
        /// <param name="column">Колонка</param>
        /// <param name="drawNodeDelegate">Метод отрисовки</param>
        private static void SetUpNodeTextBox(TreeViewAdv customizingView,
                                             TreeColumn column, DrawEventHandler drawNodeDelegate)
        {
            var nodeTextBox = new NodeTextBox();

            nodeTextBox.DataPropertyName = "Text";
            nodeTextBox.VerticalAlign    = VerticalAlignment.Center;
            nodeTextBox.TrimMultiLine    = true;
            nodeTextBox.ParentColumn     = column;
            nodeTextBox.DrawText        +=
                new EventHandler <DrawTextEventArgs>(drawNodeDelegate);

            customizingView.NodeControls.Add(nodeTextBox);
        }
Exemple #4
0
        public static void CreateButtonOpensPluginWindow(GuiWidget container, double secondsBetweenClicks = .1)
        {
            //To run test invoke method in the queue data widget
            AutomationRunner testRunner;
            DrawEventHandler beforeDraw = null;

            beforeDraw = (sender, e) =>
            {
                testRunner = new AutomationRunner();
                Task.Run(() =>
                {
                    testRunner.ClickByName("Queue Tab");
                    testRunner.ClickByName("Design Tool Button");
                });
                container.DrawBefore -= beforeDraw;
            };
            container.DrawBefore += beforeDraw;
        }
Exemple #5
0
        /// <summary>
        /// Инициализация дерева TreeViewAdv из Aga библиотеки.
        /// </summary>
        /// <param name="customizingView">Дерево для настройки</param>
        /// <param name="columnName">Имя добавляемой колонки</param>
        /// <param name="checkStateChangedDelegate">Делегат для обработки
        /// изменения состояния чекбокса</param>
        /// <param name="customizingCheckBox">Чекбокс для настройки</param>
        /// <param name="drawNodeDelegate">Делегат для отрисовки текстовых
        /// элементов</param>
        public static void SetUpAdvTreeView(TreeViewAdv customizingView,
                                            string columnName, DrawEventHandler drawNodeDelegate,
                                            NodeCheckBox customizingCheckBox,
                                            CheckStateChangedEventHandler checkStateChangedDelegate = null)
        {
            customizingView.FullRowSelect            = true;
            customizingView.FullRowSelectActiveColor = Color
                                                       .FromArgb(192, 192, 255);
            customizingView.FullRowSelectInactiveColor = Color
                                                         .FromArgb(192, 255, 192);
            customizingView.GridLineStyle = GridLineStyle.Horizontal;
            customizingView.UseColumns    = true;
            customizingView.ShowLines     = true;
            customizingView.ShowPlusMinus = true;
            customizingView.RowHeight     = 20;

            TreeColumn column = SetUpColumn(customizingView, columnName);

            SetUpNodeCheckBox(customizingView, column, customizingCheckBox,
                              checkStateChangedDelegate);
            SetUpNodeTextBox(customizingView, column, drawNodeDelegate);
        }
Exemple #6
0
        public static void AddLocalLibraryItemToQueue(GuiWidget container, double secondsBetweenClicks = .1)
        {
            AutomationRunner testrunner;
            DrawEventHandler beforeDraw = null;

            beforeDraw = (sender, e) =>
            {
                testrunner = new AutomationRunner();
                Task.Run(() =>
                {
                    testrunner.ClickByName("Library Tab");
                    NavigateToFolder(testrunner, "Local Library Row Item Collection");

                    testrunner.ClickByName("Library Edit Button");
                    testrunner.ClickByName("Row Item Calibration - Box");
                    testrunner.Wait(2);
                    testrunner.ClickByName("Library Add To Queue Button");
                    testrunner.ClickByName("Queue Tab");
                });
                container.DrawBefore -= beforeDraw;
            };
            container.DrawBefore += beforeDraw;
        }
Exemple #7
0
        public static void ClickStuff(GuiWidget container, string[] clickThings, double secondsBetweenClicks = .1)
        {
            AutomationRunner clickPreview;

            DrawEventHandler beforeDraw = null;

            beforeDraw = (sender, e) =>
            {
                clickPreview = new AutomationRunner();
                Task.Run(() =>
                {
                    foreach (string clickName in clickThings)
                    {
                        clickPreview.ClickByName(clickName, 10);
                        Thread.Sleep((int)(secondsBetweenClicks * 1000));
                    }
                });

                container.DrawBefore -= beforeDraw;
            };

            container.DrawBefore += beforeDraw;
        }
Exemple #8
0
        public static void ReportDrawTimeWhileSwitching(GuiWidget container, string firstWidgetName, string secondWidgetName, double switchTimeSeconds)
        {
            StatisticsTracker testTracker   = new StatisticsTracker("SwitchBetweenTabs");
            bool             clickFirstItem = true;
            bool             done           = false;
            bool             firstDraw      = true;
            AutomationRunner clickPreview;
            Stopwatch        timeSinceLastClick = Stopwatch.StartNew();
            Stopwatch        totalDrawTime      = Stopwatch.StartNew();
            int drawCount = 0;

            DrawEventHandler beforeDraw = (sender, e) =>
            {
                if (firstDraw)
                {
                    clickPreview = new AutomationRunner();
                    Task.Run(() =>
                    {
                        while (!done)
                        {
                            if (clickPreview != null && timeSinceLastClick.Elapsed.TotalSeconds > switchTimeSeconds)
                            {
                                if (clickFirstItem)
                                {
                                    clickPreview.ClickByName(firstWidgetName);
                                }
                                else
                                {
                                    clickPreview.ClickByName(secondWidgetName);
                                }
                                clickFirstItem = !clickFirstItem;
                                timeSinceLastClick.Restart();
                            }
                        }
                    });
                    firstDraw = false;
                }

                totalDrawTime.Restart();
            };

            container.DrawBefore += beforeDraw;

            DrawEventHandler afterDraw = null;

            afterDraw = (sender, e) =>
            {
                totalDrawTime.Stop();
                if (drawCount++ > 30 && testTracker.Count < 100)
                {
                    testTracker.AddValue(totalDrawTime.ElapsedMilliseconds);
                    if (testTracker.Count == 100)
                    {
                        Trace.WriteLine(Newtonsoft.Json.JsonConvert.SerializeObject(testTracker));
                        container.DrawBefore -= beforeDraw;
                        container.DrawBefore -= afterDraw;
                        done = true;
                    }
                }
            };

            container.DrawAfter += afterDraw;
        }
        /// <summary>
        /// Register renderer event handler to make specific behaviour in several render stage
        /// </summary>
        /// <param name="displayName"></param>
        /// <param name="handler"></param>
        /// <param name="renderStage"></param>
        /// <param name="priority">0 - first item, higher number means lower priority</param>
        internal static void RegisterRenderModule(MyRenderModuleEnum module, string displayName, DrawEventHandler handler, MyRenderStage renderStage, int priority, bool enabled)
        {
            Debug.Assert(!m_renderModules[(int)renderStage].Any(x => x.Name == module));

            m_renderModules[(int)renderStage].Add(new MyRenderModuleItem { Name = module, DisplayName = displayName, Priority = priority, Handler = handler, Enabled = enabled });
            m_renderModules[(int)renderStage].Sort((p1, p2) => p1.Priority.CompareTo(p2.Priority));
        }
 internal static void RegisterRenderModule(MyRenderModuleEnum module, string displayName, DrawEventHandler handler, MyRenderStage renderStage, bool enabled)
 {
     RegisterRenderModule(module, displayName, handler, renderStage, MyRenderConstants.DEFAULT_RENDER_MODULE_PRIORITY, enabled);
 }
 /// <summary>
 /// Register renderer event handler to make specific behaviour in several render stage
 /// </summary>
 /// <param name="displayName"></param>
 /// <param name="handler"></param>
 /// <param name="renderStage"></param>
 /// <param name="priority"></param>
 public static void RegisterRenderModule(MyRenderModuleEnum module, string displayName, DrawEventHandler handler, MyRenderStage renderStage)
 {
     RegisterRenderModule(module, displayName, handler, renderStage, MyRenderConstants.DEFAULT_RENDER_MODULE_PRIORITY, true);
 }
 /// <summary>Sets an event handler for drawing frames to the canvas.</summary>
 /// <param name="drawHandler">The event handler for drawing frames.</param>
 public void SetDrawHandler(DrawEventHandler drawHandler)
 {
     this._drawHandler = drawHandler;
 }
 /// <summary>Sets an event handler for drawing frames to the canvas.</summary>
 /// <param name="drawHandler">The event handler for drawing frames.</param>
 public void SetDrawHandler(DrawEventHandler drawHandler)
 {
     this._drawHandler = drawHandler;
 }