コード例 #1
0
        /*
         * public bool Equals(LocaleUnsavedChangesData other)
         * {
         *      return other.KeyEntry == this.KeyEntry && other.ChangeType == this.ChangeType && other.NewValue == this.LastValue;
         * }
         */

        public static LocaleUnsavedChangesData Create(ILocaleKeyEntry entry, LocaleChangedField changedField, string lastValue, string newValue)
        {
            return(new LocaleUnsavedChangesData
            {
                KeyEntry = entry,
                ChangeType = changedField,
                LastValue = lastValue,
                NewValue = newValue
            });
        }
コード例 #2
0
        public void AddUnsavedChange(ILocaleKeyEntry entry, LocaleUnsavedChangesData unsavedChange)
        {
            // Remove this unsaved change if it matches a previous one
            var matchedChange = UnsavedChanges.FirstOrDefault(x => LocaleUnsavedChangeMatch(x, unsavedChange));

            if (matchedChange != null)
            {
                //Log.Here().Activity($"Removing unsaved change as it matches a previous value '{matchedChange.ChangeType} | {matchedChange.LastValue} => {matchedChange.NewValue}'.");
                RemoveUnsavedChange(matchedChange);
                entry.ChangesUnsaved = false;
            }
            else
            {
                //Log.Here().Activity($"Added unsaved change '{unsavedChange.ChangeType} | {unsavedChange.LastValue} => {unsavedChange.NewValue}'.");
                UnsavedChanges.Add(unsavedChange);
                entry.ChangesUnsaved = ChangesUnsaved = Parent.ChangesUnsaved = true;
            }
        }
コード例 #3
0
 public void PopoutContentWindow(ILocaleKeyEntry entry)
 {
     if (ContentWindow.ViewModel == null)
     {
         ContentWindow.ViewModel = new LocaleContentWindowViewModel()
         {
             ContentFontSize  = ViewModel.ContentFontSize,
             ContentLightMode = ViewModel.ContentLightMode,
             Entry            = entry,
             SelectedColor    = ViewModel.SelectedColor
         };
     }
     if (!ContentWindow.IsVisible)
     {
         ContentWindow.Activate();
         ContentWindow.Show();
         ContentWindow.Owner = this;
     }
 }
コード例 #4
0
 public static bool ValuesMatch(this ILocaleKeyEntry keyEntry1, ILocaleKeyEntry keyEntry2)
 {
     return(keyEntry1.Key.Equals(keyEntry2.Key) && keyEntry1.Content.Equals(keyEntry2.Content) &&
            keyEntry1.Handle.Equals(keyEntry2.Handle));
 }
コード例 #5
0
 public void OnSelectedKeyChanged(ILocaleKeyEntry key, bool selected)
 {
     Parent.OnSelectedKeyChanged(key, selected);
 }
コード例 #6
0
 public LocaleHandleHistory(ILocaleKeyEntry key, string handle)
 {
     Key    = key;
     Handle = handle;
 }