//menuItems--------------------------------------------- ///<summary>C is for control. Translates the text of this control to another language.</summary> public static void C(string classType, System.Windows.Forms.MenuItem mi) { mi.Text = Lans.ConvertString(classType, mi.Text); //if(itemInserted) { // Lans.RefreshCache(); //} }
///<summary></summary> public static void C(System.Windows.Forms.Control sender, System.Windows.Forms.MenuItem mi) { mi.Text = Lans.ConvertString(sender.GetType().Name, mi.Text); //if(itemInserted) { // Lans.RefreshCache(); //} }
private static void TranslateControl(string classType, Control contr) { if (contr.Text == "OK" || contr.Text == "&OK" || contr.Text == "Cancel" || contr.Text == "&Cancel" || contr.Text == "Close" || contr.Text == "&Close" || contr.Text == "Add" || contr.Text == "&Add" || contr.Text == "Delete" || contr.Text == "&Delete" || contr.Text == "Up" || contr.Text == "&Up" || contr.Text == "Down" || contr.Text == "&Down" || contr.Text == "Print" || contr.Text == "&Print") { //Maintain the same translation text for the most common text throughout the entire program. contr.Text = Lans.ConvertString("All", contr.Text); } else { contr.Text = Lans.ConvertString(classType, contr.Text); } }
///<summary>Converts a string to the current language.</summary> public static string g(object sender, string text) { string classType = (sender == null ? "All": sender.GetType().Name); string retVal = Lans.ConvertString(classType, text); return(retVal); }
//<summary>stub</summary> //private static bool itemInserted; //strings----------------------------------------------- ///<summary>Converts a string to the current language.</summary> public static string g(string classType, string text) { string retVal = Lans.ConvertString(classType, text); //if(itemInserted) { // Lans.RefreshCache(); //} return(retVal); }
///<summary>Converts a string to the current language.</summary> public static string g(System.Object sender, string text) { string retVal = Lans.ConvertString(sender.GetType().Name, text); //if(itemInserted) { // Lans.RefreshCache(); //} return(retVal); }
///<summary></summary> public static void C(string classType, params TabControl[] arrayTabControls) { foreach (TabControl tabControl in arrayTabControls) { foreach (TabPage tabPage in tabControl.TabPages) { tabPage.Text = Lans.ConvertString(classType, tabPage.Text); } } }
///<summary>This is recursive</summary> private static void TranslateMenuItems(string classType, MenuItem menuItem) { //first translate any child menuItems foreach (MenuItem menuItemCur in menuItem.MenuItems) { TranslateMenuItems(classType, menuItemCur); } //then this menuitem menuItem.Text = Lans.ConvertString(classType, menuItem.Text); }
///<summary>This is recursive</summary> private static void TranslateToolStripMenuItems(string classType, ToolStripMenuItem toolStripMenuItem) { //first translate any drop down items foreach (ToolStripMenuItem dropDownItem in toolStripMenuItem.DropDownItems) { TranslateToolStripMenuItems(classType, dropDownItem); } //then this tool strip menu item toolStripMenuItem.Text = Lans.ConvertString(classType, toolStripMenuItem.Text); }
//controls----------------------------------------------- ///<summary></summary> public static void C(string classType, System.Windows.Forms.Control[] contr) { for (int i = 0; i < contr.Length; i++) { contr[i].Text = Lans.ConvertString(classType, contr[i].Text); } //if(itemInserted) { // Lans.RefreshCache(); //} }
///<summary>This is recursive, but a little simpler than Fchildren.</summary> private static void Cchildren(string classType, Control parent) { foreach (Control contr in parent.Controls) { if (contr.HasChildren) { Cchildren(classType, contr); } contr.Text = Lans.ConvertString(classType, contr.Text); } }
///<summary></summary> public static void C(string classType, Control[] arrayControls, bool isRecursive) { foreach (Control contr in arrayControls) { if (contr.GetType() == typeof(UI.ODGrid)) { TranslateGrid(contr); continue; } contr.Text = Lans.ConvertString(classType, contr.Text); if (isRecursive) { Cchildren(classType, contr); } } }
///<summary>F is for Form. Translates the following controls on the entire form: title Text, labels, buttons, groupboxes, checkboxes, radiobuttons. Can include a list of controls to exclude. Also puts all the correct controls into the All category (OK,Cancel,Close,Delete,etc).</summary> public static void F(Form sender, params Control[] exclusions) { if (CultureInfo.CurrentCulture.Name == "en-US") { return; } if (CultureInfo.CurrentCulture.TextInfo.IsRightToLeft) { sender.RightToLeft = RightToLeft.Yes; sender.RightToLeftLayout = true; } //first translate the main title Text on the form: if (!Contains(exclusions, sender)) { sender.Text = Lans.ConvertString(sender.GetType().Name, sender.Text); } //then launch the recursive function for all child controls Fchildren(sender, sender, exclusions); }
///<summary></summary> public static void C(System.Windows.Forms.Control sender, System.Windows.Forms.Control[] controls, bool isRecursive) { for (int i = 0; i < controls.Length; i++) { if (controls[i].GetType() == typeof(UI.ODGrid)) { ((UI.ODGrid)controls[i]).Title = Lans.ConvertString(((UI.ODGrid)controls[i]).TranslationName, ((UI.ODGrid)controls[i]).Title); foreach (UI.ODGridColumn col in ((UI.ODGrid)controls[i]).Columns) { col.Heading = Lans.ConvertString(((UI.ODGrid)controls[i]).TranslationName, col.Heading); } continue; } controls[i].Text = Lans.ConvertString(sender.GetType().Name, controls[i].Text); if (isRecursive) { Cchildren(sender.GetType().Name, controls[i]); } } }
private static void TranslateGrid(Control contr) { if (contr.GetType() != typeof(UI.ODGrid)) { return; } UI.ODGrid grid = ((UI.ODGrid)contr); grid.Title = Lans.ConvertString(grid.TranslationName, grid.Title); foreach (UI.ODGridColumn col in grid.Columns) { col.Heading = Lans.ConvertString(grid.TranslationName, col.Heading); } if (grid.ContextMenu != null) { C(grid.TranslationName, grid.ContextMenu); } if (grid.ContextMenuStrip != null) { C(grid.TranslationName, grid.ContextMenuStrip); } }
//strings----------------------------------------------- ///<summary>Converts a string to the current language.</summary> public static string g(string classType, string text) { string retVal = Lans.ConvertString(classType, text); return(retVal); }
///<summary>Called from F and also recursively. Translates all children of the given control except those in the exclusions list.</summary> private static void Fchildren(Form sender, Control parent, Control[] exclusions) { foreach (Control contr in parent.Controls) { if (contr.GetType() == typeof(UI.ODGrid)) { ((UI.ODGrid)contr).Title = Lans.ConvertString(((UI.ODGrid)contr).TranslationName, ((UI.ODGrid)contr).Title); foreach (UI.ODGridColumn col in ((UI.ODGrid)contr).Columns) { col.Heading = Lans.ConvertString(((UI.ODGrid)contr).TranslationName, col.Heading); } continue; } //any controls with children of their own. if (contr.HasChildren) { Fchildren(sender, contr, exclusions); } Type contrType = contr.GetType(); if (CultureInfo.CurrentCulture.TextInfo.IsRightToLeft) { if (contrType == typeof(GroupBox) || contrType == typeof(Panel)) { foreach (Control contrGb in contr.Controls) { contrGb.Location = new Point(contr.Width - contrGb.Width - contrGb.Left, contrGb.Top); } } } //ignore any controls except the types we are interested in if (contrType != typeof(TextBox) && contrType != typeof(Button) && contrType != typeof(OpenDental.UI.Button) && contrType != typeof(Label) && contrType != typeof(GroupBox) && contrType != typeof(CheckBox) && contrType != typeof(RadioButton)) { continue; } if (contr.Text == "") { continue; } if (exclusions != null && !Contains(exclusions, contr)) { if (contr.Text == "OK" || contr.Text == "&OK" || contr.Text == "Cancel" || contr.Text == "&Cancel" || contr.Text == "Close" || contr.Text == "&Close" || contr.Text == "Add" || contr.Text == "&Add" || contr.Text == "Delete" || contr.Text == "&Delete" || contr.Text == "Up" || contr.Text == "&Up" || contr.Text == "Down" || contr.Text == "&Down" || contr.Text == "Print" || contr.Text == "&Print" //|| contr.Text=="" ) { contr.Text = Lans.ConvertString("All", contr.Text); } else { contr.Text = Lans.ConvertString(sender.GetType().Name, contr.Text); } } } }
///<summary>Converts a string to the current language.</summary> public static string g(object sender, string text) { string retVal = Lans.ConvertString(sender.GetType().Name, text); return(retVal); }