Files
TeslaSuite/Console/TeslaConsole/TeslaConsoleForm.cs
T
CydandClaude Fable 5 18d787bdd5 BattleTech results printing, defaults dialog, and BT411 catalog (BT port phase 4)
Completes the BattleTech console feature to parity with Red Planet:

- BTPrintDocument: the per-pilot landscape score sheet (mech portrait,
  placing, kill/death/damage stats, randomized mission-highlights narrative,
  pilot-vs-pilot damage matrix, place-over-time chart), mirroring
  RPPrintDocument minus the football/lap/boost/score-zone concepts. Wired into
  BTGame (Auto Print checkbox + Print Last Mission button) and the shell's File
  menu (BT Mission Print Preview / Print BT Mission, loading .btm files).
- BTStrings(.xml): the BT mission-highlight narrative pools (damage tiers,
  kill, death-without-honor, recap), loaded from BattleTech\BTStrings.xml like
  RPStrings.
- BTDefaultsDialog: two-column (Free For All / No Return) editor for the BT
  operator defaults, reachable from Settings (Change/Import/Export BattleTech
  Defaults). Verified via UI Automation: opens with all 18 option combos
  populated.
- Apps.xml: the BattleTech 4.11 product (btl4.exe on the shared RP411 engine,
  same -net/-res/-lc/-mr command line; deploys to C:\Games\BT411) with Game
  Client / Live Camera / Mission Review launch entries. CatalogTests updated to
  4 products / 8 entries plus the three new BT entry assertions.

Role model spelling corrected to "noreturn": the Mac Console.ini tag and the
game's BTL4.RES role resource are dfltrole/NoReturn; the 4.10 console's eggs
emitted a broken "noretun" that cannot resolve against the RES. BTGoldenEggTests
and BTConfig.xml updated accordingly.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 23:04:03 -05:00

788 lines
34 KiB
C#

