Exemple #1
0
        public void PopulateTiming(GroupCollection groups)
        {
            StartTiming         = SubtitlePartTiming.Create(groups, 0);
            ModifiedStartTiming = SubtitlePartTiming.Create(groups, 0);
            EndTiming           = SubtitlePartTiming.Create(groups, 4);
            ModifiedEndTiming   = SubtitlePartTiming.Create(groups, 4);

            Duration = EndTiming - StartTiming;

            //Track modified start timing
            ModifiedStartTiming.PropertyChanged += ModifiedStartTiming_PropertyChanged;
            ModifiedEndTiming.PropertyChanged   += ModifiedEndTiming_PropertyChanged;
        }
Exemple #2
0
        public static SubtitlePartTiming Create(GroupCollection groups, int startIndex)
        {
            SubtitlePartTiming timing = new SubtitlePartTiming();

            if (groups[startIndex + 1].Success)
            {
                timing.Hours = Convert.ToInt32(groups[startIndex + 1].Value);
            }
            if (groups[startIndex + 2].Success)
            {
                timing.Minutes = Convert.ToInt32(groups[startIndex + 2].Value);
            }
            if (groups[startIndex + 3].Success)
            {
                timing.Seconds = Convert.ToInt32(groups[startIndex + 3].Value);
            }
            if (groups[startIndex + 4].Success)
            {
                timing.Milliseconds = Convert.ToInt32(groups[startIndex + 4].Value);
            }

            return(timing);
        }
Exemple #3
0
 public TimeSpan GetDifference(SubtitlePartTiming timingToSubtract)
 {
     return(TimeSpan - timingToSubtract.TimeSpan);
 }