/// <summary> /// Find all XML declared dependency files. /// </summary> /// <returns>List of XML dependency filenames in the project.</returns> private List <string> FindFiles() { return(new List <string>( VersionHandlerImpl.SearchAssetDatabase( "Dependencies t:TextAsset", IsDependenciesFile, new [] { "Assets", "Packages" }))); }
/// <summary> /// Find all XML declared registries files. /// </summary> /// <returns>Set of XML registries filenames in the project.</returns> private IEnumerable <string> FindFiles() { var foundFiles = new HashSet <string>( VersionHandlerImpl.SearchAssetDatabase( assetsFilter: "Registries t:TextAsset", filter: IsRegistriesFile, directories: fileSearchPaths)); foundFiles.UnionWith(VersionHandlerImpl.SearchAssetDatabase( assetsFilter: "l:" + REGISTRIES_LABEL, directories: fileSearchPaths)); return(foundFiles); }
/// <summary> /// Find all XML declared dependency files. /// </summary> /// <returns>List of XML dependency filenames in the project.</returns> private List <string> FindFiles() { return(new List <string>( VersionHandlerImpl.SearchAssetDatabase( "Dependencies t:TextAsset", (string filename) => { foreach (var regex in fileRegularExpressions) { if (regex.Match(filename).Success) { return true; } } return false; }, new [] { "Assets", "Packages" }))); }
public static void ShowDocumentation() { analytics.OpenUrl(VersionHandlerImpl.DocumentationUrl( "#package-manager-resolver-usage"), "Usage"); }
/// <summary> /// Called when the GUI should be rendered. /// </summary> public void OnGUI() { GUI.skin.label.wordWrap = true; GUILayout.BeginVertical(); GUILayout.Label(String.Format("Version Handler (version {0}.{1}.{2})", VersionHandlerVersionNumber.Value.Major, VersionHandlerVersionNumber.Value.Minor, VersionHandlerVersionNumber.Value.Build)); GUILayout.BeginHorizontal(); GUILayout.Label("Enable version management", EditorStyles.boldLabel); settings.enabled = EditorGUILayout.Toggle(settings.enabled); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Rename to canonical filenames", EditorStyles.boldLabel); settings.renameToCanonicalFilenames = EditorGUILayout.Toggle(settings.renameToCanonicalFilenames); GUILayout.EndHorizontal(); GUILayout.Label("When this option is enabled the Version Handler strips " + "metadata from filenames. This can be a *very* slow operation " + "as each renamed DLL causes the Unity editor to reload all DLLs."); GUILayout.BeginHorizontal(); GUILayout.Label("Prompt for obsolete file deletion", EditorStyles.boldLabel); settings.cleanUpPromptEnabled = EditorGUILayout.Toggle(settings.cleanUpPromptEnabled); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Allow disabling files via renaming", EditorStyles.boldLabel); settings.renameToDisableFilesEnabled = EditorGUILayout.Toggle(settings.renameToDisableFilesEnabled); GUILayout.EndHorizontal(); settings.analyticsSettings.RenderGui(); GUILayout.BeginHorizontal(); GUILayout.Label("Verbose logging", EditorStyles.boldLabel); settings.verboseLoggingEnabled = EditorGUILayout.Toggle(settings.verboseLoggingEnabled); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Use project settings", EditorStyles.boldLabel); settings.useProjectSettings = EditorGUILayout.Toggle(settings.useProjectSettings); GUILayout.EndHorizontal(); GUILayout.Space(10); if (GUILayout.Button("Reset to Defaults")) { // Load default settings into the dialog but preserve the state in the user's // saved preferences. var backupSettings = new Settings(); VersionHandlerImpl.RestoreDefaultSettings(); VersionHandlerImpl.analytics.Report("settings/reset", "Settings Reset"); LoadSettings(); backupSettings.Save(); } GUILayout.BeginHorizontal(); if (GUILayout.Button("Cancel")) { VersionHandlerImpl.analytics.Report("settings/cancel", "Settings Cancel"); Close(); } if (GUILayout.Button("OK")) { VersionHandlerImpl.analytics.Report( "settings/save", new KeyValuePair <string, string>[] { new KeyValuePair <string, string>( "enabled", VersionHandlerImpl.Enabled.ToString()), new KeyValuePair <string, string>( "cleanUpPromptEnabled", VersionHandlerImpl.CleanUpPromptEnabled.ToString()), new KeyValuePair <string, string>( "renameToCanonicalFilenames", VersionHandlerImpl.RenameToCanonicalFilenames.ToString()), new KeyValuePair <string, string>( "verboseLoggingEnabled", VersionHandlerImpl.VerboseLoggingEnabled.ToString()), new KeyValuePair <string, string>( "renameToDisableFilesEnabled", VersionHandlerImpl.RenameToDisableFilesEnabled.ToString()), }, "Settings Save"); settings.Save(); Close(); // If the handler has been enabled, refresh the asset database // to force it to run. if (settings.enabled) { AssetDatabase.Refresh(); } } GUILayout.EndHorizontal(); GUILayout.EndVertical(); }
/// <summary> /// Called when the GUI should be rendered. /// </summary> public void OnGUI() { GUI.skin.label.wordWrap = true; GUILayout.BeginVertical(); GUILayout.BeginHorizontal(); GUILayout.Label("Enable version management", EditorStyles.boldLabel); settings.enabled = EditorGUILayout.Toggle(settings.enabled); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Rename to canonical filenames", EditorStyles.boldLabel); settings.renameToCanonicalFilenames = EditorGUILayout.Toggle(settings.renameToCanonicalFilenames); GUILayout.EndHorizontal(); GUILayout.Label("When this option is enabled the Version Handler strips " + "metadata from filenames. This can be a *very* slow operation " + "as each renamed DLL causes the Unity editor to reload all DLLs."); GUILayout.BeginHorizontal(); GUILayout.Label("Prompt for obsolete file deletion", EditorStyles.boldLabel); settings.cleanUpPromptEnabled = EditorGUILayout.Toggle(settings.cleanUpPromptEnabled); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Verbose logging", EditorStyles.boldLabel); settings.verboseLoggingEnabled = EditorGUILayout.Toggle(settings.verboseLoggingEnabled); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Use project settings", EditorStyles.boldLabel); settings.useProjectSettings = EditorGUILayout.Toggle(settings.useProjectSettings); GUILayout.EndHorizontal(); GUILayout.Space(10); if (GUILayout.Button("Reset to Defaults")) { // Load default settings into the dialog but preserve the state in the user's // saved preferences. var backupSettings = new Settings(); VersionHandlerImpl.RestoreDefaultSettings(); LoadSettings(); backupSettings.Save(); } GUILayout.BeginHorizontal(); if (GUILayout.Button("Cancel")) { Close(); } if (GUILayout.Button("OK")) { settings.Save(); Close(); // If the handler has been enabled, refresh the asset database // to force it to run. if (settings.enabled) { AssetDatabase.Refresh(); } } GUILayout.EndHorizontal(); GUILayout.EndVertical(); }