//===-- ClangTidyPackages.cs - VSPackage for clang-tidy ----------*- C# -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // This class contains a VS extension package that runs clang-tidy over a // file in a VS text editor. // //===----------------------------------------------------------------------===// using Microsoft.VisualStudio.Editor; using Microsoft.VisualStudio.Shell; using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudio.TextManager.Interop; using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.IO; using System.Runtime.InteropServices; using System.Windows.Forms; using System.Xml.Linq; namespace LLVM.ClangTidy { [PackageRegistration(UseManagedResourcesOnly = true)] [InstalledProductRegistration("#110", "#112", "1.0", IconResourceID = 400)] [ProvideMenuResource("Menus.ctmenu", 1)] [Guid(GuidList.guidClangTidyPkgString)] [ProvideOptionPage(typeof(ClangTidyConfigurationPage), "LLVM/Clang", "ClangTidy", 0, 0, true)] public sealed class ClangTidyPackage : Package { #region Package Members protected override void Initialize() { base.Initialize(); var commandService = GetService(typeof(IMenuCommandService)) as OleMenuCommandService; if (commandService != null) { var menuCommandID = new CommandID(GuidList.guidClangTidyCmdSet, (int)PkgCmdIDList.cmdidClangTidy); var menuItem = new MenuCommand(MenuItemCallback, menuCommandID); commandService.AddCommand(menuItem); } } #endregion private void MenuItemCallback(object sender, EventArgs args) { } } }