entity.MapForms.MapForm.setEditorMode C# (CSharp) Method

setEditorMode() public method

Sets the currently viewed editor panel
public setEditorMode ( EditorModes editMode ) : void
editMode EditorModes The edit panel to view
return void
        public void setEditorMode(EditorModes editMode)
        {
            // If we want the last used panel, see which panel is one level down and activate it
            if (editMode == EditorModes.LastMode && this.splitContainer2.Panel1.Controls.Count > 1)
            {
                switch (this.splitContainer2.Panel1.Controls[1].Name)
                {
                    case "hexView1":
                        editMode = EditorModes.HexViewer;
                        break;
                    case "LibraryPanel":
                        editMode = EditorModes.PluginViewer;
                        break;
                    case "ltmpTools":
                        editMode = EditorModes.BitmapViewer;
                        break;
                    case "MetaEditorPanel":
                        editMode = EditorModes.MetaEditor1;
                        break;
                    case "MetaEditor2Panel":
                        editMode = EditorModes.MetaEditor2;
                        break;
                    case "references":
                        editMode = EditorModes.ReferenceEditor;
                        break;
                    default:
                        return;
                }
            }

            // Only allow bitmaps to select Bitmap Viewer
            if (editMode == EditorModes.BitmapViewer && map.SelectedMeta != null && map.SelectedMeta.type != "bitm")
            {
                ltmpTools.Visible = true;
                return;
            }

            // "Check" the selected panel
            hexEditorToolStripMenuItem.Checked = (editMode == EditorModes.HexViewer);
            bitmapEditorToolStripMenuItem.Checked = (editMode == EditorModes.BitmapViewer);
            metaEditorToolStripMenuItem.Checked = (editMode == EditorModes.MetaEditor1);
            metaEditorNewToolStripMenuItem.Checked = (editMode == EditorModes.MetaEditor2);
            pluginsToolStripMenuItem.Checked = (editMode == EditorModes.PluginViewer);
            referenceEditorToolStripMenuItem.Checked = (editMode == EditorModes.ReferenceEditor);

            Control c = null;
            switch (editMode)
            {
                case EditorModes.BitmapViewer:
                    c = ltmpTools;
                    break;
                case EditorModes.HexViewer:
                    c = hexView1;
                    break;
                case EditorModes.MetaEditor1:
                    c = MetaEditorPanel;
                    break;
                case EditorModes.MetaEditor2:
                    c = MetaEditor2Panel;
                    MetaEditor2Panel.Tag = "New";
                    break;
                case EditorModes.PluginViewer:
                    c = LibraryPanel;
                    break;
                case EditorModes.ReferenceEditor:
                    c = references;
                    break;
            }

            if (c != null)
            {
                c.Visible = true;

                if (c.Parent == splitContainer2.Panel1)
                {
                    c.BringToFront();

                    // Hide all other panels, except for Bitmap Viewer
                    for (int i = 1; i < this.splitContainer2.Panel1.Controls.Count; i++)
                    {
                        if (this.splitContainer2.Panel1.Controls[i] != ltmpTools)
                            this.splitContainer2.Panel1.Controls[i].Visible = false;
                    }

                    // This method allows us to have an auto-bitmap viewer
                    if (map.SelectedMeta != null && map.SelectedMeta.type == "bitm")
                        if (editMode != EditorModes.BitmapViewer)
                            ltmpTools.Visible = false;
                        else
                            this.splitContainer2.Panel1.Controls[1].Visible = true;
                            //ltmpTools.SendToBack();
                }
            }

            if (map.SelectedMeta != null)
            {
                LoadMeta(map.SelectedMeta.TagIndex);
            }
            lastEditMode = editMode;
        }
MapForm