void OnHeaderChanged (object sender, System.EventArgs e) { if (inUpdate) return; headers.CommentForGui = textviewComments.Buffer.Text; headers.Project = (entryProjectName.Text + ' ' + entryProjectVersion.Text).Trim (); headers.SetHeader ("Report-Msgid-Bugs-To", entryBugzilla.Text); headers.Translator = entryTranslatorName.Text; headers.TranslatorEmail = entryTranslatorEmail.Text; headers.Team = entryLanguageGroupName.Text; headers.TeamEmail = entryLanguageGroupEmail.Text; if (!String.IsNullOrEmpty (entryPluralsForms.Text)) { PluralFormsCalculator calc = new PluralFormsCalculator (); PluralFormsScanner scanner = new PluralFormsScanner (entryPluralsForms.Text); PluralFormsParser parser = new PluralFormsParser (scanner); bool wellFormed = parser.Parse (calc); if (wellFormed) { for (int i = 0; i < headers.PluralFormsCount; i++) { int example = 0; for (example = 1; example < 1000; example++) { if (calc.Evaluate (example) == i) break; } if (example == 1000 && calc.Evaluate (0) == i) example = 0; if (i > 0 && (example == 0 || example == 1000)) { wellFormed = false; break; } } } Gdk.Color background = wellFormed ? new Gdk.Color (138, 226,52) : new Gdk.Color (204, 0, 0); entryPluralsForms.ModifyBase (StateType.Normal, background); //from tango palete - 8ae234 green, cc0000 red if (wellFormed) { headers.SetHeaderNotEmpty ("Plural-Forms", entryPluralsForms.Text); OnPluralDefinitionChanged (); } } else { entryPluralsForms.ModifyBase (StateType.Normal); headers.SetHeaderNotEmpty ("Plural-Forms", entryPluralsForms.Text); OnPluralDefinitionChanged (); } headers.UpdateHeaderDict (); headers.IsDirty = true; }
void OnHeaderChanged(object sender, System.EventArgs e) { if (inUpdate) { return; } headers.CommentForGui = textviewComments.Buffer.Text; headers.Project = (entryProjectName.Text + ' ' + entryProjectVersion.Text).Trim(); headers.SetHeader("Report-Msgid-Bugs-To", entryBugzilla.Text); headers.Translator = entryTranslatorName.Text; headers.TranslatorEmail = entryTranslatorEmail.Text; headers.Team = entryLanguageGroupName.Text; headers.TeamEmail = entryLanguageGroupEmail.Text; if (!String.IsNullOrEmpty(entryPluralsForms.Text)) { PluralFormsCalculator calc = new PluralFormsCalculator(); PluralFormsScanner scanner = new PluralFormsScanner(entryPluralsForms.Text); PluralFormsParser parser = new PluralFormsParser(scanner); bool wellFormed = parser.Parse(calc); if (wellFormed) { for (int i = 0; i < headers.PluralFormsCount; i++) { int example = 0; for (example = 1; example < 1000; example++) { if (calc.Evaluate(example) == i) { break; } } if (example == 1000 && calc.Evaluate(0) == i) { example = 0; } if (i > 0 && (example == 0 || example == 1000)) { wellFormed = false; break; } } } Gdk.Color background = wellFormed ? new Gdk.Color(138, 226, 52) : new Gdk.Color(204, 0, 0); entryPluralsForms.ModifyBase(StateType.Normal, background); //from tango palete - 8ae234 green, cc0000 red if (wellFormed) { headers.SetHeaderNotEmpty("Plural-Forms", entryPluralsForms.Text); OnPluralDefinitionChanged(); } } else { entryPluralsForms.ModifyBase(StateType.Normal); headers.SetHeaderNotEmpty("Plural-Forms", entryPluralsForms.Text); OnPluralDefinitionChanged(); } headers.UpdateHeaderDict(); headers.IsDirty = true; }