public IInteractiveWindowVisualComponent Create(int instanceId, IInteractiveEvaluator evaluator) { var tb = new TextBufferMock(string.Empty, RContentTypeDefinition.ContentType); var container = new VisualComponentContainerStub<RInteractiveWindowVisualComponent>(); var component = new RInteractiveWindowVisualComponent(new InteractiveWindowMock(new WpfTextViewMock(tb), evaluator), container); container.Component = component; return component; }
public IInteractiveWindowVisualComponent Create(int instanceId, IInteractiveEvaluator evaluator, IRSessionProvider sessionProvider) { VsAppShell.Current.AssertIsOnMainThread(); var vsWindow = _vsInteractiveWindowFactoryLazy.Value.Create(RGuidList.ReplInteractiveWindowProviderGuid, instanceId, string.Empty, evaluator); var contentType = _contentTypeRegistryService.GetContentType(RContentTypeDefinition.ContentType); vsWindow.SetLanguage(RGuidList.RLanguageServiceGuid, contentType); var toolWindow = (ToolWindowPane)vsWindow; var componentContainer = new VisualComponentToolWindowAdapter<IInteractiveWindowVisualComponent>(toolWindow); var component = new RInteractiveWindowVisualComponent(vsWindow.InteractiveWindow, componentContainer, sessionProvider, _shell); componentContainer.Component = component; return component; }
public IInteractiveWindowVisualComponent Create(int instanceId, IInteractiveEvaluator evaluator) { VsAppShell.Current.AssertIsOnMainThread(); var vsWindow = _vsInteractiveWindowFactoryLazy.Value.Create(RGuidList.ReplInteractiveWindowProviderGuid, instanceId, Resources.ReplWindowName, evaluator); vsWindow.SetLanguage(RGuidList.RLanguageServiceGuid, _contentType); var toolWindow = (ToolWindowPane) vsWindow; ((IVsWindowFrame)toolWindow.Frame).SetProperty((int)__VSFPROPID4.VSFPROPID_TabImage, Resources.ReplWindowIcon); var componentContainer = new VisualComponentToolWindowAdapter<IInteractiveWindowVisualComponent>(toolWindow); var component = new RInteractiveWindowVisualComponent(vsWindow.InteractiveWindow, componentContainer); componentContainer.Component = component; return component; }
public IInteractiveWindowVisualComponent Create(int instanceId, IInteractiveEvaluator evaluator) { VsAppShell.Current.AssertIsOnMainThread(); var vsWindow = _vsInteractiveWindowFactoryLazy.Value.Create(RGuidList.ReplInteractiveWindowProviderGuid, instanceId, Resources.ReplWindowName, evaluator); vsWindow.SetLanguage(RGuidList.RLanguageServiceGuid, _contentType); var toolWindow = (ToolWindowPane) vsWindow; var frame = (IVsWindowFrame)toolWindow.Frame; frame.SetProperty((int)__VSFPROPID4.VSFPROPID_TabImage, Resources.ReplWindowIcon); // TODO: figure out why REPL window doesn't get 'force create' flag set // For now, set it forcibly when window is shown object value; frame.GetProperty((int)__VSFPROPID.VSFPROPID_CreateToolWinFlags, out value); frame.SetProperty((int)__VSFPROPID.VSFPROPID_CreateToolWinFlags, (int)value | (int)__VSCREATETOOLWIN.CTW_fForceCreate); var componentContainer = new VisualComponentToolWindowAdapter<IInteractiveWindowVisualComponent>(toolWindow); var component = new RInteractiveWindowVisualComponent(vsWindow.InteractiveWindow, componentContainer); componentContainer.Component = component; return component; }