示例#1
0
        private void ConfigurePackageServices()
        {
            var platformServices = new VsPlatformServices();

            var componentModel     = (IComponentModel)VsPackage.GetGlobalService(typeof(SComponentModel));
            var compositionCatalog = new CompositionCatalog(componentModel.DefaultCompositionService, componentModel.DefaultExportProvider);
            var exportProvider     = componentModel.DefaultExportProvider;

            _services
            .AddService(componentModel)
            .AddService(componentModel.DefaultCompositionService)
            .AddService(exportProvider)
            .AddService(compositionCatalog)
            .AddService(new VsUIServices(this))
            .AddService(new VsPlotExportDialog(this))
            .AddService(platformServices)
            .AddService <IEditorSupport, VsEditorSupport>()
            .AddService <IImageService, ImageService>()
            .AddService(new REditorSettings(this))
            .AddService(new RMarkdownEditorSettings(this))
            .AddService <IStatusBar, VsStatusBar>()
            .AddService <RPackageToolWindowProvider>()
            .AddRComponentsServices()
            .AddWindowsRInterpretersServices()
            .AddWindowsHostClientServices()
            .AddWindowsRComponentsServices()
            .AddEditorServices()
            .AddWindowsContainerServices();
            // TODO: add more

            _application = new VsApplication(_services);
            _services.AddService(_application);
            _services.GetService <IRSettings>().LoadSettings();
        }