using System;
using System.ComponentModel;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Printing;
using System.Windows.Forms;
using Munga.Net;
using TeslaConsole.BattleTech;
using TeslaConsole.RedPlanet;
using WeifenLuo.WinFormsUI.Docking;
namespace TeslaConsole;
public class TeslaConsoleForm : Form
{
private SitePanel mSitePanel = new SitePanel();
private IContainer components;
private DockPanel mMainDockPanel;
private Timer mRPNetworkScanTimer;
private MenuStrip mMenu;
private ToolStripMenuItem mFileMenu;
private ToolStripMenuItem mShowSitePanelMenuItem;
private ToolStripSeparator mSitePanelSeparator;
private ToolStripMenuItem mPlasmaEditor;
private ToolStripMenuItem mExit;
private ToolStripMenuItem mGamesMenu;
private ToolStripMenuItem mRpDeathRace;
private ToolStripMenuItem mRpMartianFootball;
private ToolStripMenuItem mBtFreeForAll;
private ToolStripMenuItem mBtNoReturn;
private ToolStripMenuItem mPlasmaFontTool;
private ToolStripMenuItem mRpMissionPrintPreview;
private PrintPreviewDialog mRPPrintPreviewDialog;
private ToolStripMenuItem mPrintRpMission;
private ToolStripMenuItem mBtMissionPrintPreview;
private ToolStripMenuItem mPrintBtMission;
private OpenFileDialog mBTMissionOpenDialog;
private ToolStripSeparator mSeperator1;
private PrintDialog mRPPrintDialog;
private ToolStripMenuItem mPlasmaBitmapDecoder;
private ToolStripSeparator mSeperator2;
private OpenFileDialog mRPMissionOpenDialog;
private ToolStripMenuItem aboutToolStripMenuItem;
private ToolStripMenuItem aboutToolStripMenuItem1;
private ToolStripMenuItem settingsToolStripMenuItem;
private ToolStripMenuItem redPlanetDefaultsToolStripMenuItem;
private ToolStripMenuItem importRedPlanetDefaultsToolStripMenuItem;
private ToolStripMenuItem exportRedPlanetDefaultsToolStripMenuItem;
private ToolStripMenuItem battleTechDefaultsToolStripMenuItem;
private ToolStripMenuItem importBattleTechDefaultsToolStripMenuItem;
private ToolStripMenuItem exportBattleTechDefaultsToolStripMenuItem;
private OpenFileDialog mRPDefaultsOpenDialog;
private SaveFileDialog mRPDefaultsSaveDialog;
private OpenFileDialog mBTDefaultsOpenDialog;
private SaveFileDialog mBTDefaultsSaveDialog;
private ToolStripSeparator toolStripSeparator1;
private ToolStripMenuItem enableCustomBitmapsToolStripMenuItem;
private ToolStripMenuItem mExceptionsMenu;
private ToolStripMenuItem mThrowHandledExceptionMenuItem;
private ToolStripMenuItem mThrownUnHandledExceptionMenuItem;
public TeslaConsoleForm()
{
InitializeComponent();
mRpMissionPrintPreview.Visible = false;
mBtMissionPrintPreview.Visible = false;
mSeperator1.Visible = false;
mExceptionsMenu.Visible = false;
enableCustomBitmapsToolStripMenuItem.Checked = PlasmaBitmaps.EnableCustomBitmaps;
mRPMissionOpenDialog.InitialDirectory = RPMissionResults.GetRPMissionsDirectory();
mBTMissionOpenDialog.InitialDirectory = BTMissionResults.GetBTMissionsDirectory();
TeslaConsole.Site.LoadFromStore();
PodManager.StartConfigurationServer();
}
protected override void OnShown(EventArgs e)
{
base.OnShown(e);
ShowSitePanel();
}
private void mShowSitePanelMenuItem_Click(object sender, EventArgs e)
{
ShowSitePanel();
}
private void ShowSitePanel()
{
if (mSitePanel == null || mSitePanel.IsDisposed)
{
mSitePanel = new SitePanel();
}
mSitePanel.Show(mMainDockPanel, DockState.DockRight);
mSitePanel.Activate();
}
private void NetworkScan(object sender, EventArgs e)
{
foreach (Squad squad in TeslaConsole.Site.Active.Squads)
{
foreach (Pod pod in squad.Pods)
{
switch (pod.MungaGame.State)
{
case MungaConnectionState.Connected:
pod.MungaGame.QueryStateIfNeeded();
if (!pod.MungaGame.IsOwned)
{
while (pod.MungaGame.Receive() != null)
{
}
}
if (!pod.MungaGame.AppID.HasValue || !pod.MungaGame.AppState.HasValue)
{
pod.MungaGame.SetStatus(ImageCache.PodQuestion16, "Waiting For State Update...");
break;
}
string gameTag = GameTag(pod.MungaGame.AppID.Value);
if (gameTag == null)
{
pod.MungaGame.SetStatus(ImageCache.PodBad16, "Unknown Pod Application");
break;
}
switch (pod.MungaGame.AppState.Value)
{
case ApplicationState.InitializingState:
pod.MungaGame.SetStatus(ImageCache.PodQuestion16, gameTag + " Initalizing");
break;
case ApplicationState.WaitingForEgg:
pod.MungaGame.SetStatus(ImageCache.PodOnline16, "Waiting For A Game");
break;
case ApplicationState.LoadingMission:
pod.MungaGame.SetStatus(ImageCache.PodQuestion16, "Loading Mission");
break;
case ApplicationState.WaitingForLaunch:
pod.MungaGame.SetStatus(ImageCache.PodGo16, "Waiting For Launch");
break;
case ApplicationState.LaunchingMission:
pod.MungaGame.SetStatus(ImageCache.PodQuestion16, "Launching Mission");
break;
case ApplicationState.RunningMission:
pod.MungaGame.SetStatus(ImageCache.PodRun16, "Mission Running");
break;
case ApplicationState.EndingMission:
pod.MungaGame.SetStatus(ImageCache.PodQuestion16, "Ending Mission");
break;
case ApplicationState.StoppingMission:
pod.MungaGame.SetStatus(ImageCache.PodQuestion16, "Stopping Mission");
break;
case ApplicationState.SuspendingMission:
pod.MungaGame.SetStatus(ImageCache.PodQuestion16, "Suspending Mission");
break;
case ApplicationState.ResumingMission:
pod.MungaGame.SetStatus(ImageCache.PodQuestion16, "Resuming Mission");
break;
case ApplicationState.AbortingMission:
pod.MungaGame.SetStatus(ImageCache.PodQuestion16, "Aborting Mission");
break;
case ApplicationState.CreatingMission:
pod.MungaGame.SetStatus(ImageCache.PodQuestion16, "Creating Mission");
break;
default:
pod.MungaGame.SetStatus(ImageCache.PodBad16, "Pod State Unknown");
break;
}
break;
case MungaConnectionState.Connecting:
pod.MungaGame.SetStatus(ImageCache.PodQuestion16, "Connecting...");
break;
default:
if (pod.MungaGame.Requested)
{
pod.MungaGame.SetStatus(ImageCache.PodBad16, "Not Connected");
}
else
{
pod.MungaGame.SetStatus(ImageCache.PodOffline16, "");
}
break;
}
}
}
}
/// <summary>
/// Short display tag for a pod's reported application, or null when the
/// console has no game module for it. RPL4 is Red Planet, BTL4 is
/// BattleTech; NDL4 (the never-released air-combat game) has no console
/// support. The "Initalizing" spelling in the status strings is preserved
/// from the original console.
/// </summary>
private static string GameTag(ApplicationID appID)
{
switch (appID)
{
case ApplicationID.RPL4:
return "RP";
case ApplicationID.BTL4:
return "BT";
default:
return null;
}
}
private void redPlanetDeathRaceToolStripMenuItem_Click(object sender, EventArgs e)
{
CreateNewRPGame(footballMode: false);
}
private void redPlanetMartianFootballToolStripMenuItem_Click(object sender, EventArgs e)
{
CreateNewRPGame(footballMode: true);
}
private void CreateNewRPGame(bool footballMode)
{
RPGame rPGame = new RPGame(TeslaConsole.Site.Active, footballMode);
rPGame.MdiParent = this;
rPGame.Show(mMainDockPanel, DockState.Document);
}
private void battleTechFreeForAllToolStripMenuItem_Click(object sender, EventArgs e)
{
CreateNewBTGame(noReturnMode: false);
}
private void battleTechNoReturnToolStripMenuItem_Click(object sender, EventArgs e)
{
CreateNewBTGame(noReturnMode: true);
}
private void CreateNewBTGame(bool noReturnMode)
{
BTGame bTGame = new BTGame(TeslaConsole.Site.Active, noReturnMode);
bTGame.MdiParent = this;
bTGame.Show(mMainDockPanel, DockState.Document);
}
private void plasmaEditorToolStripMenuItem_Click(object sender, EventArgs e)
{
new PlasmaEditor().Show();
}
private void plasmaFontToolToolStripMenuItem_Click(object sender, EventArgs e)
{
new PlasmaFontTool().Show();
}
private void plasmaBitmapDecoderToolStripMenuItem_Click(object sender, EventArgs e)
{
new PlasmaBitmapDecoder().Show();
}
private PrintDocument GetMissionPrintDocument()
{
if (mRPMissionOpenDialog.ShowDialog() == DialogResult.OK)
{
try
{
RPMissionResults rPMissionResults = RPMissionResults.Load(mRPMissionOpenDialog.FileName);
return rPMissionResults.GetPrintDocument();
}
catch (Exception ex)
{
MessageBox.Show("The selected document could not be loaded because it appears to be corrupt.", "Error Loading Mission Data", MessageBoxButtons.OK);
Program.LogException(ex, $"Error Loading RP Mission Results (\"{mRPMissionOpenDialog.FileName}\").");
}
}
return null;
}
private void printPreviewToolStripMenuItem_Click(object sender, EventArgs e)
{
PrintDocument missionPrintDocument = GetMissionPrintDocument();
if (missionPrintDocument != null)
{
if (mRPPrintPreviewDialog.IsDisposed)
{
mRPPrintPreviewDialog = new PrintPreviewDialog();
}
mRPPrintPreviewDialog.Document = missionPrintDocument;
mRPPrintPreviewDialog.Show();
mRPPrintPreviewDialog.DesktopBounds = Screen.PrimaryScreen.WorkingArea;
}
}
private void printToolStripMenuItem_Click(object sender, EventArgs e)
{
PrintDocument missionPrintDocument = GetMissionPrintDocument();
if (missionPrintDocument != null)
{
mRPPrintDialog.Document = missionPrintDocument;
if (mRPPrintDialog.ShowDialog() == DialogResult.OK)
{
mRPPrintDialog.Document.Print();
}
}
}
private PrintDocument GetBTMissionPrintDocument()
{
if (mBTMissionOpenDialog.ShowDialog() == DialogResult.OK)
{
try
{
BTMissionResults bTMissionResults = BTMissionResults.Load(mBTMissionOpenDialog.FileName);
return bTMissionResults.GetPrintDocument();
}
catch (Exception ex)
{
MessageBox.Show("The selected document could not be loaded because it appears to be corrupt.", "Error Loading Mission Data", MessageBoxButtons.OK);
Program.LogException(ex, $"Error Loading BT Mission Results (\"{mBTMissionOpenDialog.FileName}\").");
}
}
return null;
}
private void btPrintPreviewToolStripMenuItem_Click(object sender, EventArgs e)
{
PrintDocument bTMissionPrintDocument = GetBTMissionPrintDocument();
if (bTMissionPrintDocument != null)
{
if (mRPPrintPreviewDialog.IsDisposed)
{
mRPPrintPreviewDialog = new PrintPreviewDialog();
}
mRPPrintPreviewDialog.Document = bTMissionPrintDocument;
mRPPrintPreviewDialog.Show();
mRPPrintPreviewDialog.DesktopBounds = Screen.PrimaryScreen.WorkingArea;
}
}
private void printBtMissionToolStripMenuItem_Click(object sender, EventArgs e)
{
PrintDocument bTMissionPrintDocument = GetBTMissionPrintDocument();
if (bTMissionPrintDocument != null)
{
mRPPrintDialog.Document = bTMissionPrintDocument;
if (mRPPrintDialog.ShowDialog() == DialogResult.OK)
{
mRPPrintDialog.Document.Print();
}
}
}
private void TeslaConsoleForm_FormClosing(object sender, FormClosingEventArgs e)
{
if (mSitePanel != null && !mSitePanel.IsDisposed)
{
mSitePanel.Close();
}
}
private void aboutToolStripMenuItem1_Click(object sender, EventArgs e)
{
using abtTeslaConsole abtTeslaConsole2 = new abtTeslaConsole();
abtTeslaConsole2.ShowDialog();
}
private void changeRedPlanetDefaultsToolStripMenuItem_Click(object sender, EventArgs e)
{
RPDefaultsDialog.ShowSingleton();
}
private void importRedPlanetDefaultsToolStripMenuItem_Click(object sender, EventArgs e)
{
if (mRPDefaultsOpenDialog.ShowDialog() == DialogResult.OK)
{
try
{
RPDefaults.Import(mRPDefaultsOpenDialog.FileName);
}
catch (Exception)
{
MessageBox.Show("This Red Planet defaults file appears to be corrupt.", "Error Loading Red Planet Defaults!", MessageBoxButtons.OK);
return;
}
RPDefaults.Save();
}
}
private void exportRedPlanetDefaultsToolStripMenuItem_Click(object sender, EventArgs e)
{
if (mRPDefaultsSaveDialog.ShowDialog() == DialogResult.OK)
{
try
{
RPDefaults.Export(mRPDefaultsSaveDialog.FileName);
}
catch (Exception)
{
MessageBox.Show("The Red Planet defaults file could not be exported.", "Error Exporting Red Planet Defaults!", MessageBoxButtons.OK);
}
}
}
private void changeBattleTechDefaultsToolStripMenuItem_Click(object sender, EventArgs e)
{
BTDefaultsDialog.ShowSingleton();
}
private void importBattleTechDefaultsToolStripMenuItem_Click(object sender, EventArgs e)
{
if (mBTDefaultsOpenDialog.ShowDialog() == DialogResult.OK)
{
try
{
BTDefaults.Import(mBTDefaultsOpenDialog.FileName);
}
catch (Exception)
{
MessageBox.Show("This BattleTech defaults file appears to be corrupt.", "Error Loading BattleTech Defaults!", MessageBoxButtons.OK);
return;
}
BTDefaults.Save();
}
}
private void exportBattleTechDefaultsToolStripMenuItem_Click(object sender, EventArgs e)
{
if (mBTDefaultsSaveDialog.ShowDialog() == DialogResult.OK)
{
try
{
BTDefaults.Export(mBTDefaultsSaveDialog.FileName);
}
catch (Exception)
{
MessageBox.Show("The BattleTech defaults file could not be exported.", "Error Exporting BattleTech Defaults!", MessageBoxButtons.OK);
}
}
}
private void enableCustomBitmapsToolStripMenuItem_Click(object sender, EventArgs e)
{
enableCustomBitmapsToolStripMenuItem.Checked = (PlasmaBitmaps.EnableCustomBitmaps = !PlasmaBitmaps.EnableCustomBitmaps);
}
private void mThrowHandledExceptionMenuItem_Click(object sender, EventArgs e)
{
try
{
mThrownUnHandledExceptionMenuItem_Click(sender, e);
}
catch (Exception ex)
{
Program.LogExceptionAndShowDialog(ex, "The user pressed the exception generating button.", "An Exception Occured.");
}
}
private void mThrownUnHandledExceptionMenuItem_Click(object sender, EventArgs e)
{
throw new Exception("User Generated Exception");
}
private void mExit_Click(object sender, EventArgs e)
{
Close();
}
protected override void Dispose(bool disposing)
{
if (disposing && components != null)
{
components.Dispose();
}
base.Dispose(disposing);
}
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
WeifenLuo.WinFormsUI.Docking.DockPanelSkin dockPanelSkin = new WeifenLuo.WinFormsUI.Docking.DockPanelSkin();
WeifenLuo.WinFormsUI.Docking.AutoHideStripSkin autoHideStripSkin = new WeifenLuo.WinFormsUI.Docking.AutoHideStripSkin();
WeifenLuo.WinFormsUI.Docking.DockPanelGradient dockPanelGradient = new WeifenLuo.WinFormsUI.Docking.DockPanelGradient();
WeifenLuo.WinFormsUI.Docking.TabGradient tabGradient = new WeifenLuo.WinFormsUI.Docking.TabGradient();
WeifenLuo.WinFormsUI.Docking.DockPaneStripSkin dockPaneStripSkin = new WeifenLuo.WinFormsUI.Docking.DockPaneStripSkin();
WeifenLuo.WinFormsUI.Docking.DockPaneStripGradient dockPaneStripGradient = new WeifenLuo.WinFormsUI.Docking.DockPaneStripGradient();
WeifenLuo.WinFormsUI.Docking.TabGradient tabGradient2 = new WeifenLuo.WinFormsUI.Docking.TabGradient();
WeifenLuo.WinFormsUI.Docking.DockPanelGradient dockPanelGradient2 = new WeifenLuo.WinFormsUI.Docking.DockPanelGradient();
WeifenLuo.WinFormsUI.Docking.TabGradient tabGradient3 = new WeifenLuo.WinFormsUI.Docking.TabGradient();
WeifenLuo.WinFormsUI.Docking.DockPaneStripToolWindowGradient dockPaneStripToolWindowGradient = new WeifenLuo.WinFormsUI.Docking.DockPaneStripToolWindowGradient();
WeifenLuo.WinFormsUI.Docking.TabGradient tabGradient4 = new WeifenLuo.WinFormsUI.Docking.TabGradient();
WeifenLuo.WinFormsUI.Docking.TabGradient tabGradient5 = new WeifenLuo.WinFormsUI.Docking.TabGradient();
WeifenLuo.WinFormsUI.Docking.DockPanelGradient dockPanelGradient3 = new WeifenLuo.WinFormsUI.Docking.DockPanelGradient();
WeifenLuo.WinFormsUI.Docking.TabGradient tabGradient6 = new WeifenLuo.WinFormsUI.Docking.TabGradient();
WeifenLuo.WinFormsUI.Docking.TabGradient tabGradient7 = new WeifenLuo.WinFormsUI.Docking.TabGradient();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TeslaConsole.TeslaConsoleForm));
this.mMainDockPanel = new WeifenLuo.WinFormsUI.Docking.DockPanel();
this.mRPNetworkScanTimer = new System.Windows.Forms.Timer(this.components);
this.mMenu = new System.Windows.Forms.MenuStrip();
this.mFileMenu = new System.Windows.Forms.ToolStripMenuItem();
this.mShowSitePanelMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.mSitePanelSeparator = new System.Windows.Forms.ToolStripSeparator();
this.mRpMissionPrintPreview = new System.Windows.Forms.ToolStripMenuItem();
this.mPrintRpMission = new System.Windows.Forms.ToolStripMenuItem();
this.mBtMissionPrintPreview = new System.Windows.Forms.ToolStripMenuItem();
this.mPrintBtMission = new System.Windows.Forms.ToolStripMenuItem();
this.mSeperator1 = new System.Windows.Forms.ToolStripSeparator();
this.mPlasmaEditor = new System.Windows.Forms.ToolStripMenuItem();
this.mPlasmaFontTool = new System.Windows.Forms.ToolStripMenuItem();
this.mPlasmaBitmapDecoder = new System.Windows.Forms.ToolStripMenuItem();
this.mSeperator2 = new System.Windows.Forms.ToolStripSeparator();
this.mExit = new System.Windows.Forms.ToolStripMenuItem();
this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.redPlanetDefaultsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.importRedPlanetDefaultsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.exportRedPlanetDefaultsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.battleTechDefaultsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.importBattleTechDefaultsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.exportBattleTechDefaultsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.enableCustomBitmapsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.mGamesMenu = new System.Windows.Forms.ToolStripMenuItem();
this.mRpDeathRace = new System.Windows.Forms.ToolStripMenuItem();
this.mRpMartianFootball = new System.Windows.Forms.ToolStripMenuItem();
this.mBtFreeForAll = new System.Windows.Forms.ToolStripMenuItem();
this.mBtNoReturn = new System.Windows.Forms.ToolStripMenuItem();
this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.aboutToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.mExceptionsMenu = new System.Windows.Forms.ToolStripMenuItem();
this.mThrowHandledExceptionMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.mThrownUnHandledExceptionMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.mRPPrintPreviewDialog = new System.Windows.Forms.PrintPreviewDialog();
this.mRPPrintDialog = new System.Windows.Forms.PrintDialog();
this.mRPMissionOpenDialog = new System.Windows.Forms.OpenFileDialog();
this.mBTMissionOpenDialog = new System.Windows.Forms.OpenFileDialog();
this.mRPDefaultsOpenDialog = new System.Windows.Forms.OpenFileDialog();
this.mRPDefaultsSaveDialog = new System.Windows.Forms.SaveFileDialog();
this.mBTDefaultsOpenDialog = new System.Windows.Forms.OpenFileDialog();
this.mBTDefaultsSaveDialog = new System.Windows.Forms.SaveFileDialog();
this.mMenu.SuspendLayout();
base.SuspendLayout();
this.mMainDockPanel.ActiveAutoHideContent = null;
this.mMainDockPanel.Dock = System.Windows.Forms.DockStyle.Fill;
this.mMainDockPanel.DockBackColor = System.Drawing.SystemColors.Control;
this.mMainDockPanel.Location = new System.Drawing.Point(0, 24);
this.mMainDockPanel.Name = "mMainDockPanel";
this.mMainDockPanel.Size = new System.Drawing.Size(1168, 567);
dockPanelGradient.EndColor = System.Drawing.SystemColors.ControlLight;
dockPanelGradient.StartColor = System.Drawing.SystemColors.ControlLight;
autoHideStripSkin.DockStripGradient = dockPanelGradient;
tabGradient.EndColor = System.Drawing.SystemColors.Control;
tabGradient.StartColor = System.Drawing.SystemColors.Control;
tabGradient.TextColor = System.Drawing.SystemColors.ControlDarkDark;
autoHideStripSkin.TabGradient = tabGradient;
dockPanelSkin.AutoHideStripSkin = autoHideStripSkin;
tabGradient2.EndColor = System.Drawing.SystemColors.ControlLightLight;
tabGradient2.StartColor = System.Drawing.SystemColors.ControlLightLight;
tabGradient2.TextColor = System.Drawing.SystemColors.ControlText;
dockPaneStripGradient.ActiveTabGradient = tabGradient2;
dockPanelGradient2.EndColor = System.Drawing.SystemColors.Control;
dockPanelGradient2.StartColor = System.Drawing.SystemColors.Control;
dockPaneStripGradient.DockStripGradient = dockPanelGradient2;
tabGradient3.EndColor = System.Drawing.SystemColors.ControlLight;
tabGradient3.StartColor = System.Drawing.SystemColors.ControlLight;
tabGradient3.TextColor = System.Drawing.SystemColors.ControlText;
dockPaneStripGradient.InactiveTabGradient = tabGradient3;
dockPaneStripSkin.DocumentGradient = dockPaneStripGradient;
tabGradient4.EndColor = System.Drawing.SystemColors.ActiveCaption;
tabGradient4.LinearGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
tabGradient4.StartColor = System.Drawing.SystemColors.GradientActiveCaption;
tabGradient4.TextColor = System.Drawing.SystemColors.ActiveCaptionText;
dockPaneStripToolWindowGradient.ActiveCaptionGradient = tabGradient4;
tabGradient5.EndColor = System.Drawing.SystemColors.Control;
tabGradient5.StartColor = System.Drawing.SystemColors.Control;
tabGradient5.TextColor = System.Drawing.SystemColors.ControlText;
dockPaneStripToolWindowGradient.ActiveTabGradient = tabGradient5;
dockPanelGradient3.EndColor = System.Drawing.SystemColors.ControlLight;
dockPanelGradient3.StartColor = System.Drawing.SystemColors.ControlLight;
dockPaneStripToolWindowGradient.DockStripGradient = dockPanelGradient3;
tabGradient6.EndColor = System.Drawing.SystemColors.GradientInactiveCaption;
tabGradient6.LinearGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
tabGradient6.StartColor = System.Drawing.SystemColors.GradientInactiveCaption;
tabGradient6.TextColor = System.Drawing.SystemColors.ControlText;
dockPaneStripToolWindowGradient.InactiveCaptionGradient = tabGradient6;
tabGradient7.EndColor = System.Drawing.Color.Transparent;
tabGradient7.StartColor = System.Drawing.Color.Transparent;
tabGradient7.TextColor = System.Drawing.SystemColors.ControlDarkDark;
dockPaneStripToolWindowGradient.InactiveTabGradient = tabGradient7;
dockPaneStripSkin.ToolWindowGradient = dockPaneStripToolWindowGradient;
dockPanelSkin.DockPaneStripSkin = dockPaneStripSkin;
this.mMainDockPanel.Skin = dockPanelSkin;
this.mMainDockPanel.TabIndex = 0;
this.mRPNetworkScanTimer.Enabled = true;
this.mRPNetworkScanTimer.Tick += new System.EventHandler(NetworkScan);
this.mMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[5] { this.mFileMenu, this.settingsToolStripMenuItem, this.mGamesMenu, this.aboutToolStripMenuItem, this.mExceptionsMenu });
this.mMenu.Location = new System.Drawing.Point(0, 0);
this.mMenu.Name = "mMenu";
this.mMenu.Size = new System.Drawing.Size(1168, 24);
this.mMenu.TabIndex = 3;
this.mMenu.Text = "menuStrip1";
this.mFileMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[12] { this.mShowSitePanelMenuItem, this.mSitePanelSeparator, this.mRpMissionPrintPreview, this.mPrintRpMission, this.mBtMissionPrintPreview, this.mPrintBtMission, this.mSeperator1, this.mPlasmaEditor, this.mPlasmaFontTool, this.mPlasmaBitmapDecoder, this.mSeperator2, this.mExit });
this.mFileMenu.Name = "mFileMenu";
this.mFileMenu.Size = new System.Drawing.Size(37, 20);
this.mFileMenu.Text = "File";
this.mShowSitePanelMenuItem.Name = "mShowSitePanelMenuItem";
this.mShowSitePanelMenuItem.Size = new System.Drawing.Size(204, 22);
this.mShowSitePanelMenuItem.Text = "Pod Control Panel";
this.mShowSitePanelMenuItem.Click += new System.EventHandler(mShowSitePanelMenuItem_Click);
this.mSitePanelSeparator.Name = "mSitePanelSeparator";
this.mSitePanelSeparator.Size = new System.Drawing.Size(201, 6);
this.mRpMissionPrintPreview.Name = "mRpMissionPrintPreview";
this.mRpMissionPrintPreview.Size = new System.Drawing.Size(204, 22);
this.mRpMissionPrintPreview.Text = "RP Mission Print Preview";
this.mRpMissionPrintPreview.Click += new System.EventHandler(printPreviewToolStripMenuItem_Click);
this.mPrintRpMission.Name = "mPrintRpMission";
this.mPrintRpMission.Size = new System.Drawing.Size(204, 22);
this.mPrintRpMission.Text = "Print RP Mission";
this.mPrintRpMission.Click += new System.EventHandler(printToolStripMenuItem_Click);
this.mBtMissionPrintPreview.Name = "mBtMissionPrintPreview";
this.mBtMissionPrintPreview.Size = new System.Drawing.Size(204, 22);
this.mBtMissionPrintPreview.Text = "BT Mission Print Preview";
this.mBtMissionPrintPreview.Click += new System.EventHandler(btPrintPreviewToolStripMenuItem_Click);
this.mPrintBtMission.Name = "mPrintBtMission";
this.mPrintBtMission.Size = new System.Drawing.Size(204, 22);
this.mPrintBtMission.Text = "Print BT Mission";
this.mPrintBtMission.Click += new System.EventHandler(printBtMissionToolStripMenuItem_Click);
this.mSeperator1.Name = "mSeperator1";
this.mSeperator1.Size = new System.Drawing.Size(201, 6);
this.mPlasmaEditor.Name = "mPlasmaEditor";
this.mPlasmaEditor.Size = new System.Drawing.Size(204, 22);
this.mPlasmaEditor.Text = "Plasma Editor";
this.mPlasmaEditor.Click += new System.EventHandler(plasmaEditorToolStripMenuItem_Click);
this.mPlasmaFontTool.Name = "mPlasmaFontTool";
this.mPlasmaFontTool.Size = new System.Drawing.Size(204, 22);
this.mPlasmaFontTool.Text = "Plasma Font Tool";
this.mPlasmaFontTool.Click += new System.EventHandler(plasmaFontToolToolStripMenuItem_Click);
this.mPlasmaBitmapDecoder.Name = "mPlasmaBitmapDecoder";
this.mPlasmaBitmapDecoder.Size = new System.Drawing.Size(204, 22);
this.mPlasmaBitmapDecoder.Text = "Plasma Bitmap Decoder";
this.mPlasmaBitmapDecoder.Click += new System.EventHandler(plasmaBitmapDecoderToolStripMenuItem_Click);
this.mSeperator2.Name = "mSeperator2";
this.mSeperator2.Size = new System.Drawing.Size(201, 6);
this.mExit.Name = "mExit";
this.mExit.Size = new System.Drawing.Size(204, 22);
this.mExit.Text = "Exit";
this.mExit.Click += new System.EventHandler(mExit_Click);
this.settingsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[8] { this.redPlanetDefaultsToolStripMenuItem, this.importRedPlanetDefaultsToolStripMenuItem, this.exportRedPlanetDefaultsToolStripMenuItem, this.battleTechDefaultsToolStripMenuItem, this.importBattleTechDefaultsToolStripMenuItem, this.exportBattleTechDefaultsToolStripMenuItem, this.toolStripSeparator1, this.enableCustomBitmapsToolStripMenuItem });
this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem";
this.settingsToolStripMenuItem.Size = new System.Drawing.Size(61, 20);
this.settingsToolStripMenuItem.Text = "Settings";
this.redPlanetDefaultsToolStripMenuItem.Name = "redPlanetDefaultsToolStripMenuItem";
this.redPlanetDefaultsToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.redPlanetDefaultsToolStripMenuItem.Text = "&Change Red Planet Defaults";
this.redPlanetDefaultsToolStripMenuItem.Click += new System.EventHandler(changeRedPlanetDefaultsToolStripMenuItem_Click);
this.importRedPlanetDefaultsToolStripMenuItem.Name = "importRedPlanetDefaultsToolStripMenuItem";
this.importRedPlanetDefaultsToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.importRedPlanetDefaultsToolStripMenuItem.Text = "&Import Red Planet Defaults";
this.importRedPlanetDefaultsToolStripMenuItem.Click += new System.EventHandler(importRedPlanetDefaultsToolStripMenuItem_Click);
this.exportRedPlanetDefaultsToolStripMenuItem.Name = "exportRedPlanetDefaultsToolStripMenuItem";
this.exportRedPlanetDefaultsToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.exportRedPlanetDefaultsToolStripMenuItem.Text = "&Export Red Planet Defaults";
this.exportRedPlanetDefaultsToolStripMenuItem.Click += new System.EventHandler(exportRedPlanetDefaultsToolStripMenuItem_Click);
this.battleTechDefaultsToolStripMenuItem.Name = "battleTechDefaultsToolStripMenuItem";
this.battleTechDefaultsToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.battleTechDefaultsToolStripMenuItem.Text = "Change &BattleTech Defaults";
this.battleTechDefaultsToolStripMenuItem.Click += new System.EventHandler(changeBattleTechDefaultsToolStripMenuItem_Click);
this.importBattleTechDefaultsToolStripMenuItem.Name = "importBattleTechDefaultsToolStripMenuItem";
this.importBattleTechDefaultsToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.importBattleTechDefaultsToolStripMenuItem.Text = "Import BattleTech Defaults";
this.importBattleTechDefaultsToolStripMenuItem.Click += new System.EventHandler(importBattleTechDefaultsToolStripMenuItem_Click);
this.exportBattleTechDefaultsToolStripMenuItem.Name = "exportBattleTechDefaultsToolStripMenuItem";
this.exportBattleTechDefaultsToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.exportBattleTechDefaultsToolStripMenuItem.Text = "Export BattleTech Defaults";
this.exportBattleTechDefaultsToolStripMenuItem.Click += new System.EventHandler(exportBattleTechDefaultsToolStripMenuItem_Click);
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(217, 6);
this.enableCustomBitmapsToolStripMenuItem.Name = "enableCustomBitmapsToolStripMenuItem";
this.enableCustomBitmapsToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.enableCustomBitmapsToolStripMenuItem.Text = "Enable Custom Bitmaps";
this.enableCustomBitmapsToolStripMenuItem.Click += new System.EventHandler(enableCustomBitmapsToolStripMenuItem_Click);
this.mGamesMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[4] { this.mRpDeathRace, this.mRpMartianFootball, this.mBtFreeForAll, this.mBtNoReturn });
this.mGamesMenu.Name = "mGamesMenu";
this.mGamesMenu.Size = new System.Drawing.Size(55, 20);
this.mGamesMenu.Text = "Games";
this.mRpDeathRace.Name = "mRpDeathRace";
this.mRpDeathRace.Size = new System.Drawing.Size(223, 22);
this.mRpDeathRace.Text = "Red Planet: Death Race";
this.mRpDeathRace.Click += new System.EventHandler(redPlanetDeathRaceToolStripMenuItem_Click);
this.mRpMartianFootball.Name = "mRpMartianFootball";
this.mRpMartianFootball.Size = new System.Drawing.Size(223, 22);
this.mRpMartianFootball.Text = "Red Planet: Martian Football";
this.mRpMartianFootball.Click += new System.EventHandler(redPlanetMartianFootballToolStripMenuItem_Click);
this.mBtFreeForAll.Name = "mBtFreeForAll";
this.mBtFreeForAll.Size = new System.Drawing.Size(223, 22);
this.mBtFreeForAll.Text = "BattleTech: Free For All";
this.mBtFreeForAll.Click += new System.EventHandler(battleTechFreeForAllToolStripMenuItem_Click);
this.mBtNoReturn.Name = "mBtNoReturn";
this.mBtNoReturn.Size = new System.Drawing.Size(223, 22);
this.mBtNoReturn.Text = "BattleTech: No Return";
this.mBtNoReturn.Click += new System.EventHandler(battleTechNoReturnToolStripMenuItem_Click);
this.aboutToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[1] { this.aboutToolStripMenuItem1 });
this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem";
this.aboutToolStripMenuItem.Size = new System.Drawing.Size(52, 20);
this.aboutToolStripMenuItem.Text = "About";
this.aboutToolStripMenuItem1.Name = "aboutToolStripMenuItem1";
this.aboutToolStripMenuItem1.Size = new System.Drawing.Size(107, 22);
this.aboutToolStripMenuItem1.Text = "About";
this.aboutToolStripMenuItem1.Click += new System.EventHandler(aboutToolStripMenuItem1_Click);
this.mExceptionsMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[2] { this.mThrowHandledExceptionMenuItem, this.mThrownUnHandledExceptionMenuItem });
this.mExceptionsMenu.Name = "mExceptionsMenu";
this.mExceptionsMenu.Size = new System.Drawing.Size(75, 20);
this.mExceptionsMenu.Text = "Exceptions";
this.mThrowHandledExceptionMenuItem.Name = "mThrowHandledExceptionMenuItem";
this.mThrowHandledExceptionMenuItem.Size = new System.Drawing.Size(237, 22);
this.mThrowHandledExceptionMenuItem.Text = "Throw Handled Exception";
this.mThrowHandledExceptionMenuItem.Click += new System.EventHandler(mThrowHandledExceptionMenuItem_Click);
this.mThrownUnHandledExceptionMenuItem.Name = "mThrownUnHandledExceptionMenuItem";
this.mThrownUnHandledExceptionMenuItem.Size = new System.Drawing.Size(237, 22);
this.mThrownUnHandledExceptionMenuItem.Text = "Thrown Un-Handled Exception";
this.mThrownUnHandledExceptionMenuItem.Click += new System.EventHandler(mThrownUnHandledExceptionMenuItem_Click);
this.mRPPrintPreviewDialog.AutoScrollMargin = new System.Drawing.Size(0, 0);
this.mRPPrintPreviewDialog.AutoScrollMinSize = new System.Drawing.Size(0, 0);
this.mRPPrintPreviewDialog.ClientSize = new System.Drawing.Size(400, 300);
this.mRPPrintPreviewDialog.Enabled = true;
this.mRPPrintPreviewDialog.Icon = (System.Drawing.Icon)resources.GetObject("mRPPrintPreviewDialog.Icon");
this.mRPPrintPreviewDialog.Name = "printPreviewDialog1";
this.mRPPrintPreviewDialog.Visible = false;
this.mRPPrintDialog.UseEXDialog = true;
this.mRPMissionOpenDialog.Filter = "RP Mission (*.rpm)|*.rpm";
this.mBTMissionOpenDialog.Filter = "BT Mission (*.btm)|*.btm";
this.mRPDefaultsOpenDialog.Filter = "RP Defaults (*.rpd)|*.rpd";
this.mRPDefaultsSaveDialog.Filter = "RP Defaults (*.rpd)|*.rpd";
this.mBTDefaultsOpenDialog.Filter = "BT Defaults (*.btd)|*.btd";
this.mBTDefaultsSaveDialog.Filter = "BT Defaults (*.btd)|*.btd";
base.AutoScaleDimensions = new System.Drawing.SizeF(6f, 13f);
base.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
base.ClientSize = new System.Drawing.Size(1168, 591);
base.Controls.Add(this.mMainDockPanel);
base.Controls.Add(this.mMenu);
base.Icon = (System.Drawing.Icon)resources.GetObject("$this.Icon");
base.IsMdiContainer = true;
base.MainMenuStrip = this.mMenu;
base.Name = "TeslaConsoleForm";
this.Text = "Tesla Console";
base.FormClosing += new System.Windows.Forms.FormClosingEventHandler(TeslaConsoleForm_FormClosing);
this.mMenu.ResumeLayout(false);
this.mMenu.PerformLayout();
base.ResumeLayout(false);
base.PerformLayout();
}
}