示例#1
0
        private static List <DarkTreeNode> GetDirectoryNodes(
            ref Stack <DarkTreeNode> stack, DirectoryInfo[] directories, DarkTreeView expandedSourceTreeView, bool expandAllNodes)
        {
            List <DarkTreeNode> nodes = new List <DarkTreeNode>();

            foreach (DirectoryInfo directory in directories)
            {
                DarkTreeNode childDirectoryNode = new DarkTreeNode(directory.Name)
                {
                    Icon = Properties.Resources.folder.ToBitmap(),
                    Tag  = directory
                };

                nodes.Add(childDirectoryNode);
                stack.Push(childDirectoryNode);

                if (expandedSourceTreeView != null)
                {
                    DarkTreeNode expandedSourceChildNode = expandedSourceTreeView.FindNode(childDirectoryNode.FullPath);

                    if (expandedSourceChildNode != null)
                    {
                        childDirectoryNode.Expanded = expandedSourceChildNode.Expanded;
                    }
                }
                else if (expandAllNodes)
                {
                    childDirectoryNode.Expanded = true;
                }
            }

            return(nodes);
        }
示例#2
0
        private void ListDirectory(DarkTreeView treeView, string path)
        {
            treeView.Nodes.Clear();

            var rootDirectoryInfo = new ExplorerItem(path);

            treeView.Nodes.Add(CreateDirectoryNode(rootDirectoryInfo));
        }
示例#3
0
 private void InitializeComponent()
 {
     this.tree = new DarkUI.Controls.DarkTreeView();
     this.suggestedGameVersionComboBox = new DarkUI.Controls.DarkComboBox();
     this.darkLabel1 = new DarkUI.Controls.DarkLabel();
     this.SuspendLayout();
     //
     // tree
     //
     this.tree.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
                                                               | System.Windows.Forms.AnchorStyles.Left)
                                                              | System.Windows.Forms.AnchorStyles.Right)));
     this.tree.Enabled       = false;
     this.tree.Location      = new System.Drawing.Point(0, 30);
     this.tree.MaxDragChange = 20;
     this.tree.MultiSelect   = true;
     this.tree.Name          = "tree";
     this.tree.Size          = new System.Drawing.Size(150, 120);
     this.tree.TabIndex      = 1;
     this.tree.Click        += new System.EventHandler(this.tree_Click);
     this.tree.DoubleClick  += new System.EventHandler(this.tree_DoubleClick);
     this.tree.KeyDown      += new System.Windows.Forms.KeyEventHandler(this.Tree_KeyDown);
     this.tree.KeyPress     += new System.Windows.Forms.KeyPressEventHandler(this.Tree_KeyPress);
     this.tree.KeyUp        += new System.Windows.Forms.KeyEventHandler(this.Tree_KeyUp);
     this.tree.MouseDown    += new System.Windows.Forms.MouseEventHandler(this.tree_MouseDown);
     //
     // suggestedGameVersionComboBox
     //
     this.suggestedGameVersionComboBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
                                                                                      | System.Windows.Forms.AnchorStyles.Right)));
     this.suggestedGameVersionComboBox.Enabled           = false;
     this.suggestedGameVersionComboBox.FormattingEnabled = true;
     this.suggestedGameVersionComboBox.Location          = new System.Drawing.Point(103, 3);
     this.suggestedGameVersionComboBox.Name                  = "suggestedGameVersionComboBox";
     this.suggestedGameVersionComboBox.Size                  = new System.Drawing.Size(47, 21);
     this.suggestedGameVersionComboBox.TabIndex              = 0;
     this.suggestedGameVersionComboBox.SelectedIndexChanged += new System.EventHandler(this.suggestedGameVersionComboBox_SelectedIndexChanged);
     //
     // darkLabel1
     //
     this.darkLabel1.AutoSize  = true;
     this.darkLabel1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(220)))), ((int)(((byte)(220)))), ((int)(((byte)(220)))));
     this.darkLabel1.Location  = new System.Drawing.Point(3, 6);
     this.darkLabel1.Name      = "darkLabel1";
     this.darkLabel1.Size      = new System.Drawing.Size(91, 13);
     this.darkLabel1.TabIndex  = 3;
     this.darkLabel1.Text      = "Game slot names:";
     //
     // WadTreeView
     //
     this.Controls.Add(this.darkLabel1);
     this.Controls.Add(this.suggestedGameVersionComboBox);
     this.Controls.Add(this.tree);
     this.Name   = "WadTreeView";
     this.Click += new System.EventHandler(this.WadTreeView_Click);
     this.ResumeLayout(false);
     this.PerformLayout();
 }
