public virtual void OnInitialized(IContainerProvider containerProvider) { secureCommands = new List <DelegateCommand>(); this._shellExtensionService = containerProvider.Resolve <IShellExtensionService>(); this._currentContextService = containerProvider.Resolve <ICurrentContextService>(); this._container = containerProvider; this._authenticationService = _container.Resolve <IAuthenticationUIService>(); this._eventAggregator = _container.Resolve <IEventAggregator>(); this._eventAggregator.GetEvent <AuthenticatedEvent>().Subscribe(HandleUserAuthentication); }
/// <summary> /// Sets the extension site registration after the shell has been created. /// </summary> protected override void AfterShellCreated() { base.AfterShellCreated(); RootWorkItem.Items.Add(this.Shell, "ShellForm"); // Register services RootWorkItem.Services.AddNew <ShellExtensionService, IShellExtensionService>(); RootWorkItem.Services.AddNew <ContextService, IContextService>(); // Register the GUI controls RootWorkItem.Services.Get <IContextService>().PropertyWindow = Shell.PropertyWindow; RootWorkItem.Services.Get <IContextService>().ObjectsTreeWindow = Shell.ObjectsTreeWindow; RootWorkItem.Services.Get <IContextService>().CommandLineWindow = Shell.CommandLineWindow; RootWorkItem.Services.Get <IContextService>().HelpWindow = Shell.HelpWindow; // Undo redo commands IShellExtensionService extensionService = RootWorkItem.Services.Get <IShellExtensionService>(); extensionService.AddToolstrip(Shell.UndoRedo, true); RootWorkItem.Commands[CommandNames.Undo].AddInvoker(Shell.undo, "Click"); RootWorkItem.Commands[CommandNames.Redo].AddInvoker(Shell.redo, "Click"); // Open Save commands RootWorkItem.Commands[CommandNames.Open].AddInvoker(Shell.openToolStripMenuItem, "Click"); RootWorkItem.Commands[CommandNames.Save].AddInvoker(Shell.saveToolStripMenuItem, "Click"); RootWorkItem.Commands[CommandNames.SaveAs].AddInvoker(Shell.saveAsToolStripMenuItem, "Click"); RootWorkItem.Commands[CommandNames.Open].AddInvoker(Shell.openToolStripButton, "Click"); RootWorkItem.Commands[CommandNames.Save].AddInvoker(Shell.saveToolStripButton, "Click"); RootWorkItem.Commands[CommandNames.ExportToStep].AddInvoker(Shell.exportToolStripMenuItem, "Click"); RootWorkItem.Commands[CommandNames.ImportFromStep].AddInvoker(Shell.importStepToolStripMenuItem, "Click"); RootWorkItem.Commands[CommandNames.ImportFromBrep].AddInvoker(Shell.importBrepToolStripMenuItem, "Click"); RootWorkItem.Commands[CommandNames.OptionsTools].AddInvoker(Shell.optionsToolStripMenuItem, "Click"); // Register UIExtension sites RootWorkItem.UIExtensionSites.RegisterSite(UIExtensionSiteNames.MainMenu, this.Shell.mainMenuStrip); // The File menu RootWorkItem.UIExtensionSites.RegisterSite(UIExtensionSiteNames.FileToolStripMenuItem, this.Shell.fileToolStripMenuItem.DropDownItems); RootWorkItem.UIExtensionSites.RegisterSite(UIExtensionSiteNames.NewToolStripMenuItem, this.Shell.newToolStripMenuItem.DropDownItems); RootWorkItem.UIExtensionSites.RegisterSite(UIExtensionSiteNames.ImportToolStripMenuItem, this.Shell.importToolStripMenuItem.DropDownItems); // The View menu RootWorkItem.UIExtensionSites.RegisterSite(UIExtensionSiteNames.ViewToolStripMenuItem, this.Shell.viewToolStripMenuItem.DropDownItems); // The Insert menu RootWorkItem.UIExtensionSites.RegisterSite(UIExtensionSiteNames.InsertToolStripMenuItem, this.Shell.insertToolStripMenuItem.DropDownItems); }
private void ExtendToolStrip() { //TODO: add new items to the ToolStrip in the Shell. See the UIExtensionSites collection in the WorkItem. // See: ms-help://MS.VSCC.v90/MS.VSIPCC.v90/ms.practices.scsf.2008apr/SCSF/html/02-04-340-Showing_UIElements.htm // Build the toolstrips ToolstripForm toolstripForm = new ToolstripForm(); // Register the toolstrips with the system IShellExtensionService extensionService = this.WorkItem.Services.Get <IShellExtensionService>(); extensionService.AddToolstrip(toolstripForm.SelectionToolstrip, true); extensionService.AddToolstrip(toolstripForm.ManipulationToolstrip, true); extensionService.AddToolstrip(toolstripForm.ModelingToolstrip, true); extensionService.AddToolstrip(toolstripForm.DrawingToolstrip, true); // Wire commands WorkItem.RootWorkItem.Commands[CommandNames.SelectVertices].AddInvoker(toolstripForm.selectVertices, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.SelectEdges].AddInvoker(toolstripForm.selectEdges, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.SelectFaces].AddInvoker(toolstripForm.selectFaces, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.SelectSolid].AddInvoker(toolstripForm.selectSolid, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Cursor].AddInvoker(toolstripForm.cursorButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.FitAll].AddInvoker(toolstripForm.fitAllButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.ZoomWindow].AddInvoker(toolstripForm.zoomWindowButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.DynZooming].AddInvoker(toolstripForm.dynamicZoomingButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.DynPanning].AddInvoker(toolstripForm.dynamicPanningButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.GlobalPanning].AddInvoker(toolstripForm.globalPanningButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Front].AddInvoker(toolstripForm.frontButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Top].AddInvoker(toolstripForm.topButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Left].AddInvoker(toolstripForm.leftButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Back].AddInvoker(toolstripForm.backButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Right].AddInvoker(toolstripForm.rightButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Bottom].AddInvoker(toolstripForm.bottomButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Axo].AddInvoker(toolstripForm.axoButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.DynamicRotation].AddInvoker(toolstripForm.dynamicRotationButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Reset].AddInvoker(toolstripForm.resetButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.HiddenOn].AddInvoker(toolstripForm.hiddenOnButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.HiddenOff].AddInvoker(toolstripForm.hiddenOffButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Extrude].AddInvoker(toolstripForm.extrudeButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Cut].AddInvoker(toolstripForm.cutButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Fillet].AddInvoker(toolstripForm.filletButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Draw3DLine].AddInvoker(toolstripForm.lineButton, "Click"); WorkItem.RootWorkItem.Commands[CommandNames.Draw3DRectangle].AddInvoker(toolstripForm.rectangleButton, "Click"); }
private void ModuleGotFocus() { log.Debug("PartModelingManager.ModuleController.ModuleGotFocus"); IShellExtensionService extensionService = this.WorkItem.Services.Get <IShellExtensionService>(); //extensionService.BeginUpdateLayout(); if (_currentWorkItem == _partModelingWorkItem) { //extensionService.ShowToolstrip(this.WorkItem, Constants.UIExtensionSiteNames.StartSketcher); log.Debug("Part modeling Resume Running"); _partModelingWorkItem.Controller.ResumeRunning(); } else if (_currentWorkItem == _sketcherWorkItem) { //extensionService.ShowToolstrip(this.WorkItem, Constants.UIExtensionSiteNames.ExitSketcher); log.Debug("Skecther Resume Running"); _sketcherWorkItem.Controller.ResumeRunning(); } //extensionService.ShowToolstrip(this.WorkItem, Constants.UIExtensionSiteNames.UndoRedo); //extensionService.EndUpdateLayout(); }
public Workitem(IContainerExtension container) { _containerProvider = container; _shellExtensionService = container.Resolve <IShellExtensionService>(); _currentContextService = container.Resolve <ICurrentContextService>(); }