Ejemplo n.º 1
0
 void SetTexts(int languageID)
 {
     parentFormLabelText.Text = activeForm.GetName();
     parentFormID.Text        = activeForm.GetID().ToString();
     ControlNameLabel.Text    = activeFormControl.GetName();
     formControlID.Text       = activeFormControl.GetID().ToString();
     OriginalTextLabel.Text   = activeFormControl.GetOriginalText();
     ControlTypeLabel.Text    = activeFormControl.GetType();
     TranslationInput.Text    = TranslationAvailable(activeFormControl.GetID(), languageID) ? translationList.GetTranslation(activeFormControl.FormControl, languageList.GetLanguage(languageID)).TranslatedText : "";
     if (activeFormControl.GetOriginalText() != null && activeFormControl.GetOriginalText().Length > 0)
     {
         Clipboard.SetText(OriginalTextLabel.Text);
     }
     else
     {
         return;
     }
 }
Ejemplo n.º 2
0
        public void InitializeAll(Control control)
        {
            foreach (Control childControl in control.Controls)
            {
                // If child control is either a label or a button.
                if (!CannotBeTranslated(childControl) && CanBeTranslated(childControl))
                {
                    childControl.MouseEnter += FormEvents.ChildControl_MouseEnter;
                    childControl.MouseUp    += FormEvents.MouseUp;
                    var formControl = new FormControl
                    {
                        Name         = childControl.Name,
                        ParentFormID = activeForm.GetID(),
                        Type         = childControl.GetType().ToString(),
                        OriginalText = childControl.Text
                    };

                    formControl.Insert();
                }

                // If child control is a datagridview.
                else if (childControl is DataGridView)
                {
                    (childControl as DataGridView).CellMouseEnter += FormEvents.Translatable_CellMouseEnter;
                    (childControl as DataGridView).CellMouseClick += FormEvents.Translatable_CellMouseClick;
                    foreach (var column in (childControl as DataGridView).Columns)
                    {
                        if (column is DataGridViewColumn)
                        {
                            var formControl = new FormControl
                            {
                                Name         = (column as DataGridViewColumn).Name,
                                ParentFormID = activeForm.GetID(),
                                Type         = (column as DataGridViewColumn).GetType().ToString(),
                                OriginalText = (column as DataGridViewColumn).HeaderText
                            };
                            formControl.Insert();
                        }
                    }
                }

                // if child control is a menustrip.
                else if (childControl is MenuStrip)
                {
                    foreach (var item in (childControl as MenuStrip).Items)
                    {
                        if (item is ToolStripMenuItem)
                        {
                            FindMenuItem(item as ToolStripMenuItem);
                        }
                    }
                }

                // if child control is toolstrip.
                else if (childControl is ToolStrip)
                {
                    foreach (var item in (childControl as ToolStrip).Items)
                    {
                        if (item is ToolStripItem)
                        {
                            FindToolStripItem(item as ToolStripItem);
                        }
                    }
                }

                // if child control is a container(panel, groupbox, etc...).
                else if ((childControl as Control).HasChildren && !(childControl is DataGridView) && !(childControl is MenuStrip))
                {
                    InitializeAll((childControl as Control));
                }

                // untranslatable control..
                else
                {
                    // Console.WriteLine(@"The control with name : ''" + (childControl as Control).Name + "'' can't be translated.");
                }
            }
        }