Namespace movement.

This commit is contained in:
Ottermandias 2023-03-31 20:44:17 +02:00
parent a1e9c44697
commit 113078af90
40 changed files with 121 additions and 100 deletions

View file

@ -16,6 +16,7 @@ using Penumbra.Collections;
using Penumbra.String;
using Penumbra.String.Classes;
using Penumbra.Meta.Manipulations;
using Penumbra.Mods.Manager;
using Penumbra.Services;
using Penumbra.UI;

View file

@ -18,6 +18,7 @@ using FFXIVClientStructs.FFXIV.Client.Graphics.Scene;
using Penumbra.Api.Enums;
using Penumbra.GameData.Actors;
using Penumbra.Interop.ResourceLoading;
using Penumbra.Mods.Manager;
using Penumbra.String;
using Penumbra.String.Classes;
using Penumbra.Services;

View file

@ -6,6 +6,7 @@ using System.Collections.Generic;
using Penumbra.Api.Enums;
using Penumbra.Api.Helpers;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
namespace Penumbra.Api;

View file

@ -10,6 +10,7 @@ using System.Linq;
using Penumbra.Api;
using Penumbra.GameData.Actors;
using Penumbra.Interop.Services;
using Penumbra.Mods.Manager;
using Penumbra.Services;
using Penumbra.Util;
using CharacterUtility = Penumbra.Interop.Services.CharacterUtility;

View file

@ -9,6 +9,7 @@ using System.IO;
using System.Linq;
using Penumbra.Api.Enums;
using Penumbra.String.Classes;
using Penumbra.Mods.Manager;
namespace Penumbra.Collections;

View file

@ -11,6 +11,7 @@ using Penumbra.Collections;
using Penumbra.GameData.Actors;
using Penumbra.Interop.Services;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using Penumbra.Services;
using Penumbra.UI;
using Penumbra.Util;

View file

@ -10,6 +10,7 @@ using Newtonsoft.Json;
using Penumbra.Api;
using Penumbra.Import.Structs;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using FileMode = System.IO.FileMode;
using ZipArchive = SharpCompress.Archives.Zip.ZipArchive;
using ZipArchiveEntry = SharpCompress.Archives.Zip.ZipArchiveEntry;

View file

@ -5,6 +5,7 @@ using System.IO;
using System.Linq;
using System.Security.Cryptography;
using System.Threading.Tasks;
using Penumbra.Mods.Manager;
using Penumbra.String.Classes;
using Penumbra.Util;

View file

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.IO;
using System.IO.Compression;
using System.Threading.Tasks;
using Penumbra.Mods.Manager;
namespace Penumbra.Mods;

View file

@ -1,6 +1,7 @@
using System.Collections.Generic;
using System.Linq;
using Penumbra.Meta.Manipulations;
using Penumbra.Mods.Manager;
namespace Penumbra.Mods;

View file

@ -5,6 +5,7 @@ using System.Linq;
using System.Threading.Tasks;
using Dalamud.Interface.Internal.Notifications;
using OtterGui;
using Penumbra.Mods.Manager;
using Penumbra.String.Classes;
namespace Penumbra.Mods;

View file

@ -1,5 +1,6 @@
using System.Collections.Generic;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using Penumbra.String.Classes;
using Penumbra.Util;

View file

@ -8,6 +8,7 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Penumbra.Mods.Manager;
namespace Penumbra.Mods.ItemSwap;

View file

