public ModProjectViewModel(ModProject project)
    {
        Project = project;
        if (Project.Name == null)
        {
            Project.Name = new MultilingualValue();
        }
        Project.Name.OnChange        += NameChanged;
        Project.Description.OnChange += NameChanged;
        foreach (var langCode in Project.Languages)
        {
            AddLanguageButton(langCode);

            /*<Button Style="{StaticResource NormalButton}">
             *                                      <StackPanel Orientation="Horizontal" Margin="-10,-17,-10,-16">
             *                                          <TextBlock Text="Englisch" VerticalAlignment="Center" Margin="10,0,10,0" />
             *                                          <Image Source="/resources/textures/Icons/Icon_Delete.png" Height="20" Margin="0,0,5,0" />
             *                                      </StackPanel>
             *                                  </Button>*/
        }

        foreach (var button in project.Buttons)
        {
            var _button = new ModProjectButton
            {
                DataContext = new ModProjectButtonViewModel(this, button)
            };
            _Buttons.Add(_button);
        }

        CheckForErrors();
    }
 public void RemoveButton(ModProject.Button button)
 {
     Project.Buttons.Remove(button);
     for (int i = 0; i < _Buttons.Count; i++)
     {
         ModProjectButton vm = _Buttons[i];
         if (((ModProjectButtonViewModel)vm.DataContext).Button == button)
         {
             _Buttons.RemoveAt(i);
             return;
         }
     }
 }
 public void AddButton()
 {
     try
     {
         ModProject.Button button = new ModProject.Button();
         button.project = Project;
         Project.Buttons.Add(button);
         ModProjectButton _button = new ModProjectButton();
         _button.DataContext = new ModProjectButtonViewModel(this, button);
         _Buttons.Add(_button);
     }
     catch (Exception e)
     {
         System.Console.WriteLine(e.ToString());
     }
 }
 public void AddButton()
 {
     try
     {
         var button = new ModProject.Button
         {
             Project = Project
         };
         Project.Buttons.Add(button);
         var _button = new ModProjectButton
         {
             DataContext = new ModProjectButtonViewModel(this, button)
         };
         _Buttons.Add(_button);
     }
     catch (Exception e)
     {
         Console.WriteLine(e.ToString());
     }
 }