示例#4
0
        public FormFindReplace(ref CustomTabControl editorTabControl, ref CustomTabControl infoTabControl)
        {
            InitializeComponent();

            _editorTabControl = editorTabControl;
            _infoTabControl   = infoTabControl;

            _searchResults = infoTabControl.TabPages[2].Controls.OfType <DarkTreeView>().First();
        }
示例#5
0
        private void darkDockPanel2_Load(object sender, EventArgs e)
        {
            w       = new ToolWindow();
            w.Dock  = DockStyle.Fill;
            w.main  = drawTest1;
            objects = w.dtv;
            darkDockPanel2.AddContent(w);

            loadResources();
        }
示例#6
0
        private void darkDockPanel4_Load(object sender, EventArgs e)
        {
            lt      = new LayerTool();
            lt.form = this;
            darkDockPanel4.AddContent(lt);

            r       = new RoomsControl();
            r.form1 = this;
            darkDockPanel4.AddContent(r);
            rooms = r.dtv;
        }
示例#7
0
        public ToolWindow()
        {
            InitializeComponent();

            DarkTreeNode dtn = new DarkTreeNode("Objects");

            dtn.Icon   = (Bitmap)Resources.ResourceManager.GetObject("Folder_16x");
            dtn.IsRoot = true;
            dtv        = darkTreeView1;
            darkTreeView1.Nodes.Add(dtn);
        }
        public RoomsControl()
        {
            InitializeComponent();

            dtv = darkTreeView1;

            DarkTreeNode dtn = new DarkTreeNode("Rooms");

            dtn.Tag  = "folder";
            dtn.Icon = (Bitmap)Properties.Resources.ResourceManager.GetObject("Folder_16x");
            darkTreeView1.Nodes.Add(dtn);
        }
示例#9
0
        public static void TreeAddRootNode(DarkTreeView dtv, string name)
        {
            DarkTreeNode dtn = new DarkTreeNode(name);

            dtn.Icon         = (Bitmap)Resources.ResourceManager.GetObject("Folder_16x");
            dtn.IsRoot       = true;
            dtn.IsFolder     = true;
            dtn.Tag          = "folder";
            dtn.IsCore       = true;
            dtn.RootNodeName = name;
            dtv.Nodes.Add(dtn);
        }
示例#10
0
        private void InitializeDockPanel()
        {
            SetupToolWindow(dockConsole);
            SetupToolWindow(dockExplorer);
            SetupToolWindow(dockExplorerBrowser);

            Application.AddMessageFilter(mainDockPanel.DockContentDragFilter);
            Application.AddMessageFilter(mainDockPanel.DockResizeFilter);

            dockExplorerTreeView = (DarkTreeView)dockExplorer.Controls.Find("explorerTreeView", true)[0];
            dockConsoleListView  = (DarkListView)dockConsole.Controls.Find("consoleListView", true)[0];
        }
示例#11
0
        public LayerTool(DrawTest f)
        {
            InitializeComponent();

            dtv = darkTreeView1;

            DarkTreeNode dtn = new DarkTreeNode("Layers");

            dtn.Icon = (Bitmap)Properties.Resources.ResourceManager.GetObject("Folder_16x");
            dtn.Tag  = "folder";
            darkTreeView1.Nodes.Add(dtn);
            f.lt   = this;
            this.f = f;
        }
示例#12
0
        private void darkDockPanel4_Load(object sender, EventArgs e)
        {
            LayerTool w = new LayerTool(drawTest1);

            w.form = this;
            darkDockPanel4.AddContent(w);

            RoomsControl r = new RoomsControl();

            r.drawTest1 = drawTest1;
            r.form1     = this;
            darkDockPanel4.AddContent(r);
            rooms = r.dtv;

            drawTest1.roomsControl = r;
        }
示例#13
0
        public ToolWindow()
        {
            InitializeComponent();
            dtv = darkTreeView1;

            SimplexIdeApi.TreeAddRootNode(dtv, "Sprites");
            SimplexIdeApi.TreeAddRootNode(dtv, "Sounds");
            SimplexIdeApi.TreeAddRootNode(dtv, "Tiles");
            SimplexIdeApi.TreeAddRootNode(dtv, "Paths");
            SimplexIdeApi.TreeAddRootNode(dtv, "Scripts");
            SimplexIdeApi.TreeAddRootNode(dtv, "Shaders");
            SimplexIdeApi.TreeAddRootNode(dtv, "Fonts");
            SimplexIdeApi.TreeAddRootNode(dtv, "Time Lines");
            SimplexIdeApi.TreeAddRootNode(dtv, "Objects");
            SimplexIdeApi.TreeAddRootNode(dtv, "Included Files");
            SimplexIdeApi.TreeAddRootNode(dtv, "Extensions");
        }
