Esempio n. 1
0
        private void Node_Click(object sender, TreeNodeMouseClickEventArgs e)
        {
            ControlTreeNode node = (ControlTreeNode)e.Node;

            Controls.Clear();
            node.OnNodeClicked(e);
            if (e.Button == System.Windows.Forms.MouseButtons.Right)
            {
                this.ContextMenuStrip = e.Node.ContextMenuStrip;
            }
        }
Esempio n. 2
0
        private void Node_Double_Click(object sender, TreeNodeMouseClickEventArgs e)
        {
            ControlTreeNode node = (ControlTreeNode)e.Node;

            Controls.Clear();
            if (mouseX > e.Node.Bounds.X)
            {
                if (node.Control != null)
                {
                    SetNodeControlBounds(node);

                    Controls.Add(node.Control);
                    node.Control.Focus();
                }
            }
        }
        private TreeNode ShowWindow()
        {
            treeView.Nodes.Clear();

            List <Window> windows = WindowFactory.Desktop.DesktopWindows();

            System.Diagnostics.ProcessStartInfo si = new System.Diagnostics.ProcessStartInfo();
            si.FileName = @"C:\Windows\explorer.exe";
            TestStack.White.Application appExplorer = TestStack.White.Application.AttachOrLaunch(si);
            System.Diagnostics.Process  appCurrent  = System.Diagnostics.Process.GetCurrentProcess();

            TreeNode matchedWindowNode = null;

            foreach (Window window in windows)
            {
                if (window.IsOffScreen || !window.Visible || window.Name.Length == 0)
                {
                    continue;
                }

                if (window.AutomationElement.Current.ProcessId == appCurrent.Id)
                {
                    continue;
                }

                if (window.Title == @"Program Manager" && window.AutomationElement.Current.ProcessId == appExplorer.Process.Id)
                {
                    continue;
                }

                ControlTreeNode node = new ControlTreeNode(window.Name);
                node.Tag = window;
                node.Nodes.Add("");
                if (matchedWindowNode == null && CurrentInterface != null && ActionManager.MatchWindow(window, CurrentInterface.Properties))
                {
                    matchedWindowNode     = node;
                    node.ForeColor        = Color.Green;
                    node.NodeFont         = new Font(SystemFonts.DefaultFont, FontStyle.Bold);
                    node.Text             = node.Text;
                    node.MatchedName      = CurrentInterface.Name;
                    treeView.SelectedNode = node;
                }
                treeView.Nodes.Add(node);
            }

            return(matchedWindowNode);
        }
Esempio n. 4
0
        public void InitialiseNodes()
        {
            PreloadedConfigurationControl preloadedConfig;
            ControlTreeNode preloaded = new ControlTreeNode((preloadedConfig = new PreloadedConfigurationControl((Form)this.Parent)));

            viewRootNode = new TreeNode();
            viewRootNode.Text = "Views";
            viewRootNode.Name = "Views";
            leftTreeControlView.Nodes.Add(viewRootNode);
            leftTreeControlView.Nodes.Add(preloaded);

            preloaded.Text = "Configuration";
            preloaded.Name = "Configuration";
            preloadedConfig.preSetupChecks();
            preloadedConfig.populatePreloadedConfigurationTreeView();

            foreach(string s in getConfigurationsFiles()){
                createAndAddControlTreeNode(s);
            }
        }
Esempio n. 5
0
 private void SetNodeControlBounds(ControlTreeNode node)
 {
     if (node != null)
     {
         if (node.Control != null)
         {
             if (node.RescaleControl)
             {
                 node.Control.Size = new System.Drawing.Size(node.Bounds.Width + 6, node.Control.Height);
             }
             node.Control.Location = new Point(node.Bounds.X - 1, node.Bounds.Y - 2);
             int controlRight = node.Control.Location.X + node.Control.Size.Width;
             if (controlRight > this.Width - 20)
             {
                 int moveLeft = controlRight - (this.Width - 21);
                 node.Control.Location = new Point(node.Control.Location.X - moveLeft, node.Control.Location.Y);
             }
         }
     }
 }
        private void ShowGroupControl(TreeNode node, string groupName, IUIItem[] items)
        {
            if (items.Length == 0)
            {
                return;
            }

            treeView.BeginUpdate();
            TreeNode group = new TreeNodeGroup(groupName);

            node.Nodes.Add(group);
            group.NodeFont  = new Font(SystemFonts.DefaultFont, FontStyle.Italic);
            group.ForeColor = Color.Gray;
            foreach (IUIItem item in items)
            {
                string name = item.Name.Trim();
                if (name.Length == 0)
                {
                    name = "{No name}";
                }
                ControlTreeNode itemnode = new ControlTreeNode(name);
                itemnode.Tag = item;

                foreach (string ctrlName in matchedControls.Keys)
                {
                    if (CompareItem(matchedControls[ctrlName], item) == 0)
                    {
                        itemnode.NodeFont    = new Font(SystemFonts.DefaultFont, FontStyle.Bold);
                        itemnode.ForeColor   = Color.Green;
                        itemnode.Text        = itemnode.Text;
                        itemnode.MatchedName = ctrlName;
                    }
                }
                group.Nodes.Add(itemnode);
            }
            treeView.EndUpdate();
        }