@ -2,7 +2,7 @@ using System;
using System.IO;
using Penumbra.Services;
namespace Penumbra.Mods;
namespace Penumbra.Mods.Manager;
public class ExportManager : IDisposable
{

View file

@ -1,21 +0,0 @@
using System;
namespace Penumbra.Mods;
[Flags]
public enum ModDataChangeType : ushort
{
None = 0x0000,
Name = 0x0001,
Author = 0x0002,
Description = 0x0004,
Version = 0x0008,
Website = 0x0010,
Deletion = 0x0020,
Migration = 0x0040,
ModTags = 0x0080,
ImportDate = 0x0100,
Favorite = 0x0200,
LocalTags = 0x0400,
Note = 0x0800,
}

View file

@ -9,6 +9,24 @@ using Penumbra.Util;
namespace Penumbra.Mods;
[Flags]
public enum ModDataChangeType : ushort
{
None = 0x0000,
Name = 0x0001,
Author = 0x0002,
Description = 0x0004,
Version = 0x0008,
Website = 0x0010,
Deletion = 0x0020,
Migration = 0x0040,
ModTags = 0x0080,
ImportDate = 0x0100,
Favorite = 0x0200,
LocalTags = 0x0400,
Note = 0x0800,
}
public class ModDataEditor
{
private readonly FilenameService _filenameService;

View file

@ -1,54 +0,0 @@
namespace Penumbra.Mods;
public enum ModOptionChangeType
{
GroupRenamed,
GroupAdded,
GroupDeleted,
GroupMoved,
GroupTypeChanged,
PriorityChanged,
OptionAdded,
OptionDeleted,
OptionMoved,
OptionFilesChanged,
OptionFilesAdded,
OptionSwapsChanged,
OptionMetaChanged,
DisplayChange,
PrepareChange,
DefaultOptionChanged,
}
public static class ModOptionChangeTypeExtension
{
/// <summary>
/// Give information for each type of change.
/// If requiresSaving, collections need to be re-saved after this change.
/// If requiresReloading, caches need to be manipulated after this change.
/// If wasPrepared, caches have already removed the mod beforehand, then need add it again when this event is fired.
/// Otherwise, caches need to reload the mod itself.
/// </summary>
public static void HandlingInfo( this ModOptionChangeType type, out bool requiresSaving, out bool requiresReloading, out bool wasPrepared )
{
( requiresSaving, requiresReloading, wasPrepared ) = type switch
{
ModOptionChangeType.GroupRenamed => ( true, false, false ),
ModOptionChangeType.GroupAdded => ( true, false, false ),
ModOptionChangeType.GroupDeleted => ( true, true, false ),
ModOptionChangeType.GroupMoved => ( true, false, false ),
ModOptionChangeType.GroupTypeChanged => ( true, true, true ),
ModOptionChangeType.PriorityChanged => ( true, true, true ),
ModOptionChangeType.OptionAdded => ( true, true, true ),
ModOptionChangeType.OptionDeleted => ( true, true, false ),
ModOptionChangeType.OptionMoved => ( true, false, false ),
ModOptionChangeType.OptionFilesChanged => ( false, true, false ),
ModOptionChangeType.OptionFilesAdded => ( false, true, true ),
ModOptionChangeType.OptionSwapsChanged => ( false, true, false ),
ModOptionChangeType.OptionMetaChanged => ( false, true, false ),
ModOptionChangeType.DisplayChange => ( false, false, false ),
ModOptionChangeType.DefaultOptionChanged => ( true, false, false ),
_ => ( false, false, false ),
};
}
}

View file

@ -10,7 +10,27 @@ using Penumbra.Services;
using Penumbra.String.Classes;
using Penumbra.Util;
namespace Penumbra.Mods;
namespace Penumbra.Mods.Manager;
public enum ModOptionChangeType
{
GroupRenamed,
GroupAdded,
GroupDeleted,
GroupMoved,
GroupTypeChanged,
PriorityChanged,
OptionAdded,
OptionDeleted,
OptionMoved,
OptionFilesChanged,
OptionFilesAdded,
OptionSwapsChanged,
OptionMetaChanged,
DisplayChange,
PrepareChange,
DefaultOptionChanged,
}
public class ModOptionEditor
{
@ -380,3 +400,36 @@ public class ModOptionEditor
};
}
}
public static class ModOptionChangeTypeExtension
{
/// <summary>
/// Give information for each type of change.
/// If requiresSaving, collections need to be re-saved after this change.
/// If requiresReloading, caches need to be manipulated after this change.
/// If wasPrepared, caches have already removed the mod beforehand, then need add it again when this event is fired.
/// Otherwise, caches need to reload the mod itself.
/// </summary>
public static void HandlingInfo(this ModOptionChangeType type, out bool requiresSaving, out bool requiresReloading, out bool wasPrepared)
{
(requiresSaving, requiresReloading, wasPrepared) = type switch
{
ModOptionChangeType.GroupRenamed => (true, false, false),
ModOptionChangeType.GroupAdded => (true, false, false),
ModOptionChangeType.GroupDeleted => (true, true, false),
ModOptionChangeType.GroupMoved => (true, false, false),
ModOptionChangeType.GroupTypeChanged => (true, true, true),
ModOptionChangeType.PriorityChanged => (true, true, true),
ModOptionChangeType.OptionAdded => (true, true, true),
ModOptionChangeType.OptionDeleted => (true, true, false),
ModOptionChangeType.OptionMoved => (true, false, false),
ModOptionChangeType.OptionFilesChanged => (false, true, false),
ModOptionChangeType.OptionFilesAdded => (false, true, true),
ModOptionChangeType.OptionSwapsChanged => (false, true, false),
ModOptionChangeType.OptionMetaChanged => (false, true, false),
ModOptionChangeType.DisplayChange => (false, false, false),
ModOptionChangeType.DefaultOptionChanged => (true, false, false),
_ => (false, false, false),
};
}
}

View file

