mirror of
https://github.com/ProjectSWGCore/ScriptEditor.git
synced 2026-07-14 23:07:35 -04:00
Transfer Commit
This commit is contained in:
@@ -0,0 +1,108 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using System.IO;
|
||||
|
||||
namespace ProjectSWGScriptEditor
|
||||
{
|
||||
public partial class MainForm : Form
|
||||
{
|
||||
static String scriptsDirectory = "./";
|
||||
static String clientdataDirectory = "./";
|
||||
|
||||
public MainForm()
|
||||
{
|
||||
if (!Config.containsKey("scriptsDirectory")) Config.setValue("scriptsDirectory", scriptsDirectory);
|
||||
else scriptsDirectory = Config.returnValue("scriptsDirectory");
|
||||
|
||||
if (!Config.containsKey("clientdataDirectory")) Config.setValue("clientdataDirectory", scriptsDirectory);
|
||||
else clientdataDirectory = Config.returnValue("clientdataDirectory");
|
||||
|
||||
InitializeComponent();
|
||||
loadContentToTreeView();
|
||||
}
|
||||
|
||||
private void loadContentToTreeView()
|
||||
{
|
||||
string[] directories = Directory.GetDirectories(scriptsDirectory);
|
||||
string[] files = Directory.GetFiles(scriptsDirectory);
|
||||
|
||||
for (int i = 0; i < directories.Length; i++) treeView1.Nodes.Add(directories[i].Replace(scriptsDirectory, ""));
|
||||
for (int i = 0; i < files.Length; i++) treeView1.Nodes.Add(files[i].Replace(scriptsDirectory, ""));
|
||||
}
|
||||
|
||||
private void setScriptPathToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
using (FolderBrowserDialog dialog = new FolderBrowserDialog())
|
||||
{
|
||||
if (dialog.ShowDialog() == DialogResult.OK) scriptsDirectory = dialog.SelectedPath;
|
||||
}
|
||||
Config.setValue("scriptsDirectory", scriptsDirectory);
|
||||
|
||||
treeView1.Nodes.Clear();
|
||||
loadContentToTreeView();
|
||||
}
|
||||
|
||||
private void setClientdataPathToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
using (FolderBrowserDialog dialog = new FolderBrowserDialog())
|
||||
{
|
||||
if (dialog.ShowDialog() == DialogResult.OK) clientdataDirectory = dialog.SelectedPath;
|
||||
}
|
||||
Config.setValue("clientdataDirectory", clientdataDirectory);
|
||||
}
|
||||
|
||||
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
|
||||
{
|
||||
string directory = scriptsDirectory + getNodeFilePath(treeView1.SelectedNode);
|
||||
string childDirectory = getNodeFilePath(treeView1.SelectedNode);
|
||||
|
||||
Console.WriteLine(childDirectory);
|
||||
|
||||
if (!treeView1.SelectedNode.Text.EndsWith(".py"))
|
||||
{
|
||||
string[] directories = Directory.GetDirectories(directory);
|
||||
string[] files = Directory.GetFiles(directory);
|
||||
|
||||
treeView1.SelectedNode.Nodes.Clear();
|
||||
|
||||
for (int i = 0; i < directories.Length; i++) treeView1.SelectedNode.Nodes.Add(directories[i].Replace(directory, ""));
|
||||
for (int i = 0; i < files.Length; i++) treeView1.SelectedNode.Nodes.Add(files[i].Replace(directory, ""));
|
||||
|
||||
if (childDirectory.Equals(@"\loot"))
|
||||
{
|
||||
editorNameLbl.Text = "Loot Editor";
|
||||
|
||||
Editors.LootEditor editor = new Editors.LootEditor(directory);
|
||||
}
|
||||
}
|
||||
else if (treeView1.SelectedNode.Text.EndsWith(".py"))
|
||||
{
|
||||
scriptViewerTb.Text = File.ReadAllText(directory);
|
||||
|
||||
if (childDirectory.StartsWith(@"\equipment\bonus_sets\"))
|
||||
{
|
||||
editorNameLbl.Text = "Bonus Set Editor";
|
||||
|
||||
Editors.BonusSetEditor editor = new Editors.BonusSetEditor(directory);
|
||||
}
|
||||
else if (childDirectory == "")
|
||||
{
|
||||
|
||||
}
|
||||
else editorNameLbl.Text = "Unknown script type";
|
||||
}
|
||||
}
|
||||
|
||||
private string getNodeFilePath(TreeNode node)
|
||||
{
|
||||
if(node.Parent == null) return node.Text;
|
||||
return getNodeFilePath(node.Parent) + node.Text;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user