ReadResources() public method

public ReadResources ( ) : void
return void
Exemplo n.º 1
0
        public void LoadFiles(string directory, CultureInfo culture)
        {
            resourceDirectory = new ResourceDirectory();
            resourceDirectory.ReadFiles(directory, culture);
            resourceDirectory.ReadResources();

            PopulateListView();
        }
Exemplo n.º 2
0
        public void LoadFiles(string directory, CultureInfo culture)
        {
            resourceDirectory = new ResourceDirectory();
            resourceDirectory.ReadFiles(directory, culture);
            resourceDirectory.ReadResources();

            PopulateListView();
        }
Exemplo n.º 3
0
        private void dialogEditorButton_Click(object sender, EventArgs e)
        {
            if (listViewStrings.SelectedItems.Count > 0)
            {
                ListViewItem item = listViewStrings.SelectedItems[0];
                LocString    str  = (LocString)item.Tag;

                Save();

                string winResExe = RunProgram.FindSDKTool("winres.exe");
                if (winResExe == null)
                {
                    MessageBox.Show(@"Cannot find al.exe in the Windows SDK. Make sure the Windows SDK is installed in c:\Program Files\Microsoft SDKs\Windows");
                }
                else
                {
                    // The unlocalized file must be copied to the same directory as the localized for winres to work.
                    string resXFileName          = str.File.LocalizedFileName;
                    string resXUnlocalized       = str.File.NonLocalizedFileName;
                    string resXCopiedUnlocalized = Path.Combine(Path.GetDirectoryName(resXFileName), Path.GetFileName(resXUnlocalized));
                    bool   copy = !string.Equals(resXUnlocalized, resXCopiedUnlocalized, StringComparison.InvariantCultureIgnoreCase);

                    if (copy)
                    {
                        File.Copy(resXUnlocalized, resXCopiedUnlocalized, true);
                    }

                    Enabled = false;
                    try {
                        RunProgram runProgram = new RunProgram();
                        runProgram.Run(winResExe, Path.GetFileName(resXFileName), Path.GetDirectoryName(resXFileName));
                    }
                    finally {
                        Enabled = true;
                        Activate();
                    }

                    if (copy)
                    {
                        File.Delete(resXCopiedUnlocalized);
                    }

                    resourceDirectory.ReadResources();
                    PopulateListView();
                }
            }
        }
Exemplo n.º 4
0
        private void SynchronizePoFile(string resxDirectory, string poDirectory, string baseName, CultureInfo culture, string programName, string email, string version, TextWriter statusOutput)
        {
            ResourceDirectory resourceDirectory = new ResourceDirectory();

            statusOutput.WriteLine("Reading RESX directory '{0}' for culture '{1}'", resxDirectory, culture.Name);
            resourceDirectory.ReadFiles(resxDirectory, culture);
            resourceDirectory.ReadResources();

            foreach (var resX in resourceDirectory.AllFiles)
            {
                statusOutput.WriteLine("   {0}", resX);
            }
            statusOutput.WriteLine();

            string cultureName = culture.Name;

            if (cultureName.EndsWith("-NO"))
            {
                cultureName = cultureName.Substring(0, 2);
            }
            cultureName = cultureName.Replace("-", "_");

            string poFileName = Path.Combine(poDirectory, baseName + "-" + cultureName + ".po");

            statusOutput.WriteLine("Reading PO file '{0}' for culture '{1}'", poFileName, culture.Name);
            PoReader       reader  = new PoReader(poFileName);
            List <PoEntry> entries = reader.ReadPo();
            ApplyPo        applyPo = new ApplyPo();

            applyPo.Apply(entries, resourceDirectory, statusOutput);

            resourceDirectory.WriteResources();

            PoWriterAttributes attributes = new PoWriterAttributes()
            {
                Name     = programName,
                Email    = email,
                Version  = version,
                writePOT = false
            };

            PoWriter potWriter = new PoWriter(poFileName, attributes);

            potWriter.WritePot(resourceDirectory);
        }
