private void AddPanel(object sender, RoutedEventArgs e) { repo.SaveChanges(); // check for reference var text = NewChild.Text; var m = new Regex(@"^@(\d+)").Match(text); if (m.Success) { Model.Panel p; try { p = repo.GetPanelById(Int32.Parse(m.Groups[1].Value)); repo.CreateRelationship(CurrentPanel, p); NewChild.Text = ""; editPanel(p); } catch (IndexOutOfRangeException err) { NewChild.Text = ""; System.Windows.MessageBox.Show(err.Message); } } else { var p = new Model.Panel(NewChild.Text, "Write content here", CurrentCampaign.CampaignId); repo.AddPanel(p, CurrentAdventure.PanelId, CurrentPanel.PanelId); NewChild.Text = ""; editPanel(p); } }
private void AddAdventure_Click(object sender, RoutedEventArgs e) { var p = new Model.Panel(NewTextbox.Text, NewTextbox.Text, CurrentCampaign.CampaignId); repo.AddAdventure(p); NewTextbox.Text = ""; AdventureList.DataContext = repo.AdventuresForCampaign(CurrentCampaign.CampaignId); }
private void editPanel(Model.Panel P) { CurrentPanel = P; CurrentAdventure = repo.GetPanelById(P.AdventureId); Parents.Visibility = CurrentPanel.PanelId == CurrentAdventure.PanelId ? Visibility.Hidden : Visibility.Visible; AddParent.Visibility = Parents.Visibility; Delete.Visibility = Parents.Visibility; Title.Content = CurrentAdventure.Title; Editor.DataContext = P; Parents.ItemsSource = repo.Parents(P.PanelId); Children.ItemsSource = repo.Children(P.PanelId); }
private void Home_Click(object sender, RoutedEventArgs e) { repo.SaveChanges(); CurrentCampaign = null; CurrentAdventure = null; CurrentPanel = null; Title.Content = "Campaigns"; CampaignList.DataContext = repo.GetObservableCampaigns(); Editor.Visibility = Visibility.Hidden; AdventureList.Visibility = Visibility.Hidden; CampaignList.Visibility = Visibility.Visible; AddCampaign.Visibility = Visibility.Visible; AddAdventure.Visibility = Visibility.Hidden; CampaignBreadcrumb.Visibility = Visibility.Hidden; AdventureBreadcrumb.Visibility = Visibility.Hidden; }