public void Execute(ISolution solution, ITextControl textControl) { Shell.Instance.GetComponent <UITaskExecutor>().SingleThreaded.ExecuteTask("Cleanup file", TaskCancelable.No, progress => { progress.TaskName = _profile.Name; progress.Start(1); using (Shell.Instance.GetComponent <ICommandProcessor>().UsingBatchTextChange("Code Cleanup")) { using (var cookie = solution.GetComponent <SolutionDocumentTransactionManager>().CreateTransactionCookie(DefaultAction.Rollback, "Code cleanup")) { var progressIndicator = NullProgressIndicator.Create(); CodeCleanup instance = CodeCleanup.GetInstance(solution); int caret = -1; instance.Run(this._dataProvider.SourceFile, DocumentRange.InvalidRange, ref caret, _profile, NullProgressIndicator.Create()); cookie.Commit(progressIndicator); } } progress.Stop(); }); }
public void SetDefaultSetting(CodeCleanupProfile profile, CodeCleanup.DefaultProfileType profileType) { switch (profileType) { case CodeCleanup.DefaultProfileType.FULL: case CodeCleanup.DefaultProfileType.REFORMAT: profile.SetSetting(OurDescriptor, true); break; default: throw new ArgumentOutOfRangeException("profileType"); } }
private string GetTextAfterFormatting([NotNull] IDocument document, [NotNull] ITextControl textControl) { using (Solution.GetComponent <DocumentTransactionManager>() .CreateTransactionCookie(DefaultAction.Rollback, "Temporary change")) { var file = document.GetPsiSourceFile(Solution); var codeCleanup = CodeCleanup.GetInstance(Solution); var codeCleanupSettings = Shell.Instance.GetComponent <CodeCleanupSettingsComponent>(); var profile = codeCleanupSettings.GetDefaultProfile(CodeCleanup.DefaultProfileType.REFORMAT); var selectionRange = textControl.Selection.OneDocRangeWithCaret(); codeCleanup.Run(file, selectionRange.Length > 0 ? new DocumentRange(textControl.Document, selectionRange) : DocumentRange.InvalidRange, profile, NullProgressIndicator.Create()); return(document.GetText()); } }
/// <summary> /// Get default setting for given profile type. /// </summary> /// <param name="profile"> /// The code cleanup profile to use. /// </param> /// <param name="profileType"> /// Determine if it is a full or reformat <see cref="CodeCleanup.DefaultProfileType"/>. /// </param> public void SetDefaultSetting(CodeCleanupProfile profile, CodeCleanup.DefaultProfileType profileType) { // Default option are set in the constructors. OrderingOptions orderingOptions = new OrderingOptions(); profile.SetSetting(OrderingDescriptor, orderingOptions); LayoutOptions layoutOptions = new LayoutOptions(); profile.SetSetting(LayoutDescriptor, layoutOptions); DocumentationOptions documentationOptions = new DocumentationOptions(); profile.SetSetting(DocumentationDescriptor, documentationOptions); SpacingOptions spacingOptions = new SpacingOptions(); profile.SetSetting(SpacingDescriptor, spacingOptions); ReadabilityOptions readabilityOptions = new ReadabilityOptions(); profile.SetSetting(ReadabilityDescriptor, readabilityOptions); MaintainabilityOptions maintainabilityOptions = new MaintainabilityOptions(); profile.SetSetting(MaintainabilityDescriptor, maintainabilityOptions); }
public void SetDefaultSetting(CodeCleanupProfile profile, CodeCleanup.DefaultProfileType profileType) { }
/// <summary> /// Get default setting for given profile type. /// </summary> /// <param name="profile"> /// The code cleanup profile to use. /// </param> /// <param name="profileType"> /// Determine if it is a full or reformat <see cref="CodeCleanup.DefaultProfileType"/>. /// </param> public void SetDefaultSetting(CodeCleanupProfile profile, CodeCleanup.DefaultProfileType profileType) { profile.SetSetting(Descriptor, true); }
/// <inheritdoc/> public void SetDefaultSetting(CodeCleanupProfile profile, CodeCleanup.DefaultProfileType profileType) { switch (profileType) { case CodeCleanup.DefaultProfileType.FULL: profile.SetSetting(DescriptorInstance, true); break; default: profile.SetSetting(DescriptorInstance, false); break; } }