public HUD(Scene scene, Microsoft.Xna.Framework.Content.ContentManager Content) { this.scene = scene; this.Content = Content; textFont = Content.Load <SpriteFont>("DebugFont"); G2DPanel statusBar = new G2DPanel(); statusBar.Bounds = new Rectangle(-10, 570, 642, 170); statusBar.Border = GoblinEnums.BorderFactory.LineBorder; statusBar.Transparency = 0.5f; // Ranges from 0 (fully transparent) to 1 (fully opaque) statusBar.BackgroundColor = Color.Black; statusBar.DrawBorder = false; scene.UIRenderer.Add2DComponent(statusBar); G2DPanel topBar = new G2DPanel(); topBar.Bounds = new Rectangle(-10, -3, 850, 35); topBar.Border = GoblinEnums.BorderFactory.LineBorder; topBar.Transparency = 0.5f; // Ranges from 0 (fully transparent) to 1 (fully opaque) topBar.BackgroundColor = Color.Black; topBar.DrawBorder = false; scene.UIRenderer.Add2DComponent(topBar); createCorderBackground(); }
public void initializeLabels() { attributeLabels = new List <G2DLabel>(); labelPanels = new List <G2DPanel>(); G2DLabel thisLabel; G2DPanel thisPanel; for (int i = 0; i < 8; i++) { thisLabel = new G2DLabel("Attribute Label " + i); thisLabel.TextFont = uiFont; thisLabel.TextColor = Color.Black; thisLabel.Visible = true; thisLabel.TextTransparency = 1.0f; attributeLabels.Add(thisLabel); thisPanel = new G2DPanel(); thisPanel.Border = GoblinEnums.BorderFactory.LineBorder; thisPanel.Transparency = 0.7f; labelPanels.Add(thisPanel); scene.UIRenderer.Add2DComponent(labelPanels[i]); labelPanels[i].AddChild(attributeLabels[i]); } // Create the main panel which holds all other GUI components /*frame = new G2DPanel(); * frame.Bounds = new Rectangle(615, 350, 170, 110); * frame.Border = GoblinEnums.BorderFactory.LineBorder;*/ }
private void CreateObject() { G2DPanel frame = new G2DPanel(); frame.Bounds = new Rectangle(0, 0, 800, 600); frame.Border = GoblinEnums.BorderFactory.LineBorder; frame.Transparency = 1.0f; // Ranges from 0 (fully transparent) to 1 (fully opaque) frame.BackgroundColor = Color.Black; SpriteFont textBoxFont = Content.Load <SpriteFont>("TextBoxFont"); SpriteFont textFont = Content.Load <SpriteFont>("TextFont"); G2DLabel label = new G2DLabel(); label.TextFont = textFont; label.TextColor = Color.Yellow; label.Bounds = new Rectangle(10, 100, 780, 200); label.Text = "Type Target ID and Press Enter"; textF = new G2DTextField(); textF.TextFont = textBoxFont; textF.TextColor = Color.Black; textF.Bounds = new Rectangle(10, 200, 780, 200); textF.Editable = false; textF.Text = ""; frame.AddChild(label); frame.AddChild(textF); scene.UIRenderer.Add2DComponent(frame); }
public void Initialize(Scene scene, ActionPerformed gameListener, ActionPerformed modeListener) { // Create the main panel which holds all other GUI components frame = new G2DPanel(); frame.Bounds = new Rectangle(30, 305, 480, 280); frame.Border = GoblinEnums.BorderFactory.LineBorder; frame.Transparency = 0.7f; // Ranges from 0 (fully transparent) to 1 (fully opaque) frame.TextTransparency = 1.0f; uiFont = State.Content.Load <SpriteFont>("UIFont"); G2DLabel gameLabel = new G2DLabel("Game Mode:"); gameLabel.TextFont = uiFont; gameLabel.Bounds = new Rectangle(4, 4, 100, 48); // Create radio buttons for selecting the game mode gameAdd = new G2DRadioButton("Add"); gameAdd.TextFont = uiFont; gameAdd.Bounds = new Rectangle(18, 70, 150, 50); // Make the Addition mode as the selected one first gameAdd.DoClick(); gameEdit = new G2DRadioButton("Edit"); gameEdit.TextFont = uiFont; gameEdit.Bounds = new Rectangle(170, 70, 150, 50); gamePlay = new G2DRadioButton("Play"); gamePlay.TextFont = uiFont; gamePlay.Bounds = new Rectangle(310, 70, 150, 50); ButtonGroup gameGroup = new ButtonGroup(); gameGroup.Add(gameAdd); gameGroup.Add(gameEdit); gameGroup.Add(gamePlay); gameGroup.AddActionPerformedHandler(gameListener); frame.AddChild(gameLabel); frame.AddChild(gameAdd); frame.AddChild(gameEdit); frame.AddChild(gamePlay); G2DSeparator separator1 = new G2DSeparator(); separator1.Bounds = new Rectangle(5, 129, 470, 5); frame.AddChild(separator1); modeLabel = new G2DLabel("Add Mode:"); modeLabel.TextFont = uiFont; modeLabel.Bounds = new Rectangle(4, 140, 100, 48); modeRadio1 = new G2DRadioButton("Single"); modeRadio1.TextFont = uiFont; modeRadio1.Bounds = new Rectangle(20, 206, 200, 50); modeRadio1.DoClick(); modeRadio2 = new G2DRadioButton("Line"); modeRadio2.TextFont = uiFont; modeRadio2.Bounds = new Rectangle(220, 206, 250, 50); ButtonGroup addGroup = new ButtonGroup(); addGroup.Add(modeRadio1); addGroup.Add(modeRadio2); addGroup.AddActionPerformedHandler(modeListener); frame.AddChild(modeLabel); frame.AddChild(modeRadio1); frame.AddChild(modeRadio2); // Initially, make the GUI panel invisible frame.Visible = false; frame.Enabled = false; scene.UIRenderer.Add2DComponent(frame); }
public void createBuilding2DGUI() { markerLabels = new List <G2DLabel>(); // Create the main panel which holds all other GUI components buildingInfoPanel = new G2DPanel(); buildingInfoPanel.Bounds = new Rectangle(530, 5, 265, 475); //frame.Bounds = new Rectangle(615, 350, 170, 220); buildingInfoPanel.Border = GoblinEnums.BorderFactory.LineBorder; buildingInfoPanel.Transparency = 0.4f; // Ranges from 0 (fully transparent) to 1 (fully opaque) nameLabel = new G2DLabel("Name"); nameLabel.TextFont = uiFont; nameLabel.Bounds = new Rectangle(25, 5, 230, 20); nameLabel.Text = "Name:"; nameLabel.Visible = true; nameField = new G2DTextField("Enter text here", 200); nameField.TextFont = uiFont; nameField.Text = "Enter text here"; nameField.SelectAll(); nameField.Enabled = false; nameField.Editable = false; nameField.Bounds = new Rectangle(25, 25, 230, 20); nameField.Visible = true; nameField.setFocused(false); addressLabel = new G2DLabel("Address:"); addressLabel.TextFont = uiFont; addressLabel.Bounds = new Rectangle(25, 45, 230, 20); addressLabel.Text = "Address:"; addressLabel.Visible = true; addressField = new G2DTextField("Enter text here", 200); addressField.TextFont = uiFont; addressField.Text = "Enter text here"; addressField.SelectAll(); addressField.Enabled = false; addressField.Editable = false; addressField.Bounds = new Rectangle(25, 65, 230, 20); addressField.Visible = true; addressField.setFocused(false); storiesLabel = new G2DLabel("Number of Stories:"); storiesLabel.TextFont = uiFont; storiesLabel.Bounds = new Rectangle(25, 85, 230, 20); storiesLabel.Text = "Number of Stories:"; storiesLabel.Visible = true; storiesField = new G2DTextField("Enter text here", 200); storiesField.TextFont = uiFont; storiesField.Text = "Enter text here"; storiesField.SelectAll(); storiesField.Enabled = false; storiesField.Editable = false; storiesField.Bounds = new Rectangle(25, 105, 230, 20); storiesField.Visible = true; storiesField.setFocused(false); toxicSitesLabel = new G2DLabel("Toxic Site Report:"); toxicSitesLabel.TextFont = uiFont; toxicSitesLabel.Bounds = new Rectangle(25, 125, 230, 20); toxicSitesLabel.Text = "Toxic Site Report:"; toxicSitesLabel.Visible = true; toxicSitesField = new G2DTextField("Enter text here", 200); toxicSitesField.TextFont = uiFont; toxicSitesField.Text = "Enter text here"; toxicSitesField.SelectAll(); toxicSitesField.Enabled = false; toxicSitesField.Editable = false; toxicSitesField.Bounds = new Rectangle(25, 145, 230, 20); toxicSitesField.Visible = true; toxicSitesField.setFocused(false); airRightsLabel = new G2DLabel("Air Rights Information:"); airRightsLabel.TextFont = uiFont; airRightsLabel.Bounds = new Rectangle(25, 165, 230, 20); airRightsLabel.Text = "Air Rights Information:"; airRightsLabel.Visible = true; airRightsField = new G2DTextField("Enter text here", 200); airRightsField.TextFont = uiFont; airRightsField.Text = "Enter text here"; airRightsField.SelectAll(); airRightsField.Enabled = false; airRightsField.Editable = false; airRightsField.Bounds = new Rectangle(25, 185, 230, 20); airRightsField.Visible = true; airRightsField.setFocused(false); yearBuiltLabel = new G2DLabel("Year Constructed:"); yearBuiltLabel.TextFont = uiFont; yearBuiltLabel.Bounds = new Rectangle(25, 205, 230, 20); yearBuiltLabel.Text = "Year Constructed:"; yearBuiltLabel.Visible = true; yearBuiltField = new G2DTextField("Enter text here", 200); yearBuiltField.TextFont = uiFont; yearBuiltField.Text = "Enter text here"; yearBuiltField.SelectAll(); yearBuiltField.Enabled = false; yearBuiltField.Editable = false; yearBuiltField.Bounds = new Rectangle(25, 225, 230, 20); yearBuiltField.Visible = true; yearBuiltField.setFocused(false); typeLabel = new G2DLabel("Zone Type:"); typeLabel.TextFont = uiFont; typeLabel.Bounds = new Rectangle(25, 245, 230, 20); typeLabel.Text = "Zone Type:"; typeLabel.Visible = true; typeField = new G2DTextField("Enter text here", 200); typeField.TextFont = uiFont; typeField.Text = "Enter text here"; typeField.SelectAll(); typeField.Enabled = false; typeField.Editable = false; typeField.Bounds = new Rectangle(25, 265, 230, 20); typeField.Visible = true; typeField.setFocused(false); classLabel = new G2DLabel("Building Class:"); classLabel.TextFont = uiFont; classLabel.Bounds = new Rectangle(25, 285, 230, 20); classLabel.Text = "Building Class:"; classLabel.Visible = true; classField = new G2DTextField("Enter text here", 200); classField.TextFont = uiFont; classField.Text = "Enter text here"; classField.SelectAll(); classField.Enabled = false; classField.Editable = false; classField.Bounds = new Rectangle(25, 305, 230, 20); classField.Visible = true; classField.setFocused(false); saleDateLabel = new G2DLabel("Sale Date:"); saleDateLabel.TextFont = uiFont; saleDateLabel.Bounds = new Rectangle(25, 325, 230, 20); saleDateLabel.Text = "Sale Date:"; saleDateLabel.Visible = true; saleDateField = new G2DTextField("Enter text here", 200); saleDateField.TextFont = uiFont; saleDateField.Text = "Enter text here"; saleDateField.SelectAll(); saleDateField.Enabled = false; saleDateField.Editable = false; saleDateField.Bounds = new Rectangle(25, 345, 230, 20); saleDateField.Visible = true; saleDateField.setFocused(false); descriptionLabel = new G2DLabel("Notes:"); descriptionLabel.TextFont = uiFont; descriptionLabel.Bounds = new Rectangle(25, 365, 230, 20); descriptionLabel.Text = "Notes:"; descriptionLabel.Visible = true; descriptionField = new G2DTextField("Enter text here", 200); descriptionField.TextFont = uiFont; descriptionField.Text = "Enter text here"; descriptionField.SelectAll(); descriptionField.Enabled = false; descriptionField.Editable = false; descriptionField.Bounds = new Rectangle(25, 385, 230, 80); descriptionField.Visible = true; descriptionField.setFocused(false); /*G2DTextField buildingInfoField = new G2DTextField("Enter text here", 200); * buildingInfoField.TextFont = uiFont; * buildingInfoField.Text = "Enter text here"; * buildingInfoField.SelectAll(); * buildingInfoField.Enabled = true; * buildingInfoField.Editable = true; * buildingInfoField.Bounds = new Rectangle(5, 25, 230, 90); * buildingInfoField.Visible = true; * buildingInfoField.setFocused(true);*/ buildingInfoPanel.AddChild(nameLabel); buildingInfoPanel.AddChild(nameField); buildingInfoPanel.AddChild(addressLabel); buildingInfoPanel.AddChild(addressField); buildingInfoPanel.AddChild(storiesLabel); buildingInfoPanel.AddChild(storiesField); buildingInfoPanel.AddChild(toxicSitesLabel); buildingInfoPanel.AddChild(toxicSitesField); buildingInfoPanel.AddChild(airRightsLabel); buildingInfoPanel.AddChild(airRightsField); buildingInfoPanel.AddChild(yearBuiltLabel); buildingInfoPanel.AddChild(yearBuiltField); buildingInfoPanel.AddChild(typeLabel); buildingInfoPanel.AddChild(typeField); buildingInfoPanel.AddChild(classLabel); buildingInfoPanel.AddChild(classField); buildingInfoPanel.AddChild(saleDateLabel); buildingInfoPanel.AddChild(saleDateField); buildingInfoPanel.AddChild(descriptionLabel); buildingInfoPanel.AddChild(descriptionField); for (int i = 0; i < 10; i++) { G2DLabel thisMarkerLabel = new G2DLabel("Marker " + i); thisMarkerLabel.TextFont = uiFont; thisMarkerLabel.Bounds = new Rectangle(5, 25 + i * 40, 230, 20); thisMarkerLabel.Text = ">>"; thisMarkerLabel.Visible = false; markerLabels.Add(thisMarkerLabel); } for (int i = 0; i < 10; i++) { markerLabels[i].Visible = false; buildingInfoPanel.AddChild(markerLabels[i]); } scene.UIRenderer.Add2DComponent(buildingInfoPanel); buildingInfoPanel.Visible = false; // Create an action listener //TestActionListener listener = new TestActionListener(); }
private void Create2DGUI() { // Create the main panel which holds all other GUI components G2DPanel frame = new G2DPanel(); frame.Bounds = new Rectangle(325, State.Height - 180, 150, 170); frame.Border = GoblinEnums.BorderFactory.LineBorder; frame.Transparency = 0.7f; // Ranges from 0 (fully transparent) to 1 (fully opaque) label = "User Interfaces"; // Loads the fonts used for rendering UI labels and slider labels uiFont = Content.Load <SpriteFont>("UIFont"); sliderFont = Content.Load <SpriteFont>("SliderFont"); // Create four Radio Buttons G2DRadioButton radio1 = new G2DRadioButton("User Interfaces"); radio1.TextFont = uiFont; radio1.Bounds = new Rectangle(10, 5, 80, 20); radio1.DoClick(); // make this radio button selected initially radio1.ActionPerformedEvent += new ActionPerformed(HandleActionPerformed); G2DRadioButton radio2 = new G2DRadioButton("Computer Graphics"); radio2.TextFont = uiFont; radio2.Bounds = new Rectangle(10, 25, 80, 20); radio2.ActionPerformedEvent += new ActionPerformed(HandleActionPerformed); G2DRadioButton radio3 = new G2DRadioButton("Augmented Reality"); radio3.TextFont = uiFont; radio3.Bounds = new Rectangle(10, 45, 80, 20); radio3.ActionPerformedEvent += new ActionPerformed(HandleActionPerformed); sliderRadio = new G2DRadioButton("Slider Control"); sliderRadio.TextFont = uiFont; sliderRadio.Bounds = new Rectangle(10, 65, 80, 20); sliderRadio.ActionPerformedEvent += new ActionPerformed(HandleActionPerformed); // Create a slider G2DSlider slider = new G2DSlider(); slider.TextFont = sliderFont; slider.Bounds = new Rectangle(5, 100, 140, 30); slider.Maximum = 40; slider.MajorTickSpacing = 20; slider.MinorTickSpacing = 5; slider.PaintTicks = true; slider.PaintLabels = true; slider.StateChangedEvent += new StateChanged(HandleStateChanged); // Create a ButtonGroup object which controls the radio // button selections ButtonGroup group = new ButtonGroup(); group.Add(radio1); group.Add(radio2); group.Add(radio3); group.Add(sliderRadio); // Create a Button G2DButton button = new G2DButton("I Love"); button.TextFont = uiFont; button.Bounds = new Rectangle(50, 145, 50, 20); button.ActionPerformedEvent += new ActionPerformed(HandleActionPerformed); // Add all of the components to the main panel frame.AddChild(radio1); frame.AddChild(radio2); frame.AddChild(radio3); frame.AddChild(sliderRadio); frame.AddChild(button); frame.AddChild(slider); scene.UIRenderer.Add2DComponent(frame); }