This commit is contained in:
陈思海 2025-02-20 11:44:00 +08:00
parent d04ec57ba7
commit 5712e3be38
4 changed files with 16 additions and 8 deletions

View File

@ -86,10 +86,9 @@ namespace AlicizaX.PackageManager.Editor
private const string PackageJsonPath = "/raw/branch/main/package.json"; private const string PackageJsonPath = "/raw/branch/main/package.json";
public static void FetchRepositoryData(Action<List<RepositoryPackageData>> callback) public static void FetchRepositoryData(Action<List<RepositoryPackageData>> callback)
{ {
EditorPrefs.SetString("PackageUpdateDate", DateTime.Now.ToString());
EditorCoroutineUtility.StartCoroutineOwnerless(FetchDataRoutine(callback)); EditorCoroutineUtility.StartCoroutineOwnerless(FetchDataRoutine(callback));
} }
@ -188,7 +187,7 @@ namespace AlicizaX.PackageManager.Editor
private static void UpdateWithPackageInfo(ref RepositoryPackageData data, PackageJsonResponse package) private static void UpdateWithPackageInfo(ref RepositoryPackageData data, PackageJsonResponse package)
{ {
if (package == null) return; if (package == null) return;
data.name = package.name;
data.displayName = package.displayName; data.displayName = package.displayName;
data.version = package.version; data.version = package.version;
data.unityVersion = package.unity; data.unityVersion = package.unity;

View File

@ -12,8 +12,13 @@ namespace AlicizaX.PackageManager.Editor
internal class FrameworkPackageManagerWindow : EditorWindow internal class FrameworkPackageManagerWindow : EditorWindow
{ {
private const string VisualAssetPath = "Packages/com.alicizax.unity.packagemanager/Editor/PackageManager/Res/AlicizaXPackageManagerWindow.uxml"; private const string VisualAssetPath = "Packages/com.alicizax.unity.packagemanager/Editor/PackageManager/Res/AlicizaXPackageManagerWindow.uxml";
public List<RepositoryPackageData> RepositoryPackageDatas = new List<RepositoryPackageData>(); public List<RepositoryPackageData> RepositoryPackageDatas = new();
public static FrameworkPackageManagerWindow Instance;
public FrameworkPackageManagerWindow()
{
Instance = this;
}
public void RefreshPackageData(Action callBack) public void RefreshPackageData(Action callBack)
{ {
@ -28,8 +33,7 @@ namespace AlicizaX.PackageManager.Editor
[MenuItem("Tools/AlicizaX/Package Manager")] [MenuItem("Tools/AlicizaX/Package Manager")]
internal static void Open() internal static void Open()
{ {
EditorWindow.GetWindow<FrameworkPackageManagerWindow>().Show(); GetWindow<FrameworkPackageManagerWindow>().Show();
GetWindow<FrameworkPackageManagerWindow>().Refresh();
} }
private void CreateGUI() private void CreateGUI()
@ -70,6 +74,8 @@ namespace AlicizaX.PackageManager.Editor
packageListView.itemsSource = RepositoryPackageDatas; packageListView.itemsSource = RepositoryPackageDatas;
Refresh();
} }
private void PackageListViewOnOnSelectionChangedEvent(IEnumerable<RepositoryPackageData> obj) private void PackageListViewOnOnSelectionChangedEvent(IEnumerable<RepositoryPackageData> obj)

View File

@ -20,7 +20,8 @@ namespace AlicizaX.PackageManager.Editor
stateLabel = new Label(); stateLabel = new Label();
stateLabel.name = "stateLabel"; stateLabel.name = "stateLabel";
stateLabel.text = "Last update Feb 19,13:52";
stateLabel.text = EditorPrefs.GetString("PackageUpdateDate", "");
stateLabel.style.alignSelf = Align.Center; stateLabel.style.alignSelf = Align.Center;
stateLabel.style.marginLeft = new Length(2, LengthUnit.Pixel); stateLabel.style.marginLeft = new Length(2, LengthUnit.Pixel);
stateLabel.style.flexGrow = 1; // 让 Label 占据剩余空间 stateLabel.style.flexGrow = 1; // 让 Label 占据剩余空间

View File

@ -154,7 +154,6 @@ namespace AlicizaX.PackageManager.Editor
_btnRemove.style.marginLeft = 0; _btnRemove.style.marginLeft = 0;
packageBtnContainer.Add(_btnInstall); packageBtnContainer.Add(_btnInstall);
packageBtnContainer.Add(_btnUpdate); packageBtnContainer.Add(_btnUpdate);
packageBtnContainer.Add(_btnRemove); packageBtnContainer.Add(_btnRemove);
@ -193,14 +192,17 @@ namespace AlicizaX.PackageManager.Editor
private void OnBtnUpdate() private void OnBtnUpdate()
{ {
PackageManagerCheckTool.UpdatePackage(_selectRepositoryPackageData.name);
} }
private void OnBtnInstall() private void OnBtnInstall()
{ {
PackageManagerCheckTool.InstallPackage(_selectRepositoryPackageData.cloneUrl);
} }
private void OnBtnRemove() private void OnBtnRemove()
{ {
PackageManagerCheckTool.UninstallPackage(_selectRepositoryPackageData.name);
} }
} }
} }