annotate FrmArmyTree.cs @ 225:5233147ca7e4

Re #101: Make army names and sizes modifiable after creation * Add form for editing name and size * Add edit options from army tree * Add edit options from Edit menu
author IBBoard <dev@ibboard.co.uk>
date Mon, 29 Aug 2011 20:06:54 +0100
parents 417d3f75a752
children 4ada3252d1ea
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
1 // This file (FrmArmyTree.cs) is a part of the IBBoard.WarFoundry.GUI.WinForms project and is copyright 2009 IBBoard.
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
2 //
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
3 // The file and the library/program it is in are licensed and distributed, without warranty, under the GNU Affero GPL license, either version 3 of the License or (at your option) any later version. Please see COPYING for more information and the full license.
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
4
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
5 using System;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
6 using System.Drawing;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
7 using System.Collections.Generic;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
8 using System.ComponentModel;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
9 using System.Windows.Forms;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
10 using IBBoard.Commands;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
11 using IBBoard.Lang;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
12 using IBBoard.Windows.Forms.I18N;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
13 using IBBoard.Windows.Forms;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
14 using IBBoard.WarFoundry.API;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
15 using IBBoard.WarFoundry.API.Commands;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
16 using IBBoard.WarFoundry.API.Objects;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
17
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
18 namespace IBBoard.WarFoundry.GUI.WinForms
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
19 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
20 /// <summary>
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
21 /// Summary description for FrmArmyTree.
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
22 /// </summary>
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
23 public class FrmArmyTree : IBBoard.Windows.Forms.IBBForm
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
24 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
25 private System.Windows.Forms.TreeView treeView;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
26 private IContainer components;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
27 private Dictionary<string, TreeNode> nodes;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
28 private System.Windows.Forms.ContextMenu contextMenu;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
29 private IBBMenuItem miDeleteUnit;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
30 private IBBMenuItem miEditUnit;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
31
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
32 private ObjectAddDelegate UnitAddedMethod;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
33 private ObjectRemoveDelegate UnitRemovedMethod;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
34 private StringValChangedDelegate UnitNameChangedMethod, ArmyNameChangedMethod, TreeNameChangedMethod;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
35 private ToolBar toolBar;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
36 private IBBToolBarButton bttnEdit;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
37 private IBBToolBarButton bttnDelete;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
38 private ImageList imageList;
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
39 private IBBMenuItem miEditArmy;
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
40 private CommandStack commandStack;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
41 public GameSystem CurrentGameSystem
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
42 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
43 get { return WarFoundryCore.CurrentGameSystem; }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
44 set { WarFoundryCore.CurrentGameSystem = value; }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
45 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
46
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
47 public FrmArmyTree(CommandStack cmdStack)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
48 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
49 commandStack = cmdStack;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
50 InitializeComponent();
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
51 UnitAddedMethod = new ObjectAddDelegate(UnitAdded);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
52 UnitRemovedMethod = new ObjectRemoveDelegate(UnitRemoved);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
53 UnitNameChangedMethod = new StringValChangedDelegate(UpdateUnitName);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
54 ArmyNameChangedMethod = new StringValChangedDelegate(UpdateArmyName);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
55 TreeNameChangedMethod = new StringValChangedDelegate(FrmArmyTree_TreeNameChanged);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
56 nodes = new Dictionary<string, TreeNode>();
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
57 this.Name = "ArmyTree";
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
58 WarFoundryCore.ArmyChanged+= new ArmyChangedDelegate(FrmArmyTree_ArmyChanged);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
59 TranslateForm();
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
60 Translation.TranslationChanged += new MethodInvoker(TranslateForm);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
61 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
62
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
63 private void TranslateForm()
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
64 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
65 ControlTranslator.TranslateControl(this);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
66
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
67 foreach (Component comp in components.Components)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
68 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
69 ControlTranslator.TranslateComponent(comp);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
70 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
71
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
72 foreach (IBBMenuItem mi in contextMenu.MenuItems)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
73 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
74 ControlTranslator.TranslateComponent(mi);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
75 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
76 foreach (TreeNode node in nodes.Values)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
77 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
78 node.Text = CreateNodeName((ICostedWarFoundryObject)node.Tag);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
79 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
80 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
81
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
82 /// <summary>
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
83 /// Clean up any resources being used.
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
84 /// </summary>
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
85 protected override void Dispose( bool disposing )
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
86 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
87 if( disposing )
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
88 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
89 if(components != null)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
90 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
91 components.Dispose();
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
92 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
93 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
94 base.Dispose( disposing );
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
95 Translation.TranslationChanged -= new MethodInvoker(TranslateForm);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
96 WarFoundryCore.ArmyChanged -= new ArmyChangedDelegate(FrmArmyTree_ArmyChanged);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
97 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
98
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
99 #region Windows Form Designer generated code
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
100 /// <summary>
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
101 /// Required method for Designer support - do not modify
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
102 /// the contents of this method with the code editor.
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
103 /// </summary>
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
104 private void InitializeComponent()
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
105 {
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
106 this.components = new System.ComponentModel.Container();
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
107 System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmArmyTree));
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
108 this.contextMenu = new System.Windows.Forms.ContextMenu();
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
109 this.miEditUnit = new IBBoard.Windows.Forms.IBBMenuItem();
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
110 this.miDeleteUnit = new IBBoard.Windows.Forms.IBBMenuItem();
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
111 this.imageList = new System.Windows.Forms.ImageList(this.components);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
112 this.toolBar = new System.Windows.Forms.ToolBar();
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
113 this.bttnEdit = new IBBoard.Windows.Forms.IBBToolBarButton();
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
114 this.bttnDelete = new IBBoard.Windows.Forms.IBBToolBarButton();
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
115 this.treeView = new System.Windows.Forms.TreeView();
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
116 this.miEditArmy = new IBBoard.Windows.Forms.IBBMenuItem();
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
117 this.SuspendLayout();
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
118 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
119 // contextMenu
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
120 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
121 this.contextMenu.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
122 this.miEditArmy,
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
123 this.miEditUnit,
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
124 this.miDeleteUnit});
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
125 this.contextMenu.Popup += new System.EventHandler(this.contextMenu_Popup);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
126 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
127 // miEditUnit
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
128 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
129 this.miEditUnit.Index = 1;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
130 this.miEditUnit.Text = "&edit unit";
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
131 this.miEditUnit.Click += new System.EventHandler(this.miEdit_Click);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
132 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
133 // miDeleteUnit
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
134 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
135 this.miDeleteUnit.Index = 2;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
136 this.miDeleteUnit.Text = "&delete unit";
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
137 this.miDeleteUnit.Click += new System.EventHandler(this.miDelete_Click);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
138 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
139 // imageList
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
140 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
141 this.imageList.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList.ImageStream")));
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
142 this.imageList.TransparentColor = System.Drawing.Color.Transparent;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
143 this.imageList.Images.SetKeyName(0, "gtk-edit.png");
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
144 this.imageList.Images.SetKeyName(1, "edit-delete.png");
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
145 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
146 // toolBar
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
147 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
148 this.toolBar.Buttons.AddRange(new System.Windows.Forms.ToolBarButton[] {
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
149 this.bttnEdit,
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
150 this.bttnDelete});
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
151 this.toolBar.ButtonSize = new System.Drawing.Size(16, 16);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
152 this.toolBar.DropDownArrows = true;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
153 this.toolBar.ImageList = this.imageList;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
154 this.toolBar.Location = new System.Drawing.Point(0, 0);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
155 this.toolBar.Name = "toolBar";
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
156 this.toolBar.ShowToolTips = true;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
157 this.toolBar.Size = new System.Drawing.Size(240, 28);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
158 this.toolBar.TabIndex = 3;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
159 this.toolBar.ButtonClick += new System.Windows.Forms.ToolBarButtonClickEventHandler(this.toolBar_ButtonClick);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
160 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
161 // bttnEdit
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
162 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
163 this.bttnEdit.Enabled = false;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
164 this.bttnEdit.ImageIndex = 0;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
165 this.bttnEdit.Name = "bttnEdit";
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
166 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
167 // bttnDelete
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
168 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
169 this.bttnDelete.Enabled = false;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
170 this.bttnDelete.ImageIndex = 1;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
171 this.bttnDelete.Name = "bttnDelete";
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
172 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
173 // treeView
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
174 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
175 this.treeView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
176 | System.Windows.Forms.AnchorStyles.Left)
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
177 | System.Windows.Forms.AnchorStyles.Right)));
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
178 this.treeView.ContextMenu = this.contextMenu;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
179 this.treeView.FullRowSelect = true;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
180 this.treeView.Location = new System.Drawing.Point(0, 28);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
181 this.treeView.Name = "treeView";
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
182 this.treeView.Size = new System.Drawing.Size(240, 250);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
183 this.treeView.TabIndex = 0;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
184 this.treeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView_AfterSelect);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
185 this.treeView.DoubleClick += new System.EventHandler(this.treeView_DoubleClick);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
186 this.treeView.MouseDown += new System.Windows.Forms.MouseEventHandler(this.treeView_MouseDown);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
187 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
188 // miEditArmy
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
189 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
190 this.miEditArmy.Index = 0;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
191 this.miEditArmy.Text = "&edit army";
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
192 this.miEditArmy.Click += new System.EventHandler(this.miEditArmy_Click);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
193 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
194 // FrmArmyTree
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
195 //
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
196 this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
197 this.ClientSize = new System.Drawing.Size(240, 277);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
198 this.ControlBox = false;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
199 this.Controls.Add(this.toolBar);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
200 this.Controls.Add(this.treeView);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
201 this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
202 this.MaximizeBox = false;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
203 this.MinimizeBox = false;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
204 this.Name = "FrmArmyTree";
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
205 this.Text = "FrmArmyTree";
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
206 this.ResumeLayout(false);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
207 this.PerformLayout();
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
208
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
209 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
210 #endregion
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
211
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
212 private void ClearArmy()
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
213 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
214 nodes.Clear();
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
215 treeView.Nodes.Clear();
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
216 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
217
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
218 private void SetArmy(Army army)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
219 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
220 ClearArmy();
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
221
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
222 if (army != null)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
223 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
224 ArmyCategory[] cats = army.Categories;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
225 TreeNode[] catNodes = new TreeNode[cats.Length];
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
226 Unit[] units;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
227
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
228 for (int i = 0; i < cats.Length; i++)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
229 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
230 ArmyCategory cat = cats[i];
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
231 units = army.GetUnits(cat);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
232 cat.NameChanged += TreeNameChangedMethod;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
233 cat.PointsValueChanged += NodePointsValueChanged;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
234 TreeNode[] unitNodes = new TreeNode[units.Length];
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
235 TreeNode temp;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
236
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
237 for (int j = 0; j < units.Length; j++)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
238 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
239 unitNodes[j] = CreateTreeNode(units[j]);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
240 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
241
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
242 temp = new TreeNode(CreateNodeName(cat), unitNodes);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
243 temp.Tag = cat;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
244 catNodes[i] = temp;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
245 nodes[cat.ID] = temp;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
246 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
247
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
248 TreeNode root = new TreeNode(CreateNodeName(army), catNodes);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
249 root.Tag = army;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
250 army.PointsValueChanged += NodePointsValueChanged;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
251 nodes[army.ID] = root;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
252 treeView.Nodes.Add(root);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
253 root.ExpandAll();
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
254 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
255 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
256
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
257 private string CreateNodeName(ICostedWarFoundryObject obj)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
258 {
193
eaa7b639d390 * Fix build issues
IBBoard <dev@ibboard.co.uk>
parents: 190
diff changeset
259 return Translation.GetTranslation("treeNodeText", "{0} ({1} pts)", obj.Name, obj.Points, CurrentGameSystem.GetPointsAbbrev(obj.Points));
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
260 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
261
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
262 private void NodePointsValueChanged(WarFoundryObject obj, double oldValue, double newValue)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
263 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
264 if (obj is ICostedWarFoundryObject)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
265 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
266 SetNodeName(obj);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
267 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
268 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
269
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
270 private void SetNodeName(WarFoundryObject obj)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
271 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
272 TreeNode node = nodes[obj.ID];
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
273
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
274 if (node != null)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
275 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
276 node.Text = CreateNodeName((ICostedWarFoundryObject)obj);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
277 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
278 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
279
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
280 private TreeNode CreateTreeNode(Unit unit)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
281 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
282 TreeNode temp = new TreeNode(CreateNodeName(unit));
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
283 temp.Tag = unit;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
284 unit.NameChanged+= UnitNameChangedMethod;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
285 unit.PointsValueChanged += NodePointsValueChanged;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
286 nodes[unit.ID] = temp;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
287 return temp;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
288 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
289
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
290 public void FrmArmyTree_ArmyChanged(Army oldArmy, Army newArmy)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
291 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
292 if (oldArmy != null)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
293 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
294 oldArmy.UnitAdded -= UnitAddedMethod;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
295 oldArmy.UnitRemoved -= UnitRemovedMethod;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
296 oldArmy.PointsValueChanged -= NodePointsValueChanged;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
297 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
298
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
299 if (newArmy != null)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
300 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
301 newArmy.UnitAdded += UnitAddedMethod;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
302 newArmy.UnitRemoved += UnitRemovedMethod;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
303 newArmy.PointsValueChanged += NodePointsValueChanged;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
304 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
305
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
306 SetArmy(newArmy);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
307 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
308
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
309 private void UnitAdded(WarFoundryObject obj)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
310 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
311 if (obj is Unit)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
312 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
313 Unit unit = (Unit)obj;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
314 ArmyCategory cat = unit.Category;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
315 TreeNode parent = nodes[cat.ID];
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
316 TreeNode unitNode = CreateTreeNode(unit);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
317 parent.Nodes.Add(unitNode);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
318 parent.Expand(); //make sure it's expanded
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
319 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
320 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
321
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
322 public new FrmMain MdiParent
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
323 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
324 get { return (FrmMain) base.MdiParent; }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
325 set { base.MdiParent = value; }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
326 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
327
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
328 private void UnitRemoved(WarFoundryObject obj)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
329 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
330 if (obj is Unit)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
331 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
332 Unit unit = (Unit)obj;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
333 RemoveUnitFromTree(unit);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
334 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
335 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
336
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
337 private void RemoveUnitFromTree(Unit unit)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
338 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
339 TreeNode unitNode = nodes[unit.ID];
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
340 unit.NameChanged-= UnitNameChangedMethod;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
341
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
342 if (unitNode!=null)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
343 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
344 unitNode.Remove();
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
345 nodes.Remove(unit.ID);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
346 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
347 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
348
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
349
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
350 private void contextMenu_Popup(object sender, System.EventArgs e)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
351 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
352 TreeNode node = treeView.SelectedNode;
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
353 Object tag = (node != null) ? node.Tag : null;
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
354
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
355 if (tag is Unit)
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
356 {
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
357 miDeleteUnit.Visible = true;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
358 miEditUnit.Visible = true;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
359 miEditArmy.Visible = false;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
360 }
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
361 else if (tag is Army)
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
362 {
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
363 miDeleteUnit.Visible = false;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
364 miEditUnit.Visible = false;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
365 miEditArmy.Visible = true;
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
366 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
367 else
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
368 {
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
369 miDeleteUnit.Visible = false;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
370 miEditUnit.Visible = false;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
371 miEditArmy.Visible = false;
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
372 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
373 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
374
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
375 private void treeView_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
376 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
377 if (e.Button == MouseButtons.Right)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
378 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
379 TreeNode tn = treeView.GetNodeAt(e.X, e.Y);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
380
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
381 if (tn!=null)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
382 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
383 treeView.SelectedNode = tn;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
384 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
385 else
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
386 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
387 treeView.SelectedNode = null;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
388 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
389 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
390 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
391
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
392 private void miDelete_Click(object sender, System.EventArgs e)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
393 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
394 DeleteUnit();
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
395 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
396
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
397 private void DeleteUnit()
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
398 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
399
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
400 TreeNode selected = treeView.SelectedNode;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
401
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
402 if (selected.Tag != null && selected.Tag is Unit)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
403 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
404 Unit unit = (Unit) selected.Tag;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
405 commandStack.Execute(new RemoveUnitCommand(unit));
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
406 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
407 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
408
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
409 private void miEdit_Click(object sender, System.EventArgs e)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
410 {
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
411 EditTreeItem();
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
412 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
413
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
414 private void treeView_DoubleClick(object sender, System.EventArgs e)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
415 {
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
416 EditTreeItem();
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
417 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
418
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
419 private void EditTreeItem()
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
420 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
421 TreeNode selected = treeView.SelectedNode;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
422 object tagData = selected.Tag;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
423
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
424 if (tagData is Unit)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
425 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
426 Unit unit = (Unit) tagData;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
427 MdiParent.OpenUnitDialog(unit);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
428 }
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
429 else if (tagData is Army)
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
430 {
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
431 EditArmy((Army)tagData);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
432 }
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
433 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
434
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
435 private void UpdateUnitName(WarFoundryObject obj, string oldValue, string newValue)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
436 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
437 if (obj is ICostedWarFoundryObject)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
438 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
439 SetNodeName(obj);
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
440 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
441 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
442
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
443 private void UpdateArmyName(WarFoundryObject obj, string oldValue, string newValue)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
444 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
445 if (obj is Army)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
446 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
447 Army army = (Army)obj;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
448 TreeNode node = treeView.Nodes[0];
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
449
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
450 if (node!=null)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
451 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
452 node.Text = army.Name;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
453 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
454 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
455 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
456
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
457 private void FrmArmyTree_TreeNameChanged(WarFoundryObject obj, string oldValue, string newValue)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
458 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
459 TreeNode node = nodes[obj.ID];
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
460
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
461 if (node!=null)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
462 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
463 node.Text = obj.Name;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
464 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
465 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
466
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
467 private void toolBar_ButtonClick(object sender, ToolBarButtonClickEventArgs e)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
468 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
469 if (e.Button == bttnDelete)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
470 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
471 DeleteUnit();
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
472 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
473 else if (e.Button == bttnEdit)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
474 {
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
475 EditTreeItem();
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
476 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
477 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
478
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
479 private void treeView_AfterSelect(object sender, TreeViewEventArgs e)
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
480 {
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
481 TreeNode node = treeView.SelectedNode;
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
482
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
483 bttnDelete.Enabled = (node != null && node.Tag is Unit);
225
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
484 bttnEdit.Enabled = (node != null && (node.Tag is Unit || node.Tag is Army));
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
485 }
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
486
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
487 private void miEditArmy_Click(object sender, EventArgs e)
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
488 {
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
489 Army army = treeView.SelectedNode.Tag as Army;
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
490 EditArmy(army);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
491 }
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
492
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
493 private void EditArmy(Army army)
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
494 {
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
495 FrmEditArmy editForm = new FrmEditArmy(commandStack, army);
5233147ca7e4 Re #101: Make army names and sizes modifiable after creation
IBBoard <dev@ibboard.co.uk>
parents: 198
diff changeset
496 editForm.ShowDialog(this.ParentForm);
190
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
497 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
498 }
1ca23c47345a Re #327: Point names used in the GUI
snowblizz
parents: 159
diff changeset
499 }