Exemple #1
0
 public void DeserializeMetadata()
 {
     if (!String.IsNullOrEmpty(metadata))
     {
         MetaData = DivinityJsonUtils.SafeDeserialize <QueryFilesPublishedFileDivinityMetadataMain>(metadata);
     }
 }
Exemple #2
0
 public bool LoadKeybindings(MainWindowViewModel vm, string filePath = @"Data\keybindings.json")
 {
     try
     {
         if (File.Exists(filePath))
         {
             using (var reader = File.OpenText(filePath))
             {
                 var fileText       = reader.ReadToEnd();
                 var allKeybindings = DivinityJsonUtils.SafeDeserialize <Dictionary <string, Hotkey> >(fileText);
                 if (allKeybindings != null)
                 {
                     foreach (var kvp in allKeybindings)
                     {
                         var existingHotkey = All.FirstOrDefault(x => x.ID.Equals(kvp.Key, StringComparison.OrdinalIgnoreCase));
                         if (existingHotkey != null)
                         {
                             existingHotkey.Key       = kvp.Value.Key;
                             existingHotkey.Modifiers = kvp.Value.Modifiers;
                             existingHotkey.UpdateDisplayBindingText();
                         }
                     }
                 }
                 else
                 {
                     DivinityApp.Log("Error deserializing keybindings.json - result is null.");
                     DivinityApp.Log(fileText);
                 }
             }
         }
     }
     catch (Exception ex)
     {
         vm.ShowAlert($"Error loading keybindings at '{filePath}': {ex}", AlertType.Danger);
     }
     return(false);
 }