void menuCommand_BeforeQueryStatus(object sender, EventArgs e) { OleMenuCommand menu = (OleMenuCommand)sender; var buffer = ProjectHelpers.GetCurentTextBuffer(); menu.Visible = buffer != null && _supported.Contains(buffer.ContentType.DisplayName.ToUpperInvariant()); }
protected override bool Execute(uint commandId, uint nCmdexecopt, IntPtr pvaIn, IntPtr pvaOut) { ITextBuffer buffer = ProjectHelpers.GetCurentTextBuffer(); CssEditorDocument doc = new CssEditorDocument(buffer); StringBuilder sb = new StringBuilder(buffer.CurrentSnapshot.Length); sb.Append(buffer.CurrentSnapshot.GetText()); EditorExtensionsPackage.DTE.UndoContext.Open("Remove Duplicate Properties"); string result = RemoveDuplicateProperties(sb, doc); Span span = new Span(0, buffer.CurrentSnapshot.Length); buffer.Replace(span, result); var selection = EditorExtensionsPackage.DTE.ActiveDocument.Selection as TextSelection; selection.GotoLine(1); EditorExtensionsPackage.DTE.ExecuteCommand("Edit.FormatDocument"); EditorExtensionsPackage.DTE.UndoContext.Close(); return(true); }
protected override bool Execute(uint commandId, uint nCmdexecopt, IntPtr pvaIn, IntPtr pvaOut) { ITextBuffer buffer = ProjectHelpers.GetCurentTextBuffer(); CssEditorDocument doc = new CssEditorDocument(buffer); ICssSchemaInstance rootSchema = CssSchemaManager.SchemaManager.GetSchemaRoot(null); StringBuilder sb = new StringBuilder(buffer.CurrentSnapshot.Length); sb.Append(buffer.CurrentSnapshot.GetText()); EditorExtensionsPackage.DTE.UndoContext.Open("Add Missing Vendor Specifics"); string result = AddMissingVendorDeclarations(sb, doc, rootSchema); Span span = new Span(0, buffer.CurrentSnapshot.Length); buffer.Replace(span, result); var selection = EditorExtensionsPackage.DTE.ActiveDocument.Selection as TextSelection; selection.GotoLine(1); EditorExtensionsPackage.DTE.ExecuteCommand("Edit.FormatDocument"); EditorExtensionsPackage.DTE.UndoContext.Close(); return(true); }
protected override bool IsEnabled() { var buffer = ProjectHelpers.GetCurentTextBuffer(); if (buffer != null && _supported.Contains(buffer.ContentType.DisplayName.ToUpperInvariant())) { return(true); } return(false); }
public void NavigateTo() { EditorExtensionsPackage.DTE.ItemOperations.OpenFile(_file); Dispatcher.CurrentDispatcher.BeginInvoke(new Action(() => { var view = ProjectHelpers.GetCurentTextView(); var textBuffer = ProjectHelpers.GetCurentTextBuffer(); var span = new SnapshotSpan(textBuffer.CurrentSnapshot, _selector.Start, _selector.Length); var point = new SnapshotPoint(textBuffer.CurrentSnapshot, _selector.Start + _selector.Length); view.ViewScroller.EnsureSpanVisible(span); view.Caret.MoveTo(point); view.Selection.Select(span, false); }), DispatcherPriority.ApplicationIdle, null); }