public static object GetSelectedItem() { var monitorSelection = ServiceProvider.GetService <SVsShellMonitorSelection>() as IVsMonitorSelection; monitorSelection.GetCurrentSelection(out var hierarchyPointer, out var itemId, out _, out var selectionContainerPointer); try { if (Marshal.GetTypedObjectForIUnknown( hierarchyPointer, typeof(IVsHierarchy)) is IVsHierarchy selectedHierarchy) { ErrorHandler.ThrowOnFailure(selectedHierarchy.GetProperty(itemId, (int)__VSHPROPID.VSHPROPID_ExtObject, out var selectedObject)); return(selectedObject); } return(null); } finally { Marshal.Release(hierarchyPointer); Marshal.Release(selectionContainerPointer); } }
public ErrorListPackageEventProcessor(IServiceProvider serviceProvider) { _serviceProvider = serviceProvider as ISharperCryptoAnalysisServiceProvider; if (_serviceProvider == null) { throw new ArgumentException("Wrong argument type"); } var toolManager = _serviceProvider.GetService(typeof(IToolWindowManager)) as IToolWindowManager; _toolWindow = toolManager?.ShowToolPane().Result; _viewModel = _serviceProvider.ExportProvider.GetExportedValue <IAnalyzerDetailViewModel>(); }
public AnalyzerReportsViewModel(ISharperCryptoAnalysisServiceProvider serviceProvider) { _serviceProvider = serviceProvider ?? throw new ArgumentNullException(nameof(serviceProvider)); AnalyzerManager = _serviceProvider.GetService <IAnalyzerManager>(); }
public SettingsProvider(ISharperCryptoAnalysisServiceProvider serviceProvider) { var cm = serviceProvider.GetService <ISharperCryptoApiAnalysisSettings>(); Settings = cm; }