示例#14
0
        public static void TreeParseNodes(DarkTreeView dtv, string rootNode, Dictionary <Type, SimplexProjectItem> rList)
        {
            foreach (var t in rList)
            {
                // Create a new node
                DarkTreeNode tn = TreeCreateNode(t.Key.Name, rootNode, t.Key.Name, t.Value.tag, t.Value.nameColor, t.Value.tagColor, SimplexIde.Properties.Resources.AzureDefaultResource_16x);

                // Get root node
                DarkTreeNode currentNode = dtv.Nodes.FirstOrDefault(x => x.Text == rootNode);

                // Parse entire path
                if (t.Value.path == "")
                {
                    currentNode?.Nodes.Add(tn);
                }
                else
                {
                    string[] tokens = t.Value.path.Split('/');

                    foreach (string s in tokens)
                    {
                        if (currentNode.Nodes.FindIndex(x => (string)x.Text == s) == -1)
                        {
                            DarkTreeNode folderNode = TreeCreateNode(s, rootNode, "", "", null, null, SimplexIde.Properties.Resources.Folder_16x, true);


                            currentNode.Nodes.Add(folderNode);
                            currentNode = folderNode;
                        }
                        else
                        {
                            currentNode = currentNode.Nodes.Find(x => x.Text == s);
                            currentNode?.Nodes.Add(tn);
                            break;
                        }

                        if (s == tokens[tokens.Length - 1])
                        {
                            currentNode.Nodes.Add(tn);
                        }
                    }
                }
            }
        }
示例#15
0
        private void Form1_Shown(object sender, EventArgs e)
        {
            // this fires when loading is complete
            // fire loading finished for simplexRender dependent controls
            r.drawTest1 = sr.drawTest1;
            lt.FinishIni(sr.drawTest1);


            darkDockPanel1.AddContent(sr);

            w       = new ToolWindow();
            w.Dock  = DockStyle.Fill;
            w.main  = sr.drawTest1;
            w.form1 = this;

            objects = w.dtv;
            darkDockPanel2.AddContent(w);

            sr.drawTest1.roomsControl = r;
            sr.drawTest1.Rsize();

            ww.LoadReady();
        }
示例#16
0
        private static void FillNodeWithItems(
            ref DarkTreeNode node, string fileSearchPattern, bool directoriesOnly, DarkTreeView expandedSourceTreeView, bool expandAllNodes)
        {
            Stack <DarkTreeNode> stack = new Stack <DarkTreeNode>();

            stack.Push(node);

            while (stack.Count > 0)
            {
                DarkTreeNode  currentNode = stack.Pop();
                DirectoryInfo info        = (DirectoryInfo)currentNode.Tag;

                currentNode.Nodes.AddRange(GetDirectoryNodes(ref stack, info.GetDirectories(), expandedSourceTreeView, expandAllNodes));

                if (!directoriesOnly)
                {
                    foreach (string filter in fileSearchPattern.Split('|'))
                    {
                        currentNode.Nodes.AddRange(GetFileNodes(info.GetFiles(filter)));
                    }
                }

                if (expandedSourceTreeView != null)
                {
                    DarkTreeNode expandedSourceNode = expandedSourceTreeView.FindNode(currentNode.FullPath);

                    if (expandedSourceNode != null)
                    {
                        currentNode.Expanded = expandedSourceNode.Expanded;
                    }
                }
                else if (expandAllNodes)
                {
                    currentNode.Expanded = true;
                }
            }
        }
示例#17
0
 public static DarkTreeNode CreateFullFileListNode(string sourceDirectoryPath, bool directoriesOnly, DarkTreeView expandedSourceTreeView)
 {
     return(CreateFullFileListNode(sourceDirectoryPath, string.Empty, directoriesOnly, expandedSourceTreeView, false));
 }
示例#18
0
 public static DarkTreeNode CreateFullFileListNode(string sourceDirectoryPath, string fileSearchPattern, DarkTreeView expandedSourceTreeView)
 {
     return(CreateFullFileListNode(sourceDirectoryPath, fileSearchPattern, false, expandedSourceTreeView, false));
 }
示例#19
0
        private static DarkTreeNode CreateFullFileListNode(
            string sourceDirectoryPath, string fileSearchPattern, bool directoriesOnly, DarkTreeView expandedSourceTreeView, bool expandAllNodes)
        {
            DirectoryInfo sourceDirectory = new DirectoryInfo(sourceDirectoryPath);

            DarkTreeNode node = new DarkTreeNode(sourceDirectory.Name)
            {
                Icon = Properties.Resources.folder.ToBitmap(),
                Tag  = sourceDirectory
            };

            FillNodeWithItems(ref node, fileSearchPattern, directoriesOnly, expandedSourceTreeView, expandAllNodes);

            if (expandAllNodes)
            {
                node.Expanded = true;
            }

            return(node);
        }