Beispiel #1
0
        public void UpdateControls()
        {
            //contagem reversa pra nao ter problema de exception na hora do loop
            for (int i = controlList.Count - 1; i >= 0; i--)
            {
                //checa se o controle já foi removido
                //se já, tira da lista; nao tem motivo pra ficar atualizando
                //pula a iteração do loop quando deletar
                LocalizableControl temp = controlList[i];
                switch (temp.ControlType)
                {
                case 0:
                    if (temp.ControlToLocalize.IsDisposed)
                    {
                        controlList.RemoveAt(i);
                        continue;
                    }
                    break;

                case 1:
                    if (temp.MenuItemToLocalize.IsDisposed)
                    {
                        controlList.RemoveAt(i);
                        continue;
                    }
                    break;

                case 2:
                    if (temp.DataGridViewToLocalize.IsDisposed)
                    {
                        controlList.RemoveAt(i);
                        continue;
                    }
                    break;

                case 3:
                    if (temp.ComboBoxToLocalize.IsDisposed)
                    {
                        controlList.RemoveAt(i);
                        continue;
                    }
                    break;
                }

                UpdateLocalizableControl(temp);
            }
        }
Beispiel #2
0
 private void AddObjectIfPossible(object item)
 {
     if (item is DataGridView)
     {
         DataGridView dItem = item as DataGridView;
         if (dItem.Tag != null)
         {
             LocalizableControl localizable = new LocalizableControl(dItem, (string[])dItem.Tag);
             controlList.Add(localizable);
             UpdateLocalizableControl(localizable);
         }
     }
     else if (item is ComboBox)
     {
         ComboBox cItem = item as ComboBox;
         if (cItem.Tag != null)
         {
             LocalizableControl localizable = new LocalizableControl(cItem, (string[])cItem.Tag);
             controlList.Add(localizable);
             UpdateLocalizableControl(localizable);
         }
     }
     else if (item is Control)
     {
         Control cItem = item as Control;
         if (cItem.Tag != null)
         {
             LocalizableControl localizable = new LocalizableControl(cItem, (string)cItem.Tag);
             controlList.Add(localizable);
             UpdateLocalizableControl(localizable);
         }
     }
     else if (item is ToolStripMenuItem)
     {
         ToolStripMenuItem tItem = item as ToolStripMenuItem;
         if (tItem.Tag != null)
         {
             LocalizableControl localizable = new LocalizableControl(tItem, (string)tItem.Tag);
             controlList.Add(localizable);
             UpdateLocalizableControl(localizable);
         }
     }
 }
Beispiel #3
0
        private void UpdateLocalizableControl(LocalizableControl item)
        {
            switch (item.ControlType)
            {
            case 0:
                item.ControlToLocalize.Text = textManager.GetString(item.TextToLocalize);
                break;

            case 1:
                item.MenuItemToLocalize.Text = textManager.GetString(item.TextToLocalize);
                break;

            case 2:
                for (int i = 0; i < item.DataGridViewToLocalize.Columns.Count; i++)
                {
                    if (item.TextArrayToLocalize[i] != null)
                    {
                        item.DataGridViewToLocalize.Columns[i].HeaderText = textManager.GetString(item.TextArrayToLocalize[i]);
                    }
                }
                break;

            case 3:
                int oldIndex = item.ComboBoxToLocalize.SelectedIndex;
                var newItems = new string[item.ComboBoxToLocalize.Items.Count];
                for (int i = 0; i < item.TextArrayToLocalize.Length; i++)
                {
                    if (item.TextArrayToLocalize[i] != null)
                    {
                        newItems[i] = textManager.GetString(item.TextArrayToLocalize[i]);
                    }
                    else
                    {
                        newItems[i] = item.ComboBoxToLocalize.Items[i].ToString();
                    }
                }
                item.ComboBoxToLocalize.Items.Clear();
                item.ComboBoxToLocalize.Items.AddRange(newItems);
                item.ComboBoxToLocalize.SelectedIndex = oldIndex;
                break;
            }
        }