Esempio n. 1
0
 protected override void OnMouseLeftButtonDown(System.Windows.Input.MouseButtonEventArgs e)
 {
     base.OnMouseLeftButtonDown(e);
     if (mOccurrenceYPositions != null)
     {
         double mouseY = Math.Floor(e.GetPosition(this).Y);
         int    closestOccurrenceIndex = GetIndexOfClosestOccurrence(mouseY);
         if (closestOccurrenceIndex >= 0)
         {
             SelectedOccurrence = new ViewModel.OccurrenceViewModel(mOccurrences[closestOccurrenceIndex], null);
             return;
         }
     }
     SelectedOccurrence = null;
 }
        /// <summary>
        /// Handles finishing of match occurrence retrival.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void occurenceEvaluator_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            var searchHitAndOccurrences = (Tuple <Engine.Interfaces.ISearchHit, ReadOnlyCollection <IOccurrence> >)e.Result;
            var occurrences             = searchHitAndOccurrences.Item2;

            if (occurrences != null)
            {
                // Create a list of occurrence view models from the gathered occurrences.
                Occurrences = occurrences.Select(occurrence => new OccurrenceViewModel(occurrence, searchHitAndOccurrences.Item1)).ToArray();
                // Set the number of occurrences.
                NumberOfOccurrences = occurrences.Count;
            }
            else
            {
                Occurrences         = new OccurrenceViewModel[] {};
                NumberOfOccurrences = 0;
            }
        }
Esempio n. 3
0
 /// <summary>
 /// Jumps to next occurrence.
 /// </summary>
 internal void GotoNextOccurrence()
 {
     if (mOccurrences == null || mOccurrences.Count == 0)
     {
         return;
     }
     if (mCurrentOccurrenceIndex >= 0)
     {
         ++mCurrentOccurrenceIndex;
         if (mCurrentOccurrenceIndex >= mOccurrences.Count)
         {
             mCurrentOccurrenceIndex = 0;
         }
     }
     else
     {
         mCurrentOccurrenceIndex = 0;
     }
     mCurrentOccurrence = mOccurrences[mCurrentOccurrenceIndex];
     OnPropertyChanged("CurrentOccurrence");
 }
Esempio n. 4
0
 /// <summary>
 /// Jumps to previous occurrence.
 /// </summary>
 internal void GotoPreviousOccurrence()
 {
     if (mOccurrences == null || mOccurrences.Count == 0)
     {
         return;
     }
     if (mCurrentOccurrenceIndex >= 0)
     {
         --mCurrentOccurrenceIndex;
         if (mCurrentOccurrenceIndex < 0)
         {
             mCurrentOccurrenceIndex = mOccurrences.Count - 1;
         }
     }
     else
     {
         mCurrentOccurrenceIndex = mOccurrences.Count - 1;
     }
     mCurrentOccurrence = mOccurrences[mCurrentOccurrenceIndex];
     OnPropertyChanged("CurrentOccurrence");
 }
Esempio n. 5
0
 /// <summary>
 /// Handles the change of the Occurrences property.
 /// </summary>
 /// <param name="oldValue"></param>
 /// <param name="newValue"></param>
 protected virtual void OnSelectedOccurrenceChanged(ViewModel.OccurrenceViewModel oldValue, ViewModel.OccurrenceViewModel newValue)
 {
     RaiseSelectedOccurrenceChangedEvent();
 }