public Context AppendEmpty()
            {
                var tl = new Translation(Guid.NewGuid());
                var c  = new Context(tl, project);

                children.Add(c);
                project.OnTranslationChanged(new TranslationChangedEventArgs(c, tl, TranslationChangedReason.New));
                return(c);
            }
 public ModificationResult Modify(Project.Translation translation)
 {
     if (translation is Translation t)
     {
         this.Translation = t;
         project.Save();
         project.OnTranslationChanged(new TranslationChangedEventArgs(this, t, TranslationChangedReason.InPlaceModification));
         return(ModificationResult.WithSuccess(Translation));
     }
     else
     {
         return(ModificationResult.WithUnsupported("attempted to save translation with extra data"));
     }
 }