public CustomLanguageManager(IDeviceStringReader deviceStringReader, IDeviceXmlProvider deviceXmlProvider, IDriveCustomizationStringReader driveCustomizationStringReader, IDriveCustomizationXmlProvider driveCustomizationXmlProvider, ILanguageFileGenerator languageFileGenerator, IStringsChangedNotifier stringsChangedNotifier)
        {
            this.deviceStringReader             = deviceStringReader as IDeviceStringReader1;
            this.deviceXmlProvider              = deviceXmlProvider as IDeviceXmlProvider1;
            this.driveCustomizationStringReader = driveCustomizationStringReader;
            this.driveCustomizationXmlProvider  = driveCustomizationXmlProvider;
            this.languageFileGenerator          = languageFileGenerator;
            this.stringsChangedNotifier         = stringsChangedNotifier;

            currentProject = new CustomLanguageProject();
            SetSelectedLanguageAndReferenceLanguage();

            if (stringsChangedNotifier != null)
            {
                stringsChangedNotifier.DeviceChanged             += StringsChangedNotifier_DeviceChanged;
                stringsChangedNotifier.DriveCustomizationChanged += StringsChangedNotifier_DriveCustomizationChanged;
            }
        }
 public void NewCustomLanguageProject()
 {
     currentProject.ClearAllTranslations();
     currentProject = new CustomLanguageProject();
     SetSelectedLanguageAndReferenceLanguage();
 }