Esempio n. 7
0
        private TreeNode ShowWindow()
        {
            treeView.Nodes.Clear();

            List<Window> windows = WindowFactory.Desktop.DesktopWindows();
            System.Diagnostics.ProcessStartInfo si = new System.Diagnostics.ProcessStartInfo();
            si.FileName = @"C:\Windows\explorer.exe";
            TestStack.White.Application appExplorer = TestStack.White.Application.AttachOrLaunch(si);
            System.Diagnostics.Process appCurrent = System.Diagnostics.Process.GetCurrentProcess();

            TreeNode matchedWindowNode = null;
            foreach (Window window in windows)
            {
                if (window.IsOffScreen || !window.Visible || window.Name.Length == 0)
                    continue;

                if (window.AutomationElement.Current.ProcessId == appCurrent.Id)
                    continue;

                if (window.Title == @"Program Manager" && window.AutomationElement.Current.ProcessId == appExplorer.Process.Id)
                    continue;

                ControlTreeNode node = new ControlTreeNode(window.Name);
                node.Tag = window;
                node.Nodes.Add("");
                if (matchedWindowNode == null && CurrentInterface != null && ActionManager.MatchWindow(window, CurrentInterface.Properties))
                {
                    matchedWindowNode = node;
                    node.ForeColor = Color.Green;
                    node.NodeFont = new Font(SystemFonts.DefaultFont, FontStyle.Bold);
                    node.Text = node.Text;
                    node.MatchedName = CurrentInterface.Name;
                    treeView.SelectedNode = node;
                }
                treeView.Nodes.Add(node);
            }

            return matchedWindowNode;
        }
Esempio n. 8
0
        private void ShowGroupControl(TreeNode node, string groupName, IUIItem[] items)
        {
            if (items.Length == 0)
                return;

            treeView.BeginUpdate();
            TreeNode group = new TreeNodeGroup(groupName);
            node.Nodes.Add(group);
            group.NodeFont = new Font(SystemFonts.DefaultFont, FontStyle.Italic);
            group.ForeColor = Color.Gray;
            foreach (IUIItem item in items)
            {
                string name = item.Name.Trim();
                if (name.Length == 0) name = "{No name}";
                ControlTreeNode itemnode = new ControlTreeNode(name);
                itemnode.Tag = item;

                foreach (string ctrlName in matchedControls.Keys)
                {
                    if (CompareItem(matchedControls[ctrlName], item) == 0)
                    {
                        itemnode.NodeFont = new Font(SystemFonts.DefaultFont, FontStyle.Bold);
                        itemnode.ForeColor = Color.Green;
                        itemnode.Text = itemnode.Text;
                        itemnode.MatchedName = ctrlName;
                    }
                }
                group.Nodes.Add(itemnode);
            }
            treeView.EndUpdate();
        }
Esempio n. 9
0
 private void createAndAddControlTreeNode(string path)
 {
     OperationalControl opCon = new OperationalControl((Form)this.Parent, path);
     opCons.Add(opCon);
     ControlTreeNode n = new ControlTreeNode(opCon);
     n.Text = path;
     n.Name = path;
     this.viewRootNode.Nodes.Add(n);
 }
Esempio n. 10
0
        private void After_Collapse(object sender, TreeViewEventArgs e)
        {
            ControlTreeNode node = (ControlTreeNode)e.Node;

            node.CollapseControls();
        }