/// <inheritdoc /> /// <summary> /// Initialization of the package; this method is called right after the package is sited, so this is the place /// where you can put all the initialization code that rely on services provided by VisualStudio. /// </summary> protected override void Initialize() { base.Initialize(); _dte = (DTE)GetService(typeof(SDTE)); _dteEvents = _dte.Events.DTEEvents; _dteEvents.OnStartupComplete += _dteEvents_OnStartupComplete; BridgeVsExtension bridge = new BridgeVsExtension(_dte); bool isLinqBridgeVsConfigured = PackageConfigurator.IsBridgeVsConfigured(_dte.Version); // Add our command handlers for menu(commands must exist in the.vsct file) OleMenuCommandService mcs = GetService(typeof(IMenuCommandService)) as OleMenuCommandService; if (null == mcs) { return; } // Create the command for the menu item. CommandID enableCommand = new CommandID(GuidList.GuidBridgeVsExtensionCmdSet, (int)PkgCmdIdList.CmdIdEnableBridge); OleMenuCommand menuItemEnable = new OleMenuCommand((s, e) => bridge.Execute(CommandAction.Enable), enableCommand); menuItemEnable.BeforeQueryStatus += (s, e) => bridge.UpdateCommand(menuItemEnable, CommandAction.Enable); CommandID disableCommand = new CommandID(GuidList.GuidBridgeVsExtensionCmdSet, (int)PkgCmdIdList.CmdIdDisableBridge); OleMenuCommand menuItemDisable = new OleMenuCommand((s, e) => bridge.Execute(CommandAction.Disable), disableCommand); menuItemDisable.BeforeQueryStatus += (s, e) => bridge.UpdateCommand(menuItemDisable, CommandAction.Disable); CommandID gettingStarted = new CommandID(GuidList.GuidBridgeVsExtensionCmdSet, (int)PkgCmdIdList.CmdIdGettingStarted); OleMenuCommand menuItemGettingStarted = new OleMenuCommand((s, e) => System.Diagnostics.Process.Start("https://github.com/codingadventures/LINQBridgeVs#getting-started"), gettingStarted); CommandID sendFeedback = new CommandID(GuidList.GuidBridgeVsExtensionCmdSet, (int)PkgCmdIdList.CmdIdFeedback); OleMenuCommand menuItemSendFeedback = new OleMenuCommand((s, e) => System.Diagnostics.Process.Start("https://github.com/codingadventures/LINQBridgeVs/issues"), sendFeedback); mcs.AddCommand(menuItemEnable); mcs.AddCommand(menuItemDisable); mcs.AddCommand(menuItemGettingStarted); mcs.AddCommand(menuItemSendFeedback); //Initialize Object Exporter settings _packageSettings = (PackageSettings)GetDialogPage(typeof(PackageSettings)); try { //if first time user if (isLinqBridgeVsConfigured) { return; } if (!IsElevated) { // ReSharper disable once ConditionIsAlwaysTrueOrFalse if (Application.ResourceAssembly == null) { // ReSharper disable once HeuristicUnreachableCode Application.ResourceAssembly = typeof(Welcome).Assembly; } _welcomePage = new Welcome(_dte); } else { _installationResult = PackageConfigurator.Install(_dte.Version, _dte.Edition); } } catch (Exception e) { _error = new Error(); _error.Body = $"{e.Message} %0A {e.StackTrace}"; _error.Title = "Error during installation. 1.4.6"; Exception innerException = e.InnerException; while (innerException != null) { _error.Body += $"%0A {innerException.Message} {innerException.StackTrace}"; innerException = innerException.InnerException; } _error.Body = _error.Body.Replace(Environment.NewLine, "%0A"); } }
/// <inheritdoc /> /// <summary> /// Initialization of the package; this method is called right after the package is sited, so this is the place /// where you can put all the initialization code that rely on services provided by VisualStudio. /// </summary> protected override void Initialize() { base.Initialize(); _dte = (DTE)GetService(typeof(SDTE)); _dteEvents = _dte.Events.DTEEvents; _dteEvents.OnStartupComplete += _dteEvents_OnStartupComplete; BridgeVsExtension bridge = new BridgeVsExtension(_dte); bool isLinqBridgeVsConfigured = PackageConfigurator.IsBridgeVsConfigured(_dte.Version); // Add our command handlers for menu(commands must exist in the.vsct file) OleMenuCommandService mcs = GetService(typeof(IMenuCommandService)) as OleMenuCommandService; if (null == mcs) { return; } // Create the command for the menu item. CommandID enableCommand = new CommandID(GuidList.GuidBridgeVsExtensionCmdSet, (int)PkgCmdIdList.CmdIdEnableBridge); OleMenuCommand menuItemEnable = new OleMenuCommand((s, e) => bridge.Execute(CommandAction.Enable), enableCommand); menuItemEnable.BeforeQueryStatus += (s, e) => bridge.UpdateCommand(menuItemEnable, CommandAction.Enable); CommandID disableCommand = new CommandID(GuidList.GuidBridgeVsExtensionCmdSet, (int)PkgCmdIdList.CmdIdDisableBridge); OleMenuCommand menuItemDisable = new OleMenuCommand((s, e) => bridge.Execute(CommandAction.Disable), disableCommand); menuItemDisable.BeforeQueryStatus += (s, e) => bridge.UpdateCommand(menuItemDisable, CommandAction.Disable); CommandID gettingStarted = new CommandID(GuidList.GuidBridgeVsExtensionCmdSet, (int)PkgCmdIdList.CmdIdGettingStarted); OleMenuCommand menuItemGettingStarted = new OleMenuCommand((s, e) => System.Diagnostics.Process.Start("https://github.com/codingadventures/LINQBridgeVs#getting-started"), gettingStarted); CommandID sendFeedback = new CommandID(GuidList.GuidBridgeVsExtensionCmdSet, (int)PkgCmdIdList.CmdIdFeedback); OleMenuCommand menuItemSendFeedback = new OleMenuCommand((s, e) => System.Diagnostics.Process.Start("https://github.com/codingadventures/LINQBridgeVs/issues"), sendFeedback); mcs.AddCommand(menuItemEnable); mcs.AddCommand(menuItemDisable); mcs.AddCommand(menuItemGettingStarted); mcs.AddCommand(menuItemSendFeedback); try { Log.Configure("LINQBridgeVs", "Extensions"); //if first time user if (isLinqBridgeVsConfigured) { return; } if (!IsElevated) { // ReSharper disable once ConditionIsAlwaysTrueOrFalse if (Application.ResourceAssembly == null) { // ReSharper disable once HeuristicUnreachableCode Application.ResourceAssembly = typeof(Welcome).Assembly; } _welcomePage = new Welcome(_dte); } else { _installationResult = PackageConfigurator.Install(_dte.Version, _dte.Edition); } } catch (Exception e) { Log.Write(e, "Initialize Error..."); MessageBox.Show("LINQBridgeVs wasn't successfully configured. Please restart Visual Studio"); } }