Exemplo n.º 5
0
        private void SynchronizePot(string resxDirectory, string potFileName, string programName, string email, string version)
        {
            ResourceDirectory resourceDirectory = new ResourceDirectory();

            resourceDirectory.ReadFiles(resxDirectory, CultureInfo.GetCultureInfo("en"));
            resourceDirectory.ReadResources();

            PoWriterAttributes attributes = new PoWriterAttributes()
            {
                Name     = programName,
                Email    = email,
                Version  = version,
                writePOT = true
            };

            PoWriter potWriter = new PoWriter(potFileName, attributes);

            potWriter.WritePot(resourceDirectory);
        }
Exemplo n.º 6
0
        private void SynchronizePot(string resxDirectory, string potFileName, string programName, string email, string version)
        {
            ResourceDirectory resourceDirectory = new ResourceDirectory();

            resourceDirectory.ReadFiles(resxDirectory, CultureInfo.GetCultureInfo("en"));
            resourceDirectory.ReadResources();

            PoWriterAttributes attributes = new PoWriterAttributes() {
                Name = programName,
                Email = email,
                Version = version,
                writePOT = true
            };

            PoWriter potWriter = new PoWriter(potFileName, attributes);
            potWriter.WritePot(resourceDirectory);
        }
Exemplo n.º 7
0
        private void SynchronizePoFile(string resxDirectory, string poDirectory, string baseName, CultureInfo culture, string programName, string email, string version, TextWriter statusOutput)
        {
            ResourceDirectory resourceDirectory = new ResourceDirectory();

            statusOutput.WriteLine("Reading RESX directory '{0}' for culture '{1}'", resxDirectory, culture.Name);
            resourceDirectory.ReadFiles(resxDirectory, culture);
            resourceDirectory.ReadResources();

            foreach (var resX in resourceDirectory.AllFiles) {
                statusOutput.WriteLine("   {0}", resX);
            }
            statusOutput.WriteLine();

            string cultureName = culture.Name;
            if (cultureName.EndsWith("-NO"))
                cultureName = cultureName.Substring(0, 2);
            cultureName = cultureName.Replace("-", "_");

            string poFileName = Path.Combine(poDirectory, baseName + "-" + cultureName + ".po");

            statusOutput.WriteLine("Reading PO file '{0}' for culture '{1}'", poFileName, culture.Name);
            PoReader reader = new PoReader(poFileName);
            List<PoEntry> entries = reader.ReadPo();
            ApplyPo applyPo = new ApplyPo();
            applyPo.Apply(entries, resourceDirectory, statusOutput);

            resourceDirectory.WriteResources();

            PoWriterAttributes attributes = new PoWriterAttributes() {
                Name = programName,
                Email = email,
                Version = version,
                writePOT = false
            };

            PoWriter potWriter = new PoWriter(poFileName, attributes);
            potWriter.WritePot(resourceDirectory);
        }
Exemplo n.º 8
0
        public void ReadDirectory()
        {
            string directory = GetTestFileDirectory();

            ResourceDirectory resdir = new ResourceDirectory();
            resdir.ReadFiles(directory, new CultureInfo("de"));
            resdir.ReadResources();

            foreach (ResXFile resxfile in resdir.AllFiles) {
                Console.WriteLine("Nonlocalized ResXFile: {0}   LocalizedResXFile: {1}", resxfile.NonLocalizedFileName, resxfile.LocalizedFileName);
                Console.WriteLine("----------------------------------------------------------------");

                foreach (LocString locstr in resxfile.AllStrings) {
                    Console.WriteLine("    Name:{0}    NonLocValue:{1}   LocValue:{2}   Comment:{3}", locstr.Name, locstr.NonLocalized, locstr.Localized, locstr.Comment);
                }

                Console.WriteLine();
            }
        }