@ -3,7 +3,7 @@ using System.Collections;
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
namespace Penumbra.Mods;
namespace Penumbra.Mods.Manager;
public class ModStorage : IReadOnlyList<Mod>
{

View file

@ -1,6 +1,7 @@
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Penumbra.Mods.Manager;
namespace Penumbra.Mods;

View file

@ -1,6 +1,6 @@
using System.Collections.Generic;
namespace Penumbra.Mods;
namespace Penumbra.Mods.Manager;
public class ModCache
{

View file

@ -5,6 +5,7 @@ using System.IO;
using System.Linq;
using System.Text.RegularExpressions;
using OtterGui.Filesystem;
using Penumbra.Mods.Manager;
using Penumbra.Services;
using Penumbra.Util;

View file

@ -6,6 +6,7 @@ using OtterGui;
using OtterGui.Filesystem;
using Penumbra.Api.Enums;
using Penumbra.Meta.Manipulations;
using Penumbra.Mods.Manager;
using Penumbra.String.Classes;
namespace Penumbra.Mods;

View file

@ -5,6 +5,7 @@ using System.Linq;
using OtterGui.Classes;
using Penumbra.Collections;
using Penumbra.Meta.Manipulations;
using Penumbra.Mods.Manager;
using Penumbra.String.Classes;
namespace Penumbra.Mods;

View file

@ -30,6 +30,7 @@ using DalamudUtil = Dalamud.Utility.Util;
using ResidentResourceManager = Penumbra.Interop.Services.ResidentResourceManager;
using Penumbra.Services;
using Penumbra.Interop.Services;
using Penumbra.Mods.Manager;
namespace Penumbra;

View file

@ -1,5 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/CodeInspection/NamespaceProvider/NamespaceFoldersToSkip/=mods_005Ceditor/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/CodeInspection/NamespaceProvider/NamespaceFoldersToSkip/=mods_005Cmanager/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/CodeInspection/NamespaceProvider/NamespaceFoldersToSkip/=mods_005Csubclasses/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/CodeInspection/NamespaceProvider/NamespaceFoldersToSkip/=ui_005Cresourcewatcher/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>

View file

@ -20,6 +20,7 @@ using Penumbra.UI.Tabs;
using Penumbra.Util;
using CharacterUtility = Penumbra.Interop.Services.CharacterUtility;
using ModFileSystemSelector = Penumbra.UI.ModsTab.ModFileSystemSelector;
using Penumbra.Mods.Manager;
namespace Penumbra;

View file

@ -2,6 +2,7 @@ using System;
using System.IO;
using Penumbra.Collections;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using Penumbra.Util;
namespace Penumbra.Services;

View file

@ -16,6 +16,7 @@ using Penumbra.GameData.Enums;
using Penumbra.GameData.Structs;
using Penumbra.Mods;
using Penumbra.Mods.ItemSwap;
using Penumbra.Mods.Manager;
using Penumbra.Services;
using Penumbra.UI.Classes;

View file

@ -14,6 +14,7 @@ using Penumbra.GameData.Files;
using Penumbra.Import.Textures;
using Penumbra.Interop.ResourceTree;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using Penumbra.String.Classes;
using Penumbra.UI.Classes;
using Penumbra.Util;

View file

@ -17,6 +17,7 @@ using Penumbra.Collections;
using Penumbra.Import;
using Penumbra.Import.Structs;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using Penumbra.Services;
using Penumbra.UI.Classes;
using Penumbra.Util;

View file

@ -6,7 +6,7 @@ using OtterGui.Classes;
using OtterGui.Raii;
using OtterGui.Widgets;
using Penumbra.Api;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
namespace Penumbra.UI.ModsTab;

View file

@ -5,6 +5,7 @@ using OtterGui.Raii;
using OtterGui;
using OtterGui.Widgets;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using Penumbra.UI.Classes;
namespace Penumbra.UI.ModsTab;

View file

@ -12,6 +12,7 @@ using OtterGui.Raii;
using OtterGui.Widgets;
using Penumbra.Api.Enums;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using Penumbra.Services;
using Penumbra.UI.AdvancedWindow;
using Penumbra.Util;

View file

@ -12,6 +12,7 @@ using Penumbra.Mods;
using Penumbra.UI.Classes;
using Dalamud.Interface.Components;
using Dalamud.Interface;
using Penumbra.Mods.Manager;
namespace Penumbra.UI.ModsTab;

View file

@ -6,6 +6,7 @@ using OtterGui;
using OtterGui.Raii;
using OtterGui.Widgets;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using Penumbra.UI.AdvancedWindow;
namespace Penumbra.UI.ModsTab;

View file

@ -18,6 +18,7 @@ using Penumbra.Interop.ResourceLoading;
using Penumbra.Interop.PathResolving;
using Penumbra.Interop.Structs;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using Penumbra.Services;
using Penumbra.String;
using Penumbra.Util;

View file

@ -12,6 +12,7 @@ using Penumbra.Api.Enums;
using Penumbra.Interop;
using Penumbra.Interop.Services;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using Penumbra.Services;
using Penumbra.UI.ModsTab;
using ModFileSystemSelector = Penumbra.UI.ModsTab.ModFileSystemSelector;

View file

@ -11,6 +11,7 @@ using OtterGui.Raii;
using OtterGui.Widgets;
using Penumbra.Interop.Services;
using Penumbra.Mods;
using Penumbra.Mods.Manager;
using Penumbra.Services;
using Penumbra.UI.Classes;
using CharacterUtility = Penumbra.Interop.Services.CharacterUtility;