예제 #1
0
        private static void OnWordChanged(DependencyObject obj, DependencyPropertyChangedEventArgs args)
        {
            WordViewPanel panel = (WordViewPanel)obj;

            WeakEventHelper.UpdateListener <Word, PropertyChangedEventArgs>(args, "PropertyChanged", panel.OnWordPropertyChanged);

            panel.UpdateText();
        }
예제 #2
0
        private static void OnWordListChanged(DependencyObject depObj, DependencyPropertyChangedEventArgs args)
        {
            TranslationPresenter presenter = (TranslationPresenter)depObj;

            WeakEventHelper.UpdateListener <WordList, EventArgs>(args, "ContentsChanged", presenter.OnWordListContentsChanged);

            presenter.Update();
        }
예제 #3
0
 /// <summary>
 /// Provides a memory-friendly registration to the <see cref="SizeChanged" /> event.
 /// </summary>
 /// <returns>A disposable instance that will cancel the registration.</returns>
 internal IDisposable RegisterSizeChangedEvent(WindowSizeChangedEventHandler handler)
 {
     return(WeakEventHelper.RegisterEvent(
                _sizeChangedHandlers,
                handler,
                (h, s, e) => (h as WindowSizeChangedEventHandler)?.Invoke(s, (WindowSizeChangedEventArgs)e)
                ));
 }
예제 #4
0
        private static void OnWordListChanged(DependencyObject obj, DependencyPropertyChangedEventArgs args)
        {
            InvLookupPanel panel = (InvLookupPanel)obj;

            panel.CurrentTranslation = null;

            WeakEventHelper.UpdateListener <WordList, EventArgs>(args, "ContentsChanged", panel.OnWordListContentsChanged);

            panel.MarkSearchPending(false);
        }