public void EraseToolBehavior(object sender, TomShane.Neoforce.Controls.EventArgs e) { CurrentToolSystem toolSys = (CurrentToolSystem)(world.SystemManager.GetSystem<CurrentToolSystem>()[0]); toolSys.SetCurrentTool(CustomControls.Tool.ERASE_TOOL); HighligthButton(eraserTool); }
/// <summary> /// When the saved button is clicked /// </summary> void SaveBtn_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { if (Edit) { //TODO: Add validation and error handling string[] address = AddressTxt.Text.Split(':'); string IP; int port = 0; IP = address[0]; if (address.Length > 1) port = int.Parse(address[1]); ServerList.EditServer(Index, new ServerSaveData(NameTxt.Text, IP, port)); } else { //TODO: Add validation and error handling string[] address = AddressTxt.Text.Split(':'); string IP; int port = 0; IP = address[0]; if (address.Length > 1) port = int.Parse(address[1]); ServerList.AddServer(new ServerSaveData(NameTxt.Text, IP, port)); } Close(); }
protected override void DrawControl(TomShane.Neoforce.Controls.Renderer renderer, Microsoft.Xna.Framework.Rectangle rect, Microsoft.Xna.Framework.GameTime gameTime) { Color color = Color.White; color.A = imageOpacity; base.DrawControl(renderer, rect, gameTime); renderer.Draw(image, rect, color); }
private void canvasWindow_MouseClick(object sender, TomShane.Neoforce.Controls.EventArgs e) { TomShane.Neoforce.Controls.MouseEventArgs ev = (TomShane.Neoforce.Controls.MouseEventArgs)(e); if (ev.Button == MouseButton.Right) { RadialMenuSystem radial = (RadialMenuSystem)world.SystemManager.GetSystem<RadialMenuSystem>()[0]; radial.toggleRadialMenu(); } }
public void ExportMapBehavior(object sender, TomShane.Neoforce.Controls.EventArgs e) { Button btn = (Button)sender; btn.Focused = false; System.Windows.Forms.SaveFileDialog exportMapDialog = new System.Windows.Forms.SaveFileDialog(); exportMapDialog.InitialDirectory = Convert.ToString(Environment.SpecialFolder.CommonProgramFilesX86); exportMapDialog.Filter = "Map files (*.datmap)|*.datmap"; exportMapDialog.FilterIndex = 1; exportMapDialog.Title = "Export your map"; exportMapDialog.FileOk += new System.ComponentModel.CancelEventHandler(SuccessfullyExportedMap); exportMapDialog.ShowDialog(); }
/// <summary> /// Shows the simple input dialog. /// </summary> public void ShowSimpleInputDialog(Manager manager, string caption, string text, string initialValue, TomShane.Neoforce.Controls.EventHandler okBtnEventHandler) { window = new Window(manager); window.Init(); window.Width = 450; window.Height = 150; window.Text = caption; window.Closing += OnSimpleInputDialogClosing; window.Visible = true; Label label = new Label(manager); label.Init(); label.Text = text; label.Width = 400; label.Height = 20; label.Left = 5; label.Top = 5; label.Parent = window; TextBox textBox = new TextBox(manager); textBox.Init(); textBox.Width = 400; textBox.Height = 20; textBox.Left = 5; textBox.Top = 40; textBox.Text = initialValue; textBox.Parent = window; Button btnSimpleInputDialogOk = new Button(manager); btnSimpleInputDialogOk.Init(); btnSimpleInputDialogOk.Text = "Ok"; btnSimpleInputDialogOk.Width = 100; btnSimpleInputDialogOk.Height = 30; btnSimpleInputDialogOk.Left = 5; btnSimpleInputDialogOk.Top = 75; btnSimpleInputDialogOk.Click += okBtnEventHandler; btnSimpleInputDialogOk.Click += OnClickBtnSimpleInputDialogOk; btnSimpleInputDialogOk.Tag = textBox; // Textbox as Tag, to access the value btnSimpleInputDialogOk.Parent = window; Button btnSimpleInputDialogCancel = new Button(manager); btnSimpleInputDialogCancel.Init(); btnSimpleInputDialogCancel.Text = "Cancel"; btnSimpleInputDialogCancel.Width = 100; btnSimpleInputDialogCancel.Height = 30; btnSimpleInputDialogCancel.Left = 110; btnSimpleInputDialogCancel.Top = 75; btnSimpleInputDialogCancel.Click += OnClickBtnSimpleInputDialogCancel; btnSimpleInputDialogCancel.Parent = window; manager.Add(window); }
protected override void DrawControl(TomShane.Neoforce.Controls.Renderer renderer, Microsoft.Xna.Framework.Rectangle rect, Microsoft.Xna.Framework.GameTime gameTime) { //renderer.Draw(tilemapImage, rect, Color.White); //renderer.Draw(tileSelectorImage, selectorRect, Color.White); /*Vector2 offset = new Vector2(-m_windowParent.ScrollBarValue.Horizontal, -m_windowParent.ScrollBarValue.Vertical);*/ m_undoTree.draw(renderer.SpriteBatch, new Vector2(Parent.AbsoluteLeft, Parent.AbsoluteTop)); // resizing /* Width = Math.Max(OriginWidth,(int)tck); Height = Math.Max(OriginHeight, (int)(tck*0.1f)); //m_windowParent.Width = (int)tck; m_windowParent.MovableArea = new Rectangle(0,0,(int)tck,(int)(tck*0.1f)); * */ }
void okButton_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { Close(); }
void lstMain_ItemIndexChanged(object sender, TomShane.Neoforce.Controls.EventArgs e) { ListBox listbox = (ListBox)sender; //remove panelControl elements (from groupPanel at the bottom) if (inspectorArea.propertyEditPanel.panelControls.Keys.Count > 0) { inspectorArea.propertyEditPanel.DisableControls(); } if (listbox.ItemIndex >= 0 && listbox.Items.ElementAt(listbox.ItemIndex) is Node) { SetTargetNode((Node)listbox.Items.ElementAt(listbox.ItemIndex)); } else if (listbox.ItemIndex >= 0) { //ResetInspectorBox(inspectorArea.InsBox, listbox.Items.ElementAt(listbox.ItemIndex)); inspectorArea.ResetInspectorBox(listbox.Items.ElementAt(listbox.ItemIndex)); } }
void consolePressed(object sender, TomShane.Neoforce.Controls.EventArgs e) { if (sender is Button || (sender is TextBox && (((KeyEventArgs)e).Key == Keys.Enter))) ProcessConsoleCommand(consoletextbox.Text); }
void cbPresets_ItemIndexChanged(object sender, TomShane.Neoforce.Controls.EventArgs e) { ComboBox combobox = (ComboBox)sender; if (combobox.ItemIndex != lstPresets.ItemIndex) { lstPresets.ItemIndex = combobox.ItemIndex; } }
void btnDefaultNode_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { SetDefaultNodeAsEdit(); }
void btnAddComponent_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { if (inspectorArea.editNode == null) PopUp.Toast("You haven't selected a Node."); else { new AddComponentWindow(this, tbcMain, inspectorArea.editNode, null, false); //ObservableCollection<dynamic> nodecomplist = new ObservableCollection<dynamic>((Enum.GetValues(typeof(comp)).Cast<dynamic>().Where(c => !inspectorArea.editNode.HasComp(c)))); //List<dynamic> missingcomps = new List<dynamic>(Enum.GetValues(typeof(comp)).Cast<dynamic>().Where(c => inspectorArea.editNode.HasComp(c))); // //PopUp.opt[] options = new PopUp.opt[]{ // new PopUp.opt(PopUp.OptType.info, "Add component to: " + inspectorArea.editNode.name), // new PopUp.opt(PopUp.OptType.dropDown, nodecomplist), // new PopUp.opt(PopUp.OptType.checkBox, "Add to all", // delegate(object s, TomShane.Neoforce.Controls.EventArgs a){ // if ((s as CheckBox).Checked) nodecomplist.AddRange(missingcomps); // else nodecomplist.RemoveRange(missingcomps);})}; // //PopUp.makePopup(ui, options, "Add Component", delegate(bool a, object[] o) //{ // if (a) return addComponent(o); // else return false; //}); } }
void InsBox_ItemIndexChanged(object sender, TomShane.Neoforce.Controls.EventArgs e) { ListBox InsBox = (ListBox)sender; if (InsBox.ItemIndex < 0 || InsBox.Items.Count == 0) return; InspectorInfo item = (InspectorInfo)InsBox.Items.ElementAt(InsBox.ItemIndex); //UpdateGroupPanel(item, groupPanel); }
void InsBox_DoubleClick(object sender, TomShane.Neoforce.Controls.EventArgs e) { //InspectorBox InsBox = (InspectorBox)sender; MouseEventArgs mouseArgs = (MouseEventArgs)e; if (mouseArgs.Button == MouseButton.Left) { if (InsBox.ItemIndex < 0 || InsBox.Items.Count == 0 || InsBox.ItemIndex >= InsBox.Items.Count) return; InspectorInfo item = (InspectorInfo)InsBox.Items.ElementAt(InsBox.ItemIndex); item.DoubleClickItem(this); InspectorInfo temp = ActiveInspectorParent; string lbltext = "/" + temp.Name(); while (temp.parentItem != null) { temp = temp.parentItem; lbltext = lbltext.Insert(0, "/" + temp.Name()); } if (!OverrideString.Item1) { lblInspectorAddress.Text = lbltext; } //Type t = item.obj.GetType(); //if (activeInspectorItem != item) // propertyEditPanel.UpdatePanel(item); } }
public void btnRemoveAllNodes_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { if (sender != null) (sender as Button).Focused = false; Group g = GetActiveGroup(); if (g == null) return; if (room.targetNode != null) if (g.fullSet.Contains(room.targetNode)) room.targetNode = null; if (g.fullSet.Contains(inspectorArea.editNode) && inspectorArea.editNode != g.defaultNode) { inspectorArea.InsBox.Items.Clear(); inspectorArea.rootitem = null; inspectorArea.editNode = null; } //int size = g.fullSet.Count, count = 0; g.EmptyGroup(); lstMain.ItemIndex = -1; }
//TODO: fix the relection copying reference types void applyToAllNodesMenuItem_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { List<InspectorInfo> itemspath = new List<InspectorInfo>(); InspectorInfo item = (InspectorInfo)inspectorArea.InsBox.Items.ElementAt(inspectorArea.InsBox.ItemIndex); object value = item.GetValue(); BuildItemsPath(item, itemspath); Group activeGroup = GetActiveGroup(); if (activeGroup == null) return; activeGroup.ForEachAllSets(delegate(Node o) { Node n = (Node)o; if (n == itemspath.ElementAt(0).obj) return; InspectorInfo temp = new InspectorInfo(null, n, this); int count = 0; foreach (InspectorInfo pathitem in itemspath) { if (temp.obj.GetType() != pathitem.obj.GetType()) { Console.WriteLine("The paths did not match while applying to all. {0} != {1}", temp.obj.GetType(), pathitem.obj.GetType()); break; } if (count == itemspath.Count - 1) //last item { if (pathitem.membertype == member_type.dictentry) { dynamic dict = temp.parentItem.obj; dynamic key = pathitem.key; if (!dict.ContainsKey(key)) break; if (dict[key] is Component) { dict[key].active = ((Component)value).active; } else if (temp.IsPanelType()) { dict[key] = value; } } else { if (value is Component) { ((Component)temp.obj).active = ((Component)value).active; } else if (temp.IsPanelType()) { temp.fpinfo.SetValue(value, temp.parentItem.obj); } } } else { InspectorInfo next = itemspath.ElementAt(count + 1); if (next.membertype == member_type.dictentry) { dynamic dict = temp.obj; dynamic key = next.key; if (!dict.ContainsKey(key)) break; temp = new InspectorInfo(null, temp, dict[key], key); } //else if (next.membertype == member_type.collectionentry) //{ // dynamic coll = temp.obj; // //} else { if (next.fpinfo.propertyInfo == null) { temp = new InspectorInfo(null, temp, next.fpinfo.GetValue(temp.obj), next.fpinfo.fieldInfo); } else { temp = new InspectorInfo(null, temp, next.fpinfo.GetValue(temp.obj), next.fpinfo.propertyInfo); } } } count++; } }); }
void removeComponentMenuItem_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { InspectorInfo item = (InspectorInfo)InsBox.Items.ElementAt(InsBox.ItemIndex); if (!(item.obj is Component)) { Console.WriteLine("Error: The list item was not a component."); return; } Component component = (Component)item.obj; if (component is Movement || component is Collision) { return; } if (item.parentItem.parentItem.obj is Node) { component.active = false; editNode.RemoveComponent(component.GetType()); item.RemoveChildren(); InsBox.Items.Remove(item); } else if (item.parentItem.parentItem.obj is Link) { component.active = false; Link link = (Link)item.parentItem.parentItem.obj; //link.components.Remove(component as ILinkable); link.components.Remove(component.GetType()); item.RemoveChildren(); InsBox.Items.Remove(item); } }
void btnClear_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { if (e is KeyEventArgs) { KeyEventArgs ke = (KeyEventArgs)e; if (ke.Key == Keys.Enter) { TextBox textbox = (TextBox)sender; textbox.Text = ""; } } else { consoletextbox.Text = ""; } }
void removeLinkMenuItem_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { InspectorInfo item = (InspectorInfo)InsBox.Items.ElementAt(InsBox.ItemIndex); if (!(item.obj is Link)) { Console.WriteLine("Error: The list item was not a link."); return; } Link link = (Link)item.obj; if (item.parentItem.obj is ObservableHashSet<Link>) { //Console.WriteLine("ObservableHashSet<Link> has been observed."); ObservableHashSet<Link> set = (ObservableHashSet<Link>)item.parentItem.obj; set.Remove(link); link.DeleteLink(); item.parentItem.DoubleClickItem(this); } }
void btnRemoveNode_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { Group g = GetActiveGroup(); if (g == null) return; if (g != null && g.fullSet.Contains(room.targetNode)) g.DeleteEntity(room.targetNode); if (room.targetNode != null) { //room.targetNode.active = false; room.targetNode.IsDeleted = true; room.targetNode = null; } if (inspectorArea.editNode != ActiveDefaultNode && !lstPresets.Items.Contains(inspectorArea.editNode)) { inspectorArea.InsBox.Items.Clear(); inspectorArea.rootitem = null; inspectorArea.editNode = null; } inspectorArea.propertyEditPanel.DisableControls(); }
void toggleBoolMenuItem_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { InspectorInfo item = (InspectorInfo)InsBox.Items.ElementAt(InsBox.ItemIndex); if (!(item.obj is bool)) { Console.WriteLine("Error: The list item was not a bool."); return; } //item.SetValue(!(bool)item.GetValue()); //SetItemValue(item, !(bool)item.GetValue()); }
void cmbPresets_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { ComboBox combobox = (ComboBox)sender; if (combobox.ItemIndex >= 0) { lstPresets_ItemIndexChanged(lstPresets, e); //HACKs } }
void toggleComponentMenuItem_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { InspectorInfo item = (InspectorInfo)InsBox.Items.ElementAt(InsBox.ItemIndex); if (!(item.obj is Component)) { Console.WriteLine("Error: The list item was not a component."); return; } Component component = (Component)item.obj; component.active = !component.active; }
void deletePresetMenuItem_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { String presetName = ((Node)lstPresets.selected()).name + ".xml"; string message = "Are you sure you want to delete this preset file? : " + presetName; PopUp.Prompt(message, action: delegate(bool del, object ans) { if (del) { Assets.deletePreset((Node)lstPresets.selected()); } return true; }); }
void toggleLinkMenuItem_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { InspectorInfo item = (InspectorInfo)InsBox.Items.ElementAt(InsBox.ItemIndex); if (!(item.obj is Link)) { Console.WriteLine("Error: The list item was not a link."); return; } Link link = (Link)item.obj; //link.linkComponent.active = !link.linkComponent.active; link.active = !link.active; }
void lstPresets_ItemIndexChanged(object sender, TomShane.Neoforce.Controls.EventArgs e) { ListBox listbox = (ListBox)sender; //remove panelControl elements (from groupPanel at the bottom) if (inspectorArea.propertyEditPanel.panelControls.Keys.Count > 0) //DisableControls(groupPanel); { inspectorArea.propertyEditPanel.DisableControls(); } if (listbox.ItemIndex < 0) return; Node newEdit = (Node)listbox.Items.ElementAt(listbox.ItemIndex); //lblEditNodeName.Text = ui.editNode.name; inspectorArea.lblInspectorAddress.Text = "/" + newEdit.ToString(); ui.spawnerNode = newEdit; //ResetInspectorBox(inspectorArea.InsBox, ui.editNode); inspectorArea.ResetInspectorBox(newEdit); if (cbPresets.ItemIndex != lstPresets.ItemIndex) { cbPresets.ItemIndex = lstPresets.ItemIndex; } }
/// <summary> /// When the create button is clicked /// </summary> void CreateBtn_Click(object sender, TomShane.Neoforce.Controls.EventArgs e) { // Game.NetManager.SendMessage(new Bricklayer.Client.Networking.Messages.JoinRoomMessage(worldName)); MainWindow.ScreenManager.SwitchScreen(new GameScreen(new Action((new Action(() => { Game.NetManager.Send(new Bricklayer.Common.Networking.Messages.CreateRoomMessage(txtName.Text, txtDescription.Text)); }))))); Close(); }
/// <summary> /// Handle the event where Enter is pressed. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void EnterPressed(object sender, TomShane.Neoforce.Controls.EventArgs e) { lastEnterPress = DateTime.Now; }
protected override void DrawControl(TomShane.Neoforce.Controls.Renderer renderer, Rectangle rect, GameTime gameTime) { renderer.Draw(BackGroundTexture, rect, new Color(0.0f, 0.0f, 0.0f, 0.6f)); }