public Control CreateControl() { var uiService = services.RequireService<IDecompilerShellUiService>(); var uiPrefsSvc = services.RequireService<IUiPreferencesService>(); this.control = new LowLevelView(); this.Control.Font = uiPrefsSvc.DisassemblerFont ?? new Font("Lucida Console", 10F); //$TODO: use user preference this.Control.CurrentAddressChanged += LowLevelView_CurrentAddressChanged; this.Control.ImageMapView.SelectedAddressChanged += ImageMapView_SelectedAddressChanged; this.Control.MemoryView.SelectionChanged += MemoryView_SelectionChanged; this.Control.MemoryView.ContextMenu = uiService.GetContextMenu(MenuIds.CtxMemoryControl); this.control.MemoryView.Services = this.services; this.Control.DisassemblyView.SelectedObjectChanged += DisassemblyView_SelectedObjectChanged; this.Control.DisassemblyView.ContextMenu = uiService.GetContextMenu(MenuIds.CtxDisassembler); this.Control.DisassemblyView.Navigate += DisassemblyControl_Navigate; this.Control.ToolBarGoButton.Click += ToolBarGoButton_Click; this.Control.ToolBarAddressTextbox.KeyDown += ToolBarAddressTextbox_KeyDown; this.navInteractor = new NavigationInteractor(); this.navInteractor.Attach(this.Control); typeMarker = new TypeMarker(control.MemoryView); typeMarker.TextChanged += typeMarker_FormatType; typeMarker.TextAccepted += typeMarker_TextAccepted; return control; }
private void Given_Interactor() { interactor = mr.PartialMock<LowLevelViewInteractor>(); interactor.SetSite(sp); control = (LowLevelView) interactor.CreateControl(); interactor.Program = program; }