Mercurial > repos > IBBoard.WarFoundry.GUI.GTK
comparison FrmMainWindow.cs @ 96:b4416ca69153
Fixes #309: Add initial preference dialog with language support
* Hook up events so that everything translates itself when languages change
Re #308: Make GTK# UI translatable
* Update English and French translations (using Google Translate)
* Begin to standardise on WinForms names for widgets for maximum reusability of translation files
* Make some preference and credit buttons translatable
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Sun, 02 Jan 2011 15:12:31 +0000 |
parents | ea4069bbe6e9 |
children | fac0636ae13b |
comparison
equal
deleted
inserted
replaced
95:ea4069bbe6e9 | 96:b4416ca69153 |
---|---|
146 commandStack = new CommandStack(); | 146 commandStack = new CommandStack(); |
147 commandStack.CommandStackUpdated += new MethodInvoker(commandStack_CommandStackUpdated); | 147 commandStack.CommandStackUpdated += new MethodInvoker(commandStack_CommandStackUpdated); |
148 WarFoundryCore.GameSystemChanged += new GameSystemChangedDelegate(OnGameSystemChanged); | 148 WarFoundryCore.GameSystemChanged += new GameSystemChangedDelegate(OnGameSystemChanged); |
149 WarFoundryCore.ArmyChanged += new ArmyChangedDelegate(OnArmyChanged); | 149 WarFoundryCore.ArmyChanged += new ArmyChangedDelegate(OnArmyChanged); |
150 Destroyed += new EventHandler(OnWindowDestroyed); | 150 Destroyed += new EventHandler(OnWindowDestroyed); |
151 TranslateWindow(); | 151 Translation.TranslationChanged += Retranslate; |
152 Translate(); | |
152 UnitAddedMethod = new ObjectAddDelegate(OnUnitAdded); | 153 UnitAddedMethod = new ObjectAddDelegate(OnUnitAdded); |
153 UnitRemovedMethod = new ObjectRemoveDelegate(OnUnitRemoved); | 154 UnitRemovedMethod = new ObjectRemoveDelegate(OnUnitRemoved); |
154 PointsValueChangedMethod = new DoubleValChangedDelegate(OnPointsValueChanged); | 155 PointsValueChangedMethod = new DoubleValChangedDelegate(OnPointsValueChanged); |
155 FailedUnitRequirementMethod = new FailedUnitRequirementDelegate(OnFailedUnitRequirement); | 156 FailedUnitRequirementMethod = new FailedUnitRequirementDelegate(OnFailedUnitRequirement); |
156 UnitNameChangedMethod = new StringValChangedDelegate(OnUnitNameChanged); | 157 UnitNameChangedMethod = new StringValChangedDelegate(OnUnitNameChanged); |
217 } | 218 } |
218 } | 219 } |
219 } | 220 } |
220 } | 221 } |
221 | 222 |
222 private void TranslateWindow() | 223 protected override void Translate() |
223 { | 224 { |
224 ControlTranslator.TranslateWidget(this); | 225 base.Translate(); |
225 SetAppTitle(); | 226 SetAppTitle(); |
226 treeUnits.GetColumn(0).Title = Translation.GetTranslation("armyCategoryColumnTitle", "categories"); | 227 treeUnits.GetColumn(0).Title = Translation.GetTranslation("armyCategoryColumnTitle", "categories"); |
228 } | |
229 | |
230 private void Retranslate() | |
231 { | |
232 Translate(); | |
233 } | |
234 | |
235 public override void Dispose() | |
236 { | |
237 Translation.TranslationChanged -= Retranslate; | |
238 base.Dispose(); | |
227 } | 239 } |
228 | 240 |
229 private void FileLoadingFinished(List<FileLoadFailure> failures) | 241 private void FileLoadingFinished(List<FileLoadFailure> failures) |
230 { | 242 { |
231 foreach (FileLoadFailure failure in failures) | 243 foreach (FileLoadFailure failure in failures) |