private void ChangeTier(bool down = true) { if (down) { for (int i = 0; i < annoTiers.Count; i++) { if (annoTiers[i] == AnnoTierStatic.Selected && i + 1 < annoTiers.Count) { AnnoTierStatic.Select(annoTiers[i + 1]); AnnoTierStatic.SelectLabel(null); break; } } } else { for (int i = 0; i < annoTiers.Count; i++) { if (annoTiers[i] == AnnoTierStatic.Selected && i > 0) { AnnoTierStatic.Select(annoTiers[i - 1]); AnnoTier.SelectLabel(null); break; } } } }
private void CopyLabelToTier(bool down = true) { if (down) { if (AnnoTierStatic.Label != null) { AnnoListItem temp = AnnoTierStatic.Label.Item; for (int i = 0; i < annoTiers.Count; i++) { if (annoTiers[i] == AnnoTierStatic.Selected && i + 1 < annoTiers.Count) { AnnoTierStatic.Select(annoTiers[i + 1]); if (AnnoTierStatic.Selected.IsDiscreteOrFree) { AnnoTier.SelectLabel(null); if (!AnnoTierStatic.Selected.AnnoList.Contains(temp)) { AnnoTierStatic.Selected.NewAnnoCopy(temp.Start, temp.Stop, temp.Label, temp.Color); break; } } } } } } else { if (AnnoTierStatic.Label != null) { AnnoListItem temp = AnnoTierStatic.Label.Item; for (int i = 0; i < annoTiers.Count; i++) { if (annoTiers[i] == AnnoTierStatic.Selected && i > 0) { AnnoTierStatic.Select(annoTiers[i - 1]); if (AnnoTierStatic.Selected.IsDiscreteOrFree) { AnnoTierStatic.SelectLabel(null); if (!AnnoTierStatic.Selected.AnnoList.Contains(temp)) { AnnoTierStatic.Selected.NewAnnoCopy(temp.Start, temp.Stop, temp.Label, temp.Color); break; } } } } } } }
public void addAnnoTier(AnnoList anno) { setAnnoList(anno); AnnoTier tier = new AnnoTier(anno); control.annoTierControl.Add(tier); control.timeLineControl.rangeSlider.OnTimeRangeChanged += tier.TimeRangeChanged; annoTiers.Add(tier); annoLists.Add(anno); AnnoTierStatic.Select(tier); tier.TimeRangeChanged(Time); updateNavigator(); }
private void removeAnnoTier(AnnoTier tier) { if (tier != null) { MessageBoxResult mb = MessageBoxResult.No; if (tier.AnnoList.HasChanged) { mb = MessageBox.Show("Save annotations on tier #" + tier.Name + " first?", "Confirm", MessageBoxButton.YesNoCancel, MessageBoxImage.Question); if (mb == MessageBoxResult.Yes) { tier.AnnoList.Save(); } } if (mb != MessageBoxResult.Cancel) { control.annoTierControl.Remove(tier); AnnoTierStatic.Unselect(); tier.Children.Clear(); tier.AnnoList.Clear(); annoTiers.Remove(tier); if (annoTiers.Count > 0) { AnnoTierStatic.Select(annoTiers[0]); } else { clearAnnoInfo(); updateNavigator(); } } } }