public bool CallRider(string args) { var paths = RiderPathLocator.GetAllFoundPaths(myPluginSettings.OperatingSystemFamilyRider); var defaultApp = myRiderPathLocator.GetDefaultRiderApp(EditorPrefsWrapper.ExternalScriptEditor, paths); if (string.IsNullOrEmpty(defaultApp)) { return(false); } var proc = new Process(); if (myPluginSettings.OperatingSystemFamilyRider == OperatingSystemFamilyRider.MacOSX) { proc.StartInfo.FileName = "open"; proc.StartInfo.Arguments = string.Format("-n {0}{1}{0} --args {2}", "\"", "/" + defaultApp, args); myLogger.Verbose("{0} {1}", proc.StartInfo.FileName, proc.StartInfo.Arguments); } else { proc.StartInfo.FileName = defaultApp; proc.StartInfo.Arguments = args; myLogger.Verbose("{2}{0}{2}" + " {1}", proc.StartInfo.FileName, proc.StartInfo.Arguments, "\""); } proc.StartInfo.UseShellExecute = true; // avoid HandleInheritance proc.Start(); ActivateWindow(); return(true); }
// This an entry point static PluginEntryPoint() { PluginSettings.InitLog(); // init log before doing any logging ourLogEventCollector = new UnityEventCollector(); // start collecting Unity messages asap ourPluginSettings = new PluginSettings(); ourRiderPathLocator = new RiderPathLocator(ourPluginSettings); var riderPath = ourRiderPathLocator.GetDefaultRiderApp(EditorPrefsWrapper.ExternalScriptEditor, RiderPathLocator.GetAllFoundPaths(ourPluginSettings.OperatingSystemFamilyRider)); if (string.IsNullOrEmpty(riderPath)) { return; } AddRiderToRecentlyUsedScriptApp(riderPath); if (!PluginSettings.RiderInitializedOnce) { EditorPrefsWrapper.ExternalScriptEditor = riderPath; PluginSettings.RiderInitializedOnce = true; } if (Enabled) { Init(); } }
public OnOpenAssetHandler(RProperty <EditorPluginModel> model, RiderPathLocator riderPathLocator, IPluginSettings pluginSettings, string slnFile) { myModel = model; myRiderPathLocator = riderPathLocator; myPluginSettings = pluginSettings; mySlnFile = slnFile; }
// This an entry point static PluginEntryPoint() { ourModel = new RProperty <UnityModel>(); var logSender = new UnityEventLogSender(ourModel); logSender.UnityLogRegisterCallBack(); ourPluginSettings = new PluginSettings(); ourRiderPathLocator = new RiderPathLocator(ourPluginSettings); var riderPath = ourRiderPathLocator.GetDefaultRiderApp(EditorPrefsWrapper.ExternalScriptEditor, RiderPathLocator.GetAllFoundPaths(ourPluginSettings.OperatingSystemFamilyRider)); if (string.IsNullOrEmpty(riderPath)) { return; } AddRiderToRecentlyUsedScriptApp(riderPath); if (!PluginSettings.RiderInitializedOnce) { EditorPrefsWrapper.ExternalScriptEditor = riderPath; PluginSettings.RiderInitializedOnce = true; } if (Enabled) { Init(); } }
// This an entry point static PluginEntryPoint() { PluginSettings.InitLog(); // init log before doing any logging ourLogEventCollector = new UnityEventCollector(); // start collecting Unity messages asap ourPluginSettings = new PluginSettings(); ourRiderPathProvider = new RiderPathProvider(ourPluginSettings); if (IsLoadedFromAssets()) // old mechanism, when EditorPlugin was copied to Assets folder { var riderPath = ourRiderPathProvider.GetActualRider(EditorPrefsWrapper.ExternalScriptEditor, RiderPathLocator.GetAllFoundPaths(ourPluginSettings.OperatingSystemFamilyRider)); if (!string.IsNullOrEmpty(riderPath)) { AddRiderToRecentlyUsedScriptApp(riderPath); if (IsRiderDefaultEditor() && PluginSettings.UseLatestRiderFromToolbox) { EditorPrefsWrapper.ExternalScriptEditor = riderPath; } } if (!PluginSettings.RiderInitializedOnce) { EditorPrefsWrapper.ExternalScriptEditor = riderPath; PluginSettings.RiderInitializedOnce = true; } InitForPluginLoadedFromAssets(); Init(); } else { Init(); } }
/// <summary> /// If external editor is Rider and exists, it would be returned /// Otherwise, first of allFoundPaths would be returned /// </summary> /// <param name="externalEditor"></param> /// <returns>May return null, if nothing found.</returns> public string ValidateAndReturnActualRider(string externalEditor) { if (!string.IsNullOrEmpty(externalEditor)) { var alreadySetPath = new FileInfo(externalEditor).FullName; if (RiderPathExist(alreadySetPath, myPluginSettings.OperatingSystemFamilyRider)) { return(alreadySetPath); } } var paths = RiderPathLocator.GetAllFoundPaths(myPluginSettings.OperatingSystemFamilyRider); return(paths.FirstOrDefault()); }
public OnOpenAssetHandler(RiderPathLocator riderPathLocator, IPluginSettings pluginSettings, string slnFile) { myRiderPathLocator = riderPathLocator; myPluginSettings = pluginSettings; mySlnFile = slnFile; }