Mercurial > repos > IBDev-IBBoard.WarFoundry.GUI.WinForms
changeset 140:60c795eca8de WarFoundry_v0.1beta8_Winforms
Re #265: Add language preference UI
* Add initial preferences dialog with translation options
* Re-translate main form when language changes
* Save translation for later use
Only known bug on initial quick implementation is that open unit dialogs become named "{0}" (which should be replaced by unit name), but this should be quite a simple fix
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Sun, 11 Apr 2010 19:55:03 +0000 |
parents | b3eec7735006 |
children | 4aabe514c868 |
files | FrmMain.cs FrmPreferences.Designer.cs FrmPreferences.cs FrmPreferences.resx IBBoard.WarFoundry.GUI.WinForms.csproj translations/en.translation translations/se.translation translations/sv.translation |
diffstat | 8 files changed, 824 insertions(+), 461 deletions(-) [+] |
line wrap: on
line diff
--- a/FrmMain.cs Tue Apr 06 13:54:37 2010 +0000 +++ b/FrmMain.cs Sun Apr 11 19:55:03 2010 +0000 @@ -89,7 +89,9 @@ private IBBToolStripSplitButton bttnUndo; private IBBToolStripSplitButton bttnRedo; private ToolStrip catToolStrip; - private ToolStripPanel toolStripPanel; + private ToolStripPanel toolStripPanel; + private ToolStripSeparator toolStripSeparator4; + private ToolStripMenuItem miPreferences; private IBBToolStripMenuItem miAbout; /// <summary> @@ -130,12 +132,11 @@ { log.Error("Translation loading failed for language " + Preferences["language"].ToString(), ex); MessageBox.Show(this, "Translation loading failed for language " + Preferences["language"].ToString(), "Translation failure", MessageBoxButtons.OK, MessageBoxIcon.Error); - } - - ControlTranslator.TranslateControls(Controls); - ControlTranslator.TranslateComponents(components.Components); - ControlTranslator.TranslateComponent(openArmyDialog); - ControlTranslator.TranslateComponent(saveArmyDialog); + } + + Translation.TranslationChanged += new MethodInvoker(TranslationChanged); + + TranslateControls(); unitWindows = new Dictionary<string, FrmUnit>(); WarFoundryCore.GameSystemChanged+= new GameSystemChangedDelegate(FrmMain_GameSystemChanged); @@ -159,6 +160,19 @@ WarFoundryLoader.GetDefault().RegisterFactory(WarFoundryXmlFactory.GetFactory()); WarFoundryLoader.GetDefault().FileLoadingFinished += FileLoadingFinished; WarFoundrySaver.SetFileSaver(new WarFoundryXmlSaver()); + } + + private void TranslateControls() + { + ControlTranslator.TranslateControls(Controls); + ControlTranslator.TranslateComponents(components.Components); + ControlTranslator.TranslateComponent(openArmyDialog); + ControlTranslator.TranslateComponent(saveArmyDialog); + } + + void TranslationChanged() + { + TranslateControls(); } public static string DataPath @@ -211,363 +225,379 @@ /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() - { - this.components = new System.ComponentModel.Container(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMain)); - this.undoMenu = new System.Windows.Forms.ContextMenu(); - this.redoMenu = new System.Windows.Forms.ContextMenu(); - this.mainMenu = new System.Windows.Forms.MainMenu(this.components); - this.openArmyDialog = new System.Windows.Forms.OpenFileDialog(); - this.saveArmyDialog = new System.Windows.Forms.SaveFileDialog(); - this.statusBarTimer = new System.Windows.Forms.Timer(this.components); - this.menuStrip = new System.Windows.Forms.MenuStrip(); - this.menuFile = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.miNewArmy = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.miOpenArmy = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.miSaveArmy = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.miSaveArmyAs = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.miExportArmyAs = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.miExportArmyAsBasicHTML = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.miCloseArmy = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator(); - this.miReloadFiles = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); - this.miExit = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.menuEdit = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.miUndo = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.miRedo = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.menuHelp = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.miAbout = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); - this.mainToolStrip = new System.Windows.Forms.ToolStrip(); - this.bttnNewArmy = new IBBoard.Windows.Forms.IBBToolStripButton(); - this.bttnOpenArmy = new IBBoard.Windows.Forms.IBBToolStripButton(); - this.bttnSaveArmy = new IBBoard.Windows.Forms.IBBToolStripButton(); - this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator(); - this.bttnUndo = new IBBoard.Windows.Forms.IBBToolStripSplitButton(); - this.bttnRedo = new IBBoard.Windows.Forms.IBBToolStripSplitButton(); - this.catToolStrip = new System.Windows.Forms.ToolStrip(); - this.statusBar = new IBBoard.Windows.Forms.ColorableStatusBar(); - this.sbMainPanel = new IBBoard.Windows.Forms.ColorableStatusBarPanel(); - this.sbErrorPanel = new IBBoard.Windows.Forms.ColorableStatusBarPanel(); - this.sbPointsPanel = new IBBoard.Windows.Forms.ColorableStatusBarPanel(); - this.toolStripPanel = new System.Windows.Forms.ToolStripPanel(); - this.menuStrip.SuspendLayout(); - this.mainToolStrip.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize) (this.sbMainPanel)).BeginInit(); - ((System.ComponentModel.ISupportInitialize) (this.sbErrorPanel)).BeginInit(); - ((System.ComponentModel.ISupportInitialize) (this.sbPointsPanel)).BeginInit(); - this.SuspendLayout(); - // - // saveArmyDialog - // - this.saveArmyDialog.Title = "Translatable:saveArmyDialog"; - // - // statusBarTimer - // - this.statusBarTimer.Interval = 5000; - this.statusBarTimer.Tick += new System.EventHandler(this.statusBarTimer_Tick); - // - // menuStrip - // - this.menuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.menuFile, - this.menuEdit, - this.menuHelp}); - this.menuStrip.Location = new System.Drawing.Point(0, 0); - this.menuStrip.Name = "menuStrip"; - this.menuStrip.Size = new System.Drawing.Size(790, 24); - this.menuStrip.TabIndex = 6; - this.menuStrip.Text = "menuStrip1"; - // - // menuFile - // - this.menuFile.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.miNewArmy, - this.miOpenArmy, - this.miSaveArmy, - this.miSaveArmyAs, - this.miExportArmyAs, - this.miCloseArmy, - this.toolStripSeparator1, - this.miReloadFiles, - this.toolStripSeparator2, - this.miExit}); - this.menuFile.Name = "menuFile"; - this.menuFile.Size = new System.Drawing.Size(33, 20); - this.menuFile.Text = "&file"; - // - // miNewArmy - // - this.miNewArmy.Name = "miNewArmy"; - this.miNewArmy.Size = new System.Drawing.Size(164, 22); - this.miNewArmy.Text = "&new army"; - this.miNewArmy.Click += new System.EventHandler(this.miNewArmy_Click); - // - // miOpenArmy - // - this.miOpenArmy.Name = "miOpenArmy"; - this.miOpenArmy.Size = new System.Drawing.Size(164, 22); - this.miOpenArmy.Text = "&open army"; - this.miOpenArmy.Click += new System.EventHandler(this.miOpenArmy_Click); - // - // miSaveArmy - // - this.miSaveArmy.Enabled = false; - this.miSaveArmy.Name = "miSaveArmy"; - this.miSaveArmy.Size = new System.Drawing.Size(164, 22); - this.miSaveArmy.Text = "&save army"; - this.miSaveArmy.Click += new System.EventHandler(this.miSaveArmy_Click); - // - // miSaveArmyAs - // - this.miSaveArmyAs.Enabled = false; - this.miSaveArmyAs.Name = "miSaveArmyAs"; - this.miSaveArmyAs.Size = new System.Drawing.Size(164, 22); - this.miSaveArmyAs.Text = "save army &as..."; - this.miSaveArmyAs.Click += new System.EventHandler(this.miSaveArmyAs_Click); - // - // miExportArmyAs - // - this.miExportArmyAs.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.miExportArmyAsBasicHTML}); - this.miExportArmyAs.Enabled = false; - this.miExportArmyAs.Name = "miExportArmyAs"; - this.miExportArmyAs.Size = new System.Drawing.Size(164, 22); - this.miExportArmyAs.Text = "export army as..."; - // - // miExportArmyAsBasicHTML - // - this.miExportArmyAsBasicHTML.Name = "miExportArmyAsBasicHTML"; - this.miExportArmyAsBasicHTML.Size = new System.Drawing.Size(130, 22); - this.miExportArmyAsBasicHTML.Text = "&basic html"; - this.miExportArmyAsBasicHTML.Click += new System.EventHandler(this.miExportArmyAsBasicHTML_Click); - // - // miCloseArmy - // - this.miCloseArmy.Enabled = false; - this.miCloseArmy.Name = "miCloseArmy"; - this.miCloseArmy.Size = new System.Drawing.Size(164, 22); - this.miCloseArmy.Text = "&close army"; - this.miCloseArmy.Click += new System.EventHandler(this.miCloseArmy_Click); - // - // toolStripSeparator1 - // - this.toolStripSeparator1.Name = "toolStripSeparator1"; - this.toolStripSeparator1.Size = new System.Drawing.Size(161, 6); - // - // miReloadFiles - // - this.miReloadFiles.Name = "miReloadFiles"; - this.miReloadFiles.Size = new System.Drawing.Size(164, 22); - this.miReloadFiles.Text = "&reload files"; - this.miReloadFiles.Click += new System.EventHandler(this.miReloadFiles_Click); - // - // toolStripSeparator2 - // - this.toolStripSeparator2.Name = "toolStripSeparator2"; - this.toolStripSeparator2.Size = new System.Drawing.Size(161, 6); - // - // miExit - // - this.miExit.Name = "miExit"; - this.miExit.Size = new System.Drawing.Size(164, 22); - this.miExit.Text = "e&xit"; - this.miExit.Click += new System.EventHandler(this.miExit_Click); - // - // menuEdit - // - this.menuEdit.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.miUndo, - this.miRedo}); - this.menuEdit.Name = "menuEdit"; - this.menuEdit.Size = new System.Drawing.Size(36, 20); - this.menuEdit.Text = "&edit"; - // - // miUndo - // - this.miUndo.Enabled = false; - this.miUndo.Name = "miUndo"; - this.miUndo.Size = new System.Drawing.Size(106, 22); - this.miUndo.Text = "&undo"; - this.miUndo.Click += new System.EventHandler(this.miUndo_Click); - // - // miRedo - // - this.miRedo.Enabled = false; - this.miRedo.Name = "miRedo"; - this.miRedo.Size = new System.Drawing.Size(106, 22); - this.miRedo.Text = "&redo"; - this.miRedo.Click += new System.EventHandler(this.miRedo_Click); - // - // menuHelp - // - this.menuHelp.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.miAbout}); - this.menuHelp.Name = "menuHelp"; - this.menuHelp.Size = new System.Drawing.Size(39, 20); - this.menuHelp.Text = "&help"; - // - // miAbout - // - this.miAbout.Name = "miAbout"; - this.miAbout.Size = new System.Drawing.Size(109, 22); - this.miAbout.Text = "&about"; - this.miAbout.Click += new System.EventHandler(this.miAbout_Click); - // - // mainToolStrip - // - this.mainToolStrip.Dock = System.Windows.Forms.DockStyle.None; - this.mainToolStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.bttnNewArmy, - this.bttnOpenArmy, - this.bttnSaveArmy, - this.toolStripSeparator3, - this.bttnUndo, - this.bttnRedo}); - this.mainToolStrip.Location = new System.Drawing.Point(0, 24); - this.mainToolStrip.Name = "mainToolStrip"; - this.mainToolStrip.Size = new System.Drawing.Size(151, 25); - this.mainToolStrip.TabIndex = 8; - // - // bttnNewArmy - // - this.bttnNewArmy.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; - this.bttnNewArmy.Image = global::IBBoard.WarFoundry.GUI.WinForms.Properties.Resources.document_new; - this.bttnNewArmy.ImageTransparentColor = System.Drawing.Color.Magenta; - this.bttnNewArmy.Name = "bttnNewArmy"; - this.bttnNewArmy.Size = new System.Drawing.Size(23, 22); - this.bttnNewArmy.Text = "new army"; - this.bttnNewArmy.Click += new System.EventHandler(this.miNewArmy_Click); - // - // bttnOpenArmy - // - this.bttnOpenArmy.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; - this.bttnOpenArmy.Image = global::IBBoard.WarFoundry.GUI.WinForms.Properties.Resources.document_open; - this.bttnOpenArmy.ImageTransparentColor = System.Drawing.Color.Magenta; - this.bttnOpenArmy.Name = "bttnOpenArmy"; - this.bttnOpenArmy.Size = new System.Drawing.Size(23, 22); - this.bttnOpenArmy.Text = "open army"; - this.bttnOpenArmy.Click += new System.EventHandler(this.miOpenArmy_Click); - // - // bttnSaveArmy - // - this.bttnSaveArmy.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; - this.bttnSaveArmy.Enabled = false; - this.bttnSaveArmy.Image = global::IBBoard.WarFoundry.GUI.WinForms.Properties.Resources.document_save; - this.bttnSaveArmy.ImageTransparentColor = System.Drawing.Color.Magenta; - this.bttnSaveArmy.Name = "bttnSaveArmy"; - this.bttnSaveArmy.Size = new System.Drawing.Size(23, 22); - this.bttnSaveArmy.Text = "save army"; - this.bttnSaveArmy.Click += new System.EventHandler(this.miSaveArmy_Click); - // - // toolStripSeparator3 - // - this.toolStripSeparator3.Name = "toolStripSeparator3"; - this.toolStripSeparator3.Size = new System.Drawing.Size(6, 25); - // - // bttnUndo - // - this.bttnUndo.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; - this.bttnUndo.Enabled = false; - this.bttnUndo.Image = global::IBBoard.WarFoundry.GUI.WinForms.Properties.Resources.edit_undo; - this.bttnUndo.ImageTransparentColor = System.Drawing.Color.Magenta; - this.bttnUndo.Name = "bttnUndo"; - this.bttnUndo.Size = new System.Drawing.Size(32, 22); - this.bttnUndo.Text = "undo"; - this.bttnUndo.ButtonClick += new System.EventHandler(this.miUndo_Click); - // - // bttnRedo - // - this.bttnRedo.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; - this.bttnRedo.Enabled = false; - this.bttnRedo.Image = global::IBBoard.WarFoundry.GUI.WinForms.Properties.Resources.edit_redo; - this.bttnRedo.ImageTransparentColor = System.Drawing.Color.Magenta; - this.bttnRedo.Name = "bttnRedo"; - this.bttnRedo.Size = new System.Drawing.Size(32, 22); - this.bttnRedo.Text = "redo"; - this.bttnRedo.ButtonClick += new System.EventHandler(this.miRedo_Click); - // - // catToolStrip - // - this.catToolStrip.Dock = System.Windows.Forms.DockStyle.None; - this.catToolStrip.Location = new System.Drawing.Point(161, 24); - this.catToolStrip.Name = "catToolStrip"; - this.catToolStrip.Size = new System.Drawing.Size(111, 25); - this.catToolStrip.TabIndex = 9; - this.catToolStrip.Visible = false; - // - // statusBar - // - this.statusBar.Location = new System.Drawing.Point(0, 586); - this.statusBar.Name = "statusBar"; - this.statusBar.Panels.AddRange(new System.Windows.Forms.StatusBarPanel[] { - this.sbMainPanel, - this.sbErrorPanel, - this.sbPointsPanel}); - this.statusBar.ShowPanels = true; - this.statusBar.Size = new System.Drawing.Size(790, 22); - this.statusBar.TabIndex = 1; - this.statusBar.PanelClick += new System.Windows.Forms.StatusBarPanelClickEventHandler(this.statusBar_PanelClick); - this.statusBar.DrawItem += new System.Windows.Forms.StatusBarDrawItemEventHandler(this.statusBar_DrawItem); - // - // sbMainPanel - // - this.sbMainPanel.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Spring; - this.sbMainPanel.Color = System.Drawing.SystemColors.WindowText; - this.sbMainPanel.Name = "sbMainPanel"; - this.sbMainPanel.Style = System.Windows.Forms.StatusBarPanelStyle.OwnerDraw; - this.sbMainPanel.Width = 473; - // - // sbErrorPanel - // - this.sbErrorPanel.Color = System.Drawing.SystemColors.WindowText; - this.sbErrorPanel.Name = "sbErrorPanel"; - this.sbErrorPanel.Style = System.Windows.Forms.StatusBarPanelStyle.OwnerDraw; - this.sbErrorPanel.Width = 150; - // - // sbPointsPanel - // - this.sbPointsPanel.Color = System.Drawing.SystemColors.WindowText; - this.sbPointsPanel.Name = "sbPointsPanel"; - this.sbPointsPanel.Style = System.Windows.Forms.StatusBarPanelStyle.OwnerDraw; - this.sbPointsPanel.ToolTipText = "current points total"; - this.sbPointsPanel.Width = 150; - // - // toolStripPanel - // - this.toolStripPanel.Dock = System.Windows.Forms.DockStyle.Top; - this.toolStripPanel.Location = new System.Drawing.Point(0, 24); - this.toolStripPanel.Name = "toolStripPanel"; - this.toolStripPanel.Orientation = System.Windows.Forms.Orientation.Horizontal; - this.toolStripPanel.RowMargin = new System.Windows.Forms.Padding(3, 0, 0, 0); - this.toolStripPanel.Size = new System.Drawing.Size(790, 0); - // - // FrmMain - // - this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); - this.ClientSize = new System.Drawing.Size(790, 608); - this.Controls.Add(this.mainToolStrip); - this.Controls.Add(this.toolStripPanel); - this.Controls.Add(this.statusBar); - this.Controls.Add(this.catToolStrip); - this.Controls.Add(this.menuStrip); - this.Icon = ((System.Drawing.Icon) (resources.GetObject("$this.Icon"))); - this.IsMdiContainer = true; - this.MainMenuStrip = this.menuStrip; - this.Menu = this.mainMenu; - this.Name = "FrmMain"; - this.Text = "WarFoundry"; - this.Load += new System.EventHandler(this.FrmMain_Load); - this.menuStrip.ResumeLayout(false); - this.menuStrip.PerformLayout(); - this.mainToolStrip.ResumeLayout(false); - this.mainToolStrip.PerformLayout(); - ((System.ComponentModel.ISupportInitialize) (this.sbMainPanel)).EndInit(); - ((System.ComponentModel.ISupportInitialize) (this.sbErrorPanel)).EndInit(); - ((System.ComponentModel.ISupportInitialize) (this.sbPointsPanel)).EndInit(); - this.ResumeLayout(false); - this.PerformLayout(); - + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMain)); + this.undoMenu = new System.Windows.Forms.ContextMenu(); + this.redoMenu = new System.Windows.Forms.ContextMenu(); + this.mainMenu = new System.Windows.Forms.MainMenu(this.components); + this.openArmyDialog = new System.Windows.Forms.OpenFileDialog(); + this.saveArmyDialog = new System.Windows.Forms.SaveFileDialog(); + this.statusBarTimer = new System.Windows.Forms.Timer(this.components); + this.menuStrip = new System.Windows.Forms.MenuStrip(); + this.menuFile = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.miNewArmy = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.miOpenArmy = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.miSaveArmy = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.miSaveArmyAs = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.miExportArmyAs = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.miExportArmyAsBasicHTML = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.miCloseArmy = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator(); + this.miReloadFiles = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); + this.miExit = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.menuEdit = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.miUndo = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.miRedo = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.menuHelp = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.miAbout = new IBBoard.Windows.Forms.IBBToolStripMenuItem(); + this.mainToolStrip = new System.Windows.Forms.ToolStrip(); + this.bttnNewArmy = new IBBoard.Windows.Forms.IBBToolStripButton(); + this.bttnOpenArmy = new IBBoard.Windows.Forms.IBBToolStripButton(); + this.bttnSaveArmy = new IBBoard.Windows.Forms.IBBToolStripButton(); + this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator(); + this.bttnUndo = new IBBoard.Windows.Forms.IBBToolStripSplitButton(); + this.bttnRedo = new IBBoard.Windows.Forms.IBBToolStripSplitButton(); + this.catToolStrip = new System.Windows.Forms.ToolStrip(); + this.statusBar = new IBBoard.Windows.Forms.ColorableStatusBar(); + this.sbMainPanel = new IBBoard.Windows.Forms.ColorableStatusBarPanel(); + this.sbErrorPanel = new IBBoard.Windows.Forms.ColorableStatusBarPanel(); + this.sbPointsPanel = new IBBoard.Windows.Forms.ColorableStatusBarPanel(); + this.toolStripPanel = new System.Windows.Forms.ToolStripPanel(); + this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator(); + this.miPreferences = new System.Windows.Forms.ToolStripMenuItem(); + this.menuStrip.SuspendLayout(); + this.mainToolStrip.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize) (this.sbMainPanel)).BeginInit(); + ((System.ComponentModel.ISupportInitialize) (this.sbErrorPanel)).BeginInit(); + ((System.ComponentModel.ISupportInitialize) (this.sbPointsPanel)).BeginInit(); + this.SuspendLayout(); + // + // saveArmyDialog + // + this.saveArmyDialog.Title = "Translatable:saveArmyDialog"; + // + // statusBarTimer + // + this.statusBarTimer.Interval = 5000; + this.statusBarTimer.Tick += new System.EventHandler(this.statusBarTimer_Tick); + // + // menuStrip + // + this.menuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.menuFile, + this.menuEdit, + this.menuHelp}); + this.menuStrip.Location = new System.Drawing.Point(0, 0); + this.menuStrip.Name = "menuStrip"; + this.menuStrip.Size = new System.Drawing.Size(790, 24); + this.menuStrip.TabIndex = 6; + this.menuStrip.Text = "menuStrip1"; + // + // menuFile + // + this.menuFile.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.miNewArmy, + this.miOpenArmy, + this.miSaveArmy, + this.miSaveArmyAs, + this.miExportArmyAs, + this.miCloseArmy, + this.toolStripSeparator1, + this.miReloadFiles, + this.toolStripSeparator2, + this.miExit}); + this.menuFile.Name = "menuFile"; + this.menuFile.Size = new System.Drawing.Size(33, 20); + this.menuFile.Text = "&file"; + // + // miNewArmy + // + this.miNewArmy.Name = "miNewArmy"; + this.miNewArmy.Size = new System.Drawing.Size(164, 22); + this.miNewArmy.Text = "&new army"; + this.miNewArmy.Click += new System.EventHandler(this.miNewArmy_Click); + // + // miOpenArmy + // + this.miOpenArmy.Name = "miOpenArmy"; + this.miOpenArmy.Size = new System.Drawing.Size(164, 22); + this.miOpenArmy.Text = "&open army"; + this.miOpenArmy.Click += new System.EventHandler(this.miOpenArmy_Click); + // + // miSaveArmy + // + this.miSaveArmy.Enabled = false; + this.miSaveArmy.Name = "miSaveArmy"; + this.miSaveArmy.Size = new System.Drawing.Size(164, 22); + this.miSaveArmy.Text = "&save army"; + this.miSaveArmy.Click += new System.EventHandler(this.miSaveArmy_Click); + // + // miSaveArmyAs + // + this.miSaveArmyAs.Enabled = false; + this.miSaveArmyAs.Name = "miSaveArmyAs"; + this.miSaveArmyAs.Size = new System.Drawing.Size(164, 22); + this.miSaveArmyAs.Text = "save army &as..."; + this.miSaveArmyAs.Click += new System.EventHandler(this.miSaveArmyAs_Click); + // + // miExportArmyAs + // + this.miExportArmyAs.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.miExportArmyAsBasicHTML}); + this.miExportArmyAs.Enabled = false; + this.miExportArmyAs.Name = "miExportArmyAs"; + this.miExportArmyAs.Size = new System.Drawing.Size(164, 22); + this.miExportArmyAs.Text = "export army as..."; + // + // miExportArmyAsBasicHTML + // + this.miExportArmyAsBasicHTML.Name = "miExportArmyAsBasicHTML"; + this.miExportArmyAsBasicHTML.Size = new System.Drawing.Size(130, 22); + this.miExportArmyAsBasicHTML.Text = "&basic html"; + this.miExportArmyAsBasicHTML.Click += new System.EventHandler(this.miExportArmyAsBasicHTML_Click); + // + // miCloseArmy + // + this.miCloseArmy.Enabled = false; + this.miCloseArmy.Name = "miCloseArmy"; + this.miCloseArmy.Size = new System.Drawing.Size(164, 22); + this.miCloseArmy.Text = "&close army"; + this.miCloseArmy.Click += new System.EventHandler(this.miCloseArmy_Click); + // + // toolStripSeparator1 + // + this.toolStripSeparator1.Name = "toolStripSeparator1"; + this.toolStripSeparator1.Size = new System.Drawing.Size(161, 6); + // + // miReloadFiles + // + this.miReloadFiles.Name = "miReloadFiles"; + this.miReloadFiles.Size = new System.Drawing.Size(164, 22); + this.miReloadFiles.Text = "&reload files"; + this.miReloadFiles.Click += new System.EventHandler(this.miReloadFiles_Click); + // + // toolStripSeparator2 + // + this.toolStripSeparator2.Name = "toolStripSeparator2"; + this.toolStripSeparator2.Size = new System.Drawing.Size(161, 6); + // + // miExit + // + this.miExit.Name = "miExit"; + this.miExit.Size = new System.Drawing.Size(164, 22); + this.miExit.Text = "e&xit"; + this.miExit.Click += new System.EventHandler(this.miExit_Click); + // + // menuEdit + // + this.menuEdit.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.miUndo, + this.miRedo, + this.toolStripSeparator4, + this.miPreferences}); + this.menuEdit.Name = "menuEdit"; + this.menuEdit.Size = new System.Drawing.Size(36, 20); + this.menuEdit.Text = "&edit"; + // + // miUndo + // + this.miUndo.Enabled = false; + this.miUndo.Name = "miUndo"; + this.miUndo.Size = new System.Drawing.Size(152, 22); + this.miUndo.Text = "&undo"; + this.miUndo.Click += new System.EventHandler(this.miUndo_Click); + // + // miRedo + // + this.miRedo.Enabled = false; + this.miRedo.Name = "miRedo"; + this.miRedo.Size = new System.Drawing.Size(152, 22); + this.miRedo.Text = "&redo"; + this.miRedo.Click += new System.EventHandler(this.miRedo_Click); + // + // menuHelp + // + this.menuHelp.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.miAbout}); + this.menuHelp.Name = "menuHelp"; + this.menuHelp.Size = new System.Drawing.Size(39, 20); + this.menuHelp.Text = "&help"; + // + // miAbout + // + this.miAbout.Name = "miAbout"; + this.miAbout.Size = new System.Drawing.Size(109, 22); + this.miAbout.Text = "&about"; + this.miAbout.Click += new System.EventHandler(this.miAbout_Click); + // + // mainToolStrip + // + this.mainToolStrip.Dock = System.Windows.Forms.DockStyle.None; + this.mainToolStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.bttnNewArmy, + this.bttnOpenArmy, + this.bttnSaveArmy, + this.toolStripSeparator3, + this.bttnUndo, + this.bttnRedo}); + this.mainToolStrip.Location = new System.Drawing.Point(0, 24); + this.mainToolStrip.Name = "mainToolStrip"; + this.mainToolStrip.Size = new System.Drawing.Size(151, 25); + this.mainToolStrip.TabIndex = 8; + // + // bttnNewArmy + // + this.bttnNewArmy.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; + this.bttnNewArmy.Image = global::IBBoard.WarFoundry.GUI.WinForms.Properties.Resources.document_new; + this.bttnNewArmy.ImageTransparentColor = System.Drawing.Color.Magenta; + this.bttnNewArmy.Name = "bttnNewArmy"; + this.bttnNewArmy.Size = new System.Drawing.Size(23, 22); + this.bttnNewArmy.Text = "new army"; + this.bttnNewArmy.Click += new System.EventHandler(this.miNewArmy_Click); + // + // bttnOpenArmy + // + this.bttnOpenArmy.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; + this.bttnOpenArmy.Image = global::IBBoard.WarFoundry.GUI.WinForms.Properties.Resources.document_open; + this.bttnOpenArmy.ImageTransparentColor = System.Drawing.Color.Magenta; + this.bttnOpenArmy.Name = "bttnOpenArmy"; + this.bttnOpenArmy.Size = new System.Drawing.Size(23, 22); + this.bttnOpenArmy.Text = "open army"; + this.bttnOpenArmy.Click += new System.EventHandler(this.miOpenArmy_Click); + // + // bttnSaveArmy + // + this.bttnSaveArmy.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; + this.bttnSaveArmy.Enabled = false; + this.bttnSaveArmy.Image = global::IBBoard.WarFoundry.GUI.WinForms.Properties.Resources.document_save; + this.bttnSaveArmy.ImageTransparentColor = System.Drawing.Color.Magenta; + this.bttnSaveArmy.Name = "bttnSaveArmy"; + this.bttnSaveArmy.Size = new System.Drawing.Size(23, 22); + this.bttnSaveArmy.Text = "save army"; + this.bttnSaveArmy.Click += new System.EventHandler(this.miSaveArmy_Click); + // + // toolStripSeparator3 + // + this.toolStripSeparator3.Name = "toolStripSeparator3"; + this.toolStripSeparator3.Size = new System.Drawing.Size(6, 25); + // + // bttnUndo + // + this.bttnUndo.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; + this.bttnUndo.Enabled = false; + this.bttnUndo.Image = global::IBBoard.WarFoundry.GUI.WinForms.Properties.Resources.edit_undo; + this.bttnUndo.ImageTransparentColor = System.Drawing.Color.Magenta; + this.bttnUndo.Name = "bttnUndo"; + this.bttnUndo.Size = new System.Drawing.Size(32, 22); + this.bttnUndo.Text = "undo"; + this.bttnUndo.ButtonClick += new System.EventHandler(this.miUndo_Click); + // + // bttnRedo + // + this.bttnRedo.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; + this.bttnRedo.Enabled = false; + this.bttnRedo.Image = global::IBBoard.WarFoundry.GUI.WinForms.Properties.Resources.edit_redo; + this.bttnRedo.ImageTransparentColor = System.Drawing.Color.Magenta; + this.bttnRedo.Name = "bttnRedo"; + this.bttnRedo.Size = new System.Drawing.Size(32, 22); + this.bttnRedo.Text = "redo"; + this.bttnRedo.ButtonClick += new System.EventHandler(this.miRedo_Click); + // + // catToolStrip + // + this.catToolStrip.Dock = System.Windows.Forms.DockStyle.None; + this.catToolStrip.Location = new System.Drawing.Point(161, 24); + this.catToolStrip.Name = "catToolStrip"; + this.catToolStrip.Size = new System.Drawing.Size(111, 25); + this.catToolStrip.TabIndex = 9; + this.catToolStrip.Visible = false; + // + // statusBar + // + this.statusBar.Location = new System.Drawing.Point(0, 586); + this.statusBar.Name = "statusBar"; + this.statusBar.Panels.AddRange(new System.Windows.Forms.StatusBarPanel[] { + this.sbMainPanel, + this.sbErrorPanel, + this.sbPointsPanel}); + this.statusBar.ShowPanels = true; + this.statusBar.Size = new System.Drawing.Size(790, 22); + this.statusBar.TabIndex = 1; + this.statusBar.PanelClick += new System.Windows.Forms.StatusBarPanelClickEventHandler(this.statusBar_PanelClick); + this.statusBar.DrawItem += new System.Windows.Forms.StatusBarDrawItemEventHandler(this.statusBar_DrawItem); + // + // sbMainPanel + // + this.sbMainPanel.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Spring; + this.sbMainPanel.Color = System.Drawing.SystemColors.WindowText; + this.sbMainPanel.Name = "sbMainPanel"; + this.sbMainPanel.Style = System.Windows.Forms.StatusBarPanelStyle.OwnerDraw; + this.sbMainPanel.Width = 473; + // + // sbErrorPanel + // + this.sbErrorPanel.Color = System.Drawing.SystemColors.WindowText; + this.sbErrorPanel.Name = "sbErrorPanel"; + this.sbErrorPanel.Style = System.Windows.Forms.StatusBarPanelStyle.OwnerDraw; + this.sbErrorPanel.Width = 150; + // + // sbPointsPanel + // + this.sbPointsPanel.Color = System.Drawing.SystemColors.WindowText; + this.sbPointsPanel.Name = "sbPointsPanel"; + this.sbPointsPanel.Style = System.Windows.Forms.StatusBarPanelStyle.OwnerDraw; + this.sbPointsPanel.ToolTipText = "current points total"; + this.sbPointsPanel.Width = 150; + // + // toolStripPanel + // + this.toolStripPanel.Dock = System.Windows.Forms.DockStyle.Top; + this.toolStripPanel.Location = new System.Drawing.Point(0, 24); + this.toolStripPanel.Name = "toolStripPanel"; + this.toolStripPanel.Orientation = System.Windows.Forms.Orientation.Horizontal; + this.toolStripPanel.RowMargin = new System.Windows.Forms.Padding(3, 0, 0, 0); + this.toolStripPanel.Size = new System.Drawing.Size(790, 0); + // + // toolStripSeparator4 + // + this.toolStripSeparator4.Name = "toolStripSeparator4"; + this.toolStripSeparator4.Size = new System.Drawing.Size(149, 6); + // + // miPreferences + // + this.miPreferences.Name = "miPreferences"; + this.miPreferences.Size = new System.Drawing.Size(152, 22); + this.miPreferences.Text = "&preferences"; + this.miPreferences.Click += new System.EventHandler(this.miPreferences_Click); + // + // FrmMain + // + this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); + this.ClientSize = new System.Drawing.Size(790, 608); + this.Controls.Add(this.mainToolStrip); + this.Controls.Add(this.toolStripPanel); + this.Controls.Add(this.statusBar); + this.Controls.Add(this.catToolStrip); + this.Controls.Add(this.menuStrip); + this.Icon = ((System.Drawing.Icon) (resources.GetObject("$this.Icon"))); + this.IsMdiContainer = true; + this.MainMenuStrip = this.menuStrip; + this.Menu = this.mainMenu; + this.Name = "FrmMain"; + this.Text = "WarFoundry"; + this.Load += new System.EventHandler(this.FrmMain_Load); + this.menuStrip.ResumeLayout(false); + this.menuStrip.PerformLayout(); + this.mainToolStrip.ResumeLayout(false); + this.mainToolStrip.PerformLayout(); + ((System.ComponentModel.ISupportInitialize) (this.sbMainPanel)).EndInit(); + ((System.ComponentModel.ISupportInitialize) (this.sbErrorPanel)).EndInit(); + ((System.ComponentModel.ISupportInitialize) (this.sbPointsPanel)).EndInit(); + this.ResumeLayout(false); + this.PerformLayout(); + } #endregion @@ -1352,6 +1382,12 @@ { FrmAbout about = new FrmAbout(); about.ShowDialog(this); + } + + private void miPreferences_Click(object sender, EventArgs e) + { + FrmPreferences prefsForm = new FrmPreferences(Preferences); + prefsForm.Show(this); } } }
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/FrmPreferences.Designer.cs Sun Apr 11 19:55:03 2010 +0000 @@ -0,0 +1,121 @@ +namespace IBBoard.WarFoundry.GUI.WinForms +{ + partial class FrmPreferences + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + this.preferenceSections = new System.Windows.Forms.TreeView(); + this.languagesGroup = new System.Windows.Forms.GroupBox(); + this.lblLanguage = new IBBoard.Windows.Forms.IBBLabel(); + this.languageList = new System.Windows.Forms.ComboBox(); + this.bttnOkay = new System.Windows.Forms.Button(); + this.bttnCancel = new System.Windows.Forms.Button(); + this.languagesGroup.SuspendLayout(); + this.SuspendLayout(); + // + // preferenceSections + // + this.preferenceSections.Location = new System.Drawing.Point(12, 12); + this.preferenceSections.Name = "preferenceSections"; + this.preferenceSections.Size = new System.Drawing.Size(159, 340); + this.preferenceSections.TabIndex = 0; + // + // languagesGroup + // + this.languagesGroup.Controls.Add(this.languageList); + this.languagesGroup.Controls.Add(this.lblLanguage); + this.languagesGroup.Location = new System.Drawing.Point(177, 12); + this.languagesGroup.Name = "languagesGroup"; + this.languagesGroup.Size = new System.Drawing.Size(436, 300); + this.languagesGroup.TabIndex = 1; + this.languagesGroup.TabStop = false; + this.languagesGroup.Text = "languages"; + // + // lblLanguage + // + this.lblLanguage.Location = new System.Drawing.Point(6, 28); + this.lblLanguage.Name = "lblLanguage"; + this.lblLanguage.Size = new System.Drawing.Size(138, 23); + this.lblLanguage.TabIndex = 0; + this.lblLanguage.Text = "language:"; + // + // languageList + // + this.languageList.FormattingEnabled = true; + this.languageList.Location = new System.Drawing.Point(150, 25); + this.languageList.Name = "languageList"; + this.languageList.Size = new System.Drawing.Size(121, 21); + this.languageList.TabIndex = 1; + // + // bttnOkay + // + this.bttnOkay.Enabled = false; + this.bttnOkay.Location = new System.Drawing.Point(538, 328); + this.bttnOkay.Name = "bttnOkay"; + this.bttnOkay.Size = new System.Drawing.Size(75, 23); + this.bttnOkay.TabIndex = 2; + this.bttnOkay.Text = "okay"; + this.bttnOkay.UseVisualStyleBackColor = true; + this.bttnOkay.Click += new System.EventHandler(this.bttnOkay_Click); + // + // bttnCancel + // + this.bttnCancel.Location = new System.Drawing.Point(457, 329); + this.bttnCancel.Name = "bttnCancel"; + this.bttnCancel.Size = new System.Drawing.Size(75, 23); + this.bttnCancel.TabIndex = 3; + this.bttnCancel.Text = "cancel"; + this.bttnCancel.UseVisualStyleBackColor = true; + this.bttnCancel.Click += new System.EventHandler(this.bttnCancel_Click); + // + // FrmPreferences + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(625, 364); + this.Controls.Add(this.bttnCancel); + this.Controls.Add(this.bttnOkay); + this.Controls.Add(this.languagesGroup); + this.Controls.Add(this.preferenceSections); + this.Name = "FrmPreferences"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; + this.Text = "preferences"; + this.languagesGroup.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.TreeView preferenceSections; + private System.Windows.Forms.GroupBox languagesGroup; + private System.Windows.Forms.ComboBox languageList; + private IBBoard.Windows.Forms.IBBLabel lblLanguage; + private System.Windows.Forms.Button bttnOkay; + private System.Windows.Forms.Button bttnCancel; + } +} \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/FrmPreferences.cs Sun Apr 11 19:55:03 2010 +0000 @@ -0,0 +1,71 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Globalization; +using System.Text; +using System.Windows.Forms; +using IBBoard.Lang; +using IBBoard.Windows.Forms; +using IBBoard.Windows.Forms.I18N; + +namespace IBBoard.WarFoundry.GUI.WinForms +{ + public partial class FrmPreferences : IBBForm + { + private Preferences prefs; + + public FrmPreferences(Preferences preferences) + { + prefs = preferences; + InitializeComponent(); + TranslateForm(); + SetValues(); + } + + private void TranslateForm() + { + ControlTranslator.TranslateComponent(this); + languagesGroup.Text = Translation.GetTranslation("languagesGroup", "language"); + } + + private void SetValues() + { + preferenceSections.Nodes.Add(Translation.GetTranslation("languagePrefSection", "language")); + ICollection<TranslationLanguage> langs = Translation.GetLanguages(); + List<TranslationLanguage> sortedLangs = new List<TranslationLanguage>(langs); + sortedLangs.Sort(CompareLanguages); + languageList.DataSource = sortedLangs; + languageList.DisplayMember = "Name"; + languageList.SelectedItem = Translation.GetTranslationSet(Translation.GetTranslationLanguage()).Language; + languageList.SelectedIndexChanged += new EventHandler(languageList_SelectedIndexChanged); + } + + private void languageList_SelectedIndexChanged(object sender, EventArgs e) + { + bttnOkay.Enabled = !(languageList.SelectedItem.Equals(Translation.GetTranslationLanguage())); + } + + private void bttnCancel_Click(object sender, EventArgs e) + { + Close(); + } + + private void bttnOkay_Click(object sender, EventArgs e) + { + TranslationLanguage lang = (TranslationLanguage)languageList.SelectedItem; + string langCode = lang.Code; + Translation.LoadTranslation(langCode); + prefs["language"] = langCode; + prefs.Save(); + Close(); + } + + private int CompareLanguages(TranslationLanguage lang1, TranslationLanguage lang2) + { + CompareOptions options = CompareOptions.IgnoreCase | CompareOptions.IgnoreKanaType | CompareOptions.IgnoreWidth; + return CultureInfo.CurrentCulture.CompareInfo.Compare(lang1.Name, lang2.Name, options); + } + } +} \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/FrmPreferences.resx Sun Apr 11 19:55:03 2010 +0000 @@ -0,0 +1,120 @@ +<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> +</root> \ No newline at end of file
--- a/IBBoard.WarFoundry.GUI.WinForms.csproj Tue Apr 06 13:54:37 2010 +0000 +++ b/IBBoard.WarFoundry.GUI.WinForms.csproj Sun Apr 11 19:55:03 2010 +0000 @@ -140,6 +140,12 @@ <Compile Include="FrmNewUnitEquipment.cs"> <SubType>Form</SubType> </Compile> + <Compile Include="FrmPreferences.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="FrmPreferences.Designer.cs"> + <DependentUpon>FrmPreferences.cs</DependentUpon> + </Compile> <Compile Include="FrmReplaceUnitEquipment.cs"> <SubType>Form</SubType> </Compile> @@ -188,6 +194,10 @@ <DependentUpon>FrmNewUnitEquipment.cs</DependentUpon> <SubType>Designer</SubType> </EmbeddedResource> + <EmbeddedResource Include="FrmPreferences.resx"> + <SubType>Designer</SubType> + <DependentUpon>FrmPreferences.cs</DependentUpon> + </EmbeddedResource> <EmbeddedResource Include="FrmReplaceUnitEquipment.resx"> <DependentUpon>FrmReplaceUnitEquipment.cs</DependentUpon> </EmbeddedResource> @@ -222,7 +232,7 @@ <None Include="translations\ru.translation"> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </None> - <None Include="translations\se.translation"> + <None Include="translations\sv.translation"> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </None> <None Include="WarFoundry.exe.log4net">
--- a/translations/en.translation Tue Apr 06 13:54:37 2010 +0000 +++ b/translations/en.translation Sun Apr 11 19:55:03 2010 +0000 @@ -14,6 +14,7 @@ <translation id="miExit">E&xit</translation> <translation id="miUndo">&Undo</translation> <translation id="miRedo">&Redo</translation> + <translation id="miPreferences">&Preferences</translation> <translation id="miAbout">&About</translation> <translation id="bttnOkay">OK</translation> <translation id="bttnCancel">Cancel</translation> @@ -109,4 +110,8 @@ <translation id="requirementUnitTypeAtLeastSingle">{1} {0}</translation> <translation id="requirementUnitTypeAtLeastJoiner">{0}, {1}</translation> <translation id="requirementUnitTypeAtLeast">{0} can only be taken if the following are taken: {1}</translation> + <translation id="FrmPreferences">Preferences</translation> + <translation id="languagePrefSection">Language</translation> + <translation id="lblLanguage">Language:</translation> + <translation id="languagesGroup">Language</translation> </translations> \ No newline at end of file
--- a/translations/se.translation Tue Apr 06 13:54:37 2010 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,96 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<translations xmlns="http://ibboard.co.uk/translation" lang="se"> - <translation id="menuFile">&Arkiv</translation> - <translation id="menuEdit">&Redigera</translation> - <translation id="menuHelp">&Hjälp</translation> - <translation id="miNewArmy">&Skapa ny armé</translation> - <translation id="miOpenArmy">&Öppna sparad armé</translation> - <translation id="miSaveArmy">&Spara armé</translation> - <translation id="miSaveArmyAs">Spara armé &som...</translation> - <translation id="miExportArmyAs">&Exportera armé</translation> - <translation id="miExportArmyAsBasicHTML">Normal HTML</translation> - <translation id="miCloseArmy">&Stäng armé</translation> - <translation id="miReloadFiles">&Läs in filer på nytt</translation> - <translation id="miExit">A&vsluta</translation> - <translation id="miUndo">&Återställ</translation> - <translation id="miRedo">&Gör om</translation> - <translation id="miAbout">&Om</translation> - <translation id="bttnOkay">OK</translation> - <translation id="bttnCancel">Avbryt</translation> - <translation id="bttnNewArmy">Skapa ny armé</translation> - <translation id="bttnOpenArmy">Öppna sparad armé</translation> - <translation id="bttnSaveArmy">Spara armé</translation> - <translation id="ArmyTree">Arméöversikt</translation> - <translation id="miDeleteUnit">&Ta bort enhet</translation> - <translation id="miEditUnit">&Redigera enhet</translation> - <translation id="openArmyDialog">Öppna armé</translation> - <translation id="saveArmyDialog">Spara armé</translation> - <translation id="armyFileFilter">WarFoundry arméfiler (*.army)</translation> - <translation id="statusPanelPoints">{0} poäng / {1} poäng</translation> - <translation id="defaultUnitName">Enhet av {0} {1}</translation> - <translation id="FrmNewArmy">Skapa ny armé</translation> - <translation id="lblGameSystem">Spelsystem:</translation> - <translation id="lblRaceList">Raser:</translation> - <translation id="lblArmyName">Arménamn:</translation> - <translation id="lblArmySize">Armé torlek:</translation> - <translation id="bttnSelectRace">Skapa armé</translation> - <translation id="FrmNewUnit">Lägg till en ny {0}</translation> - <translation id="lblUnitList">Enheter:</translation> - <translation id="bttnSelectUnit">Skapa enhet</translation> - <translation id="FrmNewUnitEquipment">Ny utrustning för {0}</translation> - <translation id="lblAmount">Antal:</translation> - <translation id="lblItem">Utrustning:</translation> - <translation id="rbEquipAll">Utrusta alla</translation> - <translation id="equipPercentageTooLarge">Den numvarande procenten ({0}%) är större än det maximala tillåtna värdet för utrustningen ({1}%). Det maximala värdet kommer att användas istället.</translation> - <translation id="equipPercentageTooLargeTitle">Utrustningsprocenten för stor</translation> - <translation id="equipPercentageTooSmall"> Den numvarande procenten ({0}%) är mindre än det tillåtna minimivärdet för utrustningen ({1}%). Minimivärdet kommer att användas istället.</translation> - <translation id="equipPercentageTooSmallTitle">Utrustningsprocenten för liten</translation> - <translation id="equipNumberTooLarge">Det nuvarande antalet ({0}) är större än det maximalt tillåtna antalet för utrustningen ({1}). Det maximala antalet kommer att användas istället.</translation> - <translation id="equipNumberTooLargeTitle">Utrustningens antal för stort</translation> - <translation id="equipNumberTooSmall"> Det nuvarande antalet ({0}) är mindre än det tillåtna minimiantalet för utrustningen({1}). Minimivärdet kommer att användas istället.</translation> - <translation id="equipNumberTooSmallTitle">Utrustningens antal för litet</translation> - <translation id="FrmEditUnitEquipment">Ändra {0} för {1}</translation> - <translation id="FrmAbout">Om WarFoundry</translation> - <translation id="lblVersion">Version: {0}</translation> - <translation id="lblDevelopers">Utvecklare:</translation> - <translation id="lblThanks">Tack till:</translation> - <translation id="FrmUnit">{0}</translation> - <translation id="lblUnitSize">Storlek:</translation> - <translation id="lblEquip">Utrustning:</translation> - <translation id="bttnAddWeapon">Lägg till</translation> - <translation id="lblAbilities">Förmågor:</translation> - <translation id="lblNotes">Anteckningar:</translation> - <translation id="bttnRemoveWeapon">Ta bort</translation> - <translation id="bttnReplaceWeapon">Ersätt</translation> - <translation id="bttnEditWeapon">Redigera</translation> - <translation id="equipmentAmountWithCost">{0} ({1} för {2} poäng var)</translation> - <translation id="equipmentAmountWithZeroCost">{0} ({1} gratis)</translation> - <translation id="equipmentChoiceAmountAll">För alla ({1})</translation> - <translation id="equipmentChoiceAmountPercentage">För {0}% ({1})</translation> - <translation id="equipmentChoiceAmountNumber">{0}</translation> - <translation id="InvalidRaceFileBoxTitle">Ogiltig rasfil</translation> - <translation id="InvalidArmyFileBoxTitle">Ogiltig arméfil</translation> - <translation id="SaveChangesQuestion">Armén "{0}" har ändrats. -Vill du spara ändringarna innan armén stängs?</translation> - <translation id="SaveChangesTitle">Osparade förändringar</translation> - <translation id="SaveFailed">WarFoundry kunde inte spara filen. Var god och kontrollera loggen för mera detaljer.</translation> - <translation id="SaveFailedTitle">Filen kunde inte sparas</translation> - <translation id="armyHtmlExportEquipAmountAll">alla ({1})</translation> - <translation id="armyHtmlExportEquipAmountPercentage">{0}% ({1})</translation> - <translation id="armyHtmlExportEquipAmountRatio">{0} för {1}</translation> - <translation id="equipmentAmountAll">alla ({1})</translation> - <translation id="equipmentAmountPercentage">{0}% ({1})</translation> - <translation id="equipmentAmountNumber">{0}</translation> - <translation id="setEquipmentAmountCommandDescription">Ändra {0} amount för {1} till {2}</translation> - <translation id="setEquipmentAmountCommandUndoDescription">Ändra {0} amount för {1} till {2}</translation> - <translation id="replaceUnitEquipmentCommandDescription">Ersätt {0} med {1} för {2}</translation> - <translation id="replaceUnitEquipmentCommandUndoDescription">Ersätt {0} med {1} för {2}</translation> - <translation id="createAndAddUnitCommandDescription">Lägg till enhet av {0}</translation> - <translation id="createAndAddUnitCommandUndoDescription">Ta bort enhet av {0}</translation> - <translation id="removeUnitCommandDescription">Ta bort {0}</translation> - <translation id="removeUnitCommandUndoDescription">Lägg till på nytt {0}</translation> - <translation id="setUnitNameCommandDescription">Byt namn från "{0}" till "{1}"</translation> - <translation id="setUnitNameCommandUndoDescription">Byt namn från "{0}" till "{1}"</translation> - <translation id="setUnitSizeCommandDescription">Ändra storleken på {0} till {1}</translation> - <translation id="setUnitSizeCommandUndoDescription"> Ändra storleken på {0} till {1}</translation> -</translations>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/translations/sv.translation Sun Apr 11 19:55:03 2010 +0000 @@ -0,0 +1,96 @@ +<?xml version="1.0" encoding="utf-8"?> +<translations xmlns="http://ibboard.co.uk/translation" lang="sv"> + <translation id="menuFile">&Arkiv</translation> + <translation id="menuEdit">&Redigera</translation> + <translation id="menuHelp">&Hjälp</translation> + <translation id="miNewArmy">&Skapa ny armé</translation> + <translation id="miOpenArmy">&Öppna sparad armé</translation> + <translation id="miSaveArmy">&Spara armé</translation> + <translation id="miSaveArmyAs">Spara armé &som...</translation> + <translation id="miExportArmyAs">&Exportera armé</translation> + <translation id="miExportArmyAsBasicHTML">Normal HTML</translation> + <translation id="miCloseArmy">&Stäng armé</translation> + <translation id="miReloadFiles">&Läs in filer på nytt</translation> + <translation id="miExit">A&vsluta</translation> + <translation id="miUndo">&Återställ</translation> + <translation id="miRedo">&Gör om</translation> + <translation id="miAbout">&Om</translation> + <translation id="bttnOkay">OK</translation> + <translation id="bttnCancel">Avbryt</translation> + <translation id="bttnNewArmy">Skapa ny armé</translation> + <translation id="bttnOpenArmy">Öppna sparad armé</translation> + <translation id="bttnSaveArmy">Spara armé</translation> + <translation id="ArmyTree">Arméöversikt</translation> + <translation id="miDeleteUnit">&Ta bort enhet</translation> + <translation id="miEditUnit">&Redigera enhet</translation> + <translation id="openArmyDialog">Öppna armé</translation> + <translation id="saveArmyDialog">Spara armé</translation> + <translation id="armyFileFilter">WarFoundry arméfiler (*.army)</translation> + <translation id="statusPanelPoints">{0} poäng / {1} poäng</translation> + <translation id="defaultUnitName">Enhet av {0} {1}</translation> + <translation id="FrmNewArmy">Skapa ny armé</translation> + <translation id="lblGameSystem">Spelsystem:</translation> + <translation id="lblRaceList">Raser:</translation> + <translation id="lblArmyName">Arménamn:</translation> + <translation id="lblArmySize">Armé torlek:</translation> + <translation id="bttnSelectRace">Skapa armé</translation> + <translation id="FrmNewUnit">Lägg till en ny {0}</translation> + <translation id="lblUnitList">Enheter:</translation> + <translation id="bttnSelectUnit">Skapa enhet</translation> + <translation id="FrmNewUnitEquipment">Ny utrustning för {0}</translation> + <translation id="lblAmount">Antal:</translation> + <translation id="lblItem">Utrustning:</translation> + <translation id="rbEquipAll">Utrusta alla</translation> + <translation id="equipPercentageTooLarge">Den numvarande procenten ({0}%) är större än det maximala tillåtna värdet för utrustningen ({1}%). Det maximala värdet kommer att användas istället.</translation> + <translation id="equipPercentageTooLargeTitle">Utrustningsprocenten för stor</translation> + <translation id="equipPercentageTooSmall"> Den numvarande procenten ({0}%) är mindre än det tillåtna minimivärdet för utrustningen ({1}%). Minimivärdet kommer att användas istället.</translation> + <translation id="equipPercentageTooSmallTitle">Utrustningsprocenten för liten</translation> + <translation id="equipNumberTooLarge">Det nuvarande antalet ({0}) är större än det maximalt tillåtna antalet för utrustningen ({1}). Det maximala antalet kommer att användas istället.</translation> + <translation id="equipNumberTooLargeTitle">Utrustningens antal för stort</translation> + <translation id="equipNumberTooSmall"> Det nuvarande antalet ({0}) är mindre än det tillåtna minimiantalet för utrustningen({1}). Minimivärdet kommer att användas istället.</translation> + <translation id="equipNumberTooSmallTitle">Utrustningens antal för litet</translation> + <translation id="FrmEditUnitEquipment">Ändra {0} för {1}</translation> + <translation id="FrmAbout">Om WarFoundry</translation> + <translation id="lblVersion">Version: {0}</translation> + <translation id="lblDevelopers">Utvecklare:</translation> + <translation id="lblThanks">Tack till:</translation> + <translation id="FrmUnit">{0}</translation> + <translation id="lblUnitSize">Storlek:</translation> + <translation id="lblEquip">Utrustning:</translation> + <translation id="bttnAddWeapon">Lägg till</translation> + <translation id="lblAbilities">Förmågor:</translation> + <translation id="lblNotes">Anteckningar:</translation> + <translation id="bttnRemoveWeapon">Ta bort</translation> + <translation id="bttnReplaceWeapon">Ersätt</translation> + <translation id="bttnEditWeapon">Redigera</translation> + <translation id="equipmentAmountWithCost">{0} ({1} för {2} poäng var)</translation> + <translation id="equipmentAmountWithZeroCost">{0} ({1} gratis)</translation> + <translation id="equipmentChoiceAmountAll">För alla ({1})</translation> + <translation id="equipmentChoiceAmountPercentage">För {0}% ({1})</translation> + <translation id="equipmentChoiceAmountNumber">{0}</translation> + <translation id="InvalidRaceFileBoxTitle">Ogiltig rasfil</translation> + <translation id="InvalidArmyFileBoxTitle">Ogiltig arméfil</translation> + <translation id="SaveChangesQuestion">Armén "{0}" har ändrats. +Vill du spara ändringarna innan armén stängs?</translation> + <translation id="SaveChangesTitle">Osparade förändringar</translation> + <translation id="SaveFailed">WarFoundry kunde inte spara filen. Var god och kontrollera loggen för mera detaljer.</translation> + <translation id="SaveFailedTitle">Filen kunde inte sparas</translation> + <translation id="armyHtmlExportEquipAmountAll">alla ({1})</translation> + <translation id="armyHtmlExportEquipAmountPercentage">{0}% ({1})</translation> + <translation id="armyHtmlExportEquipAmountRatio">{0} för {1}</translation> + <translation id="equipmentAmountAll">alla ({1})</translation> + <translation id="equipmentAmountPercentage">{0}% ({1})</translation> + <translation id="equipmentAmountNumber">{0}</translation> + <translation id="setEquipmentAmountCommandDescription">Ändra {0} amount för {1} till {2}</translation> + <translation id="setEquipmentAmountCommandUndoDescription">Ändra {0} amount för {1} till {2}</translation> + <translation id="replaceUnitEquipmentCommandDescription">Ersätt {0} med {1} för {2}</translation> + <translation id="replaceUnitEquipmentCommandUndoDescription">Ersätt {0} med {1} för {2}</translation> + <translation id="createAndAddUnitCommandDescription">Lägg till enhet av {0}</translation> + <translation id="createAndAddUnitCommandUndoDescription">Ta bort enhet av {0}</translation> + <translation id="removeUnitCommandDescription">Ta bort {0}</translation> + <translation id="removeUnitCommandUndoDescription">Lägg till på nytt {0}</translation> + <translation id="setUnitNameCommandDescription">Byt namn från "{0}" till "{1}"</translation> + <translation id="setUnitNameCommandUndoDescription">Byt namn från "{0}" till "{1}"</translation> + <translation id="setUnitSizeCommandDescription">Ändra storleken på {0} till {1}</translation> + <translation id="setUnitSizeCommandUndoDescription"> Ändra storleken på {0} till {1}</translation> +</translations>