/// <summary>Creates a new instance of ComboBox.</summary> /// <param name="toClone">The ComboBox to clone.</param> /// <param name="copyItems">Whether or not to copy the items over as well.</param> public ComboBox(ComboBox toClone, bool copyItems) : base(toClone) { Menu = new PopUpMenu(toClone.Menu, copyItems); Menu.TopParent = TopParent; Menu.Parent = this; Menu.OptionAdded += new EventHandler(Menu_OnOptionAdded); Menu.OptionRemoved += new EventHandler(Menu_OnOptionRemoved); Menu.OptionSelected += new EventHandler(Menu_OnOptionSelected); TextBoxBackColor = toClone.TextBoxBackColor; TextBoxForeColor = toClone.TextBoxForeColor; buttonWidth = toClone.buttonWidth; buttonGraphicPos = toClone.buttonGraphicPos; SelectedIndex = -1; }
/// <summary>Builds the GUI.</summary> /// <param name="graphics">The graphics device manager to use.</param> private void buildGUI(GraphicsDeviceManager graphics) { #region Defaults // set defaults first Desktop.DefControlBackColor = new Color(Color.Blue, .5f); Desktop.DefButtonBackColor = new Color(Color.White, .5f); Desktop.DefButtonBackColorHover = new Color(Color.White, .75f); Desktop.DefButtonBackColorPressed = new Color(Color.Black, .75f); Desktop.DefButtonBackColorP = new Color(Color.Black, .65f); Desktop.DefButtonBackColorHoverP = new Color(Color.Black, .5f); Desktop.DefButtonTextFont = fSegoe; Desktop.DefButtonTextForeColor = Color.Black; Desktop.DefButtonTextForeColorHover = Color.Black; Desktop.DefButtonTextForeColorPressed = Color.Gray; Desktop.DefButtonTextForeColorP = Color.Gray; Desktop.DefButtonTextForeColorHoverP = Color.White; Desktop.DefComboBoxTextBoxBackColor = Color.White; Desktop.DefComboBoxTextBoxForeColor = Color.Black; Desktop.DefComboBoxSidePadding = 5; Desktop.DefComboBoxButtonWidth = 13; Desktop.DefLabelFont = fSegoe; Desktop.DefLabelForeColor = Color.White; Desktop.DefPopUpMenuFont = fSegoe; Desktop.DefPopUpMenuBackColor = Color.LightGray; Desktop.DefPopUpMenuBackColorHover = Color.Blue; Desktop.DefPopUpMenuForeColor = Color.Black; Desktop.DefPopUpMenuForeColorHover = Color.White; Desktop.DefPopUpMenuSidePadding = 5; Desktop.DefTextBoxFont = fSegoe; Desktop.DefTextBoxBackColor = Color.White; Desktop.DefTextBoxForeColor = Color.Black; Desktop.DefTextBoxSidePadding = 5; Desktop.DefTextBoxVertPadding = 5; Desktop.DefTextBoxHighlightColor = new Color(0, 0, 255, 100); Desktop.DefTextBoxEditPositionOffsetX = -1; Desktop.DefTextBoxEditPositionOffsetY = -1; Desktop.DefListBoxBackColor = Color.LightGray; Desktop.DefListBoxBackColorHover = Color.CornflowerBlue; Desktop.DefListBoxBackColorSelected = Color.Blue; Desktop.DefListBoxTextFont = fSegoe; Desktop.DefListBoxTextForeColor = Color.Black; Desktop.DefListBoxTextForeColorHover = Color.Black; Desktop.DefListBoxTextForeColorSelected = Color.White; desktop.TBack = tSegment; #endregion Defaults #region cntSideBar // cntSideBar cntSideBar = new Container(); cntSideBar.Width = 150; cntSideBar.Height = graphics.PreferredBackBufferHeight; cntSideBar.Left = graphics.PreferredBackBufferWidth - cntSideBar.Width; // btnShowSettingsPnl btnShowSettingsPnl = new ButtonText(); btnShowSettingsPnl.Bounds = new Rectangle(10, 10, cntSideBar.Width - 20, 20); btnShowSettingsPnl.IsToggle = true; btnShowSettingsPnl.Text = "Settings"; btnShowSettingsPnl.Font = fSegoeBold; btnShowSettingsPnl.MouseLeftUp += new EventHandler(btnShowWorldPnl_MouseLeftUp); cntSideBar.Controls.Add(btnShowSettingsPnl); // btnShowScriptsPnl btnShowScriptsPnl = new ButtonText(btnShowSettingsPnl); btnShowScriptsPnl.Top += 20; btnShowScriptsPnl.Text = "Scripts"; btnShowScriptsPnl.MouseLeftUp += new EventHandler(btnShowScriptsPnl_MouseLeftUp); cntSideBar.Controls.Add(btnShowScriptsPnl); // btnShowNodeTypesPnl btnShowNodeTypesPnl = new ButtonText(btnShowScriptsPnl); btnShowNodeTypesPnl.Top += 20; btnShowNodeTypesPnl.Text = "Node Types"; btnShowNodeTypesPnl.MouseLeftUp += new EventHandler(btnShowNodeTypesPnl_MouseLeftUp); cntSideBar.Controls.Add(btnShowNodeTypesPnl); // btnShowPlayersPnl btnShowPlayersPnl = new ButtonText(btnShowNodeTypesPnl); btnShowPlayersPnl.Top += 20; btnShowPlayersPnl.Text = "Players"; btnShowPlayersPnl.MouseLeftUp += new EventHandler(btnShowPlayersPnl_MouseLeftUp); cntSideBar.Controls.Add(btnShowPlayersPnl); // btnShowEditorPnl btnShowEditorPnl = new ButtonText(btnShowPlayersPnl); btnShowEditorPnl.Top += 20; btnShowEditorPnl.Text = "Editor"; btnShowEditorPnl.MouseLeftUp += new EventHandler(btnShowEditorPnl_MouseLeftUp); cntSideBar.Controls.Add(btnShowEditorPnl); #endregion cntSideBar #region pnlSettings // // pnlSettings // pnlSettings = new Container(); pnlSettings.DrawBack = false; pnlSettings.Bounds = new Rectangle(0, btnShowEditorPnl.Bottom + 10, cntSideBar.Width, 0); // lblWorldWidth lblWorldWidth = new Label(); lblWorldWidth.AutoSize = false; lblWorldWidth.Bounds = new Rectangle(0, 0, 80, 20); lblWorldWidth.Text = "WldWidth:"; lblWorldWidth.TextAlign = Desktop.Alignment.CenterRight; pnlSettings.Controls.Add(lblWorldWidth); // txtWorldWidth txtWorldWidth = new TextBox(); txtWorldWidth.Top = lblWorldWidth.Top; txtWorldWidth.Left = lblWorldWidth.Right + 5; txtWorldWidth.Width = pnlSettings.Width - txtWorldWidth.Left - 10; txtWorldWidth.Height = 20; txtWorldWidth.AllowAlpha = false; txtWorldWidth.AllowedSpecChars = "."; txtWorldWidth.FocusLost += new EventHandler(textBox_FocusLost); txtWorldWidth.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtWorldWidth); // lblWorldHeight lblWorldHeight = new Label(lblWorldWidth); lblWorldHeight.Top += 25; lblWorldHeight.Text = "WldHeight:"; pnlSettings.Controls.Add(lblWorldHeight); // txtWorldHeight txtWorldHeight = new TextBox(txtWorldWidth); txtWorldHeight.Top = lblWorldHeight.Top; txtWorldHeight.FocusLost += new EventHandler(textBox_FocusLost); txtWorldHeight.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtWorldHeight); /********************************************************************************************/ // ctlPersonDivider ctlPersonDivider = new Control(); ctlPersonDivider.Bounds = new Rectangle(10, txtWorldHeight.Bottom + 10, pnlSettings.Width - 20, 1); ctlPersonDivider.BackColor = Desktop.DefButtonBackColor; ctlPersonDivider.Ignore = true; pnlSettings.Controls.Add(ctlPersonDivider); // lblPersonSpacing lblPersonSpacing = new Label(lblWorldHeight); lblPersonSpacing.Top = ctlPersonDivider.Bottom + 10; lblPersonSpacing.Text = "PSpacing:"; pnlSettings.Controls.Add(lblPersonSpacing); // txtPersonSpacing txtPersonSpacing = new TextBox(txtWorldHeight); txtPersonSpacing.Top = lblPersonSpacing.Top; txtPersonSpacing.FocusLost += new EventHandler(textBox_FocusLost); txtPersonSpacing.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtPersonSpacing); // lblPersonSpeedLower lblPersonSpeedLower = new Label(lblPersonSpacing); lblPersonSpeedLower.Top += 25; lblPersonSpeedLower.Text = "PSpeed-:"; pnlSettings.Controls.Add(lblPersonSpeedLower); // txtPersonSpeedLower txtPersonSpeedLower = new TextBox(txtPersonSpacing); txtPersonSpeedLower.Top = lblPersonSpeedLower.Top; txtPersonSpeedLower.FocusLost += new EventHandler(textBox_FocusLost); txtPersonSpeedLower.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtPersonSpeedLower); // lblPersonSpeedUpper lblPersonSpeedUpper = new Label(lblPersonSpeedLower); lblPersonSpeedUpper.Top += 25; lblPersonSpeedUpper.Text = "PSpeed+:"; pnlSettings.Controls.Add(lblPersonSpeedUpper); // txtPersonSpeedUpper txtPersonSpeedUpper = new TextBox(txtPersonSpeedLower); txtPersonSpeedUpper.Top = lblPersonSpeedUpper.Top; txtPersonSpeedUpper.FocusLost += new EventHandler(textBox_FocusLost); txtPersonSpeedUpper.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtPersonSpeedUpper); /********************************************************************************************/ // ctlSegmentDivider ctlSegmentDivider = new Control(ctlPersonDivider); ctlSegmentDivider.Top = txtPersonSpeedUpper.Bottom + 10; pnlSettings.Controls.Add(ctlSegmentDivider); // lblWorldRetractSpeed lblRetractSpeed = new Label(lblPersonSpeedUpper); lblRetractSpeed.Top = ctlSegmentDivider.Bottom + 10; lblRetractSpeed.Text = "RSpeed:"; pnlSettings.Controls.Add(lblRetractSpeed); // txtRetractSpeed txtRetractSpeed = new TextBox(txtPersonSpeedUpper); txtRetractSpeed.Top = lblRetractSpeed.Top; txtRetractSpeed.FocusLost += new EventHandler(textBox_FocusLost); txtRetractSpeed.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtRetractSpeed); // lblBuildRate lblBuildRate = new Label(lblRetractSpeed); lblBuildRate.Top += 25; lblBuildRate.Text = "BuildRt:"; pnlSettings.Controls.Add(lblBuildRate); // txtBuildRate txtBuildRate = new TextBox(txtRetractSpeed); txtBuildRate.Top = lblBuildRate.Top; txtBuildRate.FocusLost += new EventHandler(textBox_FocusLost); txtBuildRate.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtBuildRate); /********************************************************************************************/ // ctlCamDivider ctlCamDivider = new Control(ctlPersonDivider); ctlCamDivider.Top = txtBuildRate.Bottom + 10; pnlSettings.Controls.Add(ctlCamDivider); // lblCamWidth lblCamWidth = new Label(lblBuildRate); lblCamWidth.Top = ctlCamDivider.Bottom + 10; lblCamWidth.Text = "CamWidth:"; pnlSettings.Controls.Add(lblCamWidth); // txtCamWidth txtCamWidth = new TextBox(txtBuildRate); txtCamWidth.Top = lblCamWidth.Top; txtCamWidth.FocusLost += new EventHandler(textBox_FocusLost); txtCamWidth.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtCamWidth); // lblCamHeight lblCamHeight = new Label(lblCamWidth); lblCamHeight.Top += 25; lblCamHeight.Text = "CamHeight:"; pnlSettings.Controls.Add(lblCamHeight); // txtCamHeight txtCamHeight = new TextBox(txtCamWidth); txtCamHeight.Top = lblCamHeight.Top; txtCamHeight.FocusLost += new EventHandler(textBox_FocusLost); txtCamHeight.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtCamHeight); // lblCamX lblCamX = new Label(lblCamHeight); lblCamX.Top += 25; lblCamX.Text = "Cam X:"; pnlSettings.Controls.Add(lblCamX); // txtCamX txtCamX = new TextBox(txtCamHeight); txtCamX.Top = lblCamX.Top; txtCamX.FocusLost += new EventHandler(textBox_FocusLost); txtCamX.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtCamX); // lblCamY lblCamY = new Label(lblCamX); lblCamY.Top += 25; lblCamY.Text = "Cam Y:"; pnlSettings.Controls.Add(lblCamY); // txtCamY txtCamY = new TextBox(txtCamX); txtCamY.Top = lblCamY.Top; txtCamY.FocusLost += new EventHandler(textBox_FocusLost); txtCamY.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtCamY); /********************************************************************************************/ // ctlGridDivider ctlGridDivider = new Control(ctlPersonDivider); ctlGridDivider.Top = txtCamY.Bottom + 10; pnlSettings.Controls.Add(ctlGridDivider); // lblGridRows lblGridRows = new Label(lblCamY); lblGridRows.Top = ctlGridDivider.Bottom + 10; lblGridRows.Text = "GridRows:"; pnlSettings.Controls.Add(lblGridRows); // txtGridRows txtGridRows = new TextBox(txtCamY); txtGridRows.Top = lblGridRows.Top; txtGridRows.AllowedSpecChars = string.Empty; txtGridRows.FocusLost += new EventHandler(textBox_FocusLost); txtGridRows.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtGridRows); // lblGridCols lblGridCols = new Label(lblGridRows); lblGridCols.Top += 25; lblGridCols.Text = "GridCols:"; pnlSettings.Controls.Add(lblGridCols); // txtGridCols txtGridCols = new TextBox(txtGridRows); txtGridCols.Top = lblGridCols.Top; txtGridCols.FocusLost += new EventHandler(textBox_FocusLost); txtGridCols.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtGridCols); /********************************************************************************************/ // ctlFogDivider ctlFogDivider = new Control(ctlPersonDivider); ctlFogDivider.Top = txtGridCols.Bottom + 10; pnlSettings.Controls.Add(ctlFogDivider); // lblFogRows lblFogRows = new Label(lblGridCols); lblFogRows.Top = ctlFogDivider.Bottom + 10; lblFogRows.Text = "FogRows:"; pnlSettings.Controls.Add(lblFogRows); // txtFogRows txtFogRows = new TextBox(txtGridCols); txtFogRows.Top = lblFogRows.Top; txtFogRows.FocusLost += new EventHandler(textBox_FocusLost); txtFogRows.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtFogRows); // lblFogCols lblFogCols = new Label(lblFogRows); lblFogCols.Top += 25; lblFogCols.Text = "FogCols:"; pnlSettings.Controls.Add(lblFogCols); // txtFogCols txtFogCols = new TextBox(txtFogRows); txtFogCols.Top = lblFogCols.Top; txtFogCols.FocusLost += new EventHandler(textBox_FocusLost); txtFogCols.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtFogCols); /********************************************************************************************/ // ctlPathDivider ctlPathDivider = new Control(ctlPersonDivider); ctlPathDivider.Top = txtFogCols.Bottom + 10; pnlSettings.Controls.Add(ctlPathDivider); // lblPathRows lblPathRows = new Label(lblFogCols); lblPathRows.Top = ctlPathDivider.Bottom + 10; lblPathRows.Text = "PathRows:"; pnlSettings.Controls.Add(lblPathRows); // txtPathRows txtPathRows = new TextBox(txtFogCols); txtPathRows.Top = lblPathRows.Top; txtPathRows.FocusLost += new EventHandler(textBox_FocusLost); txtPathRows.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtPathRows); // lblPathCols lblPathCols = new Label(lblPathRows); lblPathCols.Top += 25; lblPathCols.Text = "PathCols:"; pnlSettings.Controls.Add(lblPathCols); // txtPathCols txtPathCols = new TextBox(txtPathRows); txtPathCols.Top = lblPathCols.Top; txtPathCols.FocusLost += new EventHandler(textBox_FocusLost); txtPathCols.FocusReceived += new EventHandler(textBox_FocusReceived); pnlSettings.Controls.Add(txtPathCols); pnlSettings.AutoHeight(); cntSideBar.Controls.Add(pnlSettings); #endregion pnlSettings #region pnlScripts // // pnlScripts // pnlScripts = new Container(pnlSettings); // lblScriptsBeginUpdateScript lblScriptsBeginUpdateScript = new Label(lblWorldWidth); lblScriptsBeginUpdateScript.Top = 0; lblScriptsBeginUpdateScript.Text = "Begin Update:"; pnlScripts.Controls.Add(lblScriptsBeginUpdateScript); // btnScriptsBeginUpdateScript btnScriptsBeginUpdateScript = new ButtonText(); btnScriptsBeginUpdateScript.Bounds = new Rectangle(pnlScripts.Width - 30, lblScriptsBeginUpdateScript.Top, 20, 20); btnScriptsBeginUpdateScript.Text = "..."; btnScriptsBeginUpdateScript.MouseLeftUp += new EventHandler(btnScriptsBeginUpdateScript_MouseLeftUp); pnlScripts.Controls.Add(btnScriptsBeginUpdateScript); // lblScriptsBeginUpdateScriptView lblScriptsBeginUpdateScriptView = new Label(lblScriptsBeginUpdateScript); lblScriptsBeginUpdateScriptView.Left = lblScriptsBeginUpdateScript.Right + 5; lblScriptsBeginUpdateScriptView.Top = lblScriptsBeginUpdateScript.Top; lblScriptsBeginUpdateScriptView.Width = btnScriptsBeginUpdateScript.Left - lblScriptsBeginUpdateScriptView.Left; lblScriptsBeginUpdateScriptView.TextAlign = Desktop.Alignment.Center; lblScriptsBeginUpdateScriptView.Text = "---"; pnlScripts.Controls.Add(lblScriptsBeginUpdateScriptView); pnlScripts.AutoHeight(); cntSideBar.Controls.Add(pnlScripts); #endregion pnlScripts #region pnlNodeTypes // // pnlNodeTypes // pnlNodeTypes = new Container(pnlSettings); // cmbNodeTypes cmbNodeTypes = new ComboBox(); cmbNodeTypes.Bounds = new Rectangle(10, 0, pnlNodeTypes.Width - 20, 20); pnlNodeTypes.Controls.Add(cmbNodeTypes); // btnNodeTypeLoad btnNodeTypeLoad = new ButtonText(); btnNodeTypeLoad.Bounds = new Rectangle(10, cmbNodeTypes.Bottom + 10, (pnlNodeTypes.Width - 20) / 4, 20); btnNodeTypeLoad.Text = "Load"; btnNodeTypeLoad.MouseLeftUp += new EventHandler(btnNodeTypeLoad_MouseLeftUp); pnlNodeTypes.Controls.Add(btnNodeTypeLoad); // btnNodeTypeUpdate btnNodeTypeUpdate = new ButtonText(btnNodeTypeLoad); btnNodeTypeUpdate.Left = btnNodeTypeLoad.Right; btnNodeTypeUpdate.Width = (pnlNodeTypes.Width - btnNodeTypeUpdate.Left - 10) / 3; btnNodeTypeUpdate.Text = "Save"; btnNodeTypeUpdate.MouseLeftUp += new EventHandler(btnNodeTypeUpdate_MouseLeftUp); pnlNodeTypes.Controls.Add(btnNodeTypeUpdate); // btnNodeTypeAddNew btnNodeTypeAddNew = new ButtonText(btnNodeTypeUpdate); btnNodeTypeAddNew.Left = btnNodeTypeUpdate.Right; btnNodeTypeAddNew.Width = (pnlNodeTypes.Width - btnNodeTypeAddNew.Left - 10) / 2; btnNodeTypeAddNew.Text = "Add"; btnNodeTypeAddNew.MouseLeftUp += new EventHandler(btnNodeTypeAddNew_MouseLeftUp); pnlNodeTypes.Controls.Add(btnNodeTypeAddNew); // btnNodeTypeDelete btnNodeTypeDelete = new ButtonText(btnNodeTypeAddNew); btnNodeTypeDelete.Left = btnNodeTypeDelete.Right; btnNodeTypeDelete.Width = pnlNodeTypes.Width - btnNodeTypeDelete.Left - 10; btnNodeTypeDelete.Text = "Del"; btnNodeTypeDelete.MouseLeftUp += new EventHandler(btnNodeTypeDelete_MouseLeftUp); pnlNodeTypes.Controls.Add(btnNodeTypeDelete); // lblNodeTypeName lblNodeTypeName = new Label(); lblNodeTypeName.AutoSize = false; lblNodeTypeName.Bounds = new Rectangle(0, btnNodeTypeDelete.Bottom + 10, 80, 20); lblNodeTypeName.Text = "Name:"; lblNodeTypeName.TextAlign = Desktop.Alignment.CenterRight; pnlNodeTypes.Controls.Add(lblNodeTypeName); // txtNodeTypeName txtNodeTypeName = new TextBox(); txtNodeTypeName.Top = lblNodeTypeName.Top; txtNodeTypeName.Left = lblNodeTypeName.Right + 5; txtNodeTypeName.Width = pnlNodeTypes.Width - txtNodeTypeName.Left - 10; txtNodeTypeName.Height = 20; txtNodeTypeName.FocusLost += new EventHandler(textBox_FocusLost); txtNodeTypeName.FocusReceived += new EventHandler(textBox_FocusReceived); pnlNodeTypes.Controls.Add(txtNodeTypeName); // lblNodeTypeIsParent lblNodeTypeIsParent = new Label(lblNodeTypeName); lblNodeTypeIsParent.Top += 25; lblNodeTypeIsParent.Text = "Parent:"; pnlNodeTypes.Controls.Add(lblNodeTypeIsParent); // btnNodeTypeIsParent btnNodeTypeIsParent = new Button(); btnNodeTypeIsParent.Left = lblNodeTypeIsParent.Right + 5; btnNodeTypeIsParent.Top = lblNodeTypeIsParent.Top + 5; btnNodeTypeIsParent.Height = lblNodeTypeIsParent.Height - 10; btnNodeTypeIsParent.Width = btnNodeTypeIsParent.Height; btnNodeTypeIsParent.IsToggle = true; btnNodeTypeIsParent.BackColorP = Desktop.DefButtonBackColor; btnNodeTypeIsParent.BackColor = Color.White; pnlNodeTypes.Controls.Add(btnNodeTypeIsParent); // lblNodeTypeNumSegs lblNodeTypeNumSegs = new Label(lblNodeTypeName); lblNodeTypeNumSegs.Top = lblNodeTypeIsParent.Bottom + 5; lblNodeTypeNumSegs.Text = "NumSegs:"; pnlNodeTypes.Controls.Add(lblNodeTypeNumSegs); // txtNodeTypeNumSegs txtNodeTypeNumSegs = new TextBox(txtNodeTypeName); txtNodeTypeNumSegs.Top = lblNodeTypeNumSegs.Top; txtNodeTypeNumSegs.AllowAlpha = false; txtNodeTypeNumSegs.AllowedSpecChars = string.Empty; txtNodeTypeNumSegs.FocusLost += new EventHandler(textBox_FocusLost); txtNodeTypeNumSegs.FocusReceived += new EventHandler(textBox_FocusReceived); pnlNodeTypes.Controls.Add(txtNodeTypeNumSegs); // lblNodeTypeRadius lblNodeTypeRadius = new Label(lblNodeTypeNumSegs); lblNodeTypeRadius.Top = txtNodeTypeNumSegs.Bottom + 5; lblNodeTypeRadius.Text = "Radius:"; pnlNodeTypes.Controls.Add(lblNodeTypeRadius); // txtNodeTypeRadius txtNodeTypeRadius = new TextBox(txtNodeTypeNumSegs); txtNodeTypeRadius.Top = lblNodeTypeRadius.Top; txtNodeTypeRadius.AllowedSpecChars = "."; txtNodeTypeRadius.FocusLost += new EventHandler(textBox_FocusLost); txtNodeTypeRadius.FocusReceived += new EventHandler(textBox_FocusReceived); pnlNodeTypes.Controls.Add(txtNodeTypeRadius); // lblNodeTypeSpacing lblNodeTypeSpacing = new Label(lblNodeTypeRadius); lblNodeTypeSpacing.Top = txtNodeTypeRadius.Bottom + 5; lblNodeTypeSpacing.Text = "Spacing:"; pnlNodeTypes.Controls.Add(lblNodeTypeSpacing); // txtNodeTypeSpacing txtNodeTypeSpacing = new TextBox(txtNodeTypeRadius); txtNodeTypeSpacing.Top = lblNodeTypeSpacing.Top; txtNodeTypeSpacing.FocusLost += new EventHandler(textBox_FocusLost); txtNodeTypeSpacing.FocusReceived += new EventHandler(textBox_FocusReceived); pnlNodeTypes.Controls.Add(txtNodeTypeSpacing); // lblNodeTypeGenSpacing lblNodeTypeGenSpacing = new Label(lblNodeTypeSpacing); lblNodeTypeGenSpacing.Top = txtNodeTypeSpacing.Bottom + 5; lblNodeTypeGenSpacing.Text = "GenSpace:"; pnlNodeTypes.Controls.Add(lblNodeTypeGenSpacing); // txtNodeTypeGenSpacing txtNodeTypeGenSpacing = new TextBox(txtNodeTypeSpacing); txtNodeTypeGenSpacing.Top = lblNodeTypeGenSpacing.Top; txtNodeTypeGenSpacing.FocusLost += new EventHandler(textBox_FocusLost); txtNodeTypeGenSpacing.FocusReceived += new EventHandler(textBox_FocusReceived); pnlNodeTypes.Controls.Add(txtNodeTypeGenSpacing); // lblNodeTypeSightDistance lblNodeTypeSightDistance = new Label(lblNodeTypeGenSpacing); lblNodeTypeSightDistance.Top = txtNodeTypeGenSpacing.Bottom + 5; lblNodeTypeSightDistance.Text = "SightDist:"; pnlNodeTypes.Controls.Add(lblNodeTypeSightDistance); // txtNodeTypeSightDistance txtNodeTypeSightDistance = new TextBox(txtNodeTypeGenSpacing); txtNodeTypeSightDistance.Top = lblNodeTypeSightDistance.Top; txtNodeTypeSightDistance.FocusLost += new EventHandler(textBox_FocusLost); txtNodeTypeSightDistance.FocusReceived += new EventHandler(textBox_FocusReceived); pnlNodeTypes.Controls.Add(txtNodeTypeSightDistance); // lblNodeTypeBuildRangeMin lblNodeTypeBuildRangeMin = new Label(lblNodeTypeSightDistance); lblNodeTypeBuildRangeMin.Top = txtNodeTypeSightDistance.Bottom + 5; lblNodeTypeBuildRangeMin.Text = "BuildMin:"; pnlNodeTypes.Controls.Add(lblNodeTypeBuildRangeMin); // txtNodeTypeBuildRangeMin txtNodeTypeBuildRangeMin = new TextBox(txtNodeTypeSightDistance); txtNodeTypeBuildRangeMin.Top = lblNodeTypeBuildRangeMin.Top; txtNodeTypeBuildRangeMin.FocusLost += new EventHandler(textBox_FocusLost); txtNodeTypeBuildRangeMin.FocusReceived += new EventHandler(textBox_FocusReceived); pnlNodeTypes.Controls.Add(txtNodeTypeBuildRangeMin); pnlNodeTypes.AutoHeight(); cntSideBar.Controls.Add(pnlNodeTypes); #endregion pnlNodeTypes #region pnlPlayers // // pnlPlayers // pnlPlayers = new Container(pnlSettings); // cmbPlayers cmbPlayers = new ComboBox(); cmbPlayers.Bounds = new Rectangle(10, 0, pnlPlayers.Width - 20, 20); pnlPlayers.Controls.Add(cmbPlayers); // btnPlayerLoad btnPlayerLoad = new ButtonText(); btnPlayerLoad.Bounds = new Rectangle(10, cmbPlayers.Bottom + 10, (pnlPlayers.Width - 20) / 4, 20); btnPlayerLoad.Text = "Load"; btnPlayerLoad.MouseLeftUp += new EventHandler(btnPlayerLoad_MouseLeftUp); pnlPlayers.Controls.Add(btnPlayerLoad); // btnPlayerUpdate btnPlayerUpdate = new ButtonText(btnPlayerLoad); btnPlayerUpdate.Left = btnPlayerLoad.Right; btnPlayerUpdate.Width = (pnlPlayers.Width - btnPlayerUpdate.Left - 10) / 3; btnPlayerUpdate.Text = "Save"; btnPlayerUpdate.MouseLeftUp += new EventHandler(btnPlayerUpdate_MouseLeftUp); pnlPlayers.Controls.Add(btnPlayerUpdate); // btnPlayerAddNew btnPlayerAddNew = new ButtonText(btnPlayerUpdate); btnPlayerAddNew.Left = btnPlayerUpdate.Right; btnPlayerAddNew.Width = (pnlPlayers.Width - btnPlayerAddNew.Left - 10) / 2; btnPlayerAddNew.Text = "Add"; btnPlayerAddNew.MouseLeftUp += new EventHandler(btnPlayerAddNew_MouseLeftUp); pnlPlayers.Controls.Add(btnPlayerAddNew); // btnPlayerDelete btnPlayerDelete = new ButtonText(btnPlayerAddNew); btnPlayerDelete.Left = btnPlayerAddNew.Right; btnPlayerDelete.Width = pnlPlayers.Width - btnPlayerDelete.Left - 10; btnPlayerDelete.Text = "Del"; btnPlayerDelete.MouseLeftUp += new EventHandler(btnPlayerDelete_MouseLeftUp); pnlPlayers.Controls.Add(btnPlayerDelete); // lblPlayerID lblPlayerID = new Label(); lblPlayerID.AutoSize = false; lblPlayerID.Bounds = new Rectangle(0, btnPlayerDelete.Bottom + 10, 50, 20); lblPlayerID.Text = "ID:"; lblPlayerID.TextAlign = Desktop.Alignment.CenterRight; pnlPlayers.Controls.Add(lblPlayerID); // txtPlayerID txtPlayerID = new TextBox(); txtPlayerID.Top = lblPlayerID.Top; txtPlayerID.Left = lblPlayerID.Right + 5; txtPlayerID.Width = pnlPlayers.Width - txtPlayerID.Left - 10; txtPlayerID.Height = 20; txtPlayerID.FocusLost += new EventHandler(textBox_FocusLost); txtPlayerID.FocusReceived += new EventHandler(textBox_FocusReceived); pnlPlayers.Controls.Add(txtPlayerID); // lblPlayerName lblPlayerName = new Label(lblPlayerID); lblPlayerName.Top = txtPlayerID.Bottom + 10; lblPlayerName.Text = "Name:"; pnlPlayers.Controls.Add(lblPlayerName); // txtPlayerName txtPlayerName = new TextBox(); txtPlayerName.Top = lblPlayerName.Top; txtPlayerName.Left = lblPlayerName.Right + 5; txtPlayerName.Width = pnlPlayers.Width - txtPlayerName.Left - 10; txtPlayerName.Height = 20; txtPlayerName.FocusLost += new EventHandler(textBox_FocusLost); txtPlayerName.FocusReceived += new EventHandler(textBox_FocusReceived); pnlPlayers.Controls.Add(txtPlayerName); // lblPlayerTypes lblPlayerTypes = new Label(lblPlayerName); lblPlayerTypes.Top += 25; lblPlayerTypes.Text = "Type:"; pnlPlayers.Controls.Add(lblPlayerTypes); // cmbPlayerTypes cmbPlayerTypes = new ComboBox(cmbPlayers, false); cmbPlayerTypes.Top = lblPlayerTypes.Top; cmbPlayerTypes.Left = lblPlayerTypes.Right + 5; cmbPlayerTypes.Width = pnlPlayers.Width - cmbPlayerTypes.Left - 10; cmbPlayerTypes.Menu.addRange(new string[] { "Human", "Network", "Computer" }); pnlPlayers.Controls.Add(cmbPlayerTypes); pnlPlayers.AutoHeight(); cntSideBar.Controls.Add(pnlPlayers); #endregion pnlPlayers #region pnlEditor // // pnlEditor // pnlEditor = new Container(pnlSettings); #region Add Objects // btnAddNode btnAddNode = new ButtonText(btnShowSettingsPnl); btnAddNode.Top = 0; btnAddNode.Text = "Add Node"; btnAddNode.Font = fSegoe; btnAddNode.MouseLeftUp += new EventHandler(btnAddNode_MouseLeftUp); pnlEditor.Controls.Add(btnAddNode); // btnAddSeg btnAddSeg = new ButtonText(btnAddNode); btnAddSeg.Top += 20; btnAddSeg.Text = "Add Segment"; btnAddSeg.MouseLeftUp += new EventHandler(btnAddSeg_MouseLeftUp); pnlEditor.Controls.Add(btnAddSeg); // btnAddGeo btnAddGeo = new ButtonText(btnAddSeg); btnAddGeo.Top += 20; btnAddGeo.Text = "Add Geo"; btnAddGeo.MouseLeftUp += new EventHandler(btnAddGeo_MouseLeftUp); pnlEditor.Controls.Add(btnAddGeo); // btnAddHotSpot btnAddHotspot = new ButtonText(btnAddGeo); btnAddHotspot.Top += 20; btnAddHotspot.Text = "Add Hotspot"; btnAddHotspot.MouseLeftUp += new EventHandler(btnAddHotspot_MouseLeftUp); pnlEditor.Controls.Add(btnAddHotspot); // // pnlEditorAddNodes // pnlEditorAddNodes = new Container(); pnlEditorAddNodes.DrawBack = false; pnlEditorAddNodes.Bounds = new Rectangle(0, btnAddHotspot.Bottom + 10, pnlEditor.Width, 0); // lblEditorAddNodeOwner lblEditorAddNodeOwner = new Label(); lblEditorAddNodeOwner.AutoSize = false; lblEditorAddNodeOwner.Bounds = new Rectangle(10, 0, 80, 20); lblEditorAddNodeOwner.Text = "Owner:"; lblEditorAddNodeOwner.TextAlign = Desktop.Alignment.BottomLeft; pnlEditorAddNodes.Controls.Add(lblEditorAddNodeOwner); // cmbEditorAddNodeOwner cmbEditorAddNodeOwner = new ComboBox(); cmbEditorAddNodeOwner.Bounds = new Rectangle(10, lblEditorAddNodeOwner.Bottom + 5, pnlEditor.Width - 20, 20); pnlEditorAddNodes.Controls.Add(cmbEditorAddNodeOwner); // lblEditorAddNodeType lblEditorAddNodeType = new Label(lblEditorAddNodeOwner); lblEditorAddNodeType.Top = cmbEditorAddNodeOwner.Bottom + 10; lblEditorAddNodeType.Text = "Type:"; pnlEditorAddNodes.Controls.Add(lblEditorAddNodeType); // cmbEditorAddNodeType cmbEditorAddNodeType = new ComboBox(cmbEditorAddNodeOwner, false); cmbEditorAddNodeType.Top = lblEditorAddNodeType.Bottom + 5; pnlEditorAddNodes.Controls.Add(cmbEditorAddNodeType); pnlEditorAddNodes.AutoHeight(); pnlEditor.Controls.Add(pnlEditorAddNodes); // // pnlEditorAddSegs // pnlEditorAddSegs = new Container(pnlEditorAddNodes); // lblEditorAddSegOwner lblEditorAddSegOwner = new Label(lblEditorAddNodeOwner); pnlEditorAddSegs.Controls.Add(lblEditorAddSegOwner); // cmbEditorAddSegOwner cmbEditorAddSegOwner = new ComboBox(cmbEditorAddNodeOwner, true); pnlEditorAddSegs.Controls.Add(cmbEditorAddSegOwner); pnlEditorAddSegs.AutoHeight(); pnlEditor.Controls.Add(pnlEditorAddSegs); // // pnlEditorAddGeos // pnlEditorAddGeos = new Container(pnlEditorAddSegs); pnlEditorAddGeos.Height = 0; pnlEditor.Controls.Add(pnlEditorAddGeos); // // pnlEditorAddHotspots // pnlEditorAddHotspots = new Container(pnlEditorAddGeos); pnlEditorAddHotspots.Height = 0; pnlEditor.Controls.Add(pnlEditorAddHotspots); // ctlEditorDivider ctlEditorDivider = new Control(); ctlEditorDivider.Bounds = new Rectangle(10, btnAddHotspot.Bottom + 10, pnlEditor.Width - 20, 1); ctlEditorDivider.BackColor = Desktop.DefButtonBackColor; ctlEditorDivider.Ignore = true; pnlEditor.Controls.Add(ctlEditorDivider); #endregion Add Objects #region pnlEditorNodes // // pnlEditorNodes // pnlEditorNodes = new Container(pnlEditorAddHotspots); pnlEditorNodes.Top = ctlEditorDivider.Bottom + 10; // lblEditorNodeOwner lblEditorNodeOwner = new Label(lblEditorAddNodeOwner); lblEditorNodeOwner.Top = 0; pnlEditorNodes.Controls.Add(lblEditorNodeOwner); // cmbEditorNodeOwner cmbEditorNodeOwner = new ComboBox(cmbEditorAddNodeOwner, true); cmbEditorNodeOwner.Top = lblEditorNodeOwner.Bottom + 5; pnlEditorNodes.Controls.Add(cmbEditorNodeOwner); // lblEditorNodeType lblEditorNodeType = new Label(lblEditorAddNodeType); lblEditorNodeType.Top = cmbEditorNodeOwner.Bottom + 10; pnlEditorNodes.Controls.Add(lblEditorNodeType); // cmbEditorNodeType cmbEditorNodeType = new ComboBox(cmbEditorAddNodeType, true); cmbEditorNodeType.Top = lblEditorNodeType.Bottom + 5; pnlEditorNodes.Controls.Add(cmbEditorNodeType); // btnEditorNodeLoadType btnEditorNodeLoadType = new ButtonText(); btnEditorNodeLoadType.Bounds = new Rectangle(10, cmbEditorNodeType.Bottom + 5, cmbEditorNodeType.Width, 20); btnEditorNodeLoadType.Text = "Load"; btnEditorNodeLoadType.MouseLeftUp += new EventHandler(btnEditorNodeLoadType_MouseLeftUp); pnlEditorNodes.Controls.Add(btnEditorNodeLoadType); // lblEditorNodeID lblEditorNodeID = new Label(lblEditorNodeOwner); lblEditorNodeID.Top = btnEditorNodeLoadType.Bottom + 10; lblEditorNodeID.Left = 0; lblEditorNodeID.TextAlign = Desktop.Alignment.CenterRight; lblEditorNodeID.Text = "ID:"; pnlEditorNodes.Controls.Add(lblEditorNodeID); // txtEditorNodeID txtEditorNodeID = new TextBox(); txtEditorNodeID.Top = lblEditorNodeID.Top; txtEditorNodeID.Left = lblEditorNodeID.Right + 5; txtEditorNodeID.Width = pnlEditorNodes.Width - txtEditorNodeID.Left - 10; txtEditorNodeID.Height = 20; txtEditorNodeID.AllowAlpha = false; txtEditorNodeID.FocusLost += new EventHandler(textBox_FocusLost); txtEditorNodeID.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorNodes.Controls.Add(txtEditorNodeID); // lblEditorNodeIsParent lblEditorNodeIsParent = new Label(lblEditorNodeID); lblEditorNodeIsParent.Top = txtEditorNodeID.Bottom + 10; lblEditorNodeIsParent.Text = "Parent:"; pnlEditorNodes.Controls.Add(lblEditorNodeIsParent); // btnEditorNodeIsParent btnEditorNodeIsParent = new Button(); btnEditorNodeIsParent.Left = lblEditorNodeIsParent.Right + 5; btnEditorNodeIsParent.Top = lblEditorNodeIsParent.Top + 5; btnEditorNodeIsParent.Height = lblEditorNodeIsParent.Height - 10; btnEditorNodeIsParent.Width = btnEditorNodeIsParent.Height; btnEditorNodeIsParent.IsToggle = true; btnEditorNodeIsParent.BackColorP = Desktop.DefButtonBackColor; btnEditorNodeIsParent.BackColor = Color.White; pnlEditorNodes.Controls.Add(btnEditorNodeIsParent); // lblEditorNodeNumSegs lblEditorNodeNumSegs = new Label(lblEditorNodeIsParent); lblEditorNodeNumSegs.Top = lblEditorNodeIsParent.Bottom + 5; lblEditorNodeNumSegs.Text = "NumSegs:"; pnlEditorNodes.Controls.Add(lblEditorNodeNumSegs); // txtEditorNodeNumSegs txtEditorNodeNumSegs = new TextBox(txtEditorNodeID); txtEditorNodeNumSegs.Top = lblEditorNodeNumSegs.Top; txtEditorNodeNumSegs.FocusLost += new EventHandler(textBox_FocusLost); txtEditorNodeNumSegs.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorNodes.Controls.Add(txtEditorNodeNumSegs); // lblEditorNodeRadius lblEditorNodeRadius = new Label(lblEditorNodeNumSegs); lblEditorNodeRadius.Top = txtEditorNodeNumSegs.Bottom + 5; lblEditorNodeRadius.Text = "Radius:"; pnlEditorNodes.Controls.Add(lblEditorNodeRadius); // txtEditorNodeRadius txtEditorNodeRadius = new TextBox(txtEditorNodeNumSegs); txtEditorNodeRadius.Top = lblEditorNodeRadius.Top; txtEditorNodeRadius.AllowedSpecChars = "."; txtEditorNodeRadius.FocusLost += new EventHandler(textBox_FocusLost); txtEditorNodeRadius.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorNodes.Controls.Add(txtEditorNodeRadius); // lblEditorNodeSpacing lblEditorNodeSpacing = new Label(lblEditorNodeRadius); lblEditorNodeSpacing.Top = txtEditorNodeRadius.Bottom + 5; lblEditorNodeSpacing.Text = "Spacing:"; pnlEditorNodes.Controls.Add(lblEditorNodeSpacing); // txtEditorNodeSpacing txtEditorNodeSpacing = new TextBox(txtEditorNodeRadius); txtEditorNodeSpacing.Top = lblEditorNodeSpacing.Top; txtEditorNodeSpacing.FocusLost += new EventHandler(textBox_FocusLost); txtEditorNodeSpacing.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorNodes.Controls.Add(txtEditorNodeSpacing); // lblEditorNodeGenSpacing lblEditorNodeGenSpacing = new Label(lblEditorNodeSpacing); lblEditorNodeGenSpacing.Top = txtEditorNodeSpacing.Bottom + 5; lblEditorNodeGenSpacing.Text = "GenSpace:"; pnlEditorNodes.Controls.Add(lblEditorNodeGenSpacing); // txtEditorNodeGenSpacing txtEditorNodeGenSpacing = new TextBox(txtEditorNodeSpacing); txtEditorNodeGenSpacing.Top = lblEditorNodeGenSpacing.Top; txtEditorNodeGenSpacing.FocusLost += new EventHandler(textBox_FocusLost); txtEditorNodeGenSpacing.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorNodes.Controls.Add(txtEditorNodeGenSpacing); // lblEditorNodeGenCountDown lblEditorNodeGenCountDown = new Label(lblEditorNodeGenSpacing); lblEditorNodeGenCountDown.Top = txtEditorNodeGenSpacing.Bottom + 5; lblEditorNodeGenCountDown.Text = "GenCntDwn:"; pnlEditorNodes.Controls.Add(lblEditorNodeGenCountDown); // txtEditorNodeGenCountDown txtEditorNodeGenCountDown = new TextBox(txtEditorNodeGenSpacing); txtEditorNodeGenCountDown.Top = lblEditorNodeGenCountDown.Top; txtEditorNodeGenCountDown.FocusLost += new EventHandler(textBox_FocusLost); txtEditorNodeGenCountDown.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorNodes.Controls.Add(txtEditorNodeGenCountDown); // lblEditorNodeSightDist lblEditorNodeSightDist = new Label(lblEditorNodeGenCountDown); lblEditorNodeSightDist.Top = txtEditorNodeGenCountDown.Bottom + 5; lblEditorNodeSightDist.Text = "SightDist:"; pnlEditorNodes.Controls.Add(lblEditorNodeSightDist); // txtEditorNodeSightDist txtEditorNodeSightDist = new TextBox(txtEditorNodeGenCountDown); txtEditorNodeSightDist.Top = lblEditorNodeSightDist.Top; txtEditorNodeSightDist.FocusLost += new EventHandler(textBox_FocusLost); txtEditorNodeSightDist.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorNodes.Controls.Add(txtEditorNodeSightDist); // lblEditorNodeX lblEditorNodeX = new Label(lblEditorNodeSightDist); lblEditorNodeX.Top = txtEditorNodeSightDist.Bottom + 5; lblEditorNodeX.Text = "X:"; pnlEditorNodes.Controls.Add(lblEditorNodeX); // txtEditorNodeX txtEditorNodeX = new TextBox(txtEditorNodeSightDist); txtEditorNodeX.Top = lblEditorNodeX.Top; txtEditorNodeX.FocusLost += new EventHandler(textBox_FocusLost); txtEditorNodeX.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorNodes.Controls.Add(txtEditorNodeX); // lblEditorNodeY lblEditorNodeY = new Label(lblEditorNodeX); lblEditorNodeY.Top = txtEditorNodeX.Bottom + 5; lblEditorNodeY.Text = "Y:"; pnlEditorNodes.Controls.Add(lblEditorNodeY); // txtEditorNodeY txtEditorNodeY = new TextBox(txtEditorNodeX); txtEditorNodeY.Top = lblEditorNodeY.Top; txtEditorNodeY.FocusLost += new EventHandler(textBox_FocusLost); txtEditorNodeY.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorNodes.Controls.Add(txtEditorNodeY); // lblEditorNodeOwnsHotspot lblEditorNodeOwnsHotspot = new Label(lblEditorNodeY); lblEditorNodeOwnsHotspot.Top = txtEditorNodeY.Bottom + 5; lblEditorNodeOwnsHotspot.Text = "OwnsHotSpot:"; pnlEditorNodes.Controls.Add(lblEditorNodeOwnsHotspot); // txtEditorNodeOwnsHotspot txtEditorNodeOwnsHotspot = new TextBox(txtEditorNodeY); txtEditorNodeOwnsHotspot.Top = lblEditorNodeOwnsHotspot.Top; txtEditorNodeOwnsHotspot.FocusLost += new EventHandler(textBox_FocusLost); txtEditorNodeY.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorNodes.Controls.Add(txtEditorNodeOwnsHotspot); // lblEditorNodeActive lblEditorNodeActive = new Label(lblEditorNodeOwnsHotspot); lblEditorNodeActive.Top = txtEditorNodeOwnsHotspot.Bottom + 5; lblEditorNodeActive.Text = "Active:"; pnlEditorNodes.Controls.Add(lblEditorNodeActive); // btnEditorNodeActive btnEditorNodeActive = new Button(btnEditorNodeIsParent); btnEditorNodeActive.Left = lblEditorNodeActive.Right + 5; btnEditorNodeActive.Top = lblEditorNodeActive.Top + 5; pnlEditorNodes.Controls.Add(btnEditorNodeActive); // btnEditorNodeApply btnEditorNodeApply = new ButtonText(btnEditorNodeLoadType); btnEditorNodeApply.Top = lblEditorNodeActive.Bottom + 10; btnEditorNodeApply.Text = "Apply"; btnEditorNodeApply.MouseLeftUp += new EventHandler(btnEditorNodeApply_MouseLeftUp); pnlEditorNodes.Controls.Add(btnEditorNodeApply); // btnEditorNodeDel btnEditorNodeDel = new ButtonText(btnEditorNodeApply); btnEditorNodeDel.Top = btnEditorNodeApply.Bottom + 10; btnEditorNodeDel.Text = "Delete"; btnEditorNodeDel.MouseLeftUp += new EventHandler(btnEditorNodeDel_MouseLeftUp); pnlEditorNodes.Controls.Add(btnEditorNodeDel); pnlEditorNodes.AutoHeight(); pnlEditor.Controls.Add(pnlEditorNodes); #endregion pnlEditorNodes #region pnlEditorSegs // // pnlEditorSegs // pnlEditorSegs = new Container(pnlEditorNodes); // lblEditorSegOwner lblEditorSegOwner = new Label(lblEditorAddNodeOwner); lblEditorSegOwner.Top = 0; pnlEditorSegs.Controls.Add(lblEditorSegOwner); // cmbEditorSegOwner cmbEditorSegOwner = new ComboBox(cmbEditorAddNodeOwner, true); cmbEditorSegOwner.Top = lblEditorSegOwner.Bottom + 5; pnlEditorSegs.Controls.Add(cmbEditorSegOwner); // lblEditorSegLenLbl lblEditorSegLenLbl = new Label(); lblEditorSegLenLbl.AutoSize = false; lblEditorSegLenLbl.Bounds = new Rectangle(10, cmbEditorSegOwner.Bottom + 10, 55, 20); lblEditorSegLenLbl.TextAlign = Desktop.Alignment.CenterRight; lblEditorSegLenLbl.Text = "Length:"; pnlEditorSegs.Controls.Add(lblEditorSegLenLbl); // lblEditorSegLenVal lblEditorSegLenVal = new Label(lblEditorSegLenLbl); lblEditorSegLenVal.Left = lblEditorSegLenLbl.Right + 5; lblEditorSegLenVal.Top = lblEditorSegLenLbl.Top; lblEditorSegLenVal.Width = pnlEditorSegs.Width - lblEditorSegLenVal.Left - 10; lblEditorSegLenVal.TextAlign = Desktop.Alignment.CenterLeft; pnlEditorSegs.Controls.Add(lblEditorSegLenVal); // lblEditorSegEndLen0 lblEditorSegEndLen0 = new Label(lblEditorSegLenLbl); lblEditorSegEndLen0.Top = lblEditorSegLenVal.Bottom + 5; lblEditorSegEndLen0.Text = "EndLen0:"; pnlEditorSegs.Controls.Add(lblEditorSegEndLen0); // txtEditorSegEndLen0; txtEditorSegEndLen0 = new TextBox(); txtEditorSegEndLen0.Top = lblEditorSegEndLen0.Top; txtEditorSegEndLen0.Left = lblEditorSegEndLen0.Right + 5; txtEditorSegEndLen0.Width = pnlEditorSegs.Width - txtEditorSegEndLen0.Left - 10; txtEditorSegEndLen0.Height = 20; txtEditorSegEndLen0.AllowAlpha = false; txtEditorSegEndLen0.AllowedSpecChars = "."; txtEditorSegEndLen0.FocusLost += new EventHandler(textBox_FocusLost); txtEditorSegEndLen0.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorSegs.Controls.Add(txtEditorSegEndLen0); // lblEditorSegEndLen1; lblEditorSegEndLen1 = new Label(lblEditorSegEndLen0); lblEditorSegEndLen1.Top = txtEditorSegEndLen0.Bottom + 5; lblEditorSegEndLen1.Text = "EndLen1:"; pnlEditorSegs.Controls.Add(lblEditorSegEndLen1); // txtEditorSegEndLen1; txtEditorSegEndLen1 = new TextBox(txtEditorSegEndLen0); txtEditorSegEndLen1.Top = lblEditorSegEndLen1.Top; txtEditorSegEndLen1.FocusLost += new EventHandler(textBox_FocusLost); txtEditorSegEndLen1.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorSegs.Controls.Add(txtEditorSegEndLen1); // lblEditorSegEndState0; lblEditorSegEndState0 = new Label(lblEditorSegEndLen1); lblEditorSegEndState0.Top = txtEditorSegEndLen1.Bottom + 5; lblEditorSegEndState0.Text = "State0:"; pnlEditorSegs.Controls.Add(lblEditorSegEndState0); // cmbEditorSegEndState0; cmbEditorSegEndState0 = new ComboBox(); cmbEditorSegEndState0.Bounds = new Rectangle(lblEditorSegEndState0.Right + 5, lblEditorSegEndState0.Top, pnlPlayers.Width - lblEditorSegEndState0.Right - 15, 20); cmbEditorSegEndState0.Menu.addRange(new string[] { "Complete", "Building", "Retracting" }); pnlEditorSegs.Controls.Add(cmbEditorSegEndState0); // lblEditorSegEndState1; lblEditorSegEndState1 = new Label(lblEditorSegEndState0); lblEditorSegEndState1.Top = cmbEditorSegEndState0.Bottom + 5; lblEditorSegEndState1.Text = "State1:"; pnlEditorSegs.Controls.Add(lblEditorSegEndState1); // cmbEditorSegEndState1; cmbEditorSegEndState1 = new ComboBox(cmbEditorSegEndState0, true); cmbEditorSegEndState1.Top = lblEditorSegEndState1.Top; pnlEditorSegs.Controls.Add(cmbEditorSegEndState1); // lblEditorSegLanePeople0; lblEditorSegLanePeople0 = new Label(lblEditorSegEndState1); lblEditorSegLanePeople0.Top = cmbEditorSegEndState1.Bottom + 5; lblEditorSegLanePeople0.Text = "Ppl0:"; pnlEditorSegs.Controls.Add(lblEditorSegLanePeople0); // txtEditorSegLanePeople0; txtEditorSegLanePeople0 = new TextBox(txtEditorSegEndLen1); txtEditorSegLanePeople0.Top = lblEditorSegLanePeople0.Top; txtEditorSegLanePeople0.AllowedSpecChars = ".,"; txtEditorSegLanePeople0.FocusLost += new EventHandler(textBox_FocusLost); txtEditorSegLanePeople0.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorSegs.Controls.Add(txtEditorSegLanePeople0); // lblEditorSegLanePeople1; lblEditorSegLanePeople1 = new Label(lblEditorSegLanePeople0); lblEditorSegLanePeople1.Top = txtEditorSegLanePeople0.Bottom + 5; lblEditorSegLanePeople1.Text = "Ppl1:"; pnlEditorSegs.Controls.Add(lblEditorSegLanePeople1); // txtEditorSegLanePeople1; txtEditorSegLanePeople1 = new TextBox(txtEditorSegLanePeople0); txtEditorSegLanePeople1.Top = lblEditorSegLanePeople1.Top; txtEditorSegLanePeople1.FocusLost += new EventHandler(textBox_FocusLost); txtEditorSegLanePeople1.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorSegs.Controls.Add(txtEditorSegLanePeople1); // btnEditorSegApply; btnEditorSegApply = new ButtonText(btnEditorNodeApply); btnEditorSegApply.Top = txtEditorSegLanePeople1.Bottom + 10; btnEditorSegApply.MouseLeftUp += new EventHandler(btnEditorSegApply_MouseLeftUp); pnlEditorSegs.Controls.Add(btnEditorSegApply); // btnEditorSegDel; btnEditorSegDel = new ButtonText(btnEditorSegApply); btnEditorSegDel.Top = btnEditorSegApply.Bottom + 10; btnEditorSegDel.Text = "Delete"; btnEditorSegDel.MouseLeftUp += new EventHandler(btnEditorSegDel_MouseLeftUp); pnlEditorSegs.Controls.Add(btnEditorSegDel); pnlEditorSegs.AutoHeight(); pnlEditor.Controls.Add(pnlEditorSegs); #endregion pnlEditorSegs #region pnlEditorGeos // // pnlEditorGeos // pnlEditorGeos = new Container(pnlEditorSegs); // lblEditorGeoCloseLoop lblEditorGeoCloseLoop = new Label(); lblEditorGeoCloseLoop.AutoSize = false; lblEditorGeoCloseLoop.Bounds = new Rectangle(10, 0, 75, 20); lblEditorGeoCloseLoop.TextAlign = Desktop.Alignment.CenterRight; lblEditorGeoCloseLoop.Text = "CloseLoop:"; pnlEditorGeos.Controls.Add(lblEditorGeoCloseLoop); // btnEditorGeoCloseLoop btnEditorGeoCloseLoop = new Button(); btnEditorGeoCloseLoop.Left = lblEditorGeoCloseLoop.Right + 5; btnEditorGeoCloseLoop.Top = lblEditorGeoCloseLoop.Top + 5; btnEditorGeoCloseLoop.Height = lblEditorGeoCloseLoop.Height - 10; btnEditorGeoCloseLoop.Width = btnEditorGeoCloseLoop.Height; btnEditorGeoCloseLoop.IsToggle = true; btnEditorGeoCloseLoop.BackColorP = Desktop.DefButtonBackColor; btnEditorGeoCloseLoop.BackColor = Color.White; pnlEditorGeos.Controls.Add(btnEditorGeoCloseLoop); // lblEditorGeoDisplay lblEditorGeoDisplay = new Label(lblEditorGeoCloseLoop); lblEditorGeoDisplay.Top = lblEditorGeoCloseLoop.Bottom + 5; lblEditorGeoDisplay.Text = "Display:"; pnlEditorGeos.Controls.Add(lblEditorGeoDisplay); // btnEditorGeoDisplay btnEditorGeoDisplay = new Button(btnEditorGeoCloseLoop); btnEditorGeoDisplay.Top = lblEditorGeoDisplay.Top + 5; pnlEditorGeos.Controls.Add(btnEditorGeoDisplay); // btnEditorGeoApply btnEditorGeoApply = new ButtonText(btnEditorNodeApply); btnEditorGeoApply.Top = btnEditorGeoDisplay.Bottom + 10; btnEditorGeoApply.MouseLeftUp += new EventHandler(btnEditorGeoApply_MouseLeftUp); pnlEditorGeos.Controls.Add(btnEditorGeoApply); // btnEditorGeoDel btnEditorGeoDel = new ButtonText(btnEditorNodeApply); btnEditorGeoDel.Top = btnEditorGeoApply.Bottom + 10; btnEditorGeoDel.Text = "Delete"; btnEditorGeoDel.MouseLeftUp += new EventHandler(btnEditorGeoDel_MouseLeftUp); pnlEditorGeos.Controls.Add(btnEditorGeoDel); pnlEditorGeos.AutoHeight(); pnlEditor.Controls.Add(pnlEditorGeos); #endregion pnlEditorGeos #region pnlEditorHotspots pnlEditorHotspots = new Container(pnlEditorGeos); // lblEditorHotspotIDLbl lblEditorHotspotIDLbl = new Label(lblEditorNodeActive); lblEditorHotspotIDLbl.Top = 0; lblEditorHotspotIDLbl.Text = "ID:"; pnlEditorHotspots.Controls.Add(lblEditorHotspotIDLbl); // lblEditorHotspotIDVal lblEditorHotspotIDVal = new Label(lblEditorSegLenVal); lblEditorHotspotIDVal.Top = lblEditorHotspotIDLbl.Top; lblEditorHotspotIDVal.Left = txtBuildRate.Left; pnlEditorHotspots.Controls.Add(lblEditorHotspotIDVal); // lblEditorHotspotX lblEditorHotspotX = new Label(lblEditorHotspotIDLbl); lblEditorHotspotX.Top = lblEditorHotspotIDVal.Bottom + 5; lblEditorHotspotX.Text = "X:"; pnlEditorHotspots.Controls.Add(lblEditorHotspotX); // txtEditorHotspotX txtEditorHotspotX = new TextBox(txtEditorNodeX); txtEditorHotspotX.Top = lblEditorHotspotX.Top; txtEditorHotspotX.FocusLost += new EventHandler(textBox_FocusLost); txtEditorHotspotX.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorHotspots.Controls.Add(txtEditorHotspotX); // lblEditorHotspotY lblEditorHotspotY = new Label(lblEditorHotspotX); lblEditorHotspotY.Top = txtEditorHotspotX.Bottom + 5; lblEditorHotspotY.Text = "Y:"; pnlEditorHotspots.Controls.Add(lblEditorHotspotY); // txtEditorHotspotY txtEditorHotspotY = new TextBox(txtEditorHotspotX); txtEditorHotspotY.Top = lblEditorHotspotY.Top; txtEditorHotspotY.FocusLost += new EventHandler(textBox_FocusLost); txtEditorHotspotY.FocusReceived += new EventHandler(textBox_FocusReceived); pnlEditorHotspots.Controls.Add(txtEditorHotspotY); // lblEditorHotspotScript lblEditorHotspotScript = new Label(lblEditorHotspotY); lblEditorHotspotScript.Top = txtEditorHotspotY.Bottom + 5; lblEditorHotspotScript.Text = "Script:"; pnlEditorHotspots.Controls.Add(lblEditorHotspotScript); // btnEditorHotspotScript btnEditorHotspotScript = new ButtonText(btnEditorNodeLoadType); btnEditorHotspotScript.Top = lblEditorHotspotScript.Top; btnEditorHotspotScript.Width = btnEditorHotspotScript.Height; btnEditorHotspotScript.Left = txtEditorHotspotY.Right - btnEditorHotspotScript.Width; btnEditorHotspotScript.Text = "..."; btnEditorHotspotScript.MouseLeftUp += new EventHandler(btnEditorHotspotScript_MouseLeftUp); pnlEditorHotspots.Controls.Add(btnEditorHotspotScript); // lblEditorHotspotScriptView lblEditorHotspotScriptView = new Label(lblEditorHotspotIDVal); lblEditorHotspotScriptView.Top = lblEditorHotspotScript.Top; lblEditorHotspotScriptView.Width = btnEditorHotspotScript.Left - lblEditorHotspotScriptView.Left; lblEditorHotspotScriptView.TextAlign = Desktop.Alignment.Center; lblEditorHotspotScriptView.Text = "---"; pnlEditorHotspots.Controls.Add(lblEditorHotspotScriptView); // lblEditorHotspotScriptVal lblEditorHotspotScriptVal = new Label(lblEditorHotspotScriptView); lblEditorHotspotScriptVal.Visible = false; pnlEditorHotspots.Controls.Add(lblEditorHotspotScriptVal); // btnEditorHotspotApply btnEditorHotspotApply = new ButtonText(btnEditorNodeLoadType); btnEditorHotspotApply.Top = lblEditorHotspotScriptView.Bottom + 10; btnEditorHotspotApply.Text = "Apply"; btnEditorHotspotApply.MouseLeftUp += new EventHandler(btnEditorHotspotApply_MouseLeftUp); pnlEditorHotspots.Controls.Add(btnEditorHotspotApply); // btnEditorHotspotDel btnEditorHotspotDel = new ButtonText(btnEditorHotspotApply); btnEditorHotspotDel.Top = btnEditorHotspotApply.Bottom + 10; btnEditorHotspotDel.Text = "Delete"; btnEditorHotspotDel.MouseLeftUp += new EventHandler(btnEditorHotspotDel_MouseLeftUp); pnlEditorHotspots.Controls.Add(btnEditorHotspotDel); pnlEditorHotspots.AutoHeight(); pnlEditor.Controls.Add(pnlEditorHotspots); #endregion pnlEditorHotspots pnlEditor.AutoHeight(); cntSideBar.Controls.Add(pnlEditor); #endregion pnlEditor #region Load and Save // btnSaveWorld btnSaveWorld = new ButtonText(); btnSaveWorld.Bounds = new Rectangle(10, cntSideBar.Bottom - 30, cntSideBar.Width - 20, 20); btnSaveWorld.Text = "Save World"; btnSaveWorld.MouseLeftUp += new EventHandler(btnSaveWorld_MouseLeftUp); cntSideBar.Controls.Add(btnSaveWorld); // btnLoadWorld btnLoadWorld = new ButtonText(btnSaveWorld); btnLoadWorld.Top -= 25; btnLoadWorld.Text = "Load World"; btnLoadWorld.MouseLeftUp += new EventHandler(btnLoadWorld_MouseLeftUp); cntSideBar.Controls.Add(btnLoadWorld); #endregion Load and Save refreshSideBar(); desktop.Controls.Add(cntSideBar); #region cntMsgBox // // cntMsgBox // cntMsgBox = new Container(); cntMsgBox.Width = 600; cntMsgBox.Visible = false; // lblMsgBoxMessage lblMsgBoxMessage = new Label(); lblMsgBoxMessage.AutoSize = false; lblMsgBoxMessage.Bounds = new Rectangle(0, 10, cntMsgBox.Width, 20); lblMsgBoxMessage.TextAlign = Desktop.Alignment.Center; cntMsgBox.Controls.Add(lblMsgBoxMessage); // btnMsgBoxExit btnMsgBoxExit = new ButtonText(); btnMsgBoxExit.Bounds = new Rectangle((cntMsgBox.Width - 40) / 2, lblMsgBoxMessage.Bottom + 10, 40, 20); btnMsgBoxExit.Text = "OK"; btnMsgBoxExit.MouseLeftUp += new EventHandler(btnMsgBoxExit_MouseLeftUp); cntMsgBox.Controls.Add(btnMsgBoxExit); cntMsgBox.Height = btnMsgBoxExit.Bottom + 10; cntMsgBox.Left = (graphics.PreferredBackBufferWidth - cntMsgBox.Width) / 2; cntMsgBox.Top = (graphics.PreferredBackBufferHeight - cntMsgBox.Height) / 2; desktop.Controls.Add(cntMsgBox); #endregion cntMsgBox #region cntSaveLoad // // cntSaveLoad // cntSaveLoad = new Container(); cntSaveLoad.Bounds = new Rectangle(Graphics.PreferredBackBufferWidth / 2 - 500, Graphics.PreferredBackBufferHeight / 2 - 200, 1000, 400); cntSaveLoad.Visible = false; // lblSaveLoadTitle lblSaveLoadTitle = new Label(); lblSaveLoadTitle.AutoSize = false; lblSaveLoadTitle.DrawBack = true; lblSaveLoadTitle.Bounds = new Rectangle(0, 0, cntSaveLoad.Width, 20); lblSaveLoadTitle.TextAlign = Desktop.Alignment.Center; cntSaveLoad.Controls.Add(lblSaveLoadTitle); // lblSaveLoadPath lblSaveLoadPath = new Label(); lblSaveLoadPath.Text = "Path:"; lblSaveLoadPath.Location = new Point(10, lblSaveLoadTitle.Bottom + 10); cntSaveLoad.Controls.Add(lblSaveLoadPath); // btnSaveLoadPath btnSaveLoadPath = new List<ButtonText>(4); // btnSaveLoadConfirm btnSaveLoadConfirm = new ButtonText(); btnSaveLoadConfirm.Bounds = new Rectangle(cntSaveLoad.Width - 60, cntSaveLoad.Height - 30, 50, 20); btnSaveLoadConfirm.MouseLeftUp += new EventHandler(btnSaveLoadConfirm_MouseLeftUp); cntSaveLoad.Controls.Add(btnSaveLoadConfirm); // btnSaveLoadCancel btnSaveLoadCancel = new ButtonText(btnSaveLoadConfirm); btnSaveLoadCancel.Left = btnSaveLoadConfirm.Left - 55; btnSaveLoadCancel.Text = "Cancel"; btnSaveLoadCancel.MouseLeftUp += new EventHandler(btnSaveLoadCancel_MouseLeftUp); cntSaveLoad.Controls.Add(btnSaveLoadCancel); // lblSaveLoadFileName lblSaveLoadFileName = new Label(); lblSaveLoadFileName.Text = "File Name:"; lblSaveLoadFileName.Location = new Point(10, btnSaveLoadConfirm.Top - 30); cntSaveLoad.Controls.Add(lblSaveLoadFileName); // txtSaveLoadFileName txtSaveLoadFileName = new TextBox(); txtSaveLoadFileName.Bounds = new Rectangle(lblSaveLoadFileName.Right + 5, lblSaveLoadFileName.Top, cntSaveLoad.Width - lblSaveLoadFileName.Right - 15, 20); cntSaveLoad.Controls.Add(txtSaveLoadFileName); // lsbSaveLoadFiles lsbSaveLoadFiles = new ListBoxText(); lsbSaveLoadFiles.Bounds = new Rectangle(10, lblSaveLoadTitle.Bottom + 40, cntSaveLoad.Width - 20, txtSaveLoadFileName.Top - lblSaveLoadTitle.Bottom - 50); lsbSaveLoadFiles.MouseLeftDoubleClick += new EventHandler(lsbSaveLoadFiles_OnMouseLeftDoubleClick); lsbSaveLoadFiles.SelectedIndexChanged += new EventHandler(lsbSaveLoadFiles_SelectedIndexChanged); cntSaveLoad.Controls.Add(lsbSaveLoadFiles); desktop.Controls.Add(cntSaveLoad); #endregion cntSaveLoad #region cntTextEditor // // cntTextEditor // cntTextEditor = new Container(); cntTextEditor.Bounds = new Rectangle(Graphics.PreferredBackBufferWidth / 2 - 500, Graphics.PreferredBackBufferHeight / 2 - 200, 1000, 400); cntTextEditor.Visible = false; // lblTextEditorTitle lblTextEditorTitle = new Label(); lblTextEditorTitle.AutoSize = false; lblTextEditorTitle.DrawBack = true; lblTextEditorTitle.Bounds = new Rectangle(0, 0, cntTextEditor.Width, 20); lblTextEditorTitle.TextAlign = Desktop.Alignment.Center; cntTextEditor.Controls.Add(lblTextEditorTitle); // btnTextEditorOK btnTextEditorOK = new ButtonText(); btnTextEditorOK.Bounds = new Rectangle(cntTextEditor.Width - 60, cntTextEditor.Height - 30, 50, 20); btnTextEditorOK.Text = "OK"; btnTextEditorOK.MouseLeftUp += new EventHandler(btnTextEditorOK_MouseLeftUp); cntTextEditor.Controls.Add(btnTextEditorOK); btnTextEditorOK.MouseLeftUp += new EventHandler(btnTextEditorOK_MouseLeftUp_HotspotScript); // for hotspot scripts btnTextEditorOK.MouseLeftUp += new EventHandler(btnTextEditorOK_MouseLeftUp_BeginUpdateScript); // for hotspot scripts // btnTextEditorCancel btnTextEditorCancel = new ButtonText(btnTextEditorOK); btnTextEditorCancel.Left = btnTextEditorOK.Left - 55; btnTextEditorCancel.Text = "Cancel"; btnTextEditorCancel.MouseLeftUp += new EventHandler(btnTextEditorCancel_MouseLeftUp); cntTextEditor.Controls.Add(btnTextEditorCancel); // txtTextEditorText txtTextEditorText = new TextBoxMulti(); txtTextEditorText.Bounds = new Rectangle(10, lblTextEditorTitle.Bottom + 40, cntTextEditor.Width - 20, btnTextEditorOK.Top - lblTextEditorTitle.Bottom - 50); txtTextEditorText.AllowedSpecChars = null; txtTextEditorText.AllowMultiLine = true; txtTextEditorText.Font = fCourierNew; txtTextEditorText.EditPositionOffsetX = -3; txtTextEditorText.EditPositionOffsetY = 0; txtTextEditorText.StopOnTab = false; cntTextEditor.Controls.Add(txtTextEditorText); desktop.Controls.Add(cntTextEditor); #endregion cntTextEditor }