mirror of
https://mirror.ghproxy.com/https://github.com/dexyfex/CodeWalker
synced 2024-11-17 04:22:54 +08:00
Improved OrganizeFavorites Form, and Organized the code in the explorer form
I added a cancel button to the Organize favorites form. If the user clicks this then his edited favorites will not be saved. Fixed a bug where you couldnt delete the root node under the "favorites" node. Organized all code related to favorites in the ExplorerForm
This commit is contained in:
parent
4429a5e9ab
commit
ba199212a6
@ -2,6 +2,7 @@
|
|||||||
using CodeWalker.GameFiles;
|
using CodeWalker.GameFiles;
|
||||||
using CodeWalker.Properties;
|
using CodeWalker.Properties;
|
||||||
using CodeWalker.World;
|
using CodeWalker.World;
|
||||||
|
using CodeWalker.Explorer;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.ComponentModel;
|
using System.ComponentModel;
|
||||||
@ -16,7 +17,6 @@ using System.Threading.Tasks;
|
|||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using System.Xml;
|
using System.Xml;
|
||||||
using WeifenLuo.WinFormsUI.Docking;
|
using WeifenLuo.WinFormsUI.Docking;
|
||||||
using CodeWalker.Explorer;
|
|
||||||
|
|
||||||
namespace CodeWalker
|
namespace CodeWalker
|
||||||
{
|
{
|
||||||
@ -47,8 +47,6 @@ namespace CodeWalker
|
|||||||
|
|
||||||
private bool EditMode = false;
|
private bool EditMode = false;
|
||||||
|
|
||||||
private List<string> FavoritesList = new List<string>();
|
|
||||||
|
|
||||||
public ThemeBase Theme { get; private set; }
|
public ThemeBase Theme { get; private set; }
|
||||||
|
|
||||||
|
|
||||||
@ -184,87 +182,6 @@ namespace CodeWalker
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private void AddFavoriteItem(string text)
|
|
||||||
{
|
|
||||||
ToolStripMenuItem item = new ToolStripMenuItem();
|
|
||||||
item.Text = text;
|
|
||||||
item.Click += new EventHandler(FavoritesItem_Click);
|
|
||||||
|
|
||||||
favoritesToolStripMenuItem.DropDownItems.Insert(favoritesToolStripMenuItem.DropDownItems.Count, item);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void FavoritesItem_Click(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
ToolStripMenuItem FavItem = sender as ToolStripMenuItem;
|
|
||||||
Navigate(FavItem.Text);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void LoadFavorites()
|
|
||||||
{
|
|
||||||
favoritesToolStripMenuItem.DropDownItems.Clear();
|
|
||||||
|
|
||||||
ToolStripMenuItem AddToFavItem = new ToolStripMenuItem();
|
|
||||||
AddToFavItem.Text = "Add To Favorites";
|
|
||||||
AddToFavItem.Click += new EventHandler(addToFavToolStripMenuItem_Click);
|
|
||||||
favoritesToolStripMenuItem.DropDownItems.Add(AddToFavItem);
|
|
||||||
|
|
||||||
ToolStripMenuItem OrganizeFavItem = new ToolStripMenuItem();
|
|
||||||
OrganizeFavItem.Text = "Organize Favorites";
|
|
||||||
OrganizeFavItem.Click += new EventHandler(organizeFavoritesMenuItem_Click);
|
|
||||||
favoritesToolStripMenuItem.DropDownItems.Add(OrganizeFavItem);
|
|
||||||
|
|
||||||
favoritesToolStripMenuItem.DropDownItems.Add("-");
|
|
||||||
|
|
||||||
XmlDocument xDoc = new XmlDocument();
|
|
||||||
xDoc.Load(@"C:\Users\Skyler\Documents\GitHub\CodeWalker\Resources\Favorites.xml");
|
|
||||||
XmlNodeList FavoriteNodes = xDoc.DocumentElement.SelectNodes("Favorite");
|
|
||||||
foreach(XmlNode FavNode in FavoriteNodes)
|
|
||||||
{
|
|
||||||
AddFavoriteItem(FavNode.InnerText);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private void addToFavToolStripMenuItem_Click(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
if(LocationTextBox.Text != "")
|
|
||||||
{
|
|
||||||
XmlDocument xDoc = new XmlDocument();
|
|
||||||
xDoc.Load(@"C:\Users\Skyler\Documents\GitHub\CodeWalker\Resources\Favorites.xml");
|
|
||||||
XmlNode FavToAdd = xDoc.CreateElement("Favorite");
|
|
||||||
FavToAdd.InnerText = LocationTextBox.Text;
|
|
||||||
xDoc.DocumentElement.AppendChild(FavToAdd);
|
|
||||||
xDoc.Save(@"C:\Users\Skyler\Documents\GitHub\CodeWalker\Resources\Favorites.xml");
|
|
||||||
LoadFavorites();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
MessageBox.Show("Must be out of root folder to add a favorite.", "Error");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void organizeFavoritesMenuItem_Click(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
Form f = new OrganizeFavorites(this);
|
|
||||||
FormTheme.SetTheme(f, Theme);
|
|
||||||
f.Show();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private void InitFileCache()
|
private void InitFileCache()
|
||||||
{
|
{
|
||||||
Task.Run(() =>
|
Task.Run(() =>
|
||||||
@ -3375,6 +3292,72 @@ namespace CodeWalker
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void AddFavoriteItem(string text)
|
||||||
|
{
|
||||||
|
ToolStripMenuItem item = new ToolStripMenuItem();
|
||||||
|
item.Text = text;
|
||||||
|
item.Click += new EventHandler(FavoritesItem_Click);
|
||||||
|
|
||||||
|
favoritesToolStripMenuItem.DropDownItems.Insert(favoritesToolStripMenuItem.DropDownItems.Count, item);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void FavoritesItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
ToolStripMenuItem FavItem = sender as ToolStripMenuItem;
|
||||||
|
Navigate(FavItem.Text);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void LoadFavorites()
|
||||||
|
{
|
||||||
|
favoritesToolStripMenuItem.DropDownItems.Clear();
|
||||||
|
|
||||||
|
ToolStripMenuItem AddToFavItem = new ToolStripMenuItem();
|
||||||
|
AddToFavItem.Text = "Add To Favorites";
|
||||||
|
AddToFavItem.Click += new EventHandler(addToFavToolStripMenuItem_Click);
|
||||||
|
favoritesToolStripMenuItem.DropDownItems.Add(AddToFavItem);
|
||||||
|
|
||||||
|
ToolStripMenuItem OrganizeFavItem = new ToolStripMenuItem();
|
||||||
|
OrganizeFavItem.Text = "Organize Favorites";
|
||||||
|
OrganizeFavItem.Click += new EventHandler(organizeFavoritesMenuItem_Click);
|
||||||
|
favoritesToolStripMenuItem.DropDownItems.Add(OrganizeFavItem);
|
||||||
|
|
||||||
|
favoritesToolStripMenuItem.DropDownItems.Add("-");
|
||||||
|
|
||||||
|
XmlDocument xDoc = new XmlDocument();
|
||||||
|
xDoc.Load(@"C:\Users\Skyler\Documents\GitHub\CodeWalker\Resources\Favorites.xml");
|
||||||
|
XmlNodeList FavoriteNodes = xDoc.DocumentElement.SelectNodes("Favorite");
|
||||||
|
foreach (XmlNode FavNode in FavoriteNodes)
|
||||||
|
{
|
||||||
|
AddFavoriteItem(FavNode.InnerText);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void addToFavToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (LocationTextBox.Text != "")
|
||||||
|
{
|
||||||
|
XmlDocument xDoc = new XmlDocument();
|
||||||
|
xDoc.Load(@"C:\Users\Skyler\Documents\GitHub\CodeWalker\Resources\Favorites.xml");
|
||||||
|
XmlNode FavToAdd = xDoc.CreateElement("Favorite");
|
||||||
|
FavToAdd.InnerText = LocationTextBox.Text;
|
||||||
|
xDoc.DocumentElement.AppendChild(FavToAdd);
|
||||||
|
xDoc.Save(@"C:\Users\Skyler\Documents\GitHub\CodeWalker\Resources\Favorites.xml");
|
||||||
|
LoadFavorites();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
MessageBox.Show("Must be out of root folder to add a favorite.", "Error");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void organizeFavoritesMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Form f = new OrganizeFavorites(this);
|
||||||
|
FormTheme.SetTheme(f, Theme);
|
||||||
|
f.Show();
|
||||||
|
}
|
||||||
|
|
||||||
private void ListContextViewMenu_Click(object sender, EventArgs e)
|
private void ListContextViewMenu_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
ViewSelected();
|
ViewSelected();
|
||||||
|
19
Explorer/OrganizeFavorites.Designer.cs
generated
19
Explorer/OrganizeFavorites.Designer.cs
generated
@ -34,12 +34,13 @@
|
|||||||
this.RemoveFavoriteButton = new System.Windows.Forms.Button();
|
this.RemoveFavoriteButton = new System.Windows.Forms.Button();
|
||||||
this.ClearAllFavoritesButton = new System.Windows.Forms.Button();
|
this.ClearAllFavoritesButton = new System.Windows.Forms.Button();
|
||||||
this.FavoritesTreeView = new System.Windows.Forms.TreeView();
|
this.FavoritesTreeView = new System.Windows.Forms.TreeView();
|
||||||
|
this.CancelButton = new System.Windows.Forms.Button();
|
||||||
this.SuspendLayout();
|
this.SuspendLayout();
|
||||||
//
|
//
|
||||||
// SaveButton
|
// SaveButton
|
||||||
//
|
//
|
||||||
this.SaveButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
this.SaveButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||||
this.SaveButton.Location = new System.Drawing.Point(417, 439);
|
this.SaveButton.Location = new System.Drawing.Point(324, 439);
|
||||||
this.SaveButton.Name = "SaveButton";
|
this.SaveButton.Name = "SaveButton";
|
||||||
this.SaveButton.Size = new System.Drawing.Size(75, 23);
|
this.SaveButton.Size = new System.Drawing.Size(75, 23);
|
||||||
this.SaveButton.TabIndex = 1;
|
this.SaveButton.TabIndex = 1;
|
||||||
@ -50,7 +51,7 @@
|
|||||||
// RemoveFavoriteButton
|
// RemoveFavoriteButton
|
||||||
//
|
//
|
||||||
this.RemoveFavoriteButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
this.RemoveFavoriteButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||||
this.RemoveFavoriteButton.Location = new System.Drawing.Point(322, 439);
|
this.RemoveFavoriteButton.Location = new System.Drawing.Point(226, 439);
|
||||||
this.RemoveFavoriteButton.Name = "RemoveFavoriteButton";
|
this.RemoveFavoriteButton.Name = "RemoveFavoriteButton";
|
||||||
this.RemoveFavoriteButton.Size = new System.Drawing.Size(75, 23);
|
this.RemoveFavoriteButton.Size = new System.Drawing.Size(75, 23);
|
||||||
this.RemoveFavoriteButton.TabIndex = 2;
|
this.RemoveFavoriteButton.TabIndex = 2;
|
||||||
@ -61,7 +62,7 @@
|
|||||||
// ClearAllFavoritesButton
|
// ClearAllFavoritesButton
|
||||||
//
|
//
|
||||||
this.ClearAllFavoritesButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
this.ClearAllFavoritesButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||||
this.ClearAllFavoritesButton.Location = new System.Drawing.Point(224, 439);
|
this.ClearAllFavoritesButton.Location = new System.Drawing.Point(130, 439);
|
||||||
this.ClearAllFavoritesButton.Name = "ClearAllFavoritesButton";
|
this.ClearAllFavoritesButton.Name = "ClearAllFavoritesButton";
|
||||||
this.ClearAllFavoritesButton.Size = new System.Drawing.Size(75, 23);
|
this.ClearAllFavoritesButton.Size = new System.Drawing.Size(75, 23);
|
||||||
this.ClearAllFavoritesButton.TabIndex = 3;
|
this.ClearAllFavoritesButton.TabIndex = 3;
|
||||||
@ -84,11 +85,22 @@
|
|||||||
this.FavoritesTreeView.Size = new System.Drawing.Size(480, 406);
|
this.FavoritesTreeView.Size = new System.Drawing.Size(480, 406);
|
||||||
this.FavoritesTreeView.TabIndex = 4;
|
this.FavoritesTreeView.TabIndex = 4;
|
||||||
//
|
//
|
||||||
|
// CancelButton
|
||||||
|
//
|
||||||
|
this.CancelButton.Location = new System.Drawing.Point(419, 439);
|
||||||
|
this.CancelButton.Name = "CancelButton";
|
||||||
|
this.CancelButton.Size = new System.Drawing.Size(75, 23);
|
||||||
|
this.CancelButton.TabIndex = 5;
|
||||||
|
this.CancelButton.Text = "Cancel";
|
||||||
|
this.CancelButton.UseVisualStyleBackColor = true;
|
||||||
|
this.CancelButton.Click += new System.EventHandler(this.CancelButton_Click);
|
||||||
|
//
|
||||||
// OrganizeFavorites
|
// OrganizeFavorites
|
||||||
//
|
//
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
this.ClientSize = new System.Drawing.Size(504, 474);
|
this.ClientSize = new System.Drawing.Size(504, 474);
|
||||||
|
this.Controls.Add(this.CancelButton);
|
||||||
this.Controls.Add(this.FavoritesTreeView);
|
this.Controls.Add(this.FavoritesTreeView);
|
||||||
this.Controls.Add(this.ClearAllFavoritesButton);
|
this.Controls.Add(this.ClearAllFavoritesButton);
|
||||||
this.Controls.Add(this.RemoveFavoriteButton);
|
this.Controls.Add(this.RemoveFavoriteButton);
|
||||||
@ -108,5 +120,6 @@
|
|||||||
private System.Windows.Forms.Button RemoveFavoriteButton;
|
private System.Windows.Forms.Button RemoveFavoriteButton;
|
||||||
private System.Windows.Forms.Button ClearAllFavoritesButton;
|
private System.Windows.Forms.Button ClearAllFavoritesButton;
|
||||||
private System.Windows.Forms.TreeView FavoritesTreeView;
|
private System.Windows.Forms.TreeView FavoritesTreeView;
|
||||||
|
private System.Windows.Forms.Button CancelButton;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -47,7 +47,7 @@ namespace CodeWalker.Explorer
|
|||||||
|
|
||||||
private void RemoveFavoriteButton_Click(object sender, EventArgs e)
|
private void RemoveFavoriteButton_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
if (FavoritesTreeView.SelectedNode.Index == 0) return;
|
if (FavoritesTreeView.SelectedNode == FavoritesTreeView.Nodes[0]) return;
|
||||||
string FavoriteToDelete = FavoritesTreeView.SelectedNode.Text;
|
string FavoriteToDelete = FavoritesTreeView.SelectedNode.Text;
|
||||||
FavoritesTreeView.SelectedNode.Remove();
|
FavoritesTreeView.SelectedNode.Remove();
|
||||||
|
|
||||||
@ -66,5 +66,10 @@ namespace CodeWalker.Explorer
|
|||||||
ExploreForm.LoadFavorites();
|
ExploreForm.LoadFavorites();
|
||||||
Close();
|
Close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void CancelButton_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Close();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user