//----------------------------------------------------------------------------- // Constructor //----------------------------------------------------------------------------- public EditorForm() { InitializeComponent(); editorControl = new EditorControl(); editorControl.EditorForm = this; // Create the level display. levelDisplay = new LevelDisplay(); levelDisplay.EditorControl = editorControl; levelDisplay.Name = "levelDisplay"; levelDisplay.Dock = DockStyle.Fill; levelDisplay.EditorForm = this; panelWorld.Controls.Add(this.levelDisplay); tileDisplay = new TileDisplay(); tileDisplay.EditorControl = editorControl; tileDisplay.Name = "tileDisplay"; tileDisplay.Dock = DockStyle.Fill; tileDisplay.EditorForm = this; panelTiles2.Controls.Add(tileDisplay); /*treeViewLevels.AfterLabelEdit += delegate(object sender, NodeLabelEditEventArgs e) { Console.WriteLine("Renamed level to " + e.Label); int levelIndex = e.Node.Index; Level level = editorControl.World.GetLevel(levelIndex); level.Name = e.Label; };*/ treeViewWorld.NodeMouseDoubleClick += delegate(object sender, TreeNodeMouseClickEventArgs e) { if (e.Node.Name == "level") { editorControl.OpenLevel(e.Node.Index); } else if (e.Node.Name == "world") { editorControl.OpenObjectProperties(editorControl.World); } }; this.comboBoxWorldLayer.Items.Add("Layer 1"); this.comboBoxWorldLayer.Items.Add("Layer 2"); this.comboBoxWorldLayer.Items.Add("Layer 3"); this.comboBoxWorldLayer.Items.Add("Events"); this.comboBoxWorldLayer.SelectedIndex = 0; // Create tools. this.toolButtons = new ToolStripButton[] { buttonToolPointer, buttonToolPlace, buttonToolSelection, buttonToolEyedropper }; this.hotKeyCommands = new Dictionary<Keys, HotKeyAction>(); this.hotKeyCommands.Add(Keys.PageUp, delegate() { cycleLayerUpToolStripMenuItem_Click(null, null); }); this.hotKeyCommands.Add(Keys.PageDown, delegate() { cycleLayerUpToolStripMenuItem1_Click(null, null); }); this.hotKeyCommands.Add(Keys.M, delegate() { buttonTool_Click(this.buttonToolPointer, null); }); this.hotKeyCommands.Add(Keys.P, delegate() { buttonTool_Click(this.buttonToolPlace, null); }); this.hotKeyCommands.Add(Keys.S, delegate() { buttonTool_Click(this.buttonToolSelection, null); }); this.hotKeyCommands.Add(Keys.K, delegate() { buttonTool_Click(this.buttonToolEyedropper, null); }); }
public override void Delete(EditorControl editorControl) { DialogResult result = MessageBox.Show(editorControl.EditorForm, "You are about to delete the level '" + level.Id + "'. This will be permanent. Continue?", "Confirm", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2); if (result == DialogResult.Yes) { int levelIndex = editorControl.World.Levels.IndexOf(level); editorControl.World.RemoveLevel(level); editorControl.RefreshWorldTreeView(); if (editorControl.World.LevelCount == 0) { editorControl.CloseLevel(); //worldTreeView.SelectedNode = worldTreeView.Nodes[0].Nodes[0]; //treeViewLevels_AfterSelect(null, new TreeViewEventArgs(worldTreeView.SelectedNode)); } else { editorControl.OpenLevel(Math.Max(0, levelIndex - 1)); //worldTreeView.SelectedNode = worldTreeView.Nodes[0].Nodes[0].Nodes[GMath.Max(0, index - 1)]; } } }
public override void Open(EditorControl editorControl) { editorControl.OpenLevel(level); editorControl.OpenObjectProperties(level); }