private void newFloorToolStripMenuItem_Click(object sender, EventArgs e) { Dungeon dungeon = new Dungeon(StaticConfig.DefaultDungeonWidth, StaticConfig.DefaultDungeonHeight, StaticConfig.NewFloorName); DungeonCollection collection = FindDungeonCollectionByNode(selectedNode); if (collection != null) { collection.Dungeons.Add(dungeon); selectedNode.Nodes.Add(dungeon.Name); } Refresh(); }
private void renameDungeonToolStripMenuItem_Click(object sender, EventArgs e) { InputDialog input = new InputDialog("Enter dungeon name"); if (input.ShowDialog() == DialogResult.OK && input.InputText.Length > 0) { DungeonCollection collection = FindDungeonCollectionByNode(selectedNode); if (collection != null) { collection.Name = input.InputText; selectedNode.Text = collection.Name; } } Refresh(); }
private void HandleLeftClickNode(TreeNode node) { TreeNode rootNode = node.Parent; DungeonCollection selectedCollection = FindDungeonCollectionByNode(rootNode); Dungeon selectedDungeon = FindDungeonByNode(node); if (selectedDungeon != null && selectedCollection != null) { if (selectedDungeon != gridView1.GetDungeon()) { gridView1.ReInit(selectedDungeon); Refresh(); } } }
private void importFloorToolStripMenuItem_Click(object sender, EventArgs e) { OpenFileDialog openDialog = new OpenFileDialog(); var result = openDialog.ShowDialog(); if (result == DialogResult.OK) { Stream stream = File.Open(openDialog.FileName, FileMode.Open); BinaryFormatter deserializer = new BinaryFormatter(); var dungeon = deserializer.Deserialize(stream) as Dungeon; stream.Close(); DungeonCollection collection = FindDungeonCollectionByNode(selectedNode); if (collection != null) { collection.Dungeons.Add(dungeon); selectedNode.Nodes.Add(dungeon.Name); } Refresh(); } }
private Dungeon FindDungeonByNode(TreeNode childNode) { TreeNode rootNode = childNode.Parent; if (rootNode != null) { DungeonCollection dungeonCollection = FindDungeonCollectionByNode(rootNode); if (dungeonCollection != null) { for (int i = 0; i < rootNode.Nodes.Count; i++) { if (rootNode.Nodes[i] == childNode) { return(dungeonCollection.Dungeons[i]); } } } } return(null); }