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