Datei: NDOPackage/Commands/AddAccessor.cs
Last Commit (946ad0e)
| 1 | using System.Diagnostics; |
| 2 | |
| 3 | namespace NDOVsPackage.Commands |
| 4 | { |
| 5 | ····[Command(PackageGuids.guidNDOPackageCmdSetString, PackageIds.cmdidAddAccessor)] |
| 6 | ····internal sealed class AddAccessor : BaseCommand<AddAccessor> |
| 7 | ····{ |
| 8 | ········protected override async Task ExecuteAsync(OleMenuCmdEventArgs e) |
| 9 | ········{ |
| 10 | await VS. MessageBox. ShowWarningAsync( "NDOPackage", "Button clicked") ; |
| 11 | ········} |
| 12 | ········protected override void BeforeQueryStatus(EventArgs e) |
| 13 | ········{ |
| 14 | ············ThreadHelper.JoinableTaskFactory.Run(async () => |
| 15 | ············{ |
| 16 | ················var active = await VS.Documents.GetActiveDocumentViewAsync(); |
| 17 | ················var enabled = active.FilePath.EndsWith(".cs") || active.FilePath.EndsWith(".vb"); |
| 18 | ················await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); |
| 19 | ················Command.Enabled = enabled; |
| 20 | ············}); |
| 21 | ········} |
| 22 | ····} |
| 23 | } |
| 24 |
New Commit (33e9857)
| 1 | using System.Diagnostics; |
| 2 | using EnvDTE; |
| 3 | using MessageBox = System.Windows.Forms.MessageBox; |
| 4 | |
| 5 | namespace NDOVsPackage.Commands |
| 6 | { |
| 7 | ····[Command(PackageGuids.guidNDOPackageCmdSetString, PackageIds.cmdidAddAccessor)] |
| 8 | ····internal sealed class AddAccessor : BaseCommand<AddAccessor> |
| 9 | ····{ |
| 10 | ········protected override async Task ExecuteAsync(OleMenuCmdEventArgs e) |
| 11 | ········{ |
| 12 | try |
| 13 | ············{ |
| 14 | ················Document document; |
| 15 | ················TextDocument textDoc; |
| 16 | |
| 17 | ················await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); |
| 18 | |
| 19 | ················document = ApplicationObject.VisualStudioApplication.ActiveDocument; |
| 20 | ················if (document == null) |
| 21 | ····················return; |
| 22 | |
| 23 | ················textDoc = (TextDocument) document.Object( "TextDocument" ); |
| 24 | ················if (textDoc == null) |
| 25 | ····················return; |
| 26 | |
| 27 | ················string fileName = document.FullName.ToLower(); |
| 28 | ················if (fileName.EndsWith( ".cs" )) |
| 29 | ····················new AddAccessorCs( textDoc, document ).DoIt(); |
| 30 | ················else if (fileName.EndsWith( ".vb" )) |
| 31 | ····················new AddAccessorVb( textDoc, document ).DoIt(); |
| 32 | ············} |
| 33 | ············catch (Exception ex) |
| 34 | ············{ |
| 35 | ················Debug.WriteLine( ex.ToString() ); |
| 36 | ················MessageBox.Show( ex.Message, "Configure" ); |
| 37 | ············} |
| 38 | ········} |
| 39 | ········protected override void BeforeQueryStatus(EventArgs e) |
| 40 | ········{ |
| 41 | ············ThreadHelper.JoinableTaskFactory.Run(async () => |
| 42 | ············{ |
| 43 | ················var active = await VS.Documents.GetActiveDocumentViewAsync(); |
| 44 | ················var enabled = active.FilePath.EndsWith(".cs") || active.FilePath.EndsWith(".vb"); |
| 45 | ················await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); |
| 46 | ················Command.Enabled = enabled; |
| 47 | ············}); |
| 48 | ········} |
| 49 | ····} |
| 50 | } |
| 51 |