public GitManager(string repoPath, GitCallbacks callbacks, GitSettingsJson settings, IGitPrefs prefs, GitAsyncManager asyncManager) { this.repoPath = repoPath; this.callbacks = callbacks; this.prefs = prefs; this.asyncManager = asyncManager; gitSettings = settings; gitPath = UniGitPath.Combine(repoPath, ".git"); Initialize(); }
public GitProjectOverlay(GitManager gitManager, GitCallbacks gitCallbacks, GitSettingsJson gitSettings, GitAsyncManager asyncManager) { if (iconStyle == null) { iconStyle = new GUIStyle { imagePosition = ImagePosition.ImageOnly, alignment = TextAnchor.LowerLeft, padding = new RectOffset(2, 2, 2, 2) }; } this.gitManager = gitManager; this.gitSettings = gitSettings; this.asyncManager = asyncManager; this.gitCallbacks = gitCallbacks; gitCallbacks.ProjectWindowItemOnGUI += CustomIcons; gitCallbacks.UpdateRepository += OnUpdateRepository; }
private void Construct(GitExternalManager externalManager, GitAsyncManager asyncManager, GitOverlay gitOverlay, InjectionHelper injectionHelper, GitDiffWindowToolbarRenderer toolbarRenderer, GitDiffElementContextFactory elementContextFactory, GitDiffWindowCommitRenderer gitDiffWindowCommitRenderer, GitDiffWindowDiffElementRenderer diffElementRenderer, GitLfsHelper lfsHelper) { this.lfsHelper = lfsHelper; this.externalManager = externalManager; this.asyncManager = asyncManager; this.gitOverlay = gitOverlay; this.injectionHelper = injectionHelper; this.toolbarRenderer = toolbarRenderer; this.elementContextFactory = elementContextFactory; this.gitDiffWindowCommitRenderer = gitDiffWindowCommitRenderer; this.diffElementRenderer = diffElementRenderer; sorter = new GitDiffWindowSorter(this, gitManager); }
public GitManager( GitCallbacks callbacks, GitSettingsJson settings, IGitPrefs prefs, GitAsyncManager asyncManager, UniGitData gitData, ILogger logger, GitInitializer initializer, UniGitPaths paths) { this.paths = paths; this.gitData = gitData; this.callbacks = callbacks; this.prefs = prefs; this.asyncManager = asyncManager; this.logger = logger; this.initializer = initializer; gitSettings = settings; Initialize(); }
private static void Rebuild(InjectionHelper injectionHelper) { var settingsManager = injectionHelper.GetInstance <GitSettingsManager>(); settingsManager.LoadGitSettings(); //delayed called must be used for serialized properties to be loaded EditorApplication.delayCall += () => { settingsManager.LoadOldSettingsFile(); }; HookManager = injectionHelper.GetInstance <GitHookManager>(); LfsManager = injectionHelper.GetInstance <GitLfsManager>(); ExternalManager = injectionHelper.GetInstance <GitExternalManager>(); CredentialsManager = injectionHelper.GetInstance <GitCredentialsManager>(); LfsHelper = injectionHelper.GetInstance <GitLfsHelper>(); AsyncManager = injectionHelper.GetInstance <GitAsyncManager>(); injectionHelper.GetInstance <GitAutoFetcher>(); injectionHelper.GetInstance <GitProjectOverlay>(); GitProjectContextMenus.Init(GitManager, ExternalManager); }
private void Construct(GitExternalManager externalManager, GitAsyncManager asyncManager) { this.externalManager = externalManager; this.asyncManager = asyncManager; }
public GitProjectOverlay(GitManager gitManager, GitCallbacks gitCallbacks, GitSettingsJson gitSettings, GitAsyncManager asyncManager, GitReflectionHelper reflectionHelper, GitOverlay gitOverlay, IGitPrefs prefs, UniGitData data, ILogger logger, InjectionHelper injectionHelper, [UniGitInjectOptional] bool cullNonAssetPaths = true) { if (iconStyle == null) { iconStyle = new GUIStyle { imagePosition = ImagePosition.ImageOnly, alignment = TextAnchor.LowerLeft, padding = new RectOffset(2, 2, 2, 2) }; lineStyle = new GUIStyle(EditorGUIUtility.GetBuiltinSkin(EditorSkin.Inspector).FindStyle("IN Title")) { padding = new RectOffset(), margin = new RectOffset(), contentOffset = Vector2.zero, fixedHeight = 0, fixedWidth = 0, border = { left = 0, right = 0 } }; } this.logger = logger; this.data = data; this.gitManager = gitManager; this.gitSettings = gitSettings; this.asyncManager = asyncManager; this.gitCallbacks = gitCallbacks; this.reflectionHelper = reflectionHelper; this.gitOverlay = gitOverlay; this.prefs = prefs; this.cullNonAssetPaths = cullNonAssetPaths; this.injectionHelper = injectionHelper; gitManager.AddWatcher(this); gitCallbacks.EditorUpdate += OnEditorUpdate; gitCallbacks.ProjectWindowItemOnGUI += CustomIcons; gitCallbacks.UpdateRepository += OnUpdateRepository; //project browsers only get created before delay call but not before constructor gitCallbacks.DelayCall += () => { projectWindows = new List <EditorWindow>(Resources.FindObjectsOfTypeAll(reflectionHelper.ProjectWindowType).Cast <EditorWindow>()); }; //shortcut to getting instance id without loading asset var method = typeof(AssetDatabase).GetMethod("GetMainAssetOrInProgressProxyInstanceID", BindingFlags.NonPublic | BindingFlags.Static); if (method != null) { GetMainAssetOrInProgressProxyInstanceID = (Func <string, int>)Delegate.CreateDelegate(typeof(Func <string, int>), method); } }
private void StartUpdateChaches(GitRepoStatus status) { loadingCommits = GitAsyncManager.QueueWorker(UpdateChachesThreaded, status, "Loading